* [kbusch:io_uring/dma-register-v3 7/8] io_uring/io_uring.c:3791:45: error: passing argument 2 of 'file_dma_map' from incompatible pointer type
@ 2022-08-13 15:42 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-08-13 15:42 UTC (permalink / raw)
To: Keith Busch; +Cc: kbuild-all, linux-kernel
tree: https://git.kernel.org/pub/scm/linux/kernel/git/kbusch/linux.git io_uring/dma-register-v3
head: e1c6d38d05e532b3aaf12a5ab8707929bcdc1180
commit: bb54dc361fec200988cb7f0a32cea77db3a7e6fe [7/8] io_uring: add support for dma pre-mapping
config: m68k-buildonly-randconfig-r001-20220804 (https://download.01.org/0day-ci/archive/20220813/202208132330.PC5BGFCf-lkp@intel.com/config)
compiler: m68k-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://git.kernel.org/pub/scm/linux/kernel/git/kbusch/linux.git/commit/?id=bb54dc361fec200988cb7f0a32cea77db3a7e6fe
git remote add kbusch https://git.kernel.org/pub/scm/linux/kernel/git/kbusch/linux.git
git fetch --no-tags kbusch io_uring/dma-register-v3
git checkout bb54dc361fec200988cb7f0a32cea77db3a7e6fe
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=m68k SHELL=/bin/bash
If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
In file included from include/uapi/linux/aio_abi.h:31,
from include/linux/syscalls.h:77,
from io_uring/io_uring.c:45:
include/linux/fs.h:3610:60: warning: 'struct bio_vec' declared inside parameter list will not be visible outside of this definition or declaration
3610 | static inline void *file_dma_map(struct file *file, struct bio_vec *bvec,
| ^~~~~~~
io_uring/io_uring.c: In function '__io_submit_flush_completions':
io_uring/io_uring.c:1183:40: warning: variable 'prev' set but not used [-Wunused-but-set-variable]
1183 | struct io_wq_work_node *node, *prev;
| ^~~~
io_uring/io_uring.c: In function 'io_register_map_buffers':
>> io_uring/io_uring.c:3791:45: error: passing argument 2 of 'file_dma_map' from incompatible pointer type [-Werror=incompatible-pointer-types]
3791 | tag = file_dma_map(file, imu->bvec, imu->nr_bvecs);
| ~~~^~~~~~
| |
| struct bio_vec *
include/linux/fs.h:3610:69: note: expected 'struct bio_vec *' but argument is of type 'struct bio_vec *'
3610 | static inline void *file_dma_map(struct file *file, struct bio_vec *bvec,
| ~~~~~~~~~~~~~~~~^~~~
cc1: some warnings being treated as errors
vim +/file_dma_map +3791 io_uring/io_uring.c
3758
3759 static int io_register_map_buffers(struct io_ring_ctx *ctx, void __user *arg)
3760 {
3761 struct io_uring_map_buffers map;
3762 struct io_fixed_file *file_slot;
3763 struct file *file;
3764 int ret, i;
3765
3766 if (!capable(CAP_SYS_ADMIN))
3767 return -EPERM;
3768
3769 ret = get_map_range(ctx, &map, arg);
3770 if (ret < 0)
3771 return ret;
3772
3773 file_slot = io_fixed_file_slot(&ctx->file_table,
3774 array_index_nospec(map.fd, ctx->nr_user_files));
3775 if (!file_slot->file_ptr)
3776 return -EBADF;
3777
3778 file = io_file_from_fixed(file_slot);
3779 if (!(file->f_flags & O_DIRECT))
3780 return -EOPNOTSUPP;
3781
3782 for (i = map.buf_start; i < map.buf_end; i++) {
3783 struct io_mapped_ubuf *imu = ctx->user_bufs[i];
3784 void *tag;
3785
3786 if (imu->dma_tag) {
3787 ret = -EBUSY;
3788 goto err;
3789 }
3790
> 3791 tag = file_dma_map(file, imu->bvec, imu->nr_bvecs);
3792 if (IS_ERR(tag)) {
3793 ret = PTR_ERR(tag);
3794 goto err;
3795 }
3796
3797 imu->dma_tag = tag;
3798 imu->dma_file = file;
3799 }
3800
3801 return 0;
3802 err:
3803 while (--i >= map.buf_start) {
3804 struct io_mapped_ubuf *imu = ctx->user_bufs[i];
3805
3806 io_dma_unmap(imu);
3807 }
3808 return ret;
3809 }
3810
--
0-DAY CI Kernel Test Service
https://01.org/lkp
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-08-13 15:42 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-08-13 15:42 [kbusch:io_uring/dma-register-v3 7/8] io_uring/io_uring.c:3791:45: error: passing argument 2 of 'file_dma_map' from incompatible pointer type kernel test robot
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.