From: kernel test robot <lkp@intel.com>
To: luca.boccassi@gmail.com, linux-kernel@vger.kernel.org
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
christian@brauner.io
Subject: Re: [PATCH v4] pidfd: add ioctl to retrieve pid info
Date: Sun, 6 Oct 2024 06:26:24 +0800 [thread overview]
Message-ID: <202410060624.Z84m82vK-lkp@intel.com> (raw)
In-Reply-To: <20241004194751.215507-1-luca.boccassi@gmail.com>
Hi,
kernel test robot noticed the following build errors:
[auto build test ERROR on 9852d85ec9d492ebef56dc5f229416c925758edc]
url: https://github.com/intel-lab-lkp/linux/commits/luca-boccassi-gmail-com/pidfd-add-ioctl-to-retrieve-pid-info/20241005-041639
base: 9852d85ec9d492ebef56dc5f229416c925758edc
patch link: https://lore.kernel.org/r/20241004194751.215507-1-luca.boccassi%40gmail.com
patch subject: [PATCH v4] pidfd: add ioctl to retrieve pid info
config: arm-randconfig-002-20241006 (https://download.01.org/0day-ci/archive/20241006/202410060624.Z84m82vK-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/20241006/202410060624.Z84m82vK-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/202410060624.Z84m82vK-lkp@intel.com/
All errors (new ones prefixed by >>):
>> fs/pidfs.c:156:25: error: implicit declaration of function 'task_css_check' is invalid in C99 [-Werror,-Wimplicit-function-declaration]
struct cgroup *cgrp = task_css_check(task, pids_cgrp_id, 1)->cgroup;
^
fs/pidfs.c:156:64: error: member reference type 'int' is not a pointer
struct cgroup *cgrp = task_css_check(task, pids_cgrp_id, 1)->cgroup;
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^
fs/pidfs.c:156:46: error: use of undeclared identifier 'pids_cgrp_id'
struct cgroup *cgrp = task_css_check(task, pids_cgrp_id, 1)->cgroup;
^
3 errors generated.
Kconfig warnings: (for reference only)
WARNING: unmet direct dependencies detected for GET_FREE_REGION
Depends on [n]: SPARSEMEM [=n]
Selected by [m]:
- RESOURCE_KUNIT_TEST [=m] && RUNTIME_TESTING_MENU [=y] && KUNIT [=m]
vim +/task_css_check +156 fs/pidfs.c
117
118 static long pidfd_info(struct task_struct *task, unsigned int cmd, unsigned long arg)
119 {
120 struct pidfd_info __user *uinfo = (struct pidfd_info __user *)arg;
121 size_t usize = _IOC_SIZE(cmd);
122 struct pidfd_info kinfo = {};
123 struct user_namespace *user_ns;
124 const struct cred *c;
125 __u64 request_mask;
126
127 if (!uinfo)
128 return -EINVAL;
129 if (usize < sizeof(struct pidfd_info))
130 return -EINVAL; /* First version, no smaller struct possible */
131
132 if (copy_from_user(&request_mask, &uinfo->request_mask, sizeof(request_mask)))
133 return -EFAULT;
134
135 c = get_task_cred(task);
136 if (!c)
137 return -ESRCH;
138
139 /* Unconditionally return identifiers and credentials, the rest only on request */
140
141 kinfo.pid = task_pid_vnr(task);
142 kinfo.tgid = task_tgid_vnr(task);
143 kinfo.ppid = task_ppid_nr_ns(task, task_active_pid_ns(task));
144
145 user_ns = current_user_ns();
146 kinfo.ruid = from_kuid_munged(user_ns, c->uid);
147 kinfo.rgid = from_kgid_munged(user_ns, c->gid);
148 kinfo.euid = from_kuid_munged(user_ns, c->euid);
149 kinfo.egid = from_kgid_munged(user_ns, c->egid);
150 kinfo.suid = from_kuid_munged(user_ns, c->suid);
151 kinfo.sgid = from_kgid_munged(user_ns, c->sgid);
152 kinfo.fsuid = from_kuid_munged(user_ns, c->fsuid);
153 kinfo.fsgid = from_kgid_munged(user_ns, c->fsgid);
154
155 if (request_mask & PIDFD_INFO_CGROUPID) {
> 156 struct cgroup *cgrp = task_css_check(task, pids_cgrp_id, 1)->cgroup;
157 if (!cgrp)
158 return -ENODEV;
159
160 kinfo.cgroupid = cgroup_id(cgrp);
161 kinfo.result_mask |= PIDFD_INFO_CGROUPID;
162 }
163
164 /*
165 * If userspace and the kernel have the same struct size it can just
166 * be copied. If userspace provides an older struct, only the bits that
167 * userspace knows about will be copied. If userspace provides a new
168 * struct, only the bits that the kernel knows about will be copied and
169 * the size value will be set to the size the kernel knows about.
170 */
171 if (copy_to_user(uinfo, &kinfo, min(usize, sizeof(kinfo))))
172 return -EFAULT;
173
174 return 0;
175 }
176
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
parent reply other threads:[~2024-10-05 22:26 UTC|newest]
Thread overview: expand[flat|nested] mbox.gz Atom feed
[parent not found: <20241004194751.215507-1-luca.boccassi@gmail.com>]
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=202410060624.Z84m82vK-lkp@intel.com \
--to=lkp@intel.com \
--cc=christian@brauner.io \
--cc=linux-kernel@vger.kernel.org \
--cc=llvm@lists.linux.dev \
--cc=luca.boccassi@gmail.com \
--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;
as well as URLs for NNTP newsgroup(s).