====== Cleaning ====== ../../../scripts/Makefile.include:4: *** O=build_tools/ does not exist. Stop. make[1]: *** nsfs: No such file or directory. Stop. ====== Baseline building the tree ====== In file included from iommufd_utils.h:11, from iommufd.c:12: In function ‘_test_cmd_get_hw_info’, inlined from ‘iommufd_ioas_get_hw_info’ at iommufd.c:779:3, inlined from ‘wrapper_iommufd_ioas_get_hw_info’ at iommufd.c:752:1: iommufd_utils.h:804:37: warning: array subscript ‘struct iommu_test_hw_info[0]’ is partly outside array bounds of ‘struct iommu_test_hw_info_buffer_smaller[1]’ [-Warray-bounds=] 804 | assert(!info->flags); | ~~~~^~~~~~~ iommufd.c: In function ‘wrapper_iommufd_ioas_get_hw_info’: iommufd.c:761:11: note: object ‘buffer_smaller’ of size 4 761 | } buffer_smaller; | ^~~~~~~~~~~~~~ mount_setattr_test.c:176:19: error: redefinition of ‘sys_open_tree’ 176 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ In file included from mount_setattr_test.c:23: ../filesystems/overlayfs/wrappers.h:59:19: note: previous definition of ‘sys_open_tree’ with type ‘int(int, const char *, unsigned int)’ 59 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/mount_setattr/mount_setattr_test] Error 1 make[1]: *** nsfs: No such file or directory. Stop. pid_max.c: In function ‘pid_max_cb’: pid_max.c:42:15: error: implicit declaration of function ‘mount’ [-Wimplicit-function-declaration] 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~ pid_max.c:42:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:42:36: note: each undeclared identifier is reported only once for each function it appears in pid_max.c:42:49: error: ‘MS_REC’ undeclared (first use in this function) 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:48:9: error: implicit declaration of function ‘umount2’; did you mean ‘SYS_umount2’? [-Wimplicit-function-declaration] 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~ | SYS_umount2 pid_max.c:48:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_inner’: pid_max.c:88:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:88:49: error: ‘MS_REC’ undeclared (first use in this function) 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:94:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 94 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_outer’: pid_max.c:163:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:163:49: error: ‘MS_REC’ undeclared (first use in this function) 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:169:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 169 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_inner’: pid_max.c:232:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:232:49: error: ‘MS_REC’ undeclared (first use in this function) 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:238:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 238 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_outer’: pid_max.c:289:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:289:49: error: ‘MS_REC’ undeclared (first use in this function) 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:295:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 295 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/pid_namespace/pid_max] Error 1 make[1]: *** Waiting for unfinished jobs.... null.c: In function ‘ublk_null_tgt_init’: null.c:20:50: error: ‘UBLK_PARAM_TYPE_DMA_ALIGN’ undeclared (first use in this function); did you mean ‘UBLK_PARAM_TYPE_BASIC’? 20 | .types = UBLK_PARAM_TYPE_BASIC | UBLK_PARAM_TYPE_DMA_ALIGN | | ^~~~~~~~~~~~~~~~~~~~~~~~~ | UBLK_PARAM_TYPE_BASIC null.c:20:50: note: each undeclared identifier is reported only once for each function it appears in null.c:21:25: error: ‘UBLK_PARAM_TYPE_SEGMENT’ undeclared (first use in this function); did you mean ‘UBLK_PARAM_TYPE_DEVT’? 21 | UBLK_PARAM_TYPE_SEGMENT, | ^~~~~~~~~~~~~~~~~~~~~~~ | UBLK_PARAM_TYPE_DEVT null.c:30:18: error: ‘struct ublk_params’ has no member named ‘dma’ 30 | .dma = { | ^~~ null.c:31:26: error: ‘struct ublk_param_discard’ has no member named ‘alignment’ 31 | .alignment = 4095, | ^~~~~~~~~ null.c:33:18: error: ‘struct ublk_params’ has no member named ‘seg’ 33 | .seg = { | ^~~ null.c:34:26: error: ‘struct ublk_param_devt’ has no member named ‘seg_boundary_mask’ 34 | .seg_boundary_mask = 4095, | ^~~~~~~~~~~~~~~~~ null.c:35:26: error: ‘struct ublk_param_devt’ has no member named ‘max_segment_size’ 35 | .max_segment_size = 32 << 10, | ^~~~~~~~~~~~~~~~ null.c:36:26: error: ‘struct ublk_param_devt’ has no member named ‘max_segments’ 36 | .max_segments = 32, | ^~~~~~~~~~~~ file_backed.c: In function ‘ublk_loop_tgt_init’: file_backed.c:134:50: error: ‘UBLK_PARAM_TYPE_DMA_ALIGN’ undeclared (first use in this function); did you mean ‘UBLK_PARAM_TYPE_BASIC’? 134 | .types = UBLK_PARAM_TYPE_BASIC | UBLK_PARAM_TYPE_DMA_ALIGN, | ^~~~~~~~~~~~~~~~~~~~~~~~~ | UBLK_PARAM_TYPE_BASIC file_backed.c:134:50: note: each undeclared identifier is reported only once for each function it appears in file_backed.c:143:18: error: ‘struct ublk_params’ has no member named ‘dma’ 143 | .dma = { | ^~~ file_backed.c:144:26: error: ‘struct ublk_param_discard’ has no member named ‘alignment’ 144 | .alignment = 511, | ^~~~~~~~~ stripe.c: In function ‘stripe_to_uring_op’: stripe.c:120:29: error: ‘IORING_OP_READV_FIXED’ undeclared (first use in this function); did you mean ‘IORING_OP_READ_FIXED’? 120 | return zc ? IORING_OP_READV_FIXED : IORING_OP_READV; | ^~~~~~~~~~~~~~~~~~~~~ | IORING_OP_READ_FIXED stripe.c:120:29: note: each undeclared identifier is reported only once for each function it appears in stripe.c:122:29: error: ‘IORING_OP_WRITEV_FIXED’ undeclared (first use in this function); did you mean ‘IORING_OP_WRITE_FIXED’? 122 | return zc ? IORING_OP_WRITEV_FIXED : IORING_OP_WRITEV; | ^~~~~~~~~~~~~~~~~~~~~~ | IORING_OP_WRITE_FIXED make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/ublk/kublk] Error 1 ====== Building the tree before the patch ====== mount_setattr_test.c:176:19: error: redefinition of ‘sys_open_tree’ 176 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ In file included from mount_setattr_test.c:23: ../filesystems/overlayfs/wrappers.h:59:19: note: previous definition of ‘sys_open_tree’ with type ‘int(int, const char *, unsigned int)’ 59 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/mount_setattr/mount_setattr_test] Error 1 make[1]: *** nsfs: No such file or directory. Stop. pid_max.c: In function ‘pid_max_cb’: pid_max.c:42:15: error: implicit declaration of function ‘mount’ [-Wimplicit-function-declaration] 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~ pid_max.c:42:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:42:36: note: each undeclared identifier is reported only once for each function it appears in pid_max.c:42:49: error: ‘MS_REC’ undeclared (first use in this function) 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:48:9: error: implicit declaration of function ‘umount2’; did you mean ‘SYS_umount2’? [-Wimplicit-function-declaration] 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~ | SYS_umount2 pid_max.c:48:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_inner’: pid_max.c:88:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:88:49: error: ‘MS_REC’ undeclared (first use in this function) 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:94:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 94 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_outer’: pid_max.c:163:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:163:49: error: ‘MS_REC’ undeclared (first use in this function) 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:169:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 169 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_inner’: pid_max.c:232:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:232:49: error: ‘MS_REC’ undeclared (first use in this function) 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:238:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 238 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_outer’: pid_max.c:289:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:289:49: error: ‘MS_REC’ undeclared (first use in this function) 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:295:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 295 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/pid_namespace/pid_max] Error 1 null.c: In function ‘ublk_null_tgt_init’: null.c:20:50: error: ‘UBLK_PARAM_TYPE_DMA_ALIGN’ undeclared (first use in this function); did you mean ‘UBLK_PARAM_TYPE_BASIC’? 20 | .types = UBLK_PARAM_TYPE_BASIC | UBLK_PARAM_TYPE_DMA_ALIGN | | ^~~~~~~~~~~~~~~~~~~~~~~~~ | UBLK_PARAM_TYPE_BASIC null.c:20:50: note: each undeclared identifier is reported only once for each function it appears in null.c:21:25: error: ‘UBLK_PARAM_TYPE_SEGMENT’ undeclared (first use in this function); did you mean ‘UBLK_PARAM_TYPE_DEVT’? 21 | UBLK_PARAM_TYPE_SEGMENT, | ^~~~~~~~~~~~~~~~~~~~~~~ | UBLK_PARAM_TYPE_DEVT null.c:30:18: error: ‘struct ublk_params’ has no member named ‘dma’ 30 | .dma = { | ^~~ null.c:31:26: error: ‘struct ublk_param_discard’ has no member named ‘alignment’ 31 | .alignment = 4095, | ^~~~~~~~~ null.c:33:18: error: ‘struct ublk_params’ has no member named ‘seg’ 33 | .seg = { | ^~~ null.c:34:26: error: ‘struct ublk_param_devt’ has no member named ‘seg_boundary_mask’ 34 | .seg_boundary_mask = 4095, | ^~~~~~~~~~~~~~~~~ null.c:35:26: error: ‘struct ublk_param_devt’ has no member named ‘max_segment_size’ 35 | .max_segment_size = 32 << 10, | ^~~~~~~~~~~~~~~~ null.c:36:26: error: ‘struct ublk_param_devt’ has no member named ‘max_segments’ 36 | .max_segments = 32, | ^~~~~~~~~~~~ file_backed.c: In function ‘ublk_loop_tgt_init’: file_backed.c:134:50: error: ‘UBLK_PARAM_TYPE_DMA_ALIGN’ undeclared (first use in this function); did you mean ‘UBLK_PARAM_TYPE_BASIC’? 134 | .types = UBLK_PARAM_TYPE_BASIC | UBLK_PARAM_TYPE_DMA_ALIGN, | ^~~~~~~~~~~~~~~~~~~~~~~~~ | UBLK_PARAM_TYPE_BASIC file_backed.c:134:50: note: each undeclared identifier is reported only once for each function it appears in file_backed.c:143:18: error: ‘struct ublk_params’ has no member named ‘dma’ 143 | .dma = { | ^~~ file_backed.c:144:26: error: ‘struct ublk_param_discard’ has no member named ‘alignment’ 144 | .alignment = 511, | ^~~~~~~~~ stripe.c: In function ‘stripe_to_uring_op’: stripe.c:120:29: error: ‘IORING_OP_READV_FIXED’ undeclared (first use in this function); did you mean ‘IORING_OP_READ_FIXED’? 120 | return zc ? IORING_OP_READV_FIXED : IORING_OP_READV; | ^~~~~~~~~~~~~~~~~~~~~ | IORING_OP_READ_FIXED stripe.c:120:29: note: each undeclared identifier is reported only once for each function it appears in stripe.c:122:29: error: ‘IORING_OP_WRITEV_FIXED’ undeclared (first use in this function); did you mean ‘IORING_OP_WRITE_FIXED’? 122 | return zc ? IORING_OP_WRITEV_FIXED : IORING_OP_WRITEV; | ^~~~~~~~~~~~~~~~~~~~~~ | IORING_OP_WRITE_FIXED make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/ublk/kublk] Error 1 ====== Checking if tree is clean ====== ?? arch/x86/Makefile.orig ?? arch/x86/Makefile.rej ====== Building the tree with the patch ====== mount_setattr_test.c:176:19: error: redefinition of ‘sys_open_tree’ 176 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ In file included from mount_setattr_test.c:23: ../filesystems/overlayfs/wrappers.h:59:19: note: previous definition of ‘sys_open_tree’ with type ‘int(int, const char *, unsigned int)’ 59 | static inline int sys_open_tree(int dfd, const char *filename, unsigned int flags) | ^~~~~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/mount_setattr/mount_setattr_test] Error 1 make[1]: *** nsfs: No such file or directory. Stop. pid_max.c: In function ‘pid_max_cb’: pid_max.c:42:15: error: implicit declaration of function ‘mount’ [-Wimplicit-function-declaration] 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~ pid_max.c:42:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:42:36: note: each undeclared identifier is reported only once for each function it appears in pid_max.c:42:49: error: ‘MS_REC’ undeclared (first use in this function) 42 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:48:9: error: implicit declaration of function ‘umount2’; did you mean ‘SYS_umount2’? [-Wimplicit-function-declaration] 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~ | SYS_umount2 pid_max.c:48:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 48 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_inner’: pid_max.c:88:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:88:49: error: ‘MS_REC’ undeclared (first use in this function) 88 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:94:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 94 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_outer’: pid_max.c:163:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:163:49: error: ‘MS_REC’ undeclared (first use in this function) 163 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:169:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 169 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_inner’: pid_max.c:232:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:232:49: error: ‘MS_REC’ undeclared (first use in this function) 232 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:238:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 238 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ pid_max.c: In function ‘pid_max_nested_limit_outer’: pid_max.c:289:36: error: ‘MS_PRIVATE’ undeclared (first use in this function); did you mean ‘MAP_PRIVATE’? 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~~~~~ | MAP_PRIVATE pid_max.c:289:49: error: ‘MS_REC’ undeclared (first use in this function) 289 | ret = mount("", "/", NULL, MS_PRIVATE | MS_REC, 0); | ^~~~~~ pid_max.c:295:26: error: ‘MNT_DETACH’ undeclared (first use in this function) 295 | umount2("/proc", MNT_DETACH); | ^~~~~~~~~~ make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/pid_namespace/pid_max] Error 1 null.c: In function ‘ublk_null_tgt_init’: null.c:20:50: error: ‘UBLK_PARAM_TYPE_DMA_ALIGN’ undeclared (first use in this function); did you mean ‘UBLK_PARAM_TYPE_BASIC’? 20 | .types = UBLK_PARAM_TYPE_BASIC | UBLK_PARAM_TYPE_DMA_ALIGN | | ^~~~~~~~~~~~~~~~~~~~~~~~~ | UBLK_PARAM_TYPE_BASIC null.c:20:50: note: each undeclared identifier is reported only once for each function it appears in null.c:21:25: error: ‘UBLK_PARAM_TYPE_SEGMENT’ undeclared (first use in this function); did you mean ‘UBLK_PARAM_TYPE_DEVT’? 21 | UBLK_PARAM_TYPE_SEGMENT, | ^~~~~~~~~~~~~~~~~~~~~~~ | UBLK_PARAM_TYPE_DEVT null.c:30:18: error: ‘struct ublk_params’ has no member named ‘dma’ 30 | .dma = { | ^~~ null.c:31:26: error: ‘struct ublk_param_discard’ has no member named ‘alignment’ 31 | .alignment = 4095, | ^~~~~~~~~ null.c:33:18: error: ‘struct ublk_params’ has no member named ‘seg’ 33 | .seg = { | ^~~ null.c:34:26: error: ‘struct ublk_param_devt’ has no member named ‘seg_boundary_mask’ 34 | .seg_boundary_mask = 4095, | ^~~~~~~~~~~~~~~~~ null.c:35:26: error: ‘struct ublk_param_devt’ has no member named ‘max_segment_size’ 35 | .max_segment_size = 32 << 10, | ^~~~~~~~~~~~~~~~ null.c:36:26: error: ‘struct ublk_param_devt’ has no member named ‘max_segments’ 36 | .max_segments = 32, | ^~~~~~~~~~~~ file_backed.c: In function ‘ublk_loop_tgt_init’: file_backed.c:134:50: error: ‘UBLK_PARAM_TYPE_DMA_ALIGN’ undeclared (first use in this function); did you mean ‘UBLK_PARAM_TYPE_BASIC’? 134 | .types = UBLK_PARAM_TYPE_BASIC | UBLK_PARAM_TYPE_DMA_ALIGN, | ^~~~~~~~~~~~~~~~~~~~~~~~~ | UBLK_PARAM_TYPE_BASIC file_backed.c:134:50: note: each undeclared identifier is reported only once for each function it appears in file_backed.c:143:18: error: ‘struct ublk_params’ has no member named ‘dma’ 143 | .dma = { | ^~~ file_backed.c:144:26: error: ‘struct ublk_param_discard’ has no member named ‘alignment’ 144 | .alignment = 511, | ^~~~~~~~~ stripe.c: In function ‘stripe_to_uring_op’: stripe.c:120:29: error: ‘IORING_OP_READV_FIXED’ undeclared (first use in this function); did you mean ‘IORING_OP_READ_FIXED’? 120 | return zc ? IORING_OP_READV_FIXED : IORING_OP_READV; | ^~~~~~~~~~~~~~~~~~~~~ | IORING_OP_READ_FIXED stripe.c:120:29: note: each undeclared identifier is reported only once for each function it appears in stripe.c:122:29: error: ‘IORING_OP_WRITEV_FIXED’ undeclared (first use in this function); did you mean ‘IORING_OP_WRITE_FIXED’? 122 | return zc ? IORING_OP_WRITEV_FIXED : IORING_OP_WRITEV; | ^~~~~~~~~~~~~~~~~~~~~~ | IORING_OP_WRITE_FIXED make[1]: *** [../lib.mk:222: /home/nipa/bpf-next/wt-0/build_tools/kselftest/ublk/kublk] Error 1 ====== Checking if tree is clean ====== ?? arch/x86/Makefile.orig ?? arch/x86/Makefile.rej