Re: [GIT PATCH] another tranche of SCSI updates for 2.6.26

Linus Torvalds
2008-04-28T16:06:22Z

On Sun, 27 Apr 2008, James Bottomley wrote:
>
> Try this; the signature for an uninitialised free list is easy (both
> list pointers NULL), so the patch detects that and doesn't try to run
> over the uninitialised list head.

Why aren't these things initialized?

You say that the signature of an uninitialised free list is trivial, but
that's not at all true in general. It depends intimately on how the memory
was allocated, and is thus very subtle indeed - some change to allocations
can break something simple like this, by initializing it with random old
memory contents.

So why not just initialize lists like this so early (ie at allocation
time) that problems like this cannot happen? Instead of adding ugly and
fragile cases to the freeing?

Linus