Re: [PATCH] Introduce freeze_super and thaw_super for the fsfreezeioctl

From: Al Viro
Date: Tue Mar 23 2010 - 19:47:28 EST


On Tue, Mar 23, 2010 at 11:18:03PM +0000, Al Viro wrote:
> [snip the horror]
>
> a) traversing superblock list without any locking whatsoever
> b) accessing superblock fields <....>
> c) <.........................> without making sure that it's not
> going to disappear
> d) calling freeze_bdev() without any warranties that its argument
> is not going to be freed under you
> e) layering violations all over the place
> etc.

BTW, superblock can be kept alive by an opened file. umount -l, for example,
will give that. So it can get freed whenever the last reference to struct
file can go away (AF_UNIX garbage collection, etc.)
--
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/