From: kernel test robot <lkp@intel.com>
To: luca.boccassi@gmail.com, linux-kernel@vger.kernel.org
Cc: oe-kbuild-all@lists.linux.dev, christian@brauner.io, paul@paul-moore.com
Subject: Re: [PATCH] pidfd: add ioctl to retrieve pid info
Date: Fri, 4 Oct 2024 11:55:07 +0800 [thread overview]
Message-ID: <202410041128.tLVDbeJB-lkp@intel.com> (raw)
In-Reply-To: <20241002142516.110567-1-luca.boccassi@gmail.com>
Hi,
kernel test robot noticed the following build warnings:
[auto build test WARNING on shuah-kselftest/next]
[also build test WARNING on shuah-kselftest/fixes linus/master v6.12-rc1 next-20241003]
[cannot apply to brauner-vfs/vfs.all]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]
url: https://github.com/intel-lab-lkp/linux/commits/luca-boccassi-gmail-com/pidfd-add-ioctl-to-retrieve-pid-info/20241002-223302
base: https://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest.git next
patch link: https://lore.kernel.org/r/20241002142516.110567-1-luca.boccassi%40gmail.com
patch subject: [PATCH] pidfd: add ioctl to retrieve pid info
config: x86_64-randconfig-123-20241004 (https://download.01.org/0day-ci/archive/20241004/202410041128.tLVDbeJB-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241004/202410041128.tLVDbeJB-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/202410041128.tLVDbeJB-lkp@intel.com/
sparse warnings: (new ones prefixed by >>)
>> fs/pidfs.c:121:37: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] __user *from @@ got struct pidfd_info * @@
fs/pidfs.c:121:37: sparse: expected void const [noderef] __user *from
fs/pidfs.c:121:37: sparse: got struct pidfd_info *
vim +121 fs/pidfs.c
116
117 static long pidfd_info(struct task_struct *task, struct pid *pid, unsigned long arg)
118 {
119 struct pidfd_info uinfo = {}, info = {};
120
> 121 if (copy_from_user(&uinfo, (struct pidfd_info *)arg, sizeof(struct pidfd_info)))
122 return -EFAULT;
123 if (uinfo.size > sizeof(struct pidfd_info))
124 return -E2BIG;
125 if (uinfo.size < sizeof(struct pidfd_info))
126 return -EINVAL; /* First version, no smaller struct possible */
127
128 if (uinfo.request_mask & ~(PIDFD_INFO_PID | PIDFD_INFO_CREDS | PIDFD_INFO_CGROUPID | PIDFD_INFO_SECURITY_CONTEXT))
129 return -EINVAL;
130
131 memcpy(&info, &uinfo, uinfo.size);
132
133 if (uinfo.request_mask & PIDFD_INFO_PID)
134 info.pid = pid_nr_ns(pid, task_active_pid_ns(task));
135
136 if (uinfo.request_mask & PIDFD_INFO_CREDS) {
137 const struct cred *c = get_task_cred(task);
138 if (!c)
139 return -ESRCH;
140
141 info.uid = from_kuid_munged(current_user_ns(), c->uid);
142 info.gid = from_kgid_munged(current_user_ns(), c->gid);
143 }
144
145 if (uinfo.request_mask & PIDFD_INFO_CGROUPID) {
146 struct cgroup *cgrp = task_css_check(task, pids_cgrp_id, 1)->cgroup;
147 if (!cgrp)
148 return -ENODEV;
149
150 info.cgroupid = cgroup_id(cgrp);
151 }
152
153 if (uinfo.request_mask & PIDFD_INFO_SECURITY_CONTEXT) {
154 char *secctx;
155 u32 secid, secctx_len;
156 const struct cred *c = get_task_cred(task);
157 if (!c)
158 return -ESRCH;
159
160 security_cred_getsecid(c, &secid);
161 if (security_secid_to_secctx(secid, &secctx, &secctx_len))
162 return -EFAULT;
163
164 memcpy(info.security_context, secctx, min_t(u32, secctx_len, NAME_MAX-1));
165 }
166
167 if (copy_to_user((void __user *)arg, &info, uinfo.size))
168 return -EFAULT;
169
170 return 0;
171 }
172
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2024-10-04 3:56 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-02 14:24 [PATCH] pidfd: add ioctl to retrieve pid info luca.boccassi
2024-10-02 14:48 ` Paul Moore
2024-10-04 18:48 ` Luca Boccassi
2024-10-05 16:05 ` Paul Moore
2024-10-22 23:45 ` luca.boccassi
2024-10-22 23:56 ` Luca Boccassi
2024-10-24 23:14 ` Paul Moore
2024-10-24 23:31 ` Luca Boccassi
2024-10-03 21:54 ` kernel test robot
2024-10-03 21:54 ` kernel test robot
2024-10-04 3:55 ` kernel test robot [this message]
2024-10-04 9:29 ` Christian Brauner
2024-10-04 14:05 ` Paul Moore
2024-10-04 18:50 ` Luca Boccassi
2024-10-04 19:29 ` Oleg Nesterov
2024-10-04 19:40 ` Luca Boccassi
2024-10-05 11:29 ` Oleg Nesterov
2024-10-06 14:59 ` Luca Boccassi
2024-10-06 19:18 ` David Laight
2024-10-07 14:54 ` Josh Triplett
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=202410041128.tLVDbeJB-lkp@intel.com \
--to=lkp@intel.com \
--cc=christian@brauner.io \
--cc=linux-kernel@vger.kernel.org \
--cc=luca.boccassi@gmail.com \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=paul@paul-moore.com \
/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 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.