Re: 2.5 Problem Status Report

Jens Axboe
2002-09-11T11:12:45Z

On Wed, Sep 11 2002, Oleg Drokin wrote:
> Hello!
>
> On Wed, Sep 11, 2002 at 12:58:07PM +0200, Jens Axboe wrote:
>
> > > > > ok I see the bug. it's due to the imbalanced nature of ide_map_buffer()
> > > > > vs ide_unmap_buffer(). i'll cook up a fix right away.
> > > > Does this make it work?
> > > No. It fails exactly like without the patch.
> > Hmm, ok I'll try and reproduce it here then.
>
> > > > - bio_kunmap_irq(buffer, flags);
> > > > + if (rq->bio)
> > > > + bio_kunmap_irq(buffer, flags);
> > > > }
> > > >
> > > Perhaps you forgot to make sure rq->bio is zeroed on unmapping/freeing?
> > rq->bio must not be zeroed or free'd or anything like that. ok I see
>
> Hm? So this branch is always executed? Why to check for it then?
> (I mean content of rq->bio, not the place where it points to).

ehm no it isn't always executed?! there might not be a ->bio attached to
the request. that goes for both ide_map_buffer() and ide_unmap_buffer()

> > what happens now. does this patch work for you? just back out the other
> > patch first (well you don't have to, but might as well).
>
> Ok, with other patch it still fails in the same way.
> I have not backed out other patch so I tested with both patches perent.

alright, seems I do have to try it myself... ok will do that.

--
Jens Axboe