Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1460759 > unrolled thread

[rcu:rcu/next 28/28] include/linux/compiler.h:536:47: error: dereferencing pointer to incomplete type

Started bykbuild test robot <fengguang.wu@intel.com>
First post2016-08-11 21:50 +0200
Last post2016-08-11 21:50 +0200
Articles 1 — 1 participant

Back to article view | Back to linux.kernel


Contents

  [rcu:rcu/next 28/28] include/linux/compiler.h:536:47: error:  dereferencing pointer to incomplete type kbuild test robot <fengguang.wu@intel.com> - 2016-08-11 21:50 +0200

#1460759 — [rcu:rcu/next 28/28] include/linux/compiler.h:536:47: error: dereferencing pointer to incomplete type

Fromkbuild test robot <fengguang.wu@intel.com>
Date2016-08-11 21:50 +0200
Subject[rcu:rcu/next 28/28] include/linux/compiler.h:536:47: error: dereferencing pointer to incomplete type
Message-ID<s549j-8eC-13@gated-at.bofh.it>

[Multipart message — attachments visible in raw view] — view raw

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/paulmck/linux-rcu.git rcu/next
head:   a1dff3e407c785ab982810d0b14f829aaf3022b6
commit: a1dff3e407c785ab982810d0b14f829aaf3022b6 [28/28] locking/barriers: suppress sparse warnings in lockless_dereference()
config: ia64-defconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 4.9.0
reproduce:
        wget https://git.kernel.org/cgit/linux/kernel/git/wfg/lkp-tests.git/plain/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout a1dff3e407c785ab982810d0b14f829aaf3022b6
        # save the attached .config to linux build tree
        make.cross ARCH=ia64 

All errors (new ones prefixed by >>):

   In file included from include/linux/linkage.h:4:0,
                    from include/linux/kernel.h:6,
                    from drivers/gpu/drm/drm_fb_helper.c:32:
   drivers/gpu/drm/drm_fb_helper.c: In function 'drm_fb_helper_is_bound':
>> include/linux/compiler.h:536:47: error: dereferencing pointer to incomplete type
     size_t __maybe_unused __size_of_ptr = sizeof(*(p)); \
                                                  ^
   drivers/gpu/drm/drm_fb_helper.c:467:6: note: in expansion of macro 'lockless_dereference'
     if (lockless_dereference(dev->master))
         ^

vim +536 include/linux/compiler.h

   530	 * The seemingly unused size_t variable is to validate @p is indeed a pointer
   531	 * type by making sure it can be dereferenced.
   532	 */
   533	#define lockless_dereference(p) \
   534	({ \
   535		typeof(p) _________p1 = READ_ONCE(p); \
 > 536		size_t __maybe_unused __size_of_ptr = sizeof(*(p)); \
   537		smp_read_barrier_depends(); /* Dependency order vs. p above. */ \
   538		(_________p1); \
   539	})

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[toc] | [standalone]


Back to top | Article view | linux.kernel


csiph-web