Re: [PATCH 1/7] Apply transparent_union attribute to union semun

From: kbuild test robot
Date: Fri Sep 16 2016 - 11:57:52 EST


Hi Jonas,

[auto build test WARNING on linus/master]
[also build test WARNING on v4.8-rc6 next-20160916]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]
[Suggest to use git(>=2.9.0) format-patch --base=<commit> (or --base=auto for convenience) to record what (public, well-known) commit your patch series was built on]
[Check https://git-scm.com/docs/git-format-patch for more information]

url: https://github.com/0day-ci/linux/commits/Stafford-Horne/openrisc-Misc-fixes-from-backlog/20160916-230114
config: x86_64-randconfig-x011-09161116 (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
# save the attached .config to linux build tree
make ARCH=x86_64

All warnings (new ones prefixed by >>):

In file included from include/linux/sem.h:7:0,
from include/linux/sched.h:35,
from include/linux/utsname.h:5,
from init/version.c:12:
>> include/uapi/linux/sem.h:45:7: warning: union cannot be made transparent
union semun {
^~~~~
--
In file included from include/linux/sem.h:7:0,
from include/linux/sched.h:35,
from include/linux/kasan.h:4,
from kernel/sched/core.c:29:
>> include/uapi/linux/sem.h:45:7: warning: union cannot be made transparent
union semun {
^~~~~
In file included from include/linux/perf_event.h:47:0,
from kernel/sched/core.c:42:
include/linux/ftrace.h: In function 'preempt_schedule_common':
include/linux/ftrace.h:703:36: warning: calling '__builtin_return_address' with a nonzero argument is unsafe [-Wframe-address]
# define ftrace_return_address(n) __builtin_return_address(n)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:710:38: note: in expansion of macro 'ftrace_return_address'
#define CALLER_ADDR1 ((unsigned long)ftrace_return_address(1))
^~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:723:9: note: in expansion of macro 'CALLER_ADDR1'
addr = CALLER_ADDR1;
^~~~~~~~~~~~
include/linux/ftrace.h:703:36: warning: calling '__builtin_return_address' with a nonzero argument is unsafe [-Wframe-address]
# define ftrace_return_address(n) __builtin_return_address(n)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:711:38: note: in expansion of macro 'ftrace_return_address'
#define CALLER_ADDR2 ((unsigned long)ftrace_return_address(2))
^~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:726:9: note: in expansion of macro 'CALLER_ADDR2'
return CALLER_ADDR2;
^~~~~~~~~~~~
include/linux/ftrace.h: In function 'preempt_count_add':
include/linux/ftrace.h:703:36: warning: calling '__builtin_return_address' with a nonzero argument is unsafe [-Wframe-address]
# define ftrace_return_address(n) __builtin_return_address(n)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:710:38: note: in expansion of macro 'ftrace_return_address'
#define CALLER_ADDR1 ((unsigned long)ftrace_return_address(1))
^~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:723:9: note: in expansion of macro 'CALLER_ADDR1'
addr = CALLER_ADDR1;
^~~~~~~~~~~~
include/linux/ftrace.h:703:36: warning: calling '__builtin_return_address' with a nonzero argument is unsafe [-Wframe-address]
# define ftrace_return_address(n) __builtin_return_address(n)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:711:38: note: in expansion of macro 'ftrace_return_address'
#define CALLER_ADDR2 ((unsigned long)ftrace_return_address(2))
^~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:726:9: note: in expansion of macro 'CALLER_ADDR2'
return CALLER_ADDR2;
^~~~~~~~~~~~
include/linux/ftrace.h: In function 'preempt_schedule_notrace':
include/linux/ftrace.h:703:36: warning: calling '__builtin_return_address' with a nonzero argument is unsafe [-Wframe-address]
# define ftrace_return_address(n) __builtin_return_address(n)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:710:38: note: in expansion of macro 'ftrace_return_address'
#define CALLER_ADDR1 ((unsigned long)ftrace_return_address(1))
^~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:723:9: note: in expansion of macro 'CALLER_ADDR1'
addr = CALLER_ADDR1;
^~~~~~~~~~~~
include/linux/ftrace.h:703:36: warning: calling '__builtin_return_address' with a nonzero argument is unsafe [-Wframe-address]
# define ftrace_return_address(n) __builtin_return_address(n)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:711:38: note: in expansion of macro 'ftrace_return_address'
#define CALLER_ADDR2 ((unsigned long)ftrace_return_address(2))
^~~~~~~~~~~~~~~~~~~~~
include/linux/ftrace.h:726:9: note: in expansion of macro 'CALLER_ADDR2'
return CALLER_ADDR2;
^~~~~~~~~~~~

vim +45 include/uapi/linux/sem.h

607ca46e David Howells 2012-10-13 29 struct sem_queue **sem_pending_last; /* last pending operation */
607ca46e David Howells 2012-10-13 30 struct sem_undo *undo; /* undo requests on this array */
607ca46e David Howells 2012-10-13 31 unsigned short sem_nsems; /* no. of semaphores in array */
607ca46e David Howells 2012-10-13 32 };
607ca46e David Howells 2012-10-13 33
607ca46e David Howells 2012-10-13 34 /* Include the definition of semid64_ds */
607ca46e David Howells 2012-10-13 35 #include <asm/sembuf.h>
607ca46e David Howells 2012-10-13 36
607ca46e David Howells 2012-10-13 37 /* semop system calls takes an array of these. */
607ca46e David Howells 2012-10-13 38 struct sembuf {
607ca46e David Howells 2012-10-13 39 unsigned short sem_num; /* semaphore index in array */
607ca46e David Howells 2012-10-13 40 short sem_op; /* semaphore operation */
607ca46e David Howells 2012-10-13 41 short sem_flg; /* operation flags */
607ca46e David Howells 2012-10-13 42 };
607ca46e David Howells 2012-10-13 43
607ca46e David Howells 2012-10-13 44 /* arg for semctl system calls. */
607ca46e David Howells 2012-10-13 @45 union semun {
607ca46e David Howells 2012-10-13 46 int val; /* value for SETVAL */
607ca46e David Howells 2012-10-13 47 struct semid_ds __user *buf; /* buffer for IPC_STAT & IPC_SET */
607ca46e David Howells 2012-10-13 48 unsigned short __user *array; /* array for GETALL & SETALL */
607ca46e David Howells 2012-10-13 49 struct seminfo __user *__buf; /* buffer for IPC_INFO */
607ca46e David Howells 2012-10-13 50 void __user *__pad;
46f40460 Jonas Bonn 2016-09-16 51 } __attribute__ ((transparent_union));
607ca46e David Howells 2012-10-13 52
607ca46e David Howells 2012-10-13 53 struct seminfo {

:::::: The code at line 45 was first introduced by commit
:::::: 607ca46e97a1b6594b29647d98a32d545c24bdff UAPI: (Scripted) Disintegrate include/linux

:::::: TO: David Howells <dhowells@xxxxxxxxxx>
:::::: CC: David Howells <dhowells@xxxxxxxxxx>

---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation

Attachment: .config.gz
Description: application/gzip