lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <201705231610.4NElN2bL%fengguang.wu@intel.com>
Date:   Tue, 23 May 2017 16:49:30 +0800
From:   kbuild test robot <lkp@...el.com>
To:     "Eric W. Biederman" <ebiederm@...ssion.com>
Cc:     kbuild-all@...org, Takashi Iwai <tiwai@...e.de>,
        linux-kernel@...r.kernel.org
Subject: Re: [CFT][PATCH] ptrace: Properly initialize ptracer_cred on fork

Hi Eric,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.12-rc2 next-20170523]
[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/Eric-W-Biederman/ptrace-Properly-initialize-ptracer_cred-on-fork/20170523-143551
config: ia64-allnoconfig (attached as .config)
compiler: ia64-linux-gcc (GCC) 6.2.0
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=ia64 

All warnings (new ones prefixed by >>):

   In file included from arch/ia64/include/asm/ptrace.h:44:0,
                    from arch/ia64/include/asm/processor.h:19,
                    from arch/ia64/include/asm/thread_info.h:11,
                    from include/linux/thread_info.h:37,
                    from include/asm-generic/preempt.h:4,
                    from ./arch/ia64/include/generated/asm/preempt.h:1,
                    from include/linux/preempt.h:80,
                    from include/linux/spinlock.h:50,
                    from include/linux/seqlock.h:35,
                    from include/linux/time.h:5,
                    from include/linux/stat.h:18,
                    from include/linux/module.h:10,
                    from init/main.c:16:
   include/linux/ptrace.h: In function 'ptrace_init_task':
>> arch/ia64/include/asm/current.h:15:17: warning: passing argument 3 of '__ptrace_link' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
    #define current ((struct task_struct *) ia64_getreg(_IA64_REG_TP))
                    ^
   include/linux/ptrace.h:210:41: note: in expansion of macro 'current'
      __ptrace_link(child, current->parent, current->ptracer_cred);
                                            ^~~~~~~
   In file included from include/linux/ftrace.h:13:0,
                    from include/linux/perf_event.h:47,
                    from include/linux/trace_events.h:9,
                    from include/trace/syscall.h:6,
                    from include/linux/syscalls.h:82,
                    from init/main.c:20:
   include/linux/ptrace.h:56:13: note: expected 'struct cred *' but argument is of type 'const struct cred *'
    extern void __ptrace_link(struct task_struct *child,
                ^~~~~~~~~~~~~
--
   In file included from arch/ia64/include/asm/ptrace.h:44:0,
                    from arch/ia64/include/asm/processor.h:19,
                    from arch/ia64/include/asm/thread_info.h:11,
                    from include/linux/thread_info.h:37,
                    from include/asm-generic/preempt.h:4,
                    from ./arch/ia64/include/generated/asm/preempt.h:1,
                    from include/linux/preempt.h:80,
                    from include/linux/spinlock.h:50,
                    from include/linux/wait.h:8,
                    from include/linux/fs.h:5,
                    from arch/ia64/kernel/sys_ia64.c:9:
   include/linux/ptrace.h: In function 'ptrace_init_task':
>> arch/ia64/include/asm/current.h:15:17: warning: passing argument 3 of '__ptrace_link' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
    #define current ((struct task_struct *) ia64_getreg(_IA64_REG_TP))
                    ^
   include/linux/ptrace.h:210:41: note: in expansion of macro 'current'
      __ptrace_link(child, current->parent, current->ptracer_cred);
                                            ^~~~~~~
   In file included from include/linux/ftrace.h:13:0,
                    from include/linux/perf_event.h:47,
                    from include/linux/trace_events.h:9,
                    from include/trace/syscall.h:6,
                    from include/linux/syscalls.h:82,
                    from arch/ia64/kernel/sys_ia64.c:18:
   include/linux/ptrace.h:56:13: note: expected 'struct cred *' but argument is of type 'const struct cred *'
    extern void __ptrace_link(struct task_struct *child,
                ^~~~~~~~~~~~~
   arch/ia64/kernel/sys_ia64.c: In function 'arch_get_unmapped_area':
   arch/ia64/kernel/sys_ia64.c:31:20: warning: unused variable 'mm' [-Wunused-variable]
     struct mm_struct *mm = current->mm;
                       ^~
--
   In file included from include/linux/sched.h:11:0,
                    from kernel/ptrace.c:12:
   include/linux/ptrace.h: In function 'ptrace_init_task':
>> arch/ia64/include/asm/current.h:15:17: warning: passing argument 3 of '__ptrace_link' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
    #define current ((struct task_struct *) ia64_getreg(_IA64_REG_TP))
                    ^
   include/linux/ptrace.h:210:41: note: in expansion of macro 'current'
      __ptrace_link(child, current->parent, current->ptracer_cred);
                                            ^~~~~~~
   In file included from kernel/ptrace.c:20:0:
   include/linux/ptrace.h:56:13: note: expected 'struct cred *' but argument is of type 'const struct cred *'
    extern void __ptrace_link(struct task_struct *child,
                ^~~~~~~~~~~~~
   In file included from include/linux/rculist.h:10:0,
                    from include/linux/pid.h:4,
                    from include/linux/sched.h:13,
                    from kernel/ptrace.c:12:
   kernel/ptrace.c: In function 'ptrace_link':
   include/linux/rcupdate.h:578:1: warning: passing argument 3 of '__ptrace_link' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
    ({ \
    ^
   include/linux/rcupdate.h:701:2: note: in expansion of macro '__rcu_dereference_check'
     __rcu_dereference_check((p), (c) || rcu_read_lock_held(), __rcu)
     ^~~~~~~~~~~~~~~~~~~~~~~
   include/linux/rcupdate.h:760:28: note: in expansion of macro 'rcu_dereference_check'
    #define rcu_dereference(p) rcu_dereference_check(p, 0)
                               ^~~~~~~~~~~~~~~~~~~~~
   include/linux/cred.h:297:2: note: in expansion of macro 'rcu_dereference'
     rcu_dereference((task)->real_cred)
     ^~~~~~~~~~~~~~~
   kernel/ptrace.c:81:35: note: in expansion of macro '__task_cred'
     __ptrace_link(child, new_parent, __task_cred(new_parent));
                                      ^~~~~~~~~~~
   kernel/ptrace.c:63:6: note: expected 'struct cred *' but argument is of type 'const struct cred *'
    void __ptrace_link(struct task_struct *child, struct task_struct *new_parent,
         ^~~~~~~~~~~~~

vim +15 arch/ia64/include/asm/current.h

^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16   1  #ifndef _ASM_IA64_CURRENT_H
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16   2  #define _ASM_IA64_CURRENT_H
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16   3  
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16   4  /*
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16   5   * Modified 1998-2000
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16   6   *	David Mosberger-Tang <davidm@....hp.com>, Hewlett-Packard Co
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16   7   */
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16   8  
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16   9  #include <asm/intrinsics.h>
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16  10  
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16  11  /*
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16  12   * In kernel mode, thread pointer (r13) is used to point to the current task
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16  13   * structure.
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16  14   */
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16 @15  #define current	((struct task_struct *) ia64_getreg(_IA64_REG_TP))
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16  16  
^1da177e include/asm-ia64/current.h Linus Torvalds 2005-04-16  17  #endif /* _ASM_IA64_CURRENT_H */

:::::: The code at line 15 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2

:::::: TO: Linus Torvalds <torvalds@...970.osdl.org>
:::::: CC: Linus Torvalds <torvalds@...970.osdl.org>

---
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" (5989 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