Messages in this thread | | | Date | Tue, 23 Mar 2010 15:09:23 +0000 | From | Al Viro <> | Subject | Re: [PATCH] Introduce freeze_super and thaw_super for the fsfreeze ioctl |
| |
On Tue, Mar 23, 2010 at 11:03:01AM -0400, Josef Bacik wrote: > > sb is an active reference > > > > I don't understand how this is an active reference? We are talking about > s_active right?
It's an opened file, for crying out loud! If there is anything that makes sure that superblock will stay alive, that is it...
And lose the "locked" argument, please. The sane solution is to make get_active_super() return it unlocked and have your freeze_bdev() simply grab s_umount. Unconditionally. I'll do the first part in #untested in a minute or so (and make it grab s_umount in the current variant of code in fs/block_dev.c); then your patch would shift taking s_umount down into freeze_super().
| |