lkml.org 
[lkml]   [2004]   [Jan]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Fix sleep_on abuse in XFS, Was: Re: 2.6.2-rc2-mm1 (Breakage?)
On Wed, Jan 28, 2004 at 03:02:06PM +0000, Christoph Hellwig wrote:
> ...
> INIT_LIST_HEAD(&tmp);
> do {
> /* swsusp */
> if (current->flags & PF_FREEZE)
> refrigerator(PF_IOTHREAD);
> - if (pbd_active == 1) {
> - mod_timer(&pb_daemon_timer,
> - jiffies + pb_params.flush_interval.val);
> - interruptible_sleep_on(&pbd_waitq);
> - }
> -
> - if (pbd_active == 0) {
> - del_timer_sync(&pb_daemon_timer);
> - }
> + schedule_timeout(pb_params.flush_interval.val);

After a bit more testing, looks like we'll also need a

current->state = TASK_INTERRUPTIBLE;

line before the schedule_timeout call, else pagebufd eats
a whole lot of system time on one CPU.

I'll send an XFS update to Linus and Andrew tomorrow after
some further testing.

thanks.

--
Nathan
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:00    [from the cache]
©2003-2011 Jasper Spaans