[viro-vfs:work.iov_iter_get_pages 33/34] lib/iov_iter.c:1225:58: error: passing argument 3 of 'append_pipe' from incompatible pointer type

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git work.iov_iter_get_pages
head:   a2a7ea71b10083f1b6250f653c448f863d9212c6
commit: d8115c2f911696d202ba377c54421dc7c055de56 [33/34] pipe_get_pages(): switch to append_pipe()
config: um-x86_64_defconfig (https://download.01.org/0day-ci/archive/20220622/202206220821.geOiztBp-lkp@xxxxxxxxx/config)
compiler: gcc-11 (Debian 11.3.0-3) 11.3.0
reproduce (this is a W=1 build):
        # https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git/commit/?id=d8115c2f911696d202ba377c54421dc7c055de56
        git remote add viro-vfs https://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git
        git fetch --no-tags viro-vfs work.iov_iter_get_pages
        git checkout d8115c2f911696d202ba377c54421dc7c055de56
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        make W=1 O=build_dir ARCH=um SUBARCH=x86_64 SHELL=/bin/bash

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@xxxxxxxxx>

All errors (new ones prefixed by >>):

   lib/iov_iter.c: In function 'pipe_get_pages':
>> lib/iov_iter.c:1225:58: error: passing argument 3 of 'append_pipe' from incompatible pointer type [-Werror=incompatible-pointer-types]
    1225 |                 struct page *page = append_pipe(i, left, &off);
         |                                                          ^~~~
         |                                                          |
         |                                                          unsigned int *
   lib/iov_iter.c:270:74: note: expected 'size_t *' {aka 'long unsigned int *'} but argument is of type 'unsigned int *'
     270 | static struct page *append_pipe(struct iov_iter *i, size_t size, size_t *off)
         |                                                                  ~~~~~~~~^~~
   cc1: some warnings being treated as errors


vim +/append_pipe +1225 lib/iov_iter.c

  1205	
  1206	static ssize_t pipe_get_pages(struct iov_iter *i,
  1207			   struct page ***pages, size_t maxsize, unsigned maxpages,
  1208			   size_t *start)
  1209	{
  1210		unsigned int npages, off, count;
  1211		struct page **p;
  1212		ssize_t left;
  1213	
  1214		if (!sanity(i))
  1215			return -EFAULT;
  1216	
  1217		*start = off = pipe_npages(i, &npages);
  1218		if (!npages)
  1219			return -EFAULT;
  1220		count = want_pages_array(pages, maxsize, off, min(npages, maxpages));
  1221		if (!count)
  1222			return -ENOMEM;
  1223		p = *pages;
  1224		for (npages = 0, left = maxsize ; npages < count; npages++) {
> 1225			struct page *page = append_pipe(i, left, &off);
  1226			if (!page)
  1227				break;
  1228			get_page(*p++ = page);
  1229			if (left <= PAGE_SIZE - off)
  1230				return maxsize;
  1231			left -= PAGE_SIZE - off;
  1232		}
  1233		if (!npages)
  1234			return -EFAULT;
  1235		return maxsize - left;
  1236	}
  1237	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux