On Wed, 17 Oct 2007, Jens Axboe wrote: > > > > So avoiding the "sg_next()" on the last entry is pointless. > > Yeah, I didn't quite understand why if sg was valid, why dereferencing > *(sg + 1)->page would crap out :/
Actually, I take that back. If 'sg' is the last entry in a *non*linked scatter-gather list (ie we don't use the last entry as a link, we actually use it as a real SG entry), then "sg_next(sg)" will indeed access past the end of the whole allocated array, and will access one past the end. And with page-alloc debugging, that *will* blow up. So I think your change to use "sg_next()" only when you actually need a next pointer is the correct one after all. Linus - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/