Building the Linux kernel with Clang and LLVM
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Jiri Olsa <jolsa@kernel.org>
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev
Subject: [jolsa-perf:bpf/optimized_usdt_5 21/26] include/linux/uprobes.h:127:16: error: field has incomplete type 'struct mutex'
Date: Mon, 28 Oct 2024 23:37:25 +0800	[thread overview]
Message-ID: <202410282327.W1zgIXtN-lkp@intel.com> (raw)

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/jolsa/perf.git bpf/optimized_usdt_5
head:   748f02be1adc50c8aea1e580791e8085f8713c07
commit: 0ec2293dc6f5526b57f0f431643dbfbbddc5cd51 [21/26] uprobes: Add mapping for optimized uprobe trampolines
config: arm-defconfig (https://download.01.org/0day-ci/archive/20241028/202410282327.W1zgIXtN-lkp@intel.com/config)
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241028/202410282327.W1zgIXtN-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/202410282327.W1zgIXtN-lkp@intel.com/

All errors (new ones prefixed by >>):

   In file included from arch/arm/probes/uprobes/actions-arm.c:10:
>> include/linux/uprobes.h:127:16: error: field has incomplete type 'struct mutex'
           struct mutex            tramp_mutex;
                                   ^
   include/linux/uprobes.h:127:9: note: forward declaration of 'struct mutex'
           struct mutex            tramp_mutex;
                  ^
   In file included from arch/arm/probes/uprobes/actions-arm.c:11:
   In file included from include/linux/module.h:17:
   In file included from include/linux/kmod.h:9:
   In file included from include/linux/umh.h:4:
   In file included from include/linux/gfp.h:7:
   In file included from include/linux/mmzone.h:22:
>> include/linux/mm_types.h:1039:16: error: flexible array member 'cpu_bitmap' not allowed in otherwise empty struct
           unsigned long cpu_bitmap[];
                         ^
>> include/linux/mm_types.h:1138:27: error: no member named 'mm_mt' in 'struct mm_struct'
           mas_init(&vmi->mas, &mm->mm_mt, addr);
                                ~~  ^
>> include/linux/mm_types.h:1189:45: error: no member named 'pcpu_cid' in 'struct mm_struct'
                   struct mm_cid *pcpu_cid = per_cpu_ptr(mm->pcpu_cid, i);
                                                         ~~  ^
   include/linux/percpu-defs.h:235:20: note: expanded from macro 'per_cpu_ptr'
           __verify_pcpu_ptr(ptr);                                         \
                             ^~~
   include/linux/percpu-defs.h:219:47: note: expanded from macro '__verify_pcpu_ptr'
           const void __percpu *__vpp_verify = (typeof((ptr) + 0))NULL;    \
                                                        ^~~
   In file included from arch/arm/probes/uprobes/actions-arm.c:11:
   In file included from include/linux/module.h:17:
   In file included from include/linux/kmod.h:9:
   In file included from include/linux/umh.h:4:
   In file included from include/linux/gfp.h:7:
   In file included from include/linux/mmzone.h:22:
>> include/linux/mm_types.h:1189:45: error: no member named 'pcpu_cid' in 'struct mm_struct'
                   struct mm_cid *pcpu_cid = per_cpu_ptr(mm->pcpu_cid, i);
                                                         ~~  ^
   include/linux/percpu-defs.h:236:20: note: expanded from macro 'per_cpu_ptr'
           SHIFT_PERCPU_PTR((ptr), per_cpu_offset((cpu)));                 \
                             ^~~
   include/linux/percpu-defs.h:231:23: note: expanded from macro 'SHIFT_PERCPU_PTR'
           RELOC_HIDE((typeof(*(__p)) __kernel __force *)(__p), (__offset))
                                ^~~
   include/linux/compiler.h:177:31: note: expanded from macro 'RELOC_HIDE'
        __ptr = (unsigned long) (ptr);                             \
                                 ^~~
   In file included from arch/arm/probes/uprobes/actions-arm.c:11:
   In file included from include/linux/module.h:17:
   In file included from include/linux/kmod.h:9:
   In file included from include/linux/umh.h:4:
   In file included from include/linux/gfp.h:7:
   In file included from include/linux/mmzone.h:22:
>> include/linux/mm_types.h:1189:45: error: no member named 'pcpu_cid' in 'struct mm_struct'
                   struct mm_cid *pcpu_cid = per_cpu_ptr(mm->pcpu_cid, i);
                                                         ~~  ^
   include/linux/percpu-defs.h:236:20: note: expanded from macro 'per_cpu_ptr'
           SHIFT_PERCPU_PTR((ptr), per_cpu_offset((cpu)));                 \
                             ^~~
   include/linux/percpu-defs.h:231:49: note: expanded from macro 'SHIFT_PERCPU_PTR'
           RELOC_HIDE((typeof(*(__p)) __kernel __force *)(__p), (__offset))
                                                          ^~~
   include/linux/compiler.h:177:31: note: expanded from macro 'RELOC_HIDE'
        __ptr = (unsigned long) (ptr);                             \
                                 ^~~
   In file included from arch/arm/probes/uprobes/actions-arm.c:11:
   In file included from include/linux/module.h:17:
   In file included from include/linux/kmod.h:9:
   In file included from include/linux/umh.h:4:
   In file included from include/linux/gfp.h:7:
   In file included from include/linux/mmzone.h:22:
>> include/linux/mm_types.h:1189:45: error: no member named 'pcpu_cid' in 'struct mm_struct'
                   struct mm_cid *pcpu_cid = per_cpu_ptr(mm->pcpu_cid, i);
                                                         ~~  ^
   include/linux/percpu-defs.h:236:20: note: expanded from macro 'per_cpu_ptr'
           SHIFT_PERCPU_PTR((ptr), per_cpu_offset((cpu)));                 \
                             ^~~
   include/linux/percpu-defs.h:231:23: note: expanded from macro 'SHIFT_PERCPU_PTR'
           RELOC_HIDE((typeof(*(__p)) __kernel __force *)(__p), (__offset))
                                ^~~
   include/linux/compiler.h:178:13: note: expanded from macro 'RELOC_HIDE'
       (typeof(ptr)) (__ptr + (off)); })
               ^~~
   In file included from arch/arm/probes/uprobes/actions-arm.c:11:
   In file included from include/linux/module.h:17:
   In file included from include/linux/kmod.h:9:
   In file included from include/linux/umh.h:4:
   In file included from include/linux/gfp.h:7:
   In file included from include/linux/mmzone.h:22:
