From: kbuild test robot <lkp@intel.com>
To: Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com>
Cc: kbuild-all@01.org, Cyrill Gorcunov <gorcunov@gmail.com>,
Sergey Senozhatsky <sergey.senozhatsky.work@gmail.com>,
LKML <linux-kernel@vger.kernel.org>,
Michal Hocko <mhocko@kernel.org>,
Randy Dunlap <rdunlap@infradead.org>,
Andrey Vagin <avagin@openvz.org>,
Andrew Morton <akpm@linuxfoundation.org>,
Pavel Emelyanov <xemul@virtuozzo.com>,
Michael Kerrisk <mtk.manpages@gmail.com>,
Yang Shi <yang.shi@linux.alibaba.com>
Subject: Re: [PATCH] prctl: Don't compile some of prctl functions when CRUI
Date: Sat, 21 Apr 2018 05:43:49 +0800 [thread overview]
Message-ID: <201804210521.TeerwqHU%fengguang.wu@intel.com> (raw)
In-Reply-To: <20180420072903.GA594@jagdpanzerIV>
[-- Attachment #1: Type: text/plain, Size: 9079 bytes --]
Hi Sergey,
I love your patch! Yet something to improve:
[auto build test ERROR on linus/master]
[also build test ERROR on v4.17-rc1 next-20180420]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
url: https://github.com/0day-ci/linux/commits/Sergey-Senozhatsky/prctl-Don-t-compile-some-of-prctl-functions-when-CRUI/20180421-040826
config: i386-randconfig-s1-201815 (attached as .config)
compiler: gcc-6 (Debian 6.4.0-9) 6.4.0 20171026
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
All errors (new ones prefixed by >>):
kernel/sys.c: In function 'prctl_set_mm':
>> kernel/sys.c:2108:10: error: implicit declaration of function 'prctl_set_mm_exe_file' [-Werror=implicit-function-declaration]
return prctl_set_mm_exe_file(mm, (unsigned int)addr);
^~~~~~~~~~~~~~~~~~~~~
>> kernel/sys.c:2174:10: error: implicit declaration of function 'validate_prctl_map' [-Werror=implicit-function-declaration]
error = validate_prctl_map(&prctl_map);
^~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
vim +/prctl_set_mm_exe_file +2108 kernel/sys.c
f606b77f1 Cyrill Gorcunov 2014-10-09 2103
79f0713d4 Cyrill Gorcunov 2012-03-15 2104 if (!capable(CAP_SYS_RESOURCE))
028ee4be3 Cyrill Gorcunov 2012-01-12 2105 return -EPERM;
028ee4be3 Cyrill Gorcunov 2012-01-12 2106
6e399cd14 Davidlohr Bueso 2015-04-16 2107 if (opt == PR_SET_MM_EXE_FILE)
6e399cd14 Davidlohr Bueso 2015-04-16 @2108 return prctl_set_mm_exe_file(mm, (unsigned int)addr);
b32dfe377 Cyrill Gorcunov 2012-05-31 2109
4a00e9df2 Alexey Dobriyan 2015-06-25 2110 if (opt == PR_SET_MM_AUXV)
4a00e9df2 Alexey Dobriyan 2015-06-25 2111 return prctl_set_auxv(mm, addr, arg4);
4a00e9df2 Alexey Dobriyan 2015-06-25 2112
1ad75b9e1 Cyrill Gorcunov 2012-06-07 2113 if (addr >= TASK_SIZE || addr < mmap_min_addr)
028ee4be3 Cyrill Gorcunov 2012-01-12 2114 return -EINVAL;
028ee4be3 Cyrill Gorcunov 2012-01-12 2115
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2116 error = -EINVAL;
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2117
ddf1d398e Mateusz Guzik 2016-01-20 2118 down_write(&mm->mmap_sem);
028ee4be3 Cyrill Gorcunov 2012-01-12 2119 vma = find_vma(mm, addr);
028ee4be3 Cyrill Gorcunov 2012-01-12 2120
4a00e9df2 Alexey Dobriyan 2015-06-25 2121 prctl_map.start_code = mm->start_code;
4a00e9df2 Alexey Dobriyan 2015-06-25 2122 prctl_map.end_code = mm->end_code;
4a00e9df2 Alexey Dobriyan 2015-06-25 2123 prctl_map.start_data = mm->start_data;
4a00e9df2 Alexey Dobriyan 2015-06-25 2124 prctl_map.end_data = mm->end_data;
4a00e9df2 Alexey Dobriyan 2015-06-25 2125 prctl_map.start_brk = mm->start_brk;
4a00e9df2 Alexey Dobriyan 2015-06-25 2126 prctl_map.brk = mm->brk;
4a00e9df2 Alexey Dobriyan 2015-06-25 2127 prctl_map.start_stack = mm->start_stack;
4a00e9df2 Alexey Dobriyan 2015-06-25 2128 prctl_map.arg_start = mm->arg_start;
4a00e9df2 Alexey Dobriyan 2015-06-25 2129 prctl_map.arg_end = mm->arg_end;
4a00e9df2 Alexey Dobriyan 2015-06-25 2130 prctl_map.env_start = mm->env_start;
4a00e9df2 Alexey Dobriyan 2015-06-25 2131 prctl_map.env_end = mm->env_end;
4a00e9df2 Alexey Dobriyan 2015-06-25 2132 prctl_map.auxv = NULL;
4a00e9df2 Alexey Dobriyan 2015-06-25 2133 prctl_map.auxv_size = 0;
4a00e9df2 Alexey Dobriyan 2015-06-25 2134 prctl_map.exe_fd = -1;
4a00e9df2 Alexey Dobriyan 2015-06-25 2135
028ee4be3 Cyrill Gorcunov 2012-01-12 2136 switch (opt) {
028ee4be3 Cyrill Gorcunov 2012-01-12 2137 case PR_SET_MM_START_CODE:
4a00e9df2 Alexey Dobriyan 2015-06-25 2138 prctl_map.start_code = addr;
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2139 break;
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2140 case PR_SET_MM_END_CODE:
4a00e9df2 Alexey Dobriyan 2015-06-25 2141 prctl_map.end_code = addr;
028ee4be3 Cyrill Gorcunov 2012-01-12 2142 break;
028ee4be3 Cyrill Gorcunov 2012-01-12 2143 case PR_SET_MM_START_DATA:
4a00e9df2 Alexey Dobriyan 2015-06-25 2144 prctl_map.start_data = addr;
028ee4be3 Cyrill Gorcunov 2012-01-12 2145 break;
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2146 case PR_SET_MM_END_DATA:
4a00e9df2 Alexey Dobriyan 2015-06-25 2147 prctl_map.end_data = addr;
4a00e9df2 Alexey Dobriyan 2015-06-25 2148 break;
4a00e9df2 Alexey Dobriyan 2015-06-25 2149 case PR_SET_MM_START_STACK:
4a00e9df2 Alexey Dobriyan 2015-06-25 2150 prctl_map.start_stack = addr;
028ee4be3 Cyrill Gorcunov 2012-01-12 2151 break;
028ee4be3 Cyrill Gorcunov 2012-01-12 2152 case PR_SET_MM_START_BRK:
4a00e9df2 Alexey Dobriyan 2015-06-25 2153 prctl_map.start_brk = addr;
028ee4be3 Cyrill Gorcunov 2012-01-12 2154 break;
028ee4be3 Cyrill Gorcunov 2012-01-12 2155 case PR_SET_MM_BRK:
4a00e9df2 Alexey Dobriyan 2015-06-25 2156 prctl_map.brk = addr;
4a00e9df2 Alexey Dobriyan 2015-06-25 2157 break;
4a00e9df2 Alexey Dobriyan 2015-06-25 2158 case PR_SET_MM_ARG_START:
4a00e9df2 Alexey Dobriyan 2015-06-25 2159 prctl_map.arg_start = addr;
4a00e9df2 Alexey Dobriyan 2015-06-25 2160 break;
4a00e9df2 Alexey Dobriyan 2015-06-25 2161 case PR_SET_MM_ARG_END:
4a00e9df2 Alexey Dobriyan 2015-06-25 2162 prctl_map.arg_end = addr;
4a00e9df2 Alexey Dobriyan 2015-06-25 2163 break;
4a00e9df2 Alexey Dobriyan 2015-06-25 2164 case PR_SET_MM_ENV_START:
4a00e9df2 Alexey Dobriyan 2015-06-25 2165 prctl_map.env_start = addr;
4a00e9df2 Alexey Dobriyan 2015-06-25 2166 break;
4a00e9df2 Alexey Dobriyan 2015-06-25 2167 case PR_SET_MM_ENV_END:
4a00e9df2 Alexey Dobriyan 2015-06-25 2168 prctl_map.env_end = addr;
4a00e9df2 Alexey Dobriyan 2015-06-25 2169 break;
4a00e9df2 Alexey Dobriyan 2015-06-25 2170 default:
028ee4be3 Cyrill Gorcunov 2012-01-12 2171 goto out;
4a00e9df2 Alexey Dobriyan 2015-06-25 2172 }
028ee4be3 Cyrill Gorcunov 2012-01-12 2173
4a00e9df2 Alexey Dobriyan 2015-06-25 @2174 error = validate_prctl_map(&prctl_map);
4a00e9df2 Alexey Dobriyan 2015-06-25 2175 if (error)
028ee4be3 Cyrill Gorcunov 2012-01-12 2176 goto out;
028ee4be3 Cyrill Gorcunov 2012-01-12 2177
4a00e9df2 Alexey Dobriyan 2015-06-25 2178 switch (opt) {
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2179 /*
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2180 * If command line arguments and environment
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2181 * are placed somewhere else on stack, we can
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2182 * set them up here, ARG_START/END to setup
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2183 * command line argumets and ENV_START/END
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2184 * for environment.
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2185 */
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2186 case PR_SET_MM_START_STACK:
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2187 case PR_SET_MM_ARG_START:
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2188 case PR_SET_MM_ARG_END:
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2189 case PR_SET_MM_ENV_START:
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2190 case PR_SET_MM_ENV_END:
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2191 if (!vma) {
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2192 error = -EFAULT;
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2193 goto out;
fe8c7f5cb Cyrill Gorcunov 2012-05-31 2194 }
028ee4be3 Cyrill Gorcunov 2012-01-12 2195 }
028ee4be3 Cyrill Gorcunov 2012-01-12 2196
4a00e9df2 Alexey Dobriyan 2015-06-25 2197 mm->start_code = prctl_map.start_code;
4a00e9df2 Alexey Dobriyan 2015-06-25 2198 mm->end_code = prctl_map.end_code;
4a00e9df2 Alexey Dobriyan 2015-06-25 2199 mm->start_data = prctl_map.start_data;
4a00e9df2 Alexey Dobriyan 2015-06-25 2200 mm->end_data = prctl_map.end_data;
4a00e9df2 Alexey Dobriyan 2015-06-25 2201 mm->start_brk = prctl_map.start_brk;
4a00e9df2 Alexey Dobriyan 2015-06-25 2202 mm->brk = prctl_map.brk;
4a00e9df2 Alexey Dobriyan 2015-06-25 2203 mm->start_stack = prctl_map.start_stack;
4a00e9df2 Alexey Dobriyan 2015-06-25 2204 mm->arg_start = prctl_map.arg_start;
4a00e9df2 Alexey Dobriyan 2015-06-25 2205 mm->arg_end = prctl_map.arg_end;
4a00e9df2 Alexey Dobriyan 2015-06-25 2206 mm->env_start = prctl_map.env_start;
4a00e9df2 Alexey Dobriyan 2015-06-25 2207 mm->env_end = prctl_map.env_end;
4a00e9df2 Alexey Dobriyan 2015-06-25 2208
028ee4be3 Cyrill Gorcunov 2012-01-12 2209 error = 0;
028ee4be3 Cyrill Gorcunov 2012-01-12 2210 out:
ddf1d398e Mateusz Guzik 2016-01-20 2211 up_write(&mm->mmap_sem);
028ee4be3 Cyrill Gorcunov 2012-01-12 2212 return error;
028ee4be3 Cyrill Gorcunov 2012-01-12 2213 }
300f786b2 Cyrill Gorcunov 2012-06-07 2214
:::::: The code at line 2108 was first introduced by commit
:::::: 6e399cd144d8500ffb5d40fa6848890e2580a80a prctl: avoid using mmap_sem for exe_file serialization
:::::: TO: Davidlohr Bueso <dave@stgolabs.net>
:::::: CC: Linus Torvalds <torvalds@linux-foundation.org>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 28656 bytes --]
prev parent reply other threads:[~2018-04-20 21:44 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-04-05 18:26 [PATCH v2] prctl: Deprecate non PR_SET_MM_MAP operations Cyrill Gorcunov
2018-04-05 18:56 ` Michal Hocko
2018-04-05 19:51 ` Cyrill Gorcunov
2018-04-05 18:59 ` Yang Shi
2018-04-18 22:28 ` Andrew Morton
2018-04-18 22:42 ` Cyrill Gorcunov
2018-04-20 2:38 ` [v2] " Sergey Senozhatsky
2018-04-20 7:02 ` Cyrill Gorcunov
2018-04-20 7:29 ` Sergey Senozhatsky
2018-04-20 8:18 ` Cyrill Gorcunov
2018-04-20 20:37 ` [PATCH] prctl: Don't compile some of prctl functions when CRUI kbuild test robot
2018-04-20 21:00 ` Andrew Morton
2019-04-17 12:23 ` Michal Koutný
2019-04-17 12:38 ` Cyrill Gorcunov
2019-04-17 14:44 ` Michal Koutný
2019-04-17 14:56 ` Cyrill Gorcunov
2019-04-17 16:56 ` Cyrill Gorcunov
2018-04-20 21:43 ` kbuild test robot [this message]
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=201804210521.TeerwqHU%fengguang.wu@intel.com \
--to=lkp@intel.com \
--cc=akpm@linuxfoundation.org \
--cc=avagin@openvz.org \
--cc=gorcunov@gmail.com \
--cc=kbuild-all@01.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mhocko@kernel.org \
--cc=mtk.manpages@gmail.com \
--cc=rdunlap@infradead.org \
--cc=sergey.senozhatsky.work@gmail.com \
--cc=xemul@virtuozzo.com \
--cc=yang.shi@linux.alibaba.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 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).