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

Fabian Grünbichler f.gruenbichler at proxmox.com
Thu Apr 18 10:36:45 CEST 2024


On April 17, 2024 4:35 pm, Filip Schauer wrote:
> 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>
> ---
> Changes since v3:
> * Simplify ext4 detection
> * Do not add noacl if $acl is undefined
> 
>  src/PVE/LXC.pm | 16 ++++++++++++++--
>  1 file changed, 14 insertions(+), 2 deletions(-)
> 
> diff --git a/src/PVE/LXC.pm b/src/PVE/LXC.pm
> index e688ea6..394ffb8 100644
> --- a/src/PVE/LXC.pm
> +++ b/src/PVE/LXC.pm
> @@ -1825,8 +1825,20 @@ sub __mountpoint_mount {
>      }
>  
>      my $acl = $mountpoint->{acl};
> -    if (defined($acl)) {
> -	push @$optlist, ($acl ? 'acl' : 'noacl');
> +
> +    if ($acl) {
> +	push @$optlist, 'acl';
> +    } elsif (defined($acl)) {
> +	my $noacl = 1;
> +
> +	if ($storage) {
> +	    my (undef, undef, undef, undef, undef, undef, $format) =
> +		PVE::Storage::parse_volname($storage_cfg, $volid);

now we call this twice :-/ could we maybe just move this part into the
if below, where we already know about the format?

here we could push 'noacl' if $acl is defined but false, and $storage is
undef

and then below in the `if ($storage) {` branch once we have the format,
we can push '-o noacl' to @extra_opts if $acl is defined but false, and
$format is not 'raw'?

makes the patch smaller as well I'd say ;)

> +
> +	    $noacl = 0 if $format eq 'raw';
> +	}
> +
> +	push @$optlist, 'noacl' if $noacl;
>      }
>  
>      my $optstring = join(',', @$optlist);
> -- 
> 2.39.2
> 
> 
> 
> _______________________________________________
> pve-devel mailing list
> pve-devel at lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
> 
> 
> 




More information about the pve-devel mailing list