[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20080630203401.f9bcfe84.akpm@linux-foundation.org>
Date: Mon, 30 Jun 2008 20:34:01 -0700
From: Andrew Morton <akpm@...ux-foundation.org>
To: OGAWA Hirofumi <hirofumi@...l.parknet.co.jp>
Cc: linux-kernel@...r.kernel.org
Subject: Re: [PATCH 7/7] Fix the case of jiffies wrapping in mm/pdflush.c
On Tue, 01 Jul 2008 11:57:04 +0900 OGAWA Hirofumi <hirofumi@...l.parknet.co.jp> wrote:
>
>
> Signed-off-by: OGAWA Hirofumi <hirofumi@...l.parknet.co.jp>
> ---
>
> mm/pdflush.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff -puN mm/pdflush.c~pdfluh-jiffies-check-fix mm/pdflush.c
> --- linux-2.6/mm/pdflush.c~pdfluh-jiffies-check-fix 2008-07-01 10:19:07.000000000 +0900
> +++ linux-2.6-hirofumi/mm/pdflush.c 2008-07-01 10:19:07.000000000 +0900
> @@ -130,7 +130,7 @@ static int __pdflush(struct pdflush_work
> * Thread creation: For how long have there been zero
> * available threads?
> */
> - if (jiffies - last_empty_jifs > 1 * HZ) {
> + if (time_after(jiffies, last_empty_jifs + 1 * HZ)) {
> /* unlocked list_empty() test is OK here */
> if (list_empty(&pdflush_list)) {
> /* unlocked test is OK here */
> @@ -151,7 +151,7 @@ static int __pdflush(struct pdflush_work
> if (nr_pdflush_threads <= MIN_PDFLUSH_THREADS)
> continue;
> pdf = list_entry(pdflush_list.prev, struct pdflush_work, list);
> - if (jiffies - pdf->when_i_went_to_sleep > 1 * HZ) {
> + if (time_after(jiffies, pdf->when_i_went_to_sleep + 1 * HZ)) {
> /* Limit exit rate */
> pdf->when_i_went_to_sleep = jiffies;
> break; /* exeunt */
I don't think this actually "fixes" anything, does it? The old code
should be correct at runtime.
I renamed the patch to "pdflush: use time_after() instead of open-coding it".
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists