Re: [RFC PATCH 26/26] UBIFS: include FS to compilation

From: ext Christoph Hellwig
Date: Mon Apr 28 2008 - 05:04:03 EST


On Mon, Apr 28, 2008 at 10:10:07AM +0300, Adrian Hunter wrote:
>>> So instead of arguing about this you really ought to look at what
>>> SLUB, for example, does. It's perfectly okay to have _debugging
>>> checks_ compiled out (stuff like verify_inode and such) but at the
>>> assertion level it makes no sense whatsoever!
>>
>> Yes, having this in filesystems is not very nice.
>
> A technical reason would be more compelling than "not very nice".

These checks are if properly maintained not harmful for the code,
but they make the code less readable and there's of course the chance
that they get out of sync. That's why the term "not very nice" is
entirely apropinquate here.

>> If someone feels
>> very strong about interface assertation we should add them at the
>> method level boundary so that the interface is verified for all
>> filesystems.
>>
>
> The checks are not valid for all file systems.
>
> The point of the checks as preconditions is lost if they moved elsewhere.
>
> VFS code paths are not simple, so the suggestion is impractical anyway.

Most of these checks are indeed generic. Those that arise from special
filesystem invariants like not having unmapped buffers due to
implementing ->page_mkwrite should for now be checked in the filesystem,
although I'd like to make sure this is true for all filesystems
long-term.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/