>> include/linux/mm_types.h:1189:45: error: no member named 'pcpu_cid' in 'struct mm_struct'
                   struct mm_cid *pcpu_cid = per_cpu_ptr(mm->pcpu_cid, i);
                                                         ~~  ^
   include/linux/percpu-defs.h:236:20: note: expanded from macro 'per_cpu_ptr'
           SHIFT_PERCPU_PTR((ptr), per_cpu_offset((cpu)));                 \
                             ^~~
   include/linux/percpu-defs.h:231:49: note: expanded from macro 'SHIFT_PERCPU_PTR'
           RELOC_HIDE((typeof(*(__p)) __kernel __force *)(__p), (__offset))
                                                          ^~~
   include/linux/compiler.h:178:13: note: expanded from macro 'RELOC_HIDE'
       (typeof(ptr)) (__ptr + (off)); })
               ^~~
   In file included from arch/arm/probes/uprobes/actions-arm.c:11:
   In file included from include/linux/module.h:17:
   In file included from include/linux/kmod.h:9:
   In file included from include/linux/umh.h:4:
   In file included from include/linux/gfp.h:7:
   In file included from include/linux/mmzone.h:22:
   include/linux/mm_types.h:1189:18: error: initializing 'struct mm_cid *' with an expression of incompatible type 'void'
                   struct mm_cid *pcpu_cid = per_cpu_ptr(mm->pcpu_cid, i);
                                  ^          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/mm_types.h:1199:6: error: no member named 'pcpu_cid' in 'struct mm_struct'
           mm->pcpu_cid = alloc_percpu_noprof(struct mm_cid);
           ~~  ^
   include/linux/mm_types.h:1200:11: error: no member named 'pcpu_cid' in 'struct mm_struct'
           if (!mm->pcpu_cid)
                ~~  ^
   include/linux/mm_types.h:1209:18: error: no member named 'pcpu_cid' in 'struct mm_struct'
           free_percpu(mm->pcpu_cid);
                       ~~  ^
   include/linux/mm_types.h:1210:6: error: no member named 'pcpu_cid' in 'struct mm_struct'
           mm->pcpu_cid = NULL;
           ~~  ^
   In file included from arch/arm/probes/uprobes/actions-arm.c:11:
   In file included from include/linux/module.h:21:
   In file included from include/linux/kobject.h:20:
   In file included from include/linux/sysfs.h:16:
   In file included from include/linux/kernfs.h:12:
   In file included from include/linux/idr.h:15:
   In file included from include/linux/radix-tree.h:21:
   In file included from include/linux/xarray.h:21:
   In file included from include/linux/sched/mm.h:11:
   include/linux/sched/coredump.h:31:28: error: no member named 'flags' in 'struct mm_struct'
           return __get_dumpable(mm->flags);
                                 ~~  ^
   In file included from arch/arm/probes/uprobes/actions-arm.c:11:
   In file included from include/linux/module.h:21:
   In file included from include/linux/kobject.h:20:
   In file included from include/linux/sysfs.h:16:
   In file included from include/linux/kernfs.h:12:
   In file included from include/linux/idr.h:15:
   In file included from include/linux/radix-tree.h:21:
   In file included from include/linux/xarray.h:21:
   include/linux/sched/mm.h:37:18: error: no member named 'mm_count' in 'struct mm_struct'
           atomic_inc(&mm->mm_count);
                       ~~  ^
   include/linux/sched/mm.h:54:40: error: no member named 'mm_count' in 'struct mm_struct'
           if (unlikely(atomic_dec_and_test(&mm->mm_count)))
                                             ~~  ^
   include/linux/compiler.h:77:42: note: expanded from macro 'unlikely'
   # define unlikely(x)    __builtin_expect(!!(x), 0)
                                               ^
   In file included from arch/arm/probes/uprobes/actions-arm.c:11:
   In file included from include/linux/module.h:21:
   In file included from include/linux/kobject.h:20:
   In file included from include/linux/sysfs.h:16:
   In file included from include/linux/kernfs.h:12:
   In file included from include/linux/idr.h:15:
   In file included from include/linux/radix-tree.h:21:
   In file included from include/linux/xarray.h:21:
   include/linux/sched/mm.h:133:18: error: no member named 'mm_users' in 'struct mm_struct'
           atomic_inc(&mm->mm_users);
                       ~~  ^
   include/linux/sched/mm.h:138:34: error: no member named 'mm_users' in 'struct mm_struct'
           return atomic_inc_not_zero(&mm->mm_users);
                                       ~~  ^
   include/linux/sched/mm.h:536:32: error: no member named 'membarrier_state' in 'struct mm_struct'
           if (likely(!(atomic_read(&mm->membarrier_state) &
                                     ~~  ^
   include/linux/compiler.h:76:40: note: expanded from macro 'likely'
   # define likely(x)      __builtin_expect(!!(x), 1)
                                               ^
   19 errors generated.


vim +127 include/linux/uprobes.h

   123	
   124	struct uprobes_state {
   125		struct xol_area		*xol_area;
   126		struct hlist_head	tramp_head;
 > 127		struct mutex		tramp_mutex;
   128	};
   129	

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

                 reply	other threads:[~2024-10-28 15:38 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202410282327.W1zgIXtN-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=jolsa@kernel.org \
    --cc=llvm@lists.linux.dev \
    --cc=oe-kbuild-all@lists.linux.dev \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox