* Can't mount subvolume with ro option
@ 2014-06-27 20:07 Sébastien ROHAUT
2014-06-27 22:08 ` Chris Murphy
0 siblings, 1 reply; 7+ messages in thread
From: Sébastien ROHAUT @ 2014-06-27 20:07 UTC (permalink / raw)
To: linux-btrfs
Hi,
In the wiki, it's said we can mount subvolumes with different mount
options. nosuid, nodev, rw and ro are listed, as valid generic mount
options.
https://btrfs.wiki.kernel.org/index.php/FAQ#Can_I_mount_subvolumes_with_different_mount_options.3F
But, when I try to mount my subvolume in read only I get an error.
# df
/dev/sdb1 5242880 352 4689856 1% /my_btrfs
# btrfs subvolume list /my_btrfs
ID 257 gen 10 top level 5 path subvol1
# LANG=C mount -t btrfs -o subvol=subvol1,ro /dev/sdb1 /my_btrfs/subvol1_mnt
mount: /dev/sdb1 is already mounted or /my_btrfs/subvol1_mnt busy
/dev/sdb1 is already mounted on /my_btrfs
nodev and nosuid are working.
Is there an error in the wiki, or do I do something wrong ?
Thanks,
Sebastien ROHAUT
Some infos :
# cat /etc/redhat-release
Fedora release 20 (Heisenbug)
# uname -a
Linux localhost.localdomain 3.14.7-200.fc20.x86_64 #1 SMP Wed Jun 11
22:38:05 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
# btrfs --version
Btrfs v3.14.1
# btrfs fi show
Label: none uuid: 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
Total devices 1 FS bytes used 208.00KiB
devid 1 size 5.00GiB used 548.00MiB path /dev/sdb1
Btrfs v3.14.1
# dmesg|grep -i btrfs
[ 2.753052] Btrfs loaded
[ 2.766655] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 9 /dev/sdb1
[ 36.382921] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 9 /dev/sdb1
[ 36.389497] BTRFS info (device sdb1): disk space caching is enabled
[ 36.393462] SELinux: initialized (dev sdb1, type btrfs), uses xattr
[ 860.375237] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 9 /dev/sdb1
[ 1141.451952] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 10 /dev/sdb1
[ 1379.802221] BTRFS info (device sdb1): disk space caching is enabled
[ 1513.815988] BTRFS info (device sdb1): disk space caching is enabled
[ 1529.839598] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 11 /dev/sdb1
[ 1624.310822] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 11 /dev/sdb1
[ 1650.630700] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 11 /dev/sdb1
[ 2297.318435] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 11 /dev/sdb1
[ 2305.110964] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 11 /dev/sdb1
[ 2332.863021] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 12 /dev/sdb1
[ 2344.573903] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 12 /dev/sdb1
[ 2348.597860] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 12 /dev/sdb1
[ 2580.620032] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 13 /dev/sdb1
[ 2645.162881] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 13 /dev/sdb1
[ 2706.458681] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 13 /dev/sdb1
[ 2727.745959] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 13 /dev/sdb1
[ 2797.601678] BTRFS: device fsid 66e0f120-e478-4cac-b04a-82a0ffc4d6ce
devid 1 transid 13 /dev/sdb1
^ permalink raw reply [flat|nested] 7+ messages in thread* Re: Can't mount subvolume with ro option 2014-06-27 20:07 Can't mount subvolume with ro option Sébastien ROHAUT @ 2014-06-27 22:08 ` Chris Murphy 2014-06-27 22:12 ` Chris Murphy 0 siblings, 1 reply; 7+ messages in thread From: Chris Murphy @ 2014-06-27 22:08 UTC (permalink / raw) To: Sébastien ROHAUT; +Cc: linux-btrfs On Jun 27, 2014, at 2:07 PM, Sébastien ROHAUT <sebastien.rohaut@free.fr> wrote: > Hi, > > In the wiki, it's said we can mount subvolumes with different mount options. nosuid, nodev, rw and ro are listed, as valid generic mount options. This might require 3.15. I don't recall it working with early 3.14 kernels, but by 3.14.3 I'd moved onto testing 3.15. [root@rawhide ~]# mount /dev/sda3 /mnt [root@rawhide ~]# btrfs subvol create /mnt/test Create subvolume '/mnt/test' [root@rawhide ~]# umount /mnt [root@rawhide ~]# mount -o ro,subvol=test /dev/sda3 /mnt [root@rawhide ~]# mount | grep btrfs /dev/sda3 on / type btrfs (rw,relatime,seclabel,space_cache,autodefrag) /dev/sda3 on /home type btrfs (rw,relatime,seclabel,space_cache,autodefrag) /dev/sda3 on /var type btrfs (rw,relatime,seclabel,space_cache,autodefrag) /dev/sda3 on /boot type btrfs (rw,relatime,seclabel,space_cache,autodefrag) /dev/sda3 on /mnt type btrfs (ro,relatime,seclabel,space_cache,autodefrag) [root@rawhide ~]# cat /proc/self/mountinfo | grep btrfs 58 0 0:33 /root / rw,relatime shared:1 - btrfs /dev/sda3 rw,seclabel,space_cache,autodefrag 72 58 0:33 /home /home rw,relatime shared:29 - btrfs /dev/sda3 rw,seclabel,space_cache,autodefrag 74 58 0:33 /var /var rw,relatime shared:30 - btrfs /dev/sda3 rw,seclabel,space_cache,autodefrag 76 58 0:33 /boot /boot rw,relatime shared:31 - btrfs /dev/sda3 rw,seclabel,space_cache,autodefrag 84 58 0:33 /test /mnt ro,relatime shared:35 - btrfs /dev/sda3 rw,seclabel,space_cache,autodefrag So on my end it seems like it's working correctly with 3.15. Chris Murphy ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Can't mount subvolume with ro option 2014-06-27 22:08 ` Chris Murphy @ 2014-06-27 22:12 ` Chris Murphy 2014-06-28 11:02 ` Sébastien ROHAUT 0 siblings, 1 reply; 7+ messages in thread From: Chris Murphy @ 2014-06-27 22:12 UTC (permalink / raw) To: Sébastien ROHAUT; +Cc: linux-btrfs On Jun 27, 2014, at 4:08 PM, Chris Murphy <lists@colorremedies.com> wrote: > > On Jun 27, 2014, at 2:07 PM, Sébastien ROHAUT <sebastien.rohaut@free.fr> wrote: > >> Hi, >> >> In the wiki, it's said we can mount subvolumes with different mount options. nosuid, nodev, rw and ro are listed, as valid generic mount options. > > This might require 3.15. I don't recall it working with early 3.14 kernels, but by 3.14.3 I'd moved onto testing 3.15. [root@f20v ~]# mount /dev/sda3 /mnt [root@f20v ~]# btrfs subvol create /mnt/test Create subvolume '/mnt/test' [root@f20v ~]# umount /mnt [root@f20v ~]# mount -o ro,subvol=test /dev/sda3 /mnt mount: /dev/sda3 is already mounted or /mnt busy /dev/sda3 is already mounted on / /dev/sda3 is already mounted on /home /dev/sda3 is already mounted on /var /dev/sda3 is already mounted on /boot [root@f20v ~]# uname -r 3.14.6-200.fc20.x86_64 I don't know if this feature will be backported to stable kernels. If not, then probably the wiki should say it's a 3.15+ feature. Chris Murphy ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Can't mount subvolume with ro option 2014-06-27 22:12 ` Chris Murphy @ 2014-06-28 11:02 ` Sébastien ROHAUT 2014-06-30 2:19 ` Qu Wenruo 0 siblings, 1 reply; 7+ messages in thread From: Sébastien ROHAUT @ 2014-06-28 11:02 UTC (permalink / raw) To: Chris Murphy; +Cc: linux-btrfs Le 28/06/2014 00:12, Chris Murphy a écrit : > On Jun 27, 2014, at 4:08 PM, Chris Murphy <lists@colorremedies.com> wrote: > >> On Jun 27, 2014, at 2:07 PM, Sébastien ROHAUT <sebastien.rohaut@free.fr> wrote: >> >>> Hi, >>> >>> In the wiki, it's said we can mount subvolumes with different mount options. nosuid, nodev, rw and ro are listed, as valid generic mount options. >> This might require 3.15. I don't recall it working with early 3.14 kernels, but by 3.14.3 I'd moved onto testing 3.15. > > [root@f20v ~]# mount /dev/sda3 /mnt > [root@f20v ~]# btrfs subvol create /mnt/test > Create subvolume '/mnt/test' > [root@f20v ~]# umount /mnt > [root@f20v ~]# mount -o ro,subvol=test /dev/sda3 /mnt > mount: /dev/sda3 is already mounted or /mnt busy > /dev/sda3 is already mounted on / > /dev/sda3 is already mounted on /home > /dev/sda3 is already mounted on /var > /dev/sda3 is already mounted on /boot > [root@f20v ~]# uname -r > 3.14.6-200.fc20.x86_64 > > > I don't know if this feature will be backported to stable kernels. If not, then probably the wiki should say it's a 3.15+ feature. > Chris Murphy > > Thank you for your answer. I'm actually moving to a Fedora Rawhide (3.16 kernel). Sebastien Rohaut ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Can't mount subvolume with ro option 2014-06-28 11:02 ` Sébastien ROHAUT @ 2014-06-30 2:19 ` Qu Wenruo 2014-06-30 2:57 ` Qu Wenruo 0 siblings, 1 reply; 7+ messages in thread From: Qu Wenruo @ 2014-06-30 2:19 UTC (permalink / raw) To: Sébastien ROHAUT, Chris Murphy; +Cc: linux-btrfs -------- Original Message -------- Subject: Re: Can't mount subvolume with ro option From: Sébastien ROHAUT <sebastien.rohaut@free.fr> To: Chris Murphy <lists@colorremedies.com> Date: 2014年06月28日 19:02 > Le 28/06/2014 00:12, Chris Murphy a écrit : >> On Jun 27, 2014, at 4:08 PM, Chris Murphy <lists@colorremedies.com> >> wrote: >> >>> On Jun 27, 2014, at 2:07 PM, Sébastien ROHAUT >>> <sebastien.rohaut@free.fr> wrote: >>> >>>> Hi, >>>> >>>> In the wiki, it's said we can mount subvolumes with different mount >>>> options. nosuid, nodev, rw and ro are listed, as valid generic >>>> mount options. >>> This might require 3.15. I don't recall it working with early 3.14 >>> kernels, but by 3.14.3 I'd moved onto testing 3.15. >> >> [root@f20v ~]# mount /dev/sda3 /mnt >> [root@f20v ~]# btrfs subvol create /mnt/test >> Create subvolume '/mnt/test' >> [root@f20v ~]# umount /mnt >> [root@f20v ~]# mount -o ro,subvol=test /dev/sda3 /mnt >> mount: /dev/sda3 is already mounted or /mnt busy >> /dev/sda3 is already mounted on / >> /dev/sda3 is already mounted on /home >> /dev/sda3 is already mounted on /var >> /dev/sda3 is already mounted on /boot >> [root@f20v ~]# uname -r >> 3.14.6-200.fc20.x86_64 >> >> >> I don't know if this feature will be backported to stable kernels. If >> not, then probably the wiki should say it's a 3.15+ feature. >> Chris Murphy >> >> > Thank you for your answer. I'm actually moving to a Fedora Rawhide > (3.16 kernel). > > Sebastien Rohaut > -- > To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html When testing on 3.15.2-ARCH alone with 3.16-rc2, the problem can also be reproduced. But I can't always reproduce it, sometimes I was able to mount subvol with ro, somtimes not. So I think the problem needs to be investigated further. Thanks, Qu ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Can't mount subvolume with ro option 2014-06-30 2:19 ` Qu Wenruo @ 2014-06-30 2:57 ` Qu Wenruo 2014-06-30 3:31 ` Chris Murphy 0 siblings, 1 reply; 7+ messages in thread From: Qu Wenruo @ 2014-06-30 2:57 UTC (permalink / raw) To: Sébastien ROHAUT, Chris Murphy; +Cc: linux-btrfs -------- Original Message -------- Subject: Re: Can't mount subvolume with ro option From: Qu Wenruo <quwenruo@cn.fujitsu.com> To: Sébastien ROHAUT <sebastien.rohaut@free.fr>, Chris Murphy <lists@colorremedies.com> Date: 2014年06月30日 10:19 > > -------- Original Message -------- > Subject: Re: Can't mount subvolume with ro option > From: Sébastien ROHAUT <sebastien.rohaut@free.fr> > To: Chris Murphy <lists@colorremedies.com> > Date: 2014年06月28日 19:02 >> Le 28/06/2014 00:12, Chris Murphy a écrit : >>> On Jun 27, 2014, at 4:08 PM, Chris Murphy <lists@colorremedies.com> >>> wrote: >>> >>>> On Jun 27, 2014, at 2:07 PM, Sébastien ROHAUT >>>> <sebastien.rohaut@free.fr> wrote: >>>> >>>>> Hi, >>>>> >>>>> In the wiki, it's said we can mount subvolumes with different >>>>> mount options. nosuid, nodev, rw and ro are listed, as valid >>>>> generic mount options. >>>> This might require 3.15. I don't recall it working with early 3.14 >>>> kernels, but by 3.14.3 I'd moved onto testing 3.15. >>> >>> [root@f20v ~]# mount /dev/sda3 /mnt >>> [root@f20v ~]# btrfs subvol create /mnt/test >>> Create subvolume '/mnt/test' >>> [root@f20v ~]# umount /mnt >>> [root@f20v ~]# mount -o ro,subvol=test /dev/sda3 /mnt >>> mount: /dev/sda3 is already mounted or /mnt busy >>> /dev/sda3 is already mounted on / >>> /dev/sda3 is already mounted on /home >>> /dev/sda3 is already mounted on /var >>> /dev/sda3 is already mounted on /boot >>> [root@f20v ~]# uname -r >>> 3.14.6-200.fc20.x86_64 >>> >>> >>> I don't know if this feature will be backported to stable kernels. >>> If not, then probably the wiki should say it's a 3.15+ feature. >>> Chris Murphy >>> >>> >> Thank you for your answer. I'm actually moving to a Fedora Rawhide >> (3.16 kernel). >> >> Sebastien Rohaut >> -- >> To unsubscribe from this list: send the line "unsubscribe >> linux-btrfs" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html > When testing on 3.15.2-ARCH alone with 3.16-rc2, the problem can also > be reproduced. > > But I can't always reproduce it, sometimes I was able to mount subvol > with ro, > somtimes not. > > So I think the problem needs to be investigated further. > > Thanks, > Qu > -- > To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html Finally find the stable method to reproduce the problem on 3.16-rc2, the point is if we mount subvol,ro first, then you can't mount the hole device: # mkfs.btrfs -f /dev/sda6 # mount /dev/sda6 /mnt/btrfs/ # btrfs sub create /mnt/btrfs/subv Create subvolume '/mnt/btrfs/subv' # umount /mnt/btrfs # mount -o subvol=subv,ro /dev/sda6 /mnt/other/ # LANG=C mount /dev/sda6 /mnt/btrfs/ mount: /dev/sda6 is already mounted or /mnt/btrfs busy /dev/sda6 is already mounted on /mnt/other Thanks, Qu ^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: Can't mount subvolume with ro option 2014-06-30 2:57 ` Qu Wenruo @ 2014-06-30 3:31 ` Chris Murphy 0 siblings, 0 replies; 7+ messages in thread From: Chris Murphy @ 2014-06-30 3:31 UTC (permalink / raw) To: Qu Wenruo; +Cc: Sébastien ROHAUT, linux-btrfs On Jun 29, 2014, at 8:57 PM, Qu Wenruo <quwenruo@cn.fujitsu.com> wrote: >> > Finally find the stable method to reproduce the problem on 3.16-rc2, > the point is if we mount subvol,ro first, then you can't mount the hole device: > > # mkfs.btrfs -f /dev/sda6 > # mount /dev/sda6 /mnt/btrfs/ > # btrfs sub create /mnt/btrfs/subv > Create subvolume '/mnt/btrfs/subv' > # umount /mnt/btrfs > # mount -o subvol=subv,ro /dev/sda6 /mnt/other/ > # LANG=C mount /dev/sda6 /mnt/btrfs/ > mount: /dev/sda6 is already mounted or /mnt/btrfs busy > /dev/sda6 is already mounted on /mnt/other Similar problem: if you mount subvol,rw and then subvol,ro it succeeds, but then mount another subvol,rw it fails. Chris Murphy ^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2014-06-30 3:31 UTC | newest] Thread overview: 7+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2014-06-27 20:07 Can't mount subvolume with ro option Sébastien ROHAUT 2014-06-27 22:08 ` Chris Murphy 2014-06-27 22:12 ` Chris Murphy 2014-06-28 11:02 ` Sébastien ROHAUT 2014-06-30 2:19 ` Qu Wenruo 2014-06-30 2:57 ` Qu Wenruo 2014-06-30 3:31 ` Chris Murphy
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).