mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* drivers/gpu/drm/nouveau/nvif/chan.c:38:51: sparse: sparse: incorrect type in initializer (different address spaces)
@ 2025-12-12  5:22 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-12-12  5:22 UTC (permalink / raw)
  To: Ben Skeggs; +Cc: oe-kbuild-all, linux-kernel, Dave Airlie, Timur Tabi

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   d358e5254674b70f34c847715ca509e46eb81e6f
commit: 862450a85b85a3e88e9065c9d2421f3ef17d054c drm/nouveau/gf100-: track chan progress with non-WFI semaphore release
date:   7 months ago
config: i386-randconfig-061-20251212 (https://download.01.org/0day-ci/archive/20251212/202512121331.N9I5gDz3-lkp@intel.com/config)
compiler: gcc-14 (Debian 14.2.0-19) 14.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20251212/202512121331.N9I5gDz3-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202512121331.N9I5gDz3-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
   drivers/gpu/drm/nouveau/nvif/chan.c:11:32: sparse: sparse: cast removes address space '__iomem' of expression
>> drivers/gpu/drm/nouveau/nvif/chan.c:38:51: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected unsigned int const [usertype] *map @@     got void [noderef] __iomem *ptr @@
   drivers/gpu/drm/nouveau/nvif/chan.c:38:51: sparse:     expected unsigned int const [usertype] *map
   drivers/gpu/drm/nouveau/nvif/chan.c:38:51: sparse:     got void [noderef] __iomem *ptr
   drivers/gpu/drm/nouveau/nvif/chan.c:98:29: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected void [noderef] __iomem *ptr @@     got void *userd @@
   drivers/gpu/drm/nouveau/nvif/chan.c:98:29: sparse:     expected void [noderef] __iomem *ptr
   drivers/gpu/drm/nouveau/nvif/chan.c:98:29: sparse:     got void *userd
   drivers/gpu/drm/nouveau/nvif/chan.c:100:30: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected void [noderef] __iomem *ptr @@     got void *gpfifo @@
   drivers/gpu/drm/nouveau/nvif/chan.c:100:30: sparse:     expected void [noderef] __iomem *ptr
   drivers/gpu/drm/nouveau/nvif/chan.c:100:30: sparse:     got void *gpfifo
   drivers/gpu/drm/nouveau/nvif/chan.c:104:39: sparse: sparse: incorrect type in assignment (different address spaces) @@     expected void [noderef] __iomem *ptr @@     got void *push @@
   drivers/gpu/drm/nouveau/nvif/chan.c:104:39: sparse:     expected void [noderef] __iomem *ptr
   drivers/gpu/drm/nouveau/nvif/chan.c:104:39: sparse:     got void *push
   drivers/gpu/drm/nouveau/nvif/chan.c:116:32: sparse: sparse: cast removes address space '__iomem' of expression
   drivers/gpu/drm/nouveau/nvif/chan.c:152:22: sparse: sparse: cast removes address space '__iomem' of expression

vim +38 drivers/gpu/drm/nouveau/nvif/chan.c

     6	
     7	static void
     8	nvif_chan_gpfifo_push_kick(struct nvif_push *push)
     9	{
    10		struct nvif_chan *chan = container_of(push, typeof(*chan), push);
  > 11		u32 put = push->bgn - (u32 *)chan->push.mem.object.map.ptr;
    12		u32 cnt;
    13	
    14		if (chan->func->gpfifo.post) {
    15			if (push->end - push->cur < chan->func->gpfifo.post_size)
    16				push->end = push->cur + chan->func->gpfifo.post_size;
    17	
    18			WARN_ON(nvif_chan_gpfifo_post(chan));
    19		}
    20	
    21		cnt = push->cur - push->bgn;
    22	
    23		chan->func->gpfifo.push(chan, true, chan->push.addr + (put << 2), cnt << 2, false);
    24		chan->func->gpfifo.kick(chan);
    25	}
    26	
    27	static int
    28	nvif_chan_gpfifo_push_wait(struct nvif_push *push, u32 push_nr)
    29	{
    30		struct nvif_chan *chan = container_of(push, typeof(*chan), push);
    31	
    32		return nvif_chan_gpfifo_wait(chan, 1, push_nr);
    33	}
    34	
    35	int
    36	nvif_chan_gpfifo_post(struct nvif_chan *chan)
    37	{
  > 38		const u32 *map = chan->push.mem.object.map.ptr;
    39		const u32 pbptr = (chan->push.cur - map) + chan->func->gpfifo.post_size;
    40		const u32 gpptr = (chan->gpfifo.cur + 1) & chan->gpfifo.max;
    41	
    42		return chan->func->gpfifo.post(chan, gpptr, pbptr);
    43	}
    44	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

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

only message in thread, other threads:[~2025-12-12  5:23 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-12-12  5:22 drivers/gpu/drm/nouveau/nvif/chan.c:38:51: sparse: sparse: incorrect type in initializer (different address spaces) kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®