All of lore.kernel.org
 help / color / mirror / Atom feed
* [block:for-5.13/io_uring 119/120] fs/io_uring.c:5296:38: sparse: sparse: incorrect type in return expression (different base types)
@ 2021-04-15  2:11 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2021-04-15  2:11 UTC (permalink / raw)
  To: kbuild-all

[-- Attachment #1: Type: text/plain, Size: 7873 bytes --]

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git for-5.13/io_uring
head:   c5de00366e3e675f9e321983d9bd357c1fbea0e9
commit: 9096af3e9c8734a34703bd9fb5ab14292296f911 [119/120] io_uring: add helper for parsing poll events
config: i386-randconfig-s002-20210414 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.3-280-g2cd6d34e-dirty
        # https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git/commit/?id=9096af3e9c8734a34703bd9fb5ab14292296f911
        git remote add block https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git
        git fetch --no-tags block for-5.13/io_uring
        git checkout 9096af3e9c8734a34703bd9fb5ab14292296f911
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' W=1 ARCH=i386 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


sparse warnings: (new ones prefixed by >>)
   fs/io_uring.c:2888:24: sparse: sparse: incorrect type in return expression (different address spaces) @@     expected void [noderef] __user * @@     got struct io_buffer *[assigned] kbuf @@
   fs/io_uring.c:2888:24: sparse:     expected void [noderef] __user *
   fs/io_uring.c:2888:24: sparse:     got struct io_buffer *[assigned] kbuf
   fs/io_uring.c:4189:14: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected struct file *file @@     got struct file [noderef] __rcu * @@
   fs/io_uring.c:4189:14: sparse:     expected struct file *file
   fs/io_uring.c:4189:14: sparse:     got struct file [noderef] __rcu *
   fs/io_uring.c:4794:72: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected int mask @@     got restricted __poll_t [usertype] mask @@
   fs/io_uring.c:4794:72: sparse:     expected int mask
   fs/io_uring.c:4794:72: sparse:     got restricted __poll_t [usertype] mask
   fs/io_uring.c:4798:21: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] result @@     got restricted __poll_t [usertype] mask @@
   fs/io_uring.c:4798:21: sparse:     expected unsigned int [usertype] result
   fs/io_uring.c:4798:21: sparse:     got restricted __poll_t [usertype] mask
   fs/io_uring.c:4823:29: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] result @@     got restricted __poll_t @@
   fs/io_uring.c:4823:29: sparse:     expected unsigned int [usertype] result
   fs/io_uring.c:4823:29: sparse:     got restricted __poll_t
   fs/io_uring.c:4904:49: sparse: sparse: incorrect type in argument 2 (different base types) @@     expected restricted __poll_t [usertype] mask @@     got unsigned int [usertype] result @@
   fs/io_uring.c:4904:49: sparse:     expected restricted __poll_t [usertype] mask
   fs/io_uring.c:4904:49: sparse:     got unsigned int [usertype] result
   fs/io_uring.c:5053:41: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected int mask @@     got restricted __poll_t [usertype] @@
   fs/io_uring.c:5053:41: sparse:     expected int mask
   fs/io_uring.c:5053:41: sparse:     got restricted __poll_t [usertype]
   fs/io_uring.c:5141:22: sparse: sparse: invalid assignment: |=
   fs/io_uring.c:5141:22: sparse:    left side has type restricted __poll_t
   fs/io_uring.c:5141:22: sparse:    right side has type int
   fs/io_uring.c:5143:22: sparse: sparse: invalid assignment: |=
   fs/io_uring.c:5143:22: sparse:    left side has type restricted __poll_t
   fs/io_uring.c:5143:22: sparse:    right side has type int
   fs/io_uring.c:5148:22: sparse: sparse: invalid assignment: &=
   fs/io_uring.c:5148:22: sparse:    left side has type restricted __poll_t
   fs/io_uring.c:5148:22: sparse:    right side has type int
   fs/io_uring.c:5150:14: sparse: sparse: invalid assignment: |=
   fs/io_uring.c:5150:14: sparse:    left side has type restricted __poll_t
   fs/io_uring.c:5150:14: sparse:    right side has type int
   fs/io_uring.c:5164:67: sparse: sparse: incorrect type in argument 4 (different base types) @@     expected int mask @@     got restricted __poll_t [assigned] [usertype] mask @@
   fs/io_uring.c:5164:67: sparse:     expected int mask
   fs/io_uring.c:5164:67: sparse:     got restricted __poll_t [assigned] [usertype] mask
   fs/io_uring.c:5165:52: sparse: sparse: incorrect type in argument 5 (different base types) @@     expected int events @@     got restricted __poll_t [usertype] events @@
   fs/io_uring.c:5165:52: sparse:     expected int events
   fs/io_uring.c:5165:52: sparse:     got restricted __poll_t [usertype] events
   fs/io_uring.c:5295:24: sparse: sparse: invalid assignment: |=
   fs/io_uring.c:5295:24: sparse:    left side has type unsigned int
   fs/io_uring.c:5295:24: sparse:    right side has type restricted __poll_t
   fs/io_uring.c:5296:65: sparse: sparse: restricted __poll_t degrades to integer
   fs/io_uring.c:5296:29: sparse: sparse: restricted __poll_t degrades to integer
