linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
* Re: [RESEND PATCH] sparse: use static inline for __chk_{user,io}_ptr()
       [not found] <20200806194206.10338-1-luc.vanoostenryck@gmail.com>
@ 2020-08-06 22:38 ` kernel test robot
  2020-08-07  0:44 ` kernel test robot
  1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2020-08-06 22:38 UTC (permalink / raw)
  To: Luc Van Oostenryck, Andrew Morton
  Cc: kbuild-all, Linux Memory Management List, linux-kernel,
	Luc Van Oostenryck

[-- Attachment #1: Type: text/plain, Size: 8442 bytes --]

Hi Luc,

I love your patch! Perhaps something to improve:

[auto build test WARNING on hnaz-linux-mm/master]
[also build test WARNING on next-20200806]
[cannot apply to linux/master linus/master v5.8]
[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]

url:    https://github.com/0day-ci/linux/commits/Luc-Van-Oostenryck/sparse-use-static-inline-for-__chk_-user-io-_ptr/20200807-034410
base:   https://github.com/hnaz/linux-mm master
config: x86_64-randconfig-s022-20200805 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.2-117-g8c7aee71-dirty
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


sparse warnings: (new ones prefixed by >>)

   arch/x86/ia32/ia32_signal.c:350:9: sparse: sparse: cast removes address space '__user' of expression
>> arch/x86/ia32/ia32_signal.c:350:9: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got unsigned long long [usertype] * @@
>> arch/x86/ia32/ia32_signal.c:350:9: sparse:     expected void const volatile [noderef] __user *ptr
   arch/x86/ia32/ia32_signal.c:350:9: sparse:     got unsigned long long [usertype] *
   arch/x86/ia32/ia32_signal.c:350:9: sparse: sparse: cast removes address space '__user' of expression
   arch/x86/ia32/ia32_signal.c:350:9: sparse: sparse: cast removes address space '__user' of expression
   arch/x86/ia32/ia32_signal.c:350:9: sparse: sparse: cast removes address space '__user' of expression
   arch/x86/ia32/ia32_signal.c:350:9: sparse: sparse: cast removes address space '__user' of expression
   arch/x86/ia32/ia32_signal.c:350:9: sparse: sparse: cast removes address space '__user' of expression
   arch/x86/ia32/ia32_signal.c:350:9: sparse: sparse: cast removes address space '__user' of expression
   arch/x86/ia32/ia32_signal.c:350:9: sparse: sparse: cast removes address space '__user' of expression
   arch/x86/ia32/ia32_signal.c:350:9: sparse: sparse: cast removes address space '__user' of expression
   arch/x86/ia32/ia32_signal.c:350:9: sparse: sparse: cast removes address space '__user' of expression

vim +350 arch/x86/ia32/ia32_signal.c

^1da177e4c3f41 arch/x86_64/ia32/ia32_signal.c Linus Torvalds    2005-04-16  299  
235b80226b986d arch/x86/ia32/ia32_signal.c    Al Viro           2012-11-09  300  int ia32_setup_rt_frame(int sig, struct ksignal *ksig,
^1da177e4c3f41 arch/x86_64/ia32/ia32_signal.c Linus Torvalds    2005-04-16  301  			compat_sigset_t *set, struct pt_regs *regs)
^1da177e4c3f41 arch/x86_64/ia32/ia32_signal.c Linus Torvalds    2005-04-16  302  {
3b0d29ee1c73b6 arch/x86/ia32/ia32_signal.c    Hiroshi Shimamoto 2008-12-17  303  	struct rt_sigframe_ia32 __user *frame;
af65d64845a90c arch/x86/ia32/ia32_signal.c    Roland McGrath    2008-01-30  304  	void __user *restorer;
44a1d996325982 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  305  	void __user *fp = NULL;
^1da177e4c3f41 arch/x86_64/ia32/ia32_signal.c Linus Torvalds    2005-04-16  306  
57d563c8292569 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  307  	/* unsafe_put_user optimizes that into a single 8 byte store */
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  308  	static const struct {
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  309  		u8 movl;
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  310  		u32 val;
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  311  		u16 int80;
9cc3c49ed1b1db arch/x86/ia32/ia32_signal.c    Hiroshi Shimamoto 2008-11-11  312  		u8  pad;
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  313  	} __attribute__((packed)) code = {
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  314  		0xb8,
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  315  		__NR_ia32_rt_sigreturn,
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  316  		0x80cd,
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  317  		0,
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  318  	};
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  319  
44a1d996325982 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  320  	frame = get_sigframe(ksig, regs, sizeof(*frame), &fp);
^1da177e4c3f41 arch/x86_64/ia32/ia32_signal.c Linus Torvalds    2005-04-16  321  
39f16c1c0f14e9 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  322  	if (!user_access_begin(frame, sizeof(*frame)))
3d0aedd9538e6b arch/x86/ia32/ia32_signal.c    Hiroshi Shimamoto 2008-09-12  323  		return -EFAULT;
^1da177e4c3f41 arch/x86_64/ia32/ia32_signal.c Linus Torvalds    2005-04-16  324  
39f16c1c0f14e9 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  325  	unsafe_put_user(sig, &frame->sig, Efault);
39f16c1c0f14e9 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  326  	unsafe_put_user(ptr_to_compat(&frame->info), &frame->pinfo, Efault);
39f16c1c0f14e9 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  327  	unsafe_put_user(ptr_to_compat(&frame->uc), &frame->puc, Efault);
^1da177e4c3f41 arch/x86_64/ia32/ia32_signal.c Linus Torvalds    2005-04-16  328  
^1da177e4c3f41 arch/x86_64/ia32/ia32_signal.c Linus Torvalds    2005-04-16  329  	/* Create the ucontext.  */
ff661350157266 arch/x86/ia32/ia32_signal.c    Marco Elver       2019-07-11  330  	if (static_cpu_has(X86_FEATURE_XSAVE))
39f16c1c0f14e9 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  331  		unsafe_put_user(UC_FP_XSTATE, &frame->uc.uc_flags, Efault);
c37b5efea43f9e arch/x86/ia32/ia32_signal.c    Suresh Siddha     2008-07-29  332  	else
39f16c1c0f14e9 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  333  		unsafe_put_user(0, &frame->uc.uc_flags, Efault);
39f16c1c0f14e9 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  334  	unsafe_put_user(0, &frame->uc.uc_link, Efault);
39f16c1c0f14e9 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  335  	unsafe_compat_save_altstack(&frame->uc.uc_stack, regs->sp, Efault);
^1da177e4c3f41 arch/x86_64/ia32/ia32_signal.c Linus Torvalds    2005-04-16  336  
235b80226b986d arch/x86/ia32/ia32_signal.c    Al Viro           2012-11-09  337  	if (ksig->ka.sa.sa_flags & SA_RESTORER)
235b80226b986d arch/x86/ia32/ia32_signal.c    Al Viro           2012-11-09  338  		restorer = ksig->ka.sa.sa_restorer;
af65d64845a90c arch/x86/ia32/ia32_signal.c    Roland McGrath    2008-01-30  339  	else
6f121e548f8367 arch/x86/ia32/ia32_signal.c    Andy Lutomirski   2014-05-05  340  		restorer = current->mm->context.vdso +
0a6d1fa0d2b48f arch/x86/ia32/ia32_signal.c    Andy Lutomirski   2015-10-05  341  			vdso_image_32.sym___kernel_rt_sigreturn;
39f16c1c0f14e9 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  342  	unsafe_put_user(ptr_to_compat(restorer), &frame->pretcode, Efault);
^1da177e4c3f41 arch/x86_64/ia32/ia32_signal.c Linus Torvalds    2005-04-16  343  
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  344  	/*
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  345  	 * Not actually used anymore, but left because some gdb
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  346  	 * versions need it.
99b9cdf758af70 arch/x86/ia32/ia32_signal.c    Thomas Gleixner   2008-01-30  347  	 */
39f16c1c0f14e9 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  348  	unsafe_put_user(*((u64 *)&code), (u64 __user *)frame->retcode, Efault);
44a1d996325982 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15  349  	unsafe_put_sigcontext32(&frame->uc.uc_mcontext, fp, regs, set, Efault);
57d563c8292569 arch/x86/ia32/ia32_signal.c    Al Viro           2020-02-15 @350  	unsafe_put_user(*(__u64 *)set, (__u64 *)&frame->uc.uc_sigmask, Efault);

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 33093 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [RESEND PATCH] sparse: use static inline for __chk_{user,io}_ptr()
       [not found] <20200806194206.10338-1-luc.vanoostenryck@gmail.com>
  2020-08-06 22:38 ` [RESEND PATCH] sparse: use static inline for __chk_{user,io}_ptr() kernel test robot
@ 2020-08-07  0:44 ` kernel test robot
  1 sibling, 0 replies; 2+ messages in thread
From: kernel test robot @ 2020-08-07  0:44 UTC (permalink / raw)
  To: Luc Van Oostenryck, Andrew Morton
  Cc: kbuild-all, Linux Memory Management List, linux-kernel,
	Luc Van Oostenryck

[-- Attachment #1: Type: text/plain, Size: 9425 bytes --]

Hi Luc,

I love your patch! Perhaps something to improve:

[auto build test WARNING on hnaz-linux-mm/master]
[also build test WARNING on next-20200806]
[cannot apply to linux/master linus/master v5.8]
[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]

url:    https://github.com/0day-ci/linux/commits/Luc-Van-Oostenryck/sparse-use-static-inline-for-__chk_-user-io-_ptr/20200807-034410
base:   https://github.com/hnaz/linux-mm master
config: x86_64-randconfig-s021-20200805 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.2-117-g8c7aee71-dirty
        # save the attached .config to linux build tree
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


sparse warnings: (new ones prefixed by >>)

>> drivers/watchdog/sbc_fitpc2_wdt.c:99:21: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got char const * @@
>> drivers/watchdog/sbc_fitpc2_wdt.c:99:21: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/watchdog/sbc_fitpc2_wdt.c:99:21: sparse:     got char const *
   drivers/watchdog/sbc_fitpc2_wdt.c:128:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void [noderef] __user *to @@     got struct watchdog_info * @@
   drivers/watchdog/sbc_fitpc2_wdt.c:128:37: sparse:     expected void [noderef] __user *to
   drivers/watchdog/sbc_fitpc2_wdt.c:128:37: sparse:     got struct watchdog_info *
>> drivers/watchdog/sbc_fitpc2_wdt.c:133:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got int * @@
   drivers/watchdog/sbc_fitpc2_wdt.c:133:23: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/watchdog/sbc_fitpc2_wdt.c:133:23: sparse:     got int *
   drivers/watchdog/sbc_fitpc2_wdt.c:137:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got int * @@
   drivers/watchdog/sbc_fitpc2_wdt.c:137:23: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/watchdog/sbc_fitpc2_wdt.c:137:23: sparse:     got int *
   drivers/watchdog/sbc_fitpc2_wdt.c:146:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got int * @@
   drivers/watchdog/sbc_fitpc2_wdt.c:146:23: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/watchdog/sbc_fitpc2_wdt.c:146:23: sparse:     got int *
   drivers/watchdog/sbc_fitpc2_wdt.c:160:23: sparse: sparse: incorrect type in argument 1 (different address spaces) @@     expected void const volatile [noderef] __user *ptr @@     got int * @@
   drivers/watchdog/sbc_fitpc2_wdt.c:160:23: sparse:     expected void const volatile [noderef] __user *ptr
   drivers/watchdog/sbc_fitpc2_wdt.c:160:23: sparse:     got int *
   drivers/watchdog/sbc_fitpc2_wdt.c:187:27: sparse: sparse: incorrect type in initializer (incompatible argument 2 (different address spaces)) @@     expected long ( *write )( ... ) @@     got long ( * )( ... ) @@
   drivers/watchdog/sbc_fitpc2_wdt.c:187:27: sparse:     expected long ( *write )( ... )
   drivers/watchdog/sbc_fitpc2_wdt.c:187:27: sparse:     got long ( * )( ... )

vim +99 drivers/watchdog/sbc_fitpc2_wdt.c

3a5f90002e9d08 Denis Turischev  2009-07-21   80  
3a5f90002e9d08 Denis Turischev  2009-07-21   81  static ssize_t fitpc2_wdt_write(struct file *file, const char *data,
3a5f90002e9d08 Denis Turischev  2009-07-21   82  						size_t len, loff_t *ppos)
3a5f90002e9d08 Denis Turischev  2009-07-21   83  {
3a5f90002e9d08 Denis Turischev  2009-07-21   84  	size_t i;
3a5f90002e9d08 Denis Turischev  2009-07-21   85  
3a5f90002e9d08 Denis Turischev  2009-07-21   86  	if (!len)
3a5f90002e9d08 Denis Turischev  2009-07-21   87  		return 0;
3a5f90002e9d08 Denis Turischev  2009-07-21   88  
3a5f90002e9d08 Denis Turischev  2009-07-21   89  	if (nowayout) {
3a5f90002e9d08 Denis Turischev  2009-07-21   90  		len = 0;
3a5f90002e9d08 Denis Turischev  2009-07-21   91  		goto out;
3a5f90002e9d08 Denis Turischev  2009-07-21   92  	}
3a5f90002e9d08 Denis Turischev  2009-07-21   93  
3a5f90002e9d08 Denis Turischev  2009-07-21   94  	clear_bit(WDT_OK_TO_CLOSE, &wdt_status);
3a5f90002e9d08 Denis Turischev  2009-07-21   95  
3a5f90002e9d08 Denis Turischev  2009-07-21   96  	for (i = 0; i != len; i++) {
3a5f90002e9d08 Denis Turischev  2009-07-21   97  		char c;
3a5f90002e9d08 Denis Turischev  2009-07-21   98  
3a5f90002e9d08 Denis Turischev  2009-07-21  @99  		if (get_user(c, data + i))
3a5f90002e9d08 Denis Turischev  2009-07-21  100  			return -EFAULT;
3a5f90002e9d08 Denis Turischev  2009-07-21  101  
3a5f90002e9d08 Denis Turischev  2009-07-21  102  		if (c == 'V')
3a5f90002e9d08 Denis Turischev  2009-07-21  103  			set_bit(WDT_OK_TO_CLOSE, &wdt_status);
3a5f90002e9d08 Denis Turischev  2009-07-21  104  	}
3a5f90002e9d08 Denis Turischev  2009-07-21  105  
3a5f90002e9d08 Denis Turischev  2009-07-21  106  out:
3a5f90002e9d08 Denis Turischev  2009-07-21  107  	wdt_enable();
3a5f90002e9d08 Denis Turischev  2009-07-21  108  
3a5f90002e9d08 Denis Turischev  2009-07-21  109  	return len;
3a5f90002e9d08 Denis Turischev  2009-07-21  110  }
3a5f90002e9d08 Denis Turischev  2009-07-21  111  
3a5f90002e9d08 Denis Turischev  2009-07-21  112  
42747d712de56c Wim Van Sebroeck 2009-12-26  113  static const struct watchdog_info ident = {
3a5f90002e9d08 Denis Turischev  2009-07-21  114  	.options	= WDIOF_MAGICCLOSE | WDIOF_SETTIMEOUT |
3a5f90002e9d08 Denis Turischev  2009-07-21  115  				WDIOF_KEEPALIVEPING,
3a5f90002e9d08 Denis Turischev  2009-07-21  116  	.identity	= WATCHDOG_NAME,
3a5f90002e9d08 Denis Turischev  2009-07-21  117  };
3a5f90002e9d08 Denis Turischev  2009-07-21  118  
3a5f90002e9d08 Denis Turischev  2009-07-21  119  
3a5f90002e9d08 Denis Turischev  2009-07-21  120  static long fitpc2_wdt_ioctl(struct file *file, unsigned int cmd,
3a5f90002e9d08 Denis Turischev  2009-07-21  121  							unsigned long arg)
3a5f90002e9d08 Denis Turischev  2009-07-21  122  {
3a5f90002e9d08 Denis Turischev  2009-07-21  123  	int ret = -ENOTTY;
3a5f90002e9d08 Denis Turischev  2009-07-21  124  	int time;
3a5f90002e9d08 Denis Turischev  2009-07-21  125  
3a5f90002e9d08 Denis Turischev  2009-07-21  126  	switch (cmd) {
3a5f90002e9d08 Denis Turischev  2009-07-21  127  	case WDIOC_GETSUPPORT:
3a5f90002e9d08 Denis Turischev  2009-07-21  128  		ret = copy_to_user((struct watchdog_info *)arg, &ident,
3a5f90002e9d08 Denis Turischev  2009-07-21  129  				   sizeof(ident)) ? -EFAULT : 0;
3a5f90002e9d08 Denis Turischev  2009-07-21  130  		break;
3a5f90002e9d08 Denis Turischev  2009-07-21  131  
3a5f90002e9d08 Denis Turischev  2009-07-21  132  	case WDIOC_GETSTATUS:
3a5f90002e9d08 Denis Turischev  2009-07-21 @133  		ret = put_user(0, (int *)arg);
3a5f90002e9d08 Denis Turischev  2009-07-21  134  		break;
3a5f90002e9d08 Denis Turischev  2009-07-21  135  
3a5f90002e9d08 Denis Turischev  2009-07-21  136  	case WDIOC_GETBOOTSTATUS:
3a5f90002e9d08 Denis Turischev  2009-07-21  137  		ret = put_user(0, (int *)arg);
3a5f90002e9d08 Denis Turischev  2009-07-21  138  		break;
3a5f90002e9d08 Denis Turischev  2009-07-21  139  
3a5f90002e9d08 Denis Turischev  2009-07-21  140  	case WDIOC_KEEPALIVE:
3a5f90002e9d08 Denis Turischev  2009-07-21  141  		wdt_enable();
3a5f90002e9d08 Denis Turischev  2009-07-21  142  		ret = 0;
3a5f90002e9d08 Denis Turischev  2009-07-21  143  		break;
3a5f90002e9d08 Denis Turischev  2009-07-21  144  
3a5f90002e9d08 Denis Turischev  2009-07-21  145  	case WDIOC_SETTIMEOUT:
3a5f90002e9d08 Denis Turischev  2009-07-21  146  		ret = get_user(time, (int *)arg);
3a5f90002e9d08 Denis Turischev  2009-07-21  147  		if (ret)
3a5f90002e9d08 Denis Turischev  2009-07-21  148  			break;
3a5f90002e9d08 Denis Turischev  2009-07-21  149  
3a5f90002e9d08 Denis Turischev  2009-07-21  150  		if (time < 31 || time > 255) {
3a5f90002e9d08 Denis Turischev  2009-07-21  151  			ret = -EINVAL;
3a5f90002e9d08 Denis Turischev  2009-07-21  152  			break;
3a5f90002e9d08 Denis Turischev  2009-07-21  153  		}
3a5f90002e9d08 Denis Turischev  2009-07-21  154  
3a5f90002e9d08 Denis Turischev  2009-07-21  155  		margin = time;
3a5f90002e9d08 Denis Turischev  2009-07-21  156  		wdt_enable();
3a5f90002e9d08 Denis Turischev  2009-07-21  157  		/* Fall through */
3a5f90002e9d08 Denis Turischev  2009-07-21  158  
3a5f90002e9d08 Denis Turischev  2009-07-21  159  	case WDIOC_GETTIMEOUT:
3a5f90002e9d08 Denis Turischev  2009-07-21  160  		ret = put_user(margin, (int *)arg);
3a5f90002e9d08 Denis Turischev  2009-07-21  161  		break;
3a5f90002e9d08 Denis Turischev  2009-07-21  162  	}
3a5f90002e9d08 Denis Turischev  2009-07-21  163  
3a5f90002e9d08 Denis Turischev  2009-07-21  164  	return ret;
3a5f90002e9d08 Denis Turischev  2009-07-21  165  }
3a5f90002e9d08 Denis Turischev  2009-07-21  166  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 36876 bytes --]

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-08-07  0:44 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20200806194206.10338-1-luc.vanoostenryck@gmail.com>
2020-08-06 22:38 ` [RESEND PATCH] sparse: use static inline for __chk_{user,io}_ptr() kernel test robot
2020-08-07  0:44 ` kernel test robot

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).