lkml.org 
[lkml]   [2000]   [Feb]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: lowlatency-2.2.14-B1 + 2.2.14aa7 fixes crash, but...
On Tue, 22 Feb 2000, Stephen C. Tweedie wrote:

>Hi,
>
>On Mon, 21 Feb 2000 23:43:41 +0100 (CET), Andrea Arcangeli
><andrea@suse.de> said:
>
>> On Mon, 21 Feb 2000, William Montgomery wrote:
>>> Any ideas?
>
>> I had a fast look at the buffer.c part of lowlatency-2.2.14-B1 patch and
>> the bh->b_count++; schedule(); bh->b_count-- added in buffer.c are buggy.
>> Also the schedules in brelse/bforget are buggy since such functions are
>> never been supposed to block.
>
>On the contrary --- in 2.2, brelse has always been able to block. It
>performs an implicit refile_buffer(), which can block for write
>throttling.

refile_buffer blocks only if the buffer is been marked dirty and it wasn't
in the dirty lru list.

How can a dirty buffer not be in the dirty lru list at brelse time?

If you grep for BH_Dirty you'll see that nobody sets BH_Dirty by hand and
everybody uses mark_buffer_dirty (and that's definitly correct). Thus
brelse can't block in 2.2.x as well as far I can tell.

I assumed the refile buffer there was for cleanup and not for write
throttling (that's the only case that can block).

Andrea


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

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