linux-next: build failure after merge of the vfs tree

From: Stephen Rothwell
Date: Sun Sep 09 2018 - 23:35:51 EST


Hi Al,

After merging the vfs tree, today's linux-next build (powerpc
allyesconfig) failed like this:

samples/vfs/test-fsinfo.c: In function 'fsinfo':
samples/vfs/test-fsinfo.c:37:17: error: '__NR_fsinfo' undeclared (first use in this function); did you mean 'fsinfo'?
return syscall(__NR_fsinfo, dfd, filename, params, buffer, buf_size);
^~~~~~~~~~~
fsinfo
samples/vfs/test-fsinfo.c:37:17: note: each undeclared identifier is reported only once for each function it appears in
samples/vfs/test-fsinfo.c: In function 'dump_attr_LIMITS':
samples/vfs/test-fsinfo.c:180:30: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 2 has type '__u64' {aka 'long unsigned int'} [-Wformat=]
printf("\tmax file size: %llx\n", f->max_file_size);
~~~^ ~~~~~~~~~~~~~~~~
%lx
samples/vfs/test-fsinfo.c:181:32: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 2 has type '__u64' {aka 'long unsigned int'} [-Wformat=]
printf("\tmax ids : u=%llx g=%llx p=%llx\n",
~~~^
%lx
f->max_uid, f->max_gid, f->max_projid);
~~~~~~~~~~
samples/vfs/test-fsinfo.c:181:39: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 3 has type '__u64' {aka 'long unsigned int'} [-Wformat=]
printf("\tmax ids : u=%llx g=%llx p=%llx\n",
~~~^
%lx
f->max_uid, f->max_gid, f->max_projid);
~~~~~~~~~~
samples/vfs/test-fsinfo.c:181:46: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 4 has type '__u64' {aka 'long unsigned int'} [-Wformat=]
printf("\tmax ids : u=%llx g=%llx p=%llx\n",
~~~^
%lx
f->max_uid, f->max_gid, f->max_projid);
~~~~~~~~~~~~~
samples/vfs/test-fsinfo.c: In function 'dump_attr_SUPPORTS':
samples/vfs/test-fsinfo.c:197:24: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 2 has type '__u64' {aka 'long unsigned int'} [-Wformat=]
printf("\tstx_attr=%llx\n", f->stx_attributes);
~~~^ ~~~~~~~~~~~~~~~~~
%lx
samples/vfs/test-fsmount.c: In function 'fsopen':
samples/vfs/test-fsmount.c:63:17: error: '__NR_fsopen' undeclared (first use in this function); did you mean 'fsopen'?
return syscall(__NR_fsopen, fs_name, flags);
^~~~~~~~~~~
fsopen
samples/vfs/test-fsmount.c:63:17: note: each undeclared identifier is reported only once for each function it appears in
samples/vfs/test-fsmount.c: In function 'fsmount':
samples/vfs/test-fsmount.c:68:17: error: '__NR_fsmount' undeclared (first use in this function); did you mean 'fsmount'?
return syscall(__NR_fsmount, fsfd, flags, ms_flags);
^~~~~~~~~~~~
fsmount
samples/vfs/test-fsmount.c: In function 'fsconfig':
samples/vfs/test-fsmount.c:74:17: error: '__NR_fsconfig' undeclared (first use in this function); did you mean 'fsconfig'?
return syscall(__NR_fsconfig, fsfd, cmd, key, val, aux);
^~~~~~~~~~~~~
fsconfig
samples/vfs/test-fsmount.c: In function 'move_mount':
samples/vfs/test-fsmount.c:81:17: error: '__NR_move_mount' undeclared (first use in this function); did you mean 'move_mount'?
return syscall(__NR_move_mount,
^~~~~~~~~~~~~~~
move_mount
samples/vfs/test-fs-query.c: In function 'fsopen':
samples/vfs/test-fs-query.c:32:17: error: '__NR_fsopen' undeclared (first use in this function); did you mean 'fsopen'?
return syscall(__NR_fsopen, fs_name, flags);
^~~~~~~~~~~
fsopen
samples/vfs/test-fs-query.c:32:17: note: each undeclared identifier is reported only once for each function it appears in
samples/vfs/test-fs-query.c: In function 'fsinfo':
samples/vfs/test-fs-query.c:38:17: error: '__NR_fsinfo' undeclared (first use in this function); did you mean 'fsinfo'?
return syscall(__NR_fsinfo, dfd, filename, params, buffer, buf_size);
^~~~~~~~~~~
fsinfo
samples/vfs/test-statx.c: In function 'dump_statx':
samples/vfs/test-statx.c:160:29: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 2 has type '__u64' {aka 'long unsigned int'} [-Wformat=]
printf("Attributes: %016llx (", stx->stx_attributes);
~~~~~~^ ~~~~~~~~~~~~~~~~~~~
%016lx

Caused by commits

2615362dc9ce ("vfs: Add a sample program for the new mount API")
e9078278ec11 ("vfs: syscall: Add fsinfo() to query filesystem information")

The directory name has changed, but the errors persist!

I have applied this patch for today:

From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Date: Mon, 10 Sep 2018 13:19:20 +1000
Subject: [PATCH] disable building the VFS sample programs

Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
---
samples/Kconfig | 1 +
1 file changed, 1 insertion(+)

diff --git a/samples/Kconfig b/samples/Kconfig
index 0431af2589ac..c8823d9d97db 100644
--- a/samples/Kconfig
+++ b/samples/Kconfig
@@ -148,6 +148,7 @@ config SAMPLE_VFIO_MDEV_MBOCHS

config SAMPLE_VFS
bool "Build example programs that use new VFS system calls"
+ depends on BROKEN
help
Build example userspace programs that use new VFS system calls such
as mount API and statx()
--
2.18.0

--
Cheers,
Stephen Rothwell

Attachment: pgpL8menLXtC3.pgp
Description: OpenPGP digital signature