Hi
I found very small bug during review mel's 2 zonelist patch series.
this patch is trivial clean up.
jiffies subtraction may cause overflow problem.
it shold be used time_after().
Thanks.
Signed-off-by: KOSAKI Motohiro <[email protected]>
CC: Lee Schermerhorn <[email protected]>
CC: Paul Jackson <[email protected]>
---
mm/page_alloc.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Index: b/mm/page_alloc.c
===================================================================
--- a/mm/page_alloc.c 2008-02-18 17:17:25.000000000 +0900
+++ b/mm/page_alloc.c 2008-02-29 15:17:03.000000000 +0900
@@ -1294,7 +1294,7 @@ static nodemask_t *zlc_setup(struct zone
if (!zlc)
return NULL;
- if (jiffies - zlc->last_full_zap > 1 * HZ) {
+ if (time_after(jiffies, zlc->last_full_zap + HZ)) {
bitmap_zero(zlc->fullzones, MAX_ZONES_PER_ZONELIST);
zlc->last_full_zap = jiffies;
}
On Fri, 29 Feb 2008 15:19:39 +0900 KOSAKI Motohiro <[email protected]> wrote:
> Hi
>
> I found very small bug during review mel's 2 zonelist patch series.
>
> this patch is trivial clean up.
> jiffies subtraction may cause overflow problem.
> it shold be used time_after().
>
> Thanks.
>
>
> Signed-off-by: KOSAKI Motohiro <[email protected]>
> CC: Lee Schermerhorn <[email protected]>
> CC: Paul Jackson <[email protected]>
> ---
> mm/page_alloc.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> Index: b/mm/page_alloc.c
> ===================================================================
> --- a/mm/page_alloc.c 2008-02-18 17:17:25.000000000 +0900
> +++ b/mm/page_alloc.c 2008-02-29 15:17:03.000000000 +0900
> @@ -1294,7 +1294,7 @@ static nodemask_t *zlc_setup(struct zone
> if (!zlc)
> return NULL;
>
> - if (jiffies - zlc->last_full_zap > 1 * HZ) {
> + if (time_after(jiffies, zlc->last_full_zap + HZ)) {
> bitmap_zero(zlc->fullzones, MAX_ZONES_PER_ZONELIST);
> zlc->last_full_zap = jiffies;
> }
That's a mainline bug. Also present in 2.6.24, maybe earlier.
But it's a minor one - we'll fix it up one second later (yes?)
> > - if (jiffies - zlc->last_full_zap > 1 * HZ) {
> > + if (time_after(jiffies, zlc->last_full_zap + HZ)) {
> > bitmap_zero(zlc->fullzones, MAX_ZONES_PER_ZONELIST);
> > zlc->last_full_zap = jiffies;
> > }
>
> That's a mainline bug. Also present in 2.6.24, maybe earlier.
> But it's a minor one - we'll fix it up one second later (yes?)
I think so, may be.
Thanks.
-kosaki
Hi;
29 Şub 2008 Cum tarihinde, KOSAKI Motohiro şunları yazmıştı:
> > > - if (jiffies - zlc->last_full_zap > 1 * HZ) {
> > > + if (time_after(jiffies, zlc->last_full_zap + HZ)) {
> > > bitmap_zero(zlc->fullzones, MAX_ZONES_PER_ZONELIST);
> > > zlc->last_full_zap = jiffies;
> > > }
> >
> > That's a mainline bug. Also present in 2.6.24, maybe earlier.
> > But it's a minor one - we'll fix it up one second later (yes?)
>
> I think so, may be.
Andrew "Use time_* macros" series i sent to LKML on 14 Feb [1] has this chunk also (and by the way this version not includes linux/jiffies.h for time_after macro). Some part of this series already gone into Linus's tree with different subsystems but others not received any review/ack or nack. Will you grab others for -mm or will i resend them?
[1] http://lkml.org/lkml/2008/2/14/195
Cheers
--
S.Çağlar Onur <[email protected]>
http://cekirdek.pardus.org.tr/~caglar/
Linux is like living in a teepee. No Windows, no Gates and an Apache in house!
kosaki-san wrote:
> - if (jiffies - zlc->last_full_zap > 1 * HZ) {
> + if (time_after(jiffies, zlc->last_full_zap + HZ)) {
Nice catch. Thank-you.
--
I won't rest till it's the best ...
Programmer, Linux Scalability
Paul Jackson <[email protected]> 1.940.382.4214