>> fs/io_uring.c:5296:38: sparse: sparse: incorrect type in return expression (different base types) @@     expected restricted __poll_t @@     got unsigned int @@
   fs/io_uring.c:5296:38: sparse:     expected restricted __poll_t
   fs/io_uring.c:5296:38: sparse:     got unsigned int
   fs/io_uring.c:5361:16: sparse: sparse: incorrect type in assignment (different base types) @@     expected unsigned int [usertype] events @@     got restricted __poll_t @@
   fs/io_uring.c:5361:16: sparse:     expected unsigned int [usertype] events
   fs/io_uring.c:5361:16: sparse:     got restricted __poll_t
   fs/io_uring.c:5367:34: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __poll_t [usertype] events @@     got unsigned int [usertype] events @@
   fs/io_uring.c:5367:34: sparse:     expected restricted __poll_t [usertype] events
   fs/io_uring.c:5367:34: sparse:     got unsigned int [usertype] events
   fs/io_uring.c:5376:30: sparse: sparse: incorrect type in assignment (different base types) @@     expected restricted __poll_t [usertype] events @@     got unsigned int [usertype] events @@
   fs/io_uring.c:5376:30: sparse:     expected restricted __poll_t [usertype] events
   fs/io_uring.c:5376:30: sparse:     got unsigned int [usertype] events
   fs/io_uring.c:5444:35: sparse: sparse: invalid assignment: &=
   fs/io_uring.c:5444:35: sparse:    left side has type restricted __poll_t
   fs/io_uring.c:5444:35: sparse:    right side has type int
   fs/io_uring.c:5445:54: sparse: sparse: restricted __poll_t degrades to integer
   fs/io_uring.c:5445:35: sparse: sparse: invalid assignment: |=
   fs/io_uring.c:5445:35: sparse:    left side has type restricted __poll_t
   fs/io_uring.c:5445:35: sparse:    right side has type unsigned int
   fs/io_uring.c:7202:9: sparse: sparse: context imbalance in 'io_sq_thread_unpark' - wrong count at exit
   fs/io_uring.c:7213:9: sparse: sparse: context imbalance in 'io_sq_thread_park' - wrong count at exit

vim +5296 fs/io_uring.c

  5284	
  5285	static __poll_t io_poll_parse_events(const struct io_uring_sqe *sqe,
  5286					     unsigned int flags)
  5287	{
  5288		u32 events;
  5289	
  5290		events = READ_ONCE(sqe->poll32_events);
  5291	#ifdef __BIG_ENDIAN
  5292		events = swahw32(events);
  5293	#endif
  5294		if (!(flags & IORING_POLL_ADD_MULTI))
  5295			events |= EPOLLONESHOT;
> 5296		return demangle_poll(events) | (events & (EPOLLEXCLUSIVE|EPOLLONESHOT));
  5297	}
  5298	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 38251 bytes --]

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-04-15  2:11 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-04-15  2:11 [block:for-5.13/io_uring 119/120] fs/io_uring.c:5296:38: sparse: sparse: incorrect type in return expression (different base types) 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.