[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <201910140837.KeMhhSqY%lkp@intel.com>
Date: Mon, 14 Oct 2019 08:50:12 +0800
From: kbuild test robot <lkp@...el.com>
To: Dmitry Safonov <dima@...sta.com>
Cc: kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
Dmitry Safonov <0x7f454c46@...il.com>,
Andrei Vagin <avagin@...nvz.org>,
Dmitry Safonov <dima@...sta.com>,
Adrian Reber <adrian@...as.de>,
Andy Lutomirski <luto@...nel.org>,
Arnd Bergmann <arnd@...db.de>,
Christian Brauner <christian.brauner@...ntu.com>,
Cyrill Gorcunov <gorcunov@...nvz.org>,
"Eric W. Biederman" <ebiederm@...ssion.com>,
"H. Peter Anvin" <hpa@...or.com>, Ingo Molnar <mingo@...hat.com>,
Jann Horn <jannh@...gle.com>, Jeff Dike <jdike@...toit.com>,
Oleg Nesterov <oleg@...hat.com>,
Pavel Emelyanov <xemul@...tuozzo.com>,
Shuah Khan <shuah@...nel.org>,
Thomas Gleixner <tglx@...utronix.de>,
Vincenzo Frascino <vincenzo.frascino@....com>,
containers@...ts.linux-foundation.org, criu@...nvz.org,
linux-api@...r.kernel.org, x86@...nel.org
Subject: Re: [PATCHv7 15/33] posix-timers: Make clock_nanosleep() time
namespace aware
Hi Dmitry,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on linus/master]
[cannot apply to v5.4-rc2 next-20191011]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]
url: https://github.com/0day-ci/linux/commits/Dmitry-Safonov/kernel-Introduce-Time-Namespace/20191014-075119
config: i386-tinyconfig (attached as .config)
compiler: gcc-7 (Debian 7.4.0-13) 7.4.0
reproduce:
# save the attached .config to linux build tree
make ARCH=i386
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@...el.com>
All errors (new ones prefixed by >>):
kernel/time/posix-stubs.c: In function '__do_sys_clock_nanosleep':
>> kernel/time/posix-stubs.c:153:31: error: 'clockid' undeclared (first use in this function); did you mean 'clock_t'?
texp = timens_ktime_to_host(clockid, texp);
^~~~~~~
clock_t
kernel/time/posix-stubs.c:153:31: note: each undeclared identifier is reported only once for each function it appears in
kernel/time/posix-stubs.c: In function '__do_sys_clock_nanosleep_time32':
>> kernel/time/posix-stubs.c:222:2: error: unknown type name 'ktime'; did you mean 'ktime_t'?
ktime texp;
^~~~~
ktime_t
kernel/time/posix-stubs.c:243:31: error: 'clockid' undeclared (first use in this function); did you mean 'clock_t'?
texp = timens_ktime_to_host(clockid, texp);
^~~~~~~
clock_t
vim +153 kernel/time/posix-stubs.c
126
127 SYSCALL_DEFINE4(clock_nanosleep, const clockid_t, which_clock, int, flags,
128 const struct __kernel_timespec __user *, rqtp,
129 struct __kernel_timespec __user *, rmtp)
130 {
131 struct timespec64 t;
132 ktime_t texp;
133
134 switch (which_clock) {
135 case CLOCK_REALTIME:
136 case CLOCK_MONOTONIC:
137 case CLOCK_BOOTTIME:
138 break;
139 default:
140 return -EINVAL;
141 }
142
143 if (get_timespec64(&t, rqtp))
144 return -EFAULT;
145 if (!timespec64_valid(&t))
146 return -EINVAL;
147 if (flags & TIMER_ABSTIME)
148 rmtp = NULL;
149 current->restart_block.nanosleep.type = rmtp ? TT_NATIVE : TT_NONE;
150 current->restart_block.nanosleep.rmtp = rmtp;
151 texp = timespec64_to_ktime(t);
152 if (flags & TIMER_ABSTIME)
> 153 texp = timens_ktime_to_host(clockid, texp);
154 return hrtimer_nanosleep(texp, flags & TIMER_ABSTIME ?
155 HRTIMER_MODE_ABS : HRTIMER_MODE_REL,
156 which_clock);
157 }
158
159 #ifdef CONFIG_COMPAT
160 COMPAT_SYS_NI(timer_create);
161 COMPAT_SYS_NI(getitimer);
162 COMPAT_SYS_NI(setitimer);
163 #endif
164
165 #ifdef CONFIG_COMPAT_32BIT_TIME
166 SYS_NI(timer_settime32);
167 SYS_NI(timer_gettime32);
168
169 SYSCALL_DEFINE2(clock_settime32, const clockid_t, which_clock,
170 struct old_timespec32 __user *, tp)
171 {
172 struct timespec64 new_tp;
173
174 if (which_clock != CLOCK_REALTIME)
175 return -EINVAL;
176 if (get_old_timespec32(&new_tp, tp))
177 return -EFAULT;
178
179 return do_sys_settimeofday64(&new_tp, NULL);
180 }
181
182 SYSCALL_DEFINE2(clock_gettime32, clockid_t, which_clock,
183 struct old_timespec32 __user *, tp)
184 {
185 int ret;
186 struct timespec64 kernel_tp;
187
188 ret = do_clock_gettime(which_clock, &kernel_tp);
189 if (ret)
190 return ret;
191
192 if (put_old_timespec32(&kernel_tp, tp))
193 return -EFAULT;
194 return 0;
195 }
196
197 SYSCALL_DEFINE2(clock_getres_time32, clockid_t, which_clock,
198 struct old_timespec32 __user *, tp)
199 {
200 struct timespec64 rtn_tp = {
201 .tv_sec = 0,
202 .tv_nsec = hrtimer_resolution,
203 };
204
205 switch (which_clock) {
206 case CLOCK_REALTIME:
207 case CLOCK_MONOTONIC:
208 case CLOCK_BOOTTIME:
209 if (put_old_timespec32(&rtn_tp, tp))
210 return -EFAULT;
211 return 0;
212 default:
213 return -EINVAL;
214 }
215 }
216
217 SYSCALL_DEFINE4(clock_nanosleep_time32, clockid_t, which_clock, int, flags,
218 struct old_timespec32 __user *, rqtp,
219 struct old_timespec32 __user *, rmtp)
220 {
221 struct timespec64 t;
> 222 ktime texp;
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Download attachment ".config.gz" of type "application/gzip" (7207 bytes)
Powered by blists - more mailing lists