Re: [bug] block subsystem related crash with latest -git

Jens Axboe
2007-10-17T18:41:06Z

On Wed, Oct 17 2007, Linus Torvalds wrote:
>
>
> On Wed, 17 Oct 2007, Linus Torvalds wrote:
> >
> > So I think your change to use "sg_next()" only when you actually need a
> > next pointer is the correct one after all.
>
> That still leaves the initialization issue. The link pointers need to all
> be initialized at SG allocation time (and not just the last one for the
> case where it's a linked entry).
>
> And if you initialize them at allocation time, does an allocation ever get
> re-used without being free'd in between (if it does, you do indeed need to
> initialize the non-link pointers each time - but I don't see it being the
> case, so ..)

The links will not change, so reuse should actually be OK. The reuse
cannot be larger than the original would hold, but that would be a bug
without chaining as well of course.

WRT reuse, if we end up requeuing a request, than we will go through the
whole thing again. I don't think Ingo is hitting that either, though.

--
Jens Axboe