Re: OverlayFS with Cephfs to mount a snapshot read/write

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Jeff,

I understand the idea behind patch [1] but it breaks the operation of overlayfs with cephfs. Should the patch be abandoned and tests be modified or should overlayfs code be adapted to work with cephfs, if that's possible?

Either way, it'd be nice if overlayfs could work again with cephfs out of the box without requiring users to patch and build their own kernels past 5.4+. :-)

Regards,

Frédéric.

[1] https://www.spinics.net/lists/ceph-devel/msg46183.html

Le 09/11/2020 à 19:52, Jeff Layton a écrit :
Yes, you'd have to apply the patch to that kernel yourself. No RHEL7
kernels have that patch (so far). Newer RHEL8 kernels _do_ if that's an
option for you.
-- Jeff

On Mon, 2020-11-09 at 19:21 +0100, Frédéric Nass wrote:
I feel lucky to have you on this one. ;-) Do you mean applying a
specific patch on 3.10 kernel? Or is this one too old to have it working
anyways.

Frédéric.

Le 09/11/2020 à 19:07, Luis Henriques a écrit :
Frédéric Nass <frederic.nass@xxxxxxxxxxxxxxxx> writes:

Hi Luis,

Thanks for your help. Sorry I forgot about the kernel details. This is latest
RHEL 7.9.

~/ uname -r
3.10.0-1160.2.2.el7.x86_64

~/ grep CONFIG_TMPFS_XATTR /boot/config-3.10.0-1160.2.2.el7.x86_64
CONFIG_TMPFS_XATTR=y

upper directory /upperdir is using xattrs

~/ ls -l /dev/mapper/vg0-racine
lrwxrwxrwx 1 root root 7  6 mars   2020 /dev/mapper/vg0-racine -> ../dm-0

~/ cat /proc/fs/ext4/dm-0/options | grep xattr
user_xattr

~/ setfattr -n user.name -v upperdir /upperdir

~/ getfattr -n user.name /upperdir
getfattr: Suppression des « / » en tête des chemins absolus
# file: upperdir
user.name="upperdir"

Are you able to modify the content of a snapshot directory using overlayfs on
your side?
[ Cc'ing Jeff ]

Yes, I'm able to do that using a *recent* kernel.  I got curious and after
some digging I managed to reproduce the issue with kernel 5.3.  The
culprit was commit e09580b343aa ("ceph: don't list vxattrs in
listxattr()"), in 5.4.

Getting a bit more into the whole rabbit hole, it looks like
ovl_copy_xattr() will try to copy all the ceph-related vxattrs.  And that
won't work (for ex. for ceph.dir.entries).

Can you try cherry-picking this commit into your kernel to see if that
fixes it for you?

Cheers,
_______________________________________________
ceph-users mailing list -- ceph-users@xxxxxxx
To unsubscribe send an email to ceph-users-leave@xxxxxxx




[Index of Archives]     [Information on CEPH]     [Linux Filesystem Development]     [Ceph Development]     [Ceph Large]     [Ceph Dev]     [Linux USB Development]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [xfs]


  Powered by Linux