[Mesa-dev] [PATCH] tests/cache_test: allow crossing mount points

Nicolai Hähnle nhaehnle at gmail.com
Tue Mar 28 14:53:16 UTC 2017


On 25.03.2017 01:40, Juan A. Suarez Romero wrote:
> When using an overlayfs system (like a Docker container), rmrf_local()
> fails because part of the files to be removed are in different mount
> points (layouts). And thus cache-test fails.

Can you explain a bit more how this can happen? I thought the test does

mkdir(CACHE_TEST_TMP, 0755);

...

rmrf_local(CACHE_TEST_TMP);

How does this end up crossing mounts?

Nicolai



>
> Letting crossing mount points is not a big problem, specially because
> this is just for a test, not to be used in real code.
> ---
>  src/compiler/glsl/tests/cache_test.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/compiler/glsl/tests/cache_test.c b/src/compiler/glsl/tests/cache_test.c
> index 2302f44..ac60197 100644
> --- a/src/compiler/glsl/tests/cache_test.c
> +++ b/src/compiler/glsl/tests/cache_test.c
> @@ -124,7 +124,7 @@ rmrf_local(const char *path)
>     if (path == NULL || *path == '\0' || *path != '.')
>        return -1;
>
> -   return nftw(path, remove_entry, 64, FTW_DEPTH | FTW_PHYS | FTW_MOUNT);
> +   return nftw(path, remove_entry, 64, FTW_DEPTH | FTW_PHYS);
>  }
>
>  static void
>


-- 
Lerne, wie die Welt wirklich ist,
Aber vergiss niemals, wie sie sein sollte.


More information about the mesa-dev mailing list