[pve-devel] [PATCH container] fix #4846: Avoid the outdated noacl mount option on ext4

Fiona Ebner f.ebner at proxmox.com
Fri Feb 16 14:59:57 CET 2024


Am 01.09.23 um 11:05 schrieb Filip Schauer:
> Do not use the 'noacl' mount option when mounting a container disk with
> an ext4 file system. The option was removed from the kernel in commit
> 2d544ec923db
> 
> Signed-off-by: Filip Schauer <f.schauer at proxmox.com>
> ---
>  src/PVE/LXC.pm | 10 +++++++---
>  1 file changed, 7 insertions(+), 3 deletions(-)
> 
> diff --git a/src/PVE/LXC.pm b/src/PVE/LXC.pm
> index 1e9af0f..3ebce37 100644
> --- a/src/PVE/LXC.pm
> +++ b/src/PVE/LXC.pm
> @@ -1764,9 +1764,6 @@ sub __mountpoint_mount {
>      }
>  
>      my $acl = $mountpoint->{acl};
> -    if (defined($acl)) {
> -	push @$optlist, ($acl ? 'acl' : 'noacl');
> -    }
>  
>      my $optstring = join(',', @$optlist);

This is the last time optlist is read from, so the below hunk won't have
any effect?

>      my $readonly = $mountpoint->{ro};
> @@ -1787,6 +1784,13 @@ sub __mountpoint_mount {
>  
>  	$format = 'iso' if $vtype eq 'iso'; # allow to handle iso files
>  
> +	# Avoid the outdated 'noacl' mount option on ext4 file systems
> +	if ($scfg->{type} ne 'zfspool') {

While we only format Proxmox VE managed volumes with ext4, this mount
code is potentially called for other FS types too. For example, I can
manually format a mount point with BTRFS - where noacl is apparently
still a valid option. While a niche use case, and potentially something
we could risk breaking until somebody complains, maybe we can detect FS
type and filter based on that?

> +	    push @$optlist, 'acl' if $acl;
> +	} elsif (defined($acl)) {
> +	    push @$optlist, ($acl ? 'acl' : 'noacl');
> +	}
> +
>  	if ($format eq 'subvol') {
>  	    if ($mount_path) {
>  		my (undef, $name) = PVE::Storage::parse_volname($storage_cfg, $volid);




More information about the pve-devel mailing list