All of lore.kernel.org
 help / color / mirror / Atom feed
* [android-common:android14-6.1-2025-04 2/2] net/core/scm.c:96:8: error: no member named 'dead' in 'struct scm_fp_list'
@ 2026-03-31 18:16 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-03-31 18:16 UTC (permalink / raw)
  To: cros-kernel-buildreports; +Cc: oe-kbuild-all

tree:   https://android.googlesource.com/kernel/common android14-6.1-2025-04
head:   a01f4f3e3d4d93656a40a6739b171e98bd608766
commit: 42b241f4e06eb3c2df1409a2d82522b2ce2a9329 [2/2] UPSTREAM: af_unix: Add dead flag to struct scm_fp_list.
config: arm64-allmodconfig (https://download.01.org/0day-ci/archive/20260401/202604010208.DcNkyap0-lkp@intel.com/config)
compiler: clang version 19.1.7 (https://github.com/llvm/llvm-project cd708029e0b2869e80abe31ddb175f7c35361f90)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260401/202604010208.DcNkyap0-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202604010208.DcNkyap0-lkp@intel.com/

All errors (new ones prefixed by >>):

   net/core/scm.c:95:8: error: no member named 'inflight' in 'struct scm_fp_list'
      95 |                 fpl->inflight = false;
         |                 ~~~  ^
>> net/core/scm.c:96:8: error: no member named 'dead' in 'struct scm_fp_list'
      96 |                 fpl->dead = false;
         |                 ~~~  ^
   net/core/scm.c:97:8: error: no member named 'edges' in 'struct scm_fp_list'
      97 |                 fpl->edges = NULL;
         |                 ~~~  ^
   net/core/scm.c:98:24: error: no member named 'vertices' in 'struct scm_fp_list'
      98 |                 INIT_LIST_HEAD(&fpl->vertices);
         |                                 ~~~  ^
   net/core/scm.c:387:12: error: no member named 'inflight' in 'struct scm_fp_list'
     387 |                 new_fpl->inflight = false;
         |                 ~~~~~~~  ^
   net/core/scm.c:388:12: error: no member named 'edges' in 'struct scm_fp_list'
     388 |                 new_fpl->edges = NULL;
         |                 ~~~~~~~  ^
   net/core/scm.c:389:28: error: no member named 'vertices' in 'struct scm_fp_list'
     389 |                 INIT_LIST_HEAD(&new_fpl->vertices);
         |                                 ~~~~~~~  ^
   7 errors generated.
--
   net/unix/garbage.c:145:35: error: no member named 'vertices' in 'struct scm_fp_list'
     145 |                 vertex = list_first_entry(&fpl->vertices, typeof(*vertex), entry);
         |                                            ~~~  ^
   include/linux/list.h:531:14: note: expanded from macro 'list_first_entry'
     531 |         list_entry((ptr)->next, type, member)
         |                     ^~~
   include/linux/list.h:520:15: note: expanded from macro 'list_entry'
     520 |         container_of(ptr, type, member)
         |                      ^~~
   include/linux/container_of.h:18:26: note: expanded from macro 'container_of'
      18 |         void *__mptr = (void *)(ptr);                                   \
         |                                 ^~~
   net/unix/garbage.c:145:35: error: no member named 'vertices' in 'struct scm_fp_list'
     145 |                 vertex = list_first_entry(&fpl->vertices, typeof(*vertex), entry);
         |                                            ~~~  ^
   include/linux/list.h:531:14: note: expanded from macro 'list_first_entry'
     531 |         list_entry((ptr)->next, type, member)
         |                     ^~~
   include/linux/list.h:520:15: note: expanded from macro 'list_entry'
     520 |         container_of(ptr, type, member)
         |                      ^~~
   include/linux/container_of.h:19:30: note: expanded from macro 'container_of'
      19 |         static_assert(__same_type(*(ptr), ((type *)0)->member) ||       \
         |                                     ^~~
   include/linux/compiler_types.h:316:63: note: expanded from macro '__same_type'
     316 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
         |                                                               ^
   include/linux/build_bug.h:77:50: note: expanded from macro 'static_assert'
      77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr)
         |                                                  ^~~~
   include/linux/build_bug.h:78:56: note: expanded from macro '__static_assert'
      78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
         |                                                        ^~~~
   net/unix/garbage.c:145:35: error: no member named 'vertices' in 'struct scm_fp_list'
     145 |                 vertex = list_first_entry(&fpl->vertices, typeof(*vertex), entry);
         |                                            ~~~  ^
   include/linux/list.h:531:14: note: expanded from macro 'list_first_entry'
     531 |         list_entry((ptr)->next, type, member)
         |                     ^~~
   include/linux/list.h:520:15: note: expanded from macro 'list_entry'
     520 |         container_of(ptr, type, member)
         |                      ^~~
   include/linux/container_of.h:20:23: note: expanded from macro 'container_of'
      20 |                       __same_type(*(ptr), void),                        \
         |                                     ^~~
   include/linux/compiler_types.h:316:63: note: expanded from macro '__same_type'
     316 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
         |                                                               ^
   include/linux/build_bug.h:77:50: note: expanded from macro 'static_assert'
      77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr)
         |                                                  ^~~~
   include/linux/build_bug.h:78:56: note: expanded from macro '__static_assert'
      78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
         |                                                        ^~~~
>> net/unix/garbage.c:165:12: error: no member named 'dead' in 'struct scm_fp_list'
     165 |         if (!fpl->dead)
         |              ~~~  ^
   net/unix/garbage.c:173:40: error: no member named 'vertices' in 'struct scm_fp_list'
     173 |                 list_move_tail(&vertex->entry, &fpl->vertices);
         |                                                 ~~~  ^
   net/unix/garbage.c:181:54: error: no member named 'vertices' in 'struct scm_fp_list'
     181 |         list_for_each_entry_safe(vertex, next_vertex, &fpl->vertices, entry) {
         |                                                        ~~~  ^
   include/linux/list.h:761:30: note: expanded from macro 'list_for_each_entry_safe'
     761 |         for (pos = list_first_entry(head, typeof(*pos), member),        \
         |                                     ^~~~
   include/linux/list.h:531:14: note: expanded from macro 'list_first_entry'
     531 |         list_entry((ptr)->next, type, member)
         |                     ^~~
   include/linux/list.h:520:15: note: expanded from macro 'list_entry'
     520 |         container_of(ptr, type, member)
         |                      ^~~
   include/linux/container_of.h:18:26: note: expanded from macro 'container_of'
      18 |         void *__mptr = (void *)(ptr);                                   \
         |                                 ^~~
   net/unix/garbage.c:181:54: error: no member named 'vertices' in 'struct scm_fp_list'
     181 |         list_for_each_entry_safe(vertex, next_vertex, &fpl->vertices, entry) {
         |                                                        ~~~  ^
   include/linux/list.h:761:30: note: expanded from macro 'list_for_each_entry_safe'
     761 |         for (pos = list_first_entry(head, typeof(*pos), member),        \
         |                                     ^~~~
   include/linux/list.h:531:14: note: expanded from macro 'list_first_entry'
     531 |         list_entry((ptr)->next, type, member)
         |                     ^~~
   include/linux/list.h:520:15: note: expanded from macro 'list_entry'
     520 |         container_of(ptr, type, member)
         |                      ^~~
   note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
   include/linux/compiler_types.h:316:63: note: expanded from macro '__same_type'
     316 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
         |                                                               ^
   include/linux/build_bug.h:77:50: note: expanded from macro 'static_assert'
      77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr)
         |                                                  ^~~~
   include/linux/build_bug.h:78:56: note: expanded from macro '__static_assert'
      78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
         |                                                        ^~~~
   net/unix/garbage.c:181:54: error: no member named 'vertices' in 'struct scm_fp_list'
     181 |         list_for_each_entry_safe(vertex, next_vertex, &fpl->vertices, entry) {
         |                                                        ~~~  ^
   include/linux/list.h:761:30: note: expanded from macro 'list_for_each_entry_safe'
     761 |         for (pos = list_first_entry(head, typeof(*pos), member),        \
         |                                     ^~~~
   include/linux/list.h:531:14: note: expanded from macro 'list_first_entry'
     531 |         list_entry((ptr)->next, type, member)
         |                     ^~~
   include/linux/list.h:520:15: note: expanded from macro 'list_entry'
     520 |         container_of(ptr, type, member)
         |                      ^~~
   note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see all)
   include/linux/compiler_types.h:316:63: note: expanded from macro '__same_type'
     316 | #define __same_type(a, b) __builtin_types_compatible_p(typeof(a), typeof(b))
         |                                                               ^
   include/linux/build_bug.h:77:50: note: expanded from macro 'static_assert'
      77 | #define static_assert(expr, ...) __static_assert(expr, ##__VA_ARGS__, #expr)
         |                                                  ^~~~
   include/linux/build_bug.h:78:56: note: expanded from macro '__static_assert'
      78 | #define __static_assert(expr, msg, ...) _Static_assert(expr, msg)
         |                                                        ^~~~
   net/unix/garbage.c:181:54: error: no member named 'vertices' in 'struct scm_fp_list'
     181 |         list_for_each_entry_safe(vertex, next_vertex, &fpl->vertices, entry) {
         |                                                        ~~~  ^
   include/linux/list.h:763:32: note: expanded from macro 'list_for_each_entry_safe'
     763 |              !list_entry_is_head(pos, head, member);                    \
         |                                       ^~~~
   include/linux/list.h:665:20: note: expanded from macro 'list_entry_is_head'
     665 |         (&pos->member == (head))
         |                           ^~~~
   net/unix/garbage.c:206:15: error: no member named 'edges' in 'struct scm_fp_list'
     206 |                 edge = fpl->edges + i++;
         |                        ~~~  ^
   net/unix/garbage.c:220:7: error: no member named 'inflight' in 'struct scm_fp_list'
     220 |         fpl->inflight = true;
         |         ~~~  ^
   net/unix/garbage.c:236:33: error: no member named 'edges' in 'struct scm_fp_list'
     236 |                 struct unix_edge *edge = fpl->edges + i++;
         |                                          ~~~  ^
   net/unix/garbage.c:241:12: error: no member named 'dead' in 'struct scm_fp_list'
     241 |         if (!fpl->dead) {
         |              ~~~  ^
   net/unix/garbage.c:242:19: error: no member named 'edges' in 'struct scm_fp_list'
     242 |                 receiver = fpl->edges[0].successor;
         |                            ~~~  ^
   net/unix/garbage.c:251:7: error: no member named 'inflight' in 'struct scm_fp_list'
     251 |         fpl->inflight = false;
         |         ~~~  ^
   net/unix/garbage.c:283:34: error: no member named 'vertices' in 'struct scm_fp_list'
     283 |                 list_add(&vertex->entry, &fpl->vertices);
         |                                           ~~~  ^
   net/unix/garbage.c:286:7: error: no member named 'edges' in 'struct scm_fp_list'
     286 |         fpl->edges = kvmalloc_array(fpl->count_unix, sizeof(*fpl->edges),
         |         ~~~  ^
   net/unix/garbage.c:286:60: error: no member named 'edges' in 'struct scm_fp_list'
     286 |         fpl->edges = kvmalloc_array(fpl->count_unix, sizeof(*fpl->edges),
         |                                                              ~~~  ^


vim +96 net/core/scm.c

    68	
    69	static int scm_fp_copy(struct cmsghdr *cmsg, struct scm_fp_list **fplp)
    70	{
    71		int *fdp = (int*)CMSG_DATA(cmsg);
    72		struct scm_fp_list *fpl = *fplp;
    73		struct file **fpp;
    74		int i, num;
    75	
    76		num = (cmsg->cmsg_len - sizeof(struct cmsghdr))/sizeof(int);
    77	
    78		if (num <= 0)
    79			return 0;
    80	
    81		if (num > SCM_MAX_FD)
    82			return -EINVAL;
    83	
    84		if (!fpl)
    85		{
    86			fpl = kmalloc(sizeof(struct scm_fp_list), GFP_KERNEL_ACCOUNT);
    87			if (!fpl)
    88				return -ENOMEM;
    89			*fplp = fpl;
    90			fpl->count = 0;
    91			fpl->count_unix = 0;
    92			fpl->max = SCM_MAX_FD;
    93			fpl->user = NULL;
    94	#if IS_ENABLED(CONFIG_UNIX)
    95			fpl->inflight = false;
  > 96			fpl->dead = false;
    97			fpl->edges = NULL;
    98			INIT_LIST_HEAD(&fpl->vertices);
    99	#endif
   100		}
   101		fpp = &fpl->fp[fpl->count];
   102	
   103		if (fpl->count + num > fpl->max)
   104			return -EINVAL;
   105	
   106		/*
   107		 *	Verify the descriptors and increment the usage count.
   108		 */
   109	
   110		for (i=0; i< num; i++)
   111		{
   112			int fd = fdp[i];
   113			struct file *file;
   114	
   115			if (fd < 0 || !(file = fget_raw(fd)))
   116				return -EBADF;
   117			/* don't allow io_uring files */
   118			if (io_is_uring_fops(file)) {
   119				fput(file);
   120				return -EINVAL;
   121			}
   122			if (unix_get_socket(file))
   123				fpl->count_unix++;
   124	
   125			*fpp++ = file;
   126			fpl->count++;
   127		}
   128	
   129		if (!fpl->user)
   130			fpl->user = get_uid(current_user());
   131	
   132		return num;
   133	}
   134	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-03-31 18:17 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-31 18:16 [android-common:android14-6.1-2025-04 2/2] net/core/scm.c:96:8: error: no member named 'dead' in 'struct scm_fp_list' kernel test robot

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.