On Sat, 10 Apr 1999, Chuck Lever wrote:
>bh->b_count = 0;
>remove_from_queues(bh);
>put_last_free(bh);
Don't forget bh->b_state = 0...
If you look at my last patch I posted on the list you'll notice that I
moved all the stuff in put_last_free() since it's perfectly legal to do
all the zeroing-u
On Sat, 10 Apr 1999, Andrea Arcangeli wrote:
> > It looks like we actually need to replace
> >remove_from_hash_queue(bh);
> > with
> >remove_from_queues(bh);
> >bh->b_dev = B_FREE;
> >insert_into_queues(bh);
>
> I just said exactly that some days ago in my _first_ email with the
> subject
On Sat, 10 Apr 1999, Andrea Arcangeli wrote:
> On Fri, 9 Apr 1999, Alexander Viro wrote:
>
> >> The bug of nr_hashed_buffers inconsistency is due where
> >> nr_hashed_buffers++ nr_hashed_buffers-- are been placed by me. They has to
> >> be placed in the path where pprev is != 0. It's really a
On Fri, 9 Apr 1999, Alexander Viro wrote:
>> The bug of nr_hashed_buffers inconsistency is due where
>> nr_hashed_buffers++ nr_hashed_buffers-- are been placed by me. They has to
>> be placed in the path where pprev is != 0. It's really a minor issue
>> though.
> I'm not sure...
I agree co
On Fri, 9 Apr 1999, Andrea Arcangeli wrote:
> On Fri, 9 Apr 1999, Alexander Viro wrote:
>
> >Repeat until the complete satisfaction (nr_hashed_buffers going negative ;-/)
>
> The bug of nr_hashed_buffers inconsistency is due where
> nr_hashed_buffers++ nr_hashed_buffers-- are been placed by m
On Fri, 9 Apr 1999, Alexander Viro wrote:
>Repeat until the complete satisfaction (nr_hashed_buffers going negative ;-/)
The bug of nr_hashed_buffers inconsistency is due where
nr_hashed_buffers++ nr_hashed_buffers-- are been placed by me. They has to
be placed in the path where pprev is != 0. I
On Fri, 9 Apr 1999, Alexander Viro wrote:
> set_blocksize() seems to do really odd thing:
> suppose you have clean buffer (b_count==0, all nice and dandy) with
> b_size==foo.
> set_blocksize(dev, bar) will leave it on a clean list and will call
> remove_from_hash_queue() on it.
> se
set_blocksize() seems to do really odd thing:
suppose you have clean buffer (b_count==0, all nice and dandy) with
b_size==foo.
set_blocksize(dev, bar) will leave it on a clean list and will call
remove_from_hash_queue() on it.
set_blocksize(dev,foo) now. Nothing happens with our