Re: Overalyfs regression in 4.0

From: Jordi Pujol Palomer
Date: Wed May 13 2015 - 14:19:47 EST


Hello,

Tested-by: Jordi Pujol Palomer <jordipujolp@xxxxxxxxx>

Have compiled the version 4.0.3 adding this patch, it works in a
Live OS,

# rmdir /mnt/
# mkdir -p /mnt
# touch /mnt/file
# rmdir /mnt/
rmdir: failed to remove â/mnt/â: Directory not empty
# uname -a
Linux pcjordi 4.0.3-1-haswell-lnet-amd64 #1 SMP PREEMPT Wed May 13 19:38:19 CEST 2015 x86_64 GNU/Linux
#

Thanks,

Jordi Pujol


EL Wed, 13 May 2015 17:11:01 +0200
Miklos Szeredi <miklos@xxxxxxxxxx> escriguÃ:

> ---
> Subject: ovl: don't remove non-empty opaque directory
> From: Miklos Szeredi <mszeredi@xxxxxxx>
>
> When removing an opaque directory we can't just call rmdir() to check
> for emptyness, because the directory will need to be replaced with a
> whiteout. The replacement is done with RENAME_EXCHANGE, which doesn't
> check emptyness.
>
> Solution is just to check emptyness by reading the directory. In the
> future we could add a new rename flag to check for emptyness even for
> RENAME_EXCHANGE to optimize this case.
>
> Reported-by: Vincent Batts <vbatts@xxxxxxxxx>
> Signed-off-by: Miklos Szeredi <mszeredi@xxxxxxx>
> Fixes: 263b4a0fee43 ("ovl: dont replace opaque dir")
> Cc: <stable@xxxxxxxxxxxxxxx> # v4.0+
> ---
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/