Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1377111

Re: loop subsystem corrupted after mounting multiple btrfs sub-volumes

From Stanislav Brabec <sbrabec@suse.cz>
Newsgroups linux.kernel
Subject Re: loop subsystem corrupted after mounting multiple btrfs sub-volumes
Date 2016-04-12 20:40 +0200
Message-ID <rnbod-3xO-1@gated-at.bofh.it> (permalink)
References (3 earlier) <r6tAR-640-7@gated-at.bofh.it> <r6uQi-6PP-15@gated-at.bofh.it> <r6w5I-7UQ-31@gated-at.bofh.it> <r6wS6-8v1-35@gated-at.bofh.it> <r6xl8-fl-7@gated-at.bofh.it>
Organization SUSE Linux, s. r. o.

Show all headers | View raw


On Feb 26, 2016 at 21:30 Al Viro wrote:
> Sigh...  sys_mount() (mount_bdev(), actually) has no way to tell if two
> loop devices refer to the same underlying object.  As far as it's
> concerned, you are asking to mount a completely unrelated block device.
> Which just happens to see the data (living in separate pagecache, even)
> modified behind its back (with some delay) after it gets written to another
> device.  Filesystem drivers generally don't like when something is screwing
> the underlying data, to put it mildly...
>

I wrote a loop device reuse patch for mount -oloop.

[PATCH 0/3] btrfs-safe implementation of -oloop
http://marc.info/?l=util-linux-ng&m=146048532307963&w=2

[PATCH 1/3] libmount: Re-organize is_mounted_same_loopfile()
http://marc.info/?l=util-linux-ng&m=146048535907971&w=2

[PATCH 2/3] libmount: reuse existing loop device
http://marc.info/?l=util-linux-ng&m=146048537807980&w=2

[PATCH 3/3] mount: Handle EROFS before calling mount() syscall
http://marc.info/?l=util-linux-ng&m=146048542007990&w=2

However it works for me, there are still some controversial issues
described in [PATCH 0/3].

These patches will hide corruption of kernel loop control structures
mentioned earlier in this thread and in most cases prevent data
corruption.

-- 
Best Regards / S pozdravem,

Stanislav Brabec
software developer
---------------------------------------------------------------------
SUSE LINUX, s. r. o.                         e-mail: sbrabec@suse.com
Lihovarská 1060/12                            tel: +49 911 7405384547
190 00 Praha 9                                 fax:  +420 284 084 001
Czech Republic                                    http://www.suse.cz/
PGP: 830B 40D5 9E05 35D8 5E27 6FA3 717C 209F A04F CD76

Back to linux.kernel | Previous | Next | Find similar | Unroll thread


Thread

Re: loop subsystem corrupted after mounting multiple btrfs  sub-volumes Stanislav Brabec <sbrabec@suse.cz> - 2016-04-12 20:40 +0200

csiph-web