Kernel
  Threads by month 
                
            - ----- 2025 -----
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- 58 participants
- 20946 discussions
 
                        
                    
                        
                            
                                
                            
                            [PATCH OLK-6.6] ksmbd: limit repeated connections from clients with the same IP
                        
                        
by Yongjian Sun 21 Aug '25
                    by Yongjian Sun 21 Aug '25
21 Aug '25
                    
                        From: Namjae Jeon <linkinjeon(a)kernel.org>
mainline inclusion
from mainline-v6.17-rc1
commit e6bb9193974059ddbb0ce7763fa3882bd60d4dc3
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/ICT9UF
CVE: CVE-2025-38501
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?…
--------------------------------
Repeated connections from clients with the same IP address may exhaust
the max connections and prevent other normal client connections.
This patch limit repeated connections from clients with the same IP.
Reported-by: tianshuo han <hantianshuo233(a)gmail.com>
Cc: stable(a)vger.kernel.org
Signed-off-by: Namjae Jeon <linkinjeon(a)kernel.org>
Signed-off-by: Steve French <stfrench(a)microsoft.com>
Signed-off-by: Yongjian Sun <sunyongjian1(a)huawei.com>
---
 fs/smb/server/connection.h    |  1 +
 fs/smb/server/transport_tcp.c | 17 +++++++++++++++++
 2 files changed, 18 insertions(+)
diff --git a/fs/smb/server/connection.h b/fs/smb/server/connection.h
index 4fdd76ce53b9..70edeff46165 100644
--- a/fs/smb/server/connection.h
+++ b/fs/smb/server/connection.h
@@ -45,6 +45,7 @@ struct ksmbd_conn {
 	struct mutex			srv_mutex;
 	int				status;
 	unsigned int			cli_cap;
+	__be32				inet_addr;
 	char				*request_buf;
 	struct ksmbd_transport		*transport;
 	struct nls_table		*local_nls;
diff --git a/fs/smb/server/transport_tcp.c b/fs/smb/server/transport_tcp.c
index 2ce7f75059cb..84bc283e5689 100644
--- a/fs/smb/server/transport_tcp.c
+++ b/fs/smb/server/transport_tcp.c
@@ -87,6 +87,7 @@ static struct tcp_transport *alloc_transport(struct socket *client_sk)
 		return NULL;
 	}
 
+	conn->inet_addr = inet_sk(client_sk->sk)->inet_daddr;
 	conn->transport = KSMBD_TRANS(t);
 	KSMBD_TRANS(t)->conn = conn;
 	KSMBD_TRANS(t)->ops = &ksmbd_tcp_transport_ops;
@@ -226,6 +227,8 @@ static int ksmbd_kthread_fn(void *p)
 {
 	struct socket *client_sk = NULL;
 	struct interface *iface = (struct interface *)p;
+	struct inet_sock *csk_inet;
+	struct ksmbd_conn *conn;
 	int ret;
 
 	while (!kthread_should_stop()) {
@@ -244,6 +247,20 @@ static int ksmbd_kthread_fn(void *p)
 			continue;
 		}
 
+		/*
+		 * Limits repeated connections from clients with the same IP.
+		 */
+		csk_inet = inet_sk(client_sk->sk);
+		down_read(&conn_list_lock);
+		list_for_each_entry(conn, &conn_list, conns_list)
+			if (csk_inet->inet_daddr == conn->inet_addr) {
+				ret = -EAGAIN;
+				break;
+			}
+		up_read(&conn_list_lock);
+		if (ret == -EAGAIN)
+			continue;
+
 		if (server_conf.max_connections &&
 		    atomic_inc_return(&active_num_conn) >= server_conf.max_connections) {
 			pr_info_ratelimited("Limit the maximum number of connections(%u)\n",
-- 
2.39.2
                    
                  
                  
                          
                            
                            2
                            
                          
                          
                            
                            1
                            
                          
                          
                            
    
                          
                        
                     
                        
                    
                        
                            
                                
                            
                            [openeuler:OLK-6.6 2697/2697] kernel/dma/phytium/pswiotlb.c:1159:6: warning: variable 'cpuid' set but not used
                        
                        
by kernel test robot 21 Aug '25
                    by kernel test robot 21 Aug '25
21 Aug '25
                    
                        tree:   https://gitee.com/openeuler/kernel.git OLK-6.6
head:   86390838db4d0ee205e00d4069a8fdb3e6f0d1d1
commit: 03479a75f63bef0dca7ec44c1e1a7e8c45201aed [2697/2697] dma: Fix kabi breakage due to "dma: phytium: Add PSWIOTLB mechanism to improve DMA performance"
config: arm64-allmodconfig (https://download.01.org/0day-ci/archive/20250821/202508210857.2ksxM8sj-lkp@…)
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/20250821/202508210857.2ksxM8sj-lkp@…)
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(a)intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202508210857.2ksxM8sj-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> kernel/dma/phytium/pswiotlb.c:1159:6: warning: variable 'cpuid' set but not used [-Wunused-but-set-variable]
    1159 |         int cpuid;
         |             ^
   1 warning generated.
--
>> kernel/dma/phytium/pswiotlb.c:474: warning: Function parameter or member 'nid' not described in 'pswiotlb_alloc_tlb'
>> kernel/dma/phytium/pswiotlb.c:533: warning: Function parameter or member 'nid' not described in 'pswiotlb_alloc_pool'
>> kernel/dma/phytium/pswiotlb.c:533: warning: Function parameter or member 'transient' not described in 'pswiotlb_alloc_pool'
>> kernel/dma/phytium/pswiotlb.c:806: warning: Function parameter or member 'nid' not described in 'alloc_dma_pages'
>> kernel/dma/phytium/pswiotlb.c:836: warning: Function parameter or member 'nid' not described in 'pswiotlb_find_pool'
>> kernel/dma/phytium/pswiotlb.c:1005: warning: Function parameter or member 'nid' not described in 'pswiotlb_area_find_slots'
>> kernel/dma/phytium/pswiotlb.c:1115: warning: Function parameter or member 'nid' not described in 'pswiotlb_pool_find_slots'
>> kernel/dma/phytium/pswiotlb.c:1153: warning: Function parameter or member 'nid' not described in 'pswiotlb_find_slots'
>> kernel/dma/phytium/pswiotlb.c:1523: warning: Function parameter or member 'dev' not described in 'is_pswiotlb_allocated'
>> kernel/dma/phytium/pswiotlb.c:1542: warning: Function parameter or member 'dev' not described in 'default_pswiotlb_base'
>> kernel/dma/phytium/pswiotlb.c:1556: warning: Function parameter or member 'dev' not described in 'default_pswiotlb_limit'
Kconfig warnings: (for reference only)
   WARNING: unmet direct dependencies detected for DEBUG_FEATURE_BYPASS
   Depends on [n]: (FAST_SYSCALL [=y] || FAST_IRQ [=y]) && !LOCKDEP [=y]
   Selected by [y]:
   - FAST_SYSCALL [=y]
   - FAST_IRQ [=y] && ARM_GIC_V3 [=y]
   WARNING: unmet direct dependencies detected for SECURITY_FEATURE_BYPASS
   Depends on [n]: !ARM64_MTE [=y] && !KASAN_HW_TAGS [=n] && (FAST_SYSCALL [=y] || FAST_IRQ [=y])
   Selected by [y]:
   - FAST_SYSCALL [=y]
   - FAST_IRQ [=y] && ARM_GIC_V3 [=y]
vim +/cpuid +1159 kernel/dma/phytium/pswiotlb.c
81a243170f720e Jiakun Shuai 2025-07-07   985  
81a243170f720e Jiakun Shuai 2025-07-07   986  /**
81a243170f720e Jiakun Shuai 2025-07-07   987   * pswiotlb_area_find_slots() - search for slots in one Phytium IO TLB memory area
81a243170f720e Jiakun Shuai 2025-07-07   988   * @dev:	Device which maps the buffer.
81a243170f720e Jiakun Shuai 2025-07-07   989   * @pool:	Memory pool to be searched.
81a243170f720e Jiakun Shuai 2025-07-07   990   * @area_index:	Index of the Phytium IO TLB memory area to be searched.
81a243170f720e Jiakun Shuai 2025-07-07   991   * @orig_addr:	Original (non-bounced) Phytium IO buffer address.
81a243170f720e Jiakun Shuai 2025-07-07   992   * @alloc_size: Total requested size of the bounce buffer,
81a243170f720e Jiakun Shuai 2025-07-07   993   *		including initial alignment padding.
81a243170f720e Jiakun Shuai 2025-07-07   994   * @alloc_align_mask:	Required alignment of the allocated buffer.
81a243170f720e Jiakun Shuai 2025-07-07   995   *
81a243170f720e Jiakun Shuai 2025-07-07   996   * Find a suitable sequence of Phytium IO TLB entries for the request and allocate
81a243170f720e Jiakun Shuai 2025-07-07   997   * a buffer from the given Phytium IO TLB memory area.
81a243170f720e Jiakun Shuai 2025-07-07   998   * This function takes care of locking.
81a243170f720e Jiakun Shuai 2025-07-07   999   *
81a243170f720e Jiakun Shuai 2025-07-07  1000   * Return: Index of the first allocated slot, or -1 on error.
81a243170f720e Jiakun Shuai 2025-07-07  1001   */
81a243170f720e Jiakun Shuai 2025-07-07  1002  static int pswiotlb_area_find_slots(struct device *dev, int nid, struct p_io_tlb_pool *pool,
81a243170f720e Jiakun Shuai 2025-07-07  1003  		int area_index, phys_addr_t orig_addr, size_t alloc_size,
81a243170f720e Jiakun Shuai 2025-07-07  1004  		unsigned int alloc_align_mask)
81a243170f720e Jiakun Shuai 2025-07-07 @1005  {
81a243170f720e Jiakun Shuai 2025-07-07  1006  	struct p_io_tlb_area *area = pool->areas + area_index;
81a243170f720e Jiakun Shuai 2025-07-07  1007  	unsigned long boundary_mask = dma_get_seg_boundary(dev);
81a243170f720e Jiakun Shuai 2025-07-07  1008  	dma_addr_t tbl_dma_addr =
81a243170f720e Jiakun Shuai 2025-07-07  1009  		phys_to_dma_unencrypted(dev, pool->start) & boundary_mask;
81a243170f720e Jiakun Shuai 2025-07-07  1010  	unsigned long max_slots = get_max_slots(boundary_mask);
81a243170f720e Jiakun Shuai 2025-07-07  1011  	unsigned int iotlb_align_mask =
81a243170f720e Jiakun Shuai 2025-07-07  1012  		dma_get_min_align_mask(dev) | alloc_align_mask;
81a243170f720e Jiakun Shuai 2025-07-07  1013  	unsigned int nslots = nr_slots(alloc_size), stride;
81a243170f720e Jiakun Shuai 2025-07-07  1014  	unsigned int offset = pswiotlb_align_offset(dev, orig_addr);
81a243170f720e Jiakun Shuai 2025-07-07  1015  	unsigned int index, slots_checked, count = 0, i;
81a243170f720e Jiakun Shuai 2025-07-07  1016  	unsigned long flags;
81a243170f720e Jiakun Shuai 2025-07-07  1017  	unsigned int slot_base;
81a243170f720e Jiakun Shuai 2025-07-07  1018  	unsigned int slot_index;
81a243170f720e Jiakun Shuai 2025-07-07  1019  
81a243170f720e Jiakun Shuai 2025-07-07  1020  	WARN_ON(!nslots);
81a243170f720e Jiakun Shuai 2025-07-07  1021  	WARN_ON(area_index >= pool->nareas);
81a243170f720e Jiakun Shuai 2025-07-07  1022  
81a243170f720e Jiakun Shuai 2025-07-07  1023  	/*
81a243170f720e Jiakun Shuai 2025-07-07  1024  	 * For allocations of PAGE_SIZE or larger only look for page aligned
81a243170f720e Jiakun Shuai 2025-07-07  1025  	 * allocations.
81a243170f720e Jiakun Shuai 2025-07-07  1026  	 */
81a243170f720e Jiakun Shuai 2025-07-07  1027  	if (alloc_size >= PAGE_SIZE)
81a243170f720e Jiakun Shuai 2025-07-07  1028  		iotlb_align_mask |= ~PAGE_MASK;
81a243170f720e Jiakun Shuai 2025-07-07  1029  	iotlb_align_mask &= ~(P_IO_TLB_SIZE - 1);
81a243170f720e Jiakun Shuai 2025-07-07  1030  
81a243170f720e Jiakun Shuai 2025-07-07  1031  	/*
81a243170f720e Jiakun Shuai 2025-07-07  1032  	 * For mappings with an alignment requirement don't bother looping to
81a243170f720e Jiakun Shuai 2025-07-07  1033  	 * unaligned slots once we found an aligned one.
81a243170f720e Jiakun Shuai 2025-07-07  1034  	 */
81a243170f720e Jiakun Shuai 2025-07-07  1035  	stride = (iotlb_align_mask >> P_IO_TLB_SHIFT) + 1;
81a243170f720e Jiakun Shuai 2025-07-07  1036  
81a243170f720e Jiakun Shuai 2025-07-07  1037  	if (spin_trylock_irqsave(&area->lock, flags)) {
81a243170f720e Jiakun Shuai 2025-07-07  1038  		if (unlikely(nslots > pool->area_nslabs - area->used))
81a243170f720e Jiakun Shuai 2025-07-07  1039  			goto not_found;
81a243170f720e Jiakun Shuai 2025-07-07  1040  
81a243170f720e Jiakun Shuai 2025-07-07  1041  		slot_base = area_index * pool->area_nslabs;
81a243170f720e Jiakun Shuai 2025-07-07  1042  		index = area->index;
81a243170f720e Jiakun Shuai 2025-07-07  1043  
81a243170f720e Jiakun Shuai 2025-07-07  1044  		for (slots_checked = 0; slots_checked < pool->area_nslabs;) {
81a243170f720e Jiakun Shuai 2025-07-07  1045  			slot_index = slot_base + index;
81a243170f720e Jiakun Shuai 2025-07-07  1046  
81a243170f720e Jiakun Shuai 2025-07-07  1047  			if (orig_addr &&
81a243170f720e Jiakun Shuai 2025-07-07  1048  				 (slot_addr(tbl_dma_addr, slot_index) &
81a243170f720e Jiakun Shuai 2025-07-07  1049  				 iotlb_align_mask) != (orig_addr & iotlb_align_mask)) {
81a243170f720e Jiakun Shuai 2025-07-07  1050  				index = wrap_area_index(pool, index + 1);
81a243170f720e Jiakun Shuai 2025-07-07  1051  				slots_checked++;
81a243170f720e Jiakun Shuai 2025-07-07  1052  				continue;
81a243170f720e Jiakun Shuai 2025-07-07  1053  			}
81a243170f720e Jiakun Shuai 2025-07-07  1054  
81a243170f720e Jiakun Shuai 2025-07-07  1055  			if (!iommu_is_span_boundary(slot_index, nslots,
81a243170f720e Jiakun Shuai 2025-07-07  1056  						    nr_slots(tbl_dma_addr),
81a243170f720e Jiakun Shuai 2025-07-07  1057  						    max_slots)) {
81a243170f720e Jiakun Shuai 2025-07-07  1058  				if (pool->slots[slot_index].list >= nslots)
81a243170f720e Jiakun Shuai 2025-07-07  1059  					goto found;
81a243170f720e Jiakun Shuai 2025-07-07  1060  			}
81a243170f720e Jiakun Shuai 2025-07-07  1061  			index = wrap_area_index(pool, index + stride);
81a243170f720e Jiakun Shuai 2025-07-07  1062  			slots_checked += stride;
81a243170f720e Jiakun Shuai 2025-07-07  1063  		}
81a243170f720e Jiakun Shuai 2025-07-07  1064  	} else {
81a243170f720e Jiakun Shuai 2025-07-07  1065  		return -1;
81a243170f720e Jiakun Shuai 2025-07-07  1066  	}
81a243170f720e Jiakun Shuai 2025-07-07  1067  
81a243170f720e Jiakun Shuai 2025-07-07  1068  not_found:
81a243170f720e Jiakun Shuai 2025-07-07  1069  	spin_unlock_irqrestore(&area->lock, flags);
81a243170f720e Jiakun Shuai 2025-07-07  1070  	return -1;
81a243170f720e Jiakun Shuai 2025-07-07  1071  
81a243170f720e Jiakun Shuai 2025-07-07  1072  found:
81a243170f720e Jiakun Shuai 2025-07-07  1073  	/*
81a243170f720e Jiakun Shuai 2025-07-07  1074  	 * If we find a slot that indicates we have 'nslots' number of
81a243170f720e Jiakun Shuai 2025-07-07  1075  	 * contiguous buffers, we allocate the buffers from that slot onwards
81a243170f720e Jiakun Shuai 2025-07-07  1076  	 * and set the list of free entries to '0' indicating unavailable.
81a243170f720e Jiakun Shuai 2025-07-07  1077  	 */
81a243170f720e Jiakun Shuai 2025-07-07  1078  	for (i = slot_index; i < slot_index + nslots; i++) {
81a243170f720e Jiakun Shuai 2025-07-07  1079  		pool->slots[i].list = 0;
81a243170f720e Jiakun Shuai 2025-07-07  1080  		pool->slots[i].alloc_size = alloc_size - (offset +
81a243170f720e Jiakun Shuai 2025-07-07  1081  				((i - slot_index) << P_IO_TLB_SHIFT));
81a243170f720e Jiakun Shuai 2025-07-07  1082  	}
81a243170f720e Jiakun Shuai 2025-07-07  1083  	for (i = slot_index - 1;
81a243170f720e Jiakun Shuai 2025-07-07  1084  	     io_tlb_offset(i) != P_IO_TLB_SEGSIZE - 1 &&
81a243170f720e Jiakun Shuai 2025-07-07  1085  	     pool->slots[i].list; i--)
81a243170f720e Jiakun Shuai 2025-07-07  1086  		pool->slots[i].list = ++count;
81a243170f720e Jiakun Shuai 2025-07-07  1087  
81a243170f720e Jiakun Shuai 2025-07-07  1088  	/*
81a243170f720e Jiakun Shuai 2025-07-07  1089  	 * Update the indices to avoid searching in the next round.
81a243170f720e Jiakun Shuai 2025-07-07  1090  	 */
81a243170f720e Jiakun Shuai 2025-07-07  1091  	area->index = wrap_area_index(pool, index + nslots);
81a243170f720e Jiakun Shuai 2025-07-07  1092  	area->used += nslots;
81a243170f720e Jiakun Shuai 2025-07-07  1093  	spin_unlock_irqrestore(&area->lock, flags);
81a243170f720e Jiakun Shuai 2025-07-07  1094  
81a243170f720e Jiakun Shuai 2025-07-07  1095  	return slot_index;
81a243170f720e Jiakun Shuai 2025-07-07  1096  }
81a243170f720e Jiakun Shuai 2025-07-07  1097  
81a243170f720e Jiakun Shuai 2025-07-07  1098  /**
81a243170f720e Jiakun Shuai 2025-07-07  1099   * pswiotlb_pool_find_slots() - search for slots in one memory pool
81a243170f720e Jiakun Shuai 2025-07-07  1100   * @dev:	Device which maps the buffer.
81a243170f720e Jiakun Shuai 2025-07-07  1101   * @pool:	Memory pool to be searched.
81a243170f720e Jiakun Shuai 2025-07-07  1102   * @orig_addr:	Original (non-bounced)Phytium  IO buffer address.
81a243170f720e Jiakun Shuai 2025-07-07  1103   * @alloc_size: Total requested size of the bounce buffer,
81a243170f720e Jiakun Shuai 2025-07-07  1104   *		including initial alignment padding.
81a243170f720e Jiakun Shuai 2025-07-07  1105   * @alloc_align_mask:	Required alignment of the allocated buffer.
81a243170f720e Jiakun Shuai 2025-07-07  1106   *
81a243170f720e Jiakun Shuai 2025-07-07  1107   * Search through one memory pool to find a sequence of slots that match the
81a243170f720e Jiakun Shuai 2025-07-07  1108   * allocation constraints.
81a243170f720e Jiakun Shuai 2025-07-07  1109   *
81a243170f720e Jiakun Shuai 2025-07-07  1110   * Return: Index of the first allocated slot, or -1 on error.
81a243170f720e Jiakun Shuai 2025-07-07  1111   */
81a243170f720e Jiakun Shuai 2025-07-07  1112  static int pswiotlb_pool_find_slots(struct device *dev, int nid, struct p_io_tlb_pool *pool,
81a243170f720e Jiakun Shuai 2025-07-07  1113  		phys_addr_t orig_addr, size_t alloc_size,
81a243170f720e Jiakun Shuai 2025-07-07  1114  		unsigned int alloc_align_mask)
81a243170f720e Jiakun Shuai 2025-07-07 @1115  {
81a243170f720e Jiakun Shuai 2025-07-07  1116  	int start = raw_smp_processor_id() & (pool->nareas - 1);
81a243170f720e Jiakun Shuai 2025-07-07  1117  	int i = start, index;
81a243170f720e Jiakun Shuai 2025-07-07  1118  
81a243170f720e Jiakun Shuai 2025-07-07  1119  	do {
81a243170f720e Jiakun Shuai 2025-07-07  1120  		index = pswiotlb_area_find_slots(dev, nid, pool, i, orig_addr,
81a243170f720e Jiakun Shuai 2025-07-07  1121  						alloc_size, alloc_align_mask);
81a243170f720e Jiakun Shuai 2025-07-07  1122  		if (index >= 0) {
81a243170f720e Jiakun Shuai 2025-07-07  1123  			if ((pool != &p_io_tlb_default_mem[nid].defpool) &&
81a243170f720e Jiakun Shuai 2025-07-07  1124  						!pool->transient) {
81a243170f720e Jiakun Shuai 2025-07-07  1125  				bitmap_set(pool->busy_record, i, 1);
81a243170f720e Jiakun Shuai 2025-07-07  1126  			}
81a243170f720e Jiakun Shuai 2025-07-07  1127  			return index;
81a243170f720e Jiakun Shuai 2025-07-07  1128  		}
81a243170f720e Jiakun Shuai 2025-07-07  1129  		if (++i >= pool->nareas)
81a243170f720e Jiakun Shuai 2025-07-07  1130  			i = 0;
81a243170f720e Jiakun Shuai 2025-07-07  1131  	} while (i != start);
81a243170f720e Jiakun Shuai 2025-07-07  1132  
81a243170f720e Jiakun Shuai 2025-07-07  1133  	return -1;
81a243170f720e Jiakun Shuai 2025-07-07  1134  }
81a243170f720e Jiakun Shuai 2025-07-07  1135  
81a243170f720e Jiakun Shuai 2025-07-07  1136  /**
81a243170f720e Jiakun Shuai 2025-07-07  1137   * pswiotlb_find_slots() - search for slots in the whole pswiotlb
81a243170f720e Jiakun Shuai 2025-07-07  1138   * @dev:	Device which maps the buffer.
81a243170f720e Jiakun Shuai 2025-07-07  1139   * @orig_addr:	Original (non-bounced) Phytium IO buffer address.
81a243170f720e Jiakun Shuai 2025-07-07  1140   * @alloc_size: Total requested size of the bounce buffer,
81a243170f720e Jiakun Shuai 2025-07-07  1141   *		including initial alignment padding.
81a243170f720e Jiakun Shuai 2025-07-07  1142   * @alloc_align_mask:	Required alignment of the allocated buffer.
81a243170f720e Jiakun Shuai 2025-07-07  1143   * @retpool:	Used memory pool, updated on return.
81a243170f720e Jiakun Shuai 2025-07-07  1144   *
81a243170f720e Jiakun Shuai 2025-07-07  1145   * Search through the whole Phytium software IO TLB to find a sequence of slots that
81a243170f720e Jiakun Shuai 2025-07-07  1146   * match the allocation constraints.
81a243170f720e Jiakun Shuai 2025-07-07  1147   *
81a243170f720e Jiakun Shuai 2025-07-07  1148   * Return: Index of the first allocated slot, or -1 on error.
81a243170f720e Jiakun Shuai 2025-07-07  1149   */
81a243170f720e Jiakun Shuai 2025-07-07  1150  static int pswiotlb_find_slots(struct device *dev, int nid, phys_addr_t orig_addr,
81a243170f720e Jiakun Shuai 2025-07-07  1151  		size_t alloc_size, unsigned int alloc_align_mask,
81a243170f720e Jiakun Shuai 2025-07-07  1152  		struct p_io_tlb_pool **retpool)
81a243170f720e Jiakun Shuai 2025-07-07 @1153  {
81a243170f720e Jiakun Shuai 2025-07-07  1154  	struct p_io_tlb_mem *mem = &dev->dma_p_io_tlb_mem[nid];
81a243170f720e Jiakun Shuai 2025-07-07  1155  	struct p_io_tlb_pool *pool;
81a243170f720e Jiakun Shuai 2025-07-07  1156  	int index;
81a243170f720e Jiakun Shuai 2025-07-07  1157  	int try_pool_idx;
81a243170f720e Jiakun Shuai 2025-07-07  1158  	int i;
81a243170f720e Jiakun Shuai 2025-07-07 @1159  	int cpuid;
81a243170f720e Jiakun Shuai 2025-07-07  1160  	int current_ratio;
81a243170f720e Jiakun Shuai 2025-07-07  1161  	unsigned long pswiotlb_mem;
81a243170f720e Jiakun Shuai 2025-07-07  1162  	unsigned long nslabs_per_pool = dynamic_inc_thr_npslabs;
81a243170f720e Jiakun Shuai 2025-07-07  1163  
81a243170f720e Jiakun Shuai 2025-07-07  1164  	cpuid = raw_smp_processor_id();
81a243170f720e Jiakun Shuai 2025-07-07  1165  
81a243170f720e Jiakun Shuai 2025-07-07  1166  	rcu_read_lock();
81a243170f720e Jiakun Shuai 2025-07-07  1167  #ifndef CONFIG_ARM64_4K_PAGES
81a243170f720e Jiakun Shuai 2025-07-07  1168  	for (i = 0; i < 15; i++) {
81a243170f720e Jiakun Shuai 2025-07-07  1169  		if (i == 0) {
81a243170f720e Jiakun Shuai 2025-07-07  1170  			pool = mem->pool_addr[0];
81a243170f720e Jiakun Shuai 2025-07-07  1171  			index = pswiotlb_pool_find_slots(dev, nid, pool, orig_addr,
81a243170f720e Jiakun Shuai 2025-07-07  1172  						alloc_size, alloc_align_mask);
81a243170f720e Jiakun Shuai 2025-07-07  1173  		} else if (i == 1 && mem->capacity > (cpuid + 1)) {
81a243170f720e Jiakun Shuai 2025-07-07  1174  			pool = mem->pool_addr[cpuid + 1];
81a243170f720e Jiakun Shuai 2025-07-07  1175  			index = pswiotlb_pool_find_slots(dev, nid, pool, orig_addr,
81a243170f720e Jiakun Shuai 2025-07-07  1176  						alloc_size, alloc_align_mask);
81a243170f720e Jiakun Shuai 2025-07-07  1177  		} else {
81a243170f720e Jiakun Shuai 2025-07-07  1178  			try_pool_idx = get_random_u32() % mem->capacity;
81a243170f720e Jiakun Shuai 2025-07-07  1179  			pool = mem->pool_addr[try_pool_idx];
81a243170f720e Jiakun Shuai 2025-07-07  1180  			index = pswiotlb_pool_find_slots(dev, nid, pool, orig_addr,
81a243170f720e Jiakun Shuai 2025-07-07  1181  							alloc_size, alloc_align_mask);
81a243170f720e Jiakun Shuai 2025-07-07  1182  		}
81a243170f720e Jiakun Shuai 2025-07-07  1183  
81a243170f720e Jiakun Shuai 2025-07-07  1184  		if (index >= 0) {
81a243170f720e Jiakun Shuai 2025-07-07  1185  			rcu_read_unlock();
81a243170f720e Jiakun Shuai 2025-07-07  1186  			goto found;
81a243170f720e Jiakun Shuai 2025-07-07  1187  		}
81a243170f720e Jiakun Shuai 2025-07-07  1188  	}
81a243170f720e Jiakun Shuai 2025-07-07  1189  #else
81a243170f720e Jiakun Shuai 2025-07-07  1190  	for (i = 0; i < 15; i++) {
81a243170f720e Jiakun Shuai 2025-07-07  1191  		try_pool_idx = get_random_u32() % mem->capacity;
81a243170f720e Jiakun Shuai 2025-07-07  1192  		pool = mem->pool_addr[try_pool_idx];
81a243170f720e Jiakun Shuai 2025-07-07  1193  		index = pswiotlb_pool_find_slots(dev, nid, pool, orig_addr,
81a243170f720e Jiakun Shuai 2025-07-07  1194  						alloc_size, alloc_align_mask);
81a243170f720e Jiakun Shuai 2025-07-07  1195  
81a243170f720e Jiakun Shuai 2025-07-07  1196  		if (index >= 0) {
81a243170f720e Jiakun Shuai 2025-07-07  1197  			rcu_read_unlock();
81a243170f720e Jiakun Shuai 2025-07-07  1198  			goto found;
81a243170f720e Jiakun Shuai 2025-07-07  1199  		}
81a243170f720e Jiakun Shuai 2025-07-07  1200  	}
81a243170f720e Jiakun Shuai 2025-07-07  1201  #endif
81a243170f720e Jiakun Shuai 2025-07-07  1202  	rcu_read_unlock();
81a243170f720e Jiakun Shuai 2025-07-07  1203  	if (nslabs_per_pool > SLABS_PER_PAGE << MAX_ORDER)
81a243170f720e Jiakun Shuai 2025-07-07  1204  		nslabs_per_pool = SLABS_PER_PAGE << MAX_ORDER;
81a243170f720e Jiakun Shuai 2025-07-07  1205  
81a243170f720e Jiakun Shuai 2025-07-07  1206  	nslabs_per_pool = ALIGN(nslabs_per_pool >> 1, P_IO_TLB_SEGSIZE);
81a243170f720e Jiakun Shuai 2025-07-07  1207  	pswiotlb_mem = P_IO_TLB_DEFAULT_SIZE +
81a243170f720e Jiakun Shuai 2025-07-07  1208  		(nslabs_per_pool << P_IO_TLB_SHIFT) * (mem->whole_size - 1);
81a243170f720e Jiakun Shuai 2025-07-07  1209  	current_ratio = (pswiotlb_mem * 100 + mem->node_total_mem / 2) / mem->node_total_mem;
81a243170f720e Jiakun Shuai 2025-07-07  1210  	if (current_ratio >= P_IO_TLB_EXT_WATERMARK) {
81a243170f720e Jiakun Shuai 2025-07-07  1211  		dev_warn_once(dev, "Total pswiotlb (%ld MB) exceeds the watermark (%d%%)\n"
81a243170f720e Jiakun Shuai 2025-07-07  1212  					"of memory (%ld MB) in node %d, pswiotlb expansion is prohibited.\n",
81a243170f720e Jiakun Shuai 2025-07-07  1213  					pswiotlb_mem >> 20, P_IO_TLB_EXT_WATERMARK,
81a243170f720e Jiakun Shuai 2025-07-07  1214  					mem->node_total_mem >> 20, nid);
81a243170f720e Jiakun Shuai 2025-07-07  1215  		return -1;
81a243170f720e Jiakun Shuai 2025-07-07  1216  	}
81a243170f720e Jiakun Shuai 2025-07-07  1217  
81a243170f720e Jiakun Shuai 2025-07-07  1218  	if (!mem->can_grow)
81a243170f720e Jiakun Shuai 2025-07-07  1219  		return -1;
81a243170f720e Jiakun Shuai 2025-07-07  1220  
81a243170f720e Jiakun Shuai 2025-07-07  1221  	pool = pswiotlb_formal_alloc(dev, mem);
81a243170f720e Jiakun Shuai 2025-07-07  1222  	if (!pool)
81a243170f720e Jiakun Shuai 2025-07-07  1223  		return -1;
81a243170f720e Jiakun Shuai 2025-07-07  1224  
81a243170f720e Jiakun Shuai 2025-07-07  1225  	/* retry */
81a243170f720e Jiakun Shuai 2025-07-07  1226  	rcu_read_lock();
81a243170f720e Jiakun Shuai 2025-07-07  1227  	index = pswiotlb_pool_find_slots(dev, nid, pool, orig_addr,
81a243170f720e Jiakun Shuai 2025-07-07  1228  					alloc_size, alloc_align_mask);
81a243170f720e Jiakun Shuai 2025-07-07  1229  	rcu_read_unlock();
81a243170f720e Jiakun Shuai 2025-07-07  1230  
81a243170f720e Jiakun Shuai 2025-07-07  1231  	if (index < 0) {
81a243170f720e Jiakun Shuai 2025-07-07  1232  		pswiotlb_dyn_free(&pool->rcu);
81a243170f720e Jiakun Shuai 2025-07-07  1233  		return -1;
81a243170f720e Jiakun Shuai 2025-07-07  1234  	}
81a243170f720e Jiakun Shuai 2025-07-07  1235  
81a243170f720e Jiakun Shuai 2025-07-07  1236  found:
81a243170f720e Jiakun Shuai 2025-07-07  1237  	WRITE_ONCE(dev->dma_uses_p_io_tlb, true);
81a243170f720e Jiakun Shuai 2025-07-07  1238  
81a243170f720e Jiakun Shuai 2025-07-07  1239  	/*
81a243170f720e Jiakun Shuai 2025-07-07  1240  	 * The general barrier orders reads and writes against a presumed store
81a243170f720e Jiakun Shuai 2025-07-07  1241  	 * of the PSWIOTLB buffer address by a device driver (to a driver private
81a243170f720e Jiakun Shuai 2025-07-07  1242  	 * data structure). It serves two purposes.
81a243170f720e Jiakun Shuai 2025-07-07  1243  	 *
81a243170f720e Jiakun Shuai 2025-07-07  1244  	 * First, the store to dev->dma_uses_p_io_tlb must be ordered before the
81a243170f720e Jiakun Shuai 2025-07-07  1245  	 * presumed store. This guarantees that the returned buffer address
81a243170f720e Jiakun Shuai 2025-07-07  1246  	 * cannot be passed to another CPU before updating dev->dma_uses_p_io_tlb.
81a243170f720e Jiakun Shuai 2025-07-07  1247  	 *
81a243170f720e Jiakun Shuai 2025-07-07  1248  	 * Second, the load from mem->pools must be ordered before the same
81a243170f720e Jiakun Shuai 2025-07-07  1249  	 * presumed store. This guarantees that the returned buffer address
81a243170f720e Jiakun Shuai 2025-07-07  1250  	 * cannot be observed by another CPU before an update of the RCU list
81a243170f720e Jiakun Shuai 2025-07-07  1251  	 * that was made by pswiotlb_dyn_alloc() on a third CPU (cf. multicopy
81a243170f720e Jiakun Shuai 2025-07-07  1252  	 * atomicity).
81a243170f720e Jiakun Shuai 2025-07-07  1253  	 *
81a243170f720e Jiakun Shuai 2025-07-07  1254  	 * See also the comment in is_pswiotlb_buffer().
81a243170f720e Jiakun Shuai 2025-07-07  1255  	 */
81a243170f720e Jiakun Shuai 2025-07-07  1256  	smp_mb();
81a243170f720e Jiakun Shuai 2025-07-07  1257  
81a243170f720e Jiakun Shuai 2025-07-07  1258  	*retpool = pool;
81a243170f720e Jiakun Shuai 2025-07-07  1259  	return index;
81a243170f720e Jiakun Shuai 2025-07-07  1260  }
81a243170f720e Jiakun Shuai 2025-07-07  1261  #ifdef CONFIG_DEBUG_FS
81a243170f720e Jiakun Shuai 2025-07-07  1262  
:::::: The code at line 1159 was first introduced by commit
:::::: 81a243170f720e9b8772c7b0a1dfb2922264e0c6 dma: phytium: Add PSWIOTLB mechanism to improve DMA performance
:::::: TO: Jiakun Shuai <shuaijiakun1288(a)phytium.com.cn>
:::::: CC: Jiakun Shuai <shuaijiakun1288(a)phytium.com.cn>
-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                     
                        
                    
                        
                            
                                
                            
                            [openeuler:OLK-5.10 3135/3135] security/integrity/ima/ima.h:381:51: warning: 'struct ima_digest' declared inside parameter list will not be visible outside of this definition or declaration
                        
                        
by kernel test robot 21 Aug '25
                    by kernel test robot 21 Aug '25
21 Aug '25
                    
                        Hi Zhou,
FYI, the error/warning still remains.
tree:   https://gitee.com/openeuler/kernel.git OLK-5.10
head:   28d3b936dc6be28156ddfb85879ccdf7b3cf2ded
commit: e94df9b790f7ed9025c9321f16a77044f66b14a5 [3135/3135] ima: Add macros to isolate the IMA digest list
config: x86_64-buildonly-randconfig-2002-20250820 (https://download.01.org/0day-ci/archive/20250821/202508210200.kPc9kAup-lkp@…)
compiler: gcc-12 (Debian 12.2.0-14+deb12u1) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250821/202508210200.kPc9kAup-lkp@…)
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(a)intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202508210200.kPc9kAup-lkp@intel.com/
All warnings (new ones prefixed by >>):
   In file included from security/integrity/ima/ima_init.c:19:
>> security/integrity/ima/ima.h:381:51: warning: 'struct ima_digest' declared inside parameter list will not be visible outside of this definition or declaration
     381 |                                            struct ima_digest *found_digest)
         |                                                   ^~~~~~~~~~
--
   In file included from security/integrity/ima/ima_asymmetric_keys.c:13:
>> security/integrity/ima/ima.h:381:51: warning: 'struct ima_digest' declared inside parameter list will not be visible outside of this definition or declaration
     381 |                                            struct ima_digest *found_digest)
         |                                                   ^~~~~~~~~~
   security/integrity/ima/ima_asymmetric_keys.c:27:6: warning: no previous prototype for 'ima_post_key_create_or_update' [-Wmissing-prototypes]
      27 | void ima_post_key_create_or_update(struct key *keyring, struct key *key,
         |      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
   In file included from security/integrity/ima/ima_main.c:30:
>> security/integrity/ima/ima.h:381:51: warning: 'struct ima_digest' declared inside parameter list will not be visible outside of this definition or declaration
     381 |                                            struct ima_digest *found_digest)
         |                                                   ^~~~~~~~~~
   security/integrity/ima/ima_main.c: In function 'process_measurement':
   security/integrity/ima/ima_main.c:433:30: error: too few arguments to function 'ima_appraise_measurement'
     433 |                         rc = ima_appraise_measurement(func, iint, file,
         |                              ^~~~~~~~~~~~~~~~~~~~~~~~
   security/integrity/ima/ima.h:373:19: note: declared here
     373 | static inline int ima_appraise_measurement(enum ima_hooks func,
         |                   ^~~~~~~~~~~~~~~~~~~~~~~~
vim +381 security/integrity/ima/ima.h
273df864cf7466 Nayna Jain            2019-10-30  372  
4ad87a3d7444de Mimi Zohar            2016-01-14  373  static inline int ima_appraise_measurement(enum ima_hooks func,
d79d72e02485c0 Mimi Zohar            2012-12-03  374  					   struct integrity_iint_cache *iint,
2fe5d6def1672a Mimi Zohar            2012-02-13  375  					   struct file *file,
d3634d0f426bde Dmitry Kasatkin       2013-04-25  376  					   const unsigned char *filename,
d3634d0f426bde Dmitry Kasatkin       2013-04-25  377  					   struct evm_ima_xattr_data *xattr_value,
39b07096364a42 Thiago Jung Bauermann 2019-06-27  378  					   int xattr_len,
e94df9b790f7ed Zhou Shuiqing         2023-09-06  379  #ifndef CONFIG_IMA_DIGEST_LIST
a44c2ae6cac55b Roberto Sassu         2021-03-03  380  					   const struct modsig *modsig,
a44c2ae6cac55b Roberto Sassu         2021-03-03 @381  					   struct ima_digest *found_digest)
e94df9b790f7ed Zhou Shuiqing         2023-09-06  382  #else
e94df9b790f7ed Zhou Shuiqing         2023-09-06  383  					   const struct modsig *modsig)
e94df9b790f7ed Zhou Shuiqing         2023-09-06  384  #endif
2fe5d6def1672a Mimi Zohar            2012-02-13  385  {
2fe5d6def1672a Mimi Zohar            2012-02-13  386  	return INTEGRITY_UNKNOWN;
2fe5d6def1672a Mimi Zohar            2012-02-13  387  }
2fe5d6def1672a Mimi Zohar            2012-02-13  388  
:::::: The code at line 381 was first introduced by commit
:::::: a44c2ae6cac55bdcc0d33f62600233ea0f3f6688 ima: Add support for appraisal with digest lists
:::::: TO: Roberto Sassu <roberto.sassu(a)huawei.com>
:::::: CC: Zheng Zengkai <zhengzengkai(a)huawei.com>
-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                     
                        
                    
                        
                            
                                
                            
                            [openeuler:OLK-5.10 3135/3135] mm/memcontrol.c:5402:40: error: implicit declaration of function 'ksm_process_profit'
                        
                        
by kernel test robot 21 Aug '25
                    by kernel test robot 21 Aug '25
21 Aug '25
                    
                        Hi Nanyong,
FYI, the error/warning still remains.
tree:   https://gitee.com/openeuler/kernel.git OLK-5.10
head:   28d3b936dc6be28156ddfb85879ccdf7b3cf2ded
commit: 0f6fb3570be40b783d8c756d64297be1a8e3d2b3 [3135/3135] memcg: support ksm merge any mode per cgroup
config: x86_64-buildonly-randconfig-2002-20250820 (https://download.01.org/0day-ci/archive/20250821/202508210046.tLQzvmwk-lkp@…)
compiler: gcc-12 (Debian 12.2.0-14+deb12u1) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250821/202508210046.tLQzvmwk-lkp@…)
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(a)intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202508210046.tLQzvmwk-lkp@intel.com/
All errors (new ones prefixed by >>):
   mm/memcontrol.c: In function 'memory_ksm_show':
>> mm/memcontrol.c:5402:40: error: implicit declaration of function 'ksm_process_profit' [-Werror=implicit-function-declaration]
    5402 |                 ksm_process_profits += ksm_process_profit(mm);
         |                                        ^~~~~~~~~~~~~~~~~~
   cc1: some warnings being treated as errors
vim +/ksm_process_profit +5402 mm/memcontrol.c
  5379	
  5380	static int memory_ksm_show(struct seq_file *m, void *v)
  5381	{
  5382		unsigned long ksm_merging_pages = 0;
  5383		unsigned long ksm_rmap_items = 0;
  5384		long ksm_process_profits = 0;
  5385		unsigned int tasks = 0;
  5386		struct task_struct *task;
  5387		struct mm_struct *mm;
  5388		struct css_task_iter it;
  5389		struct mem_cgroup *memcg = mem_cgroup_from_seq(m);
  5390	
  5391		css_task_iter_start(&memcg->css, CSS_TASK_ITER_PROCS, &it);
  5392		while ((task = css_task_iter_next(&it))) {
  5393			mm = get_task_mm(task);
  5394			if (!mm)
  5395				continue;
  5396	
  5397			if (test_bit(MMF_VM_MERGE_ANY, &mm->flags))
  5398				tasks++;
  5399	
  5400			ksm_rmap_items += mm->ksm_rmap_items;
  5401			ksm_merging_pages += mm->ksm_merging_pages;
> 5402			ksm_process_profits += ksm_process_profit(mm);
  5403			mmput(mm);
  5404		}
  5405		css_task_iter_end(&it);
  5406	
  5407		seq_printf(m, "merge any state: %d\n", READ_ONCE(memcg->ksm_merge_any));
  5408		seq_printf(m, "merge any tasks: %u\n", tasks);
  5409		seq_printf(m, "ksm_rmap_items %lu\n", ksm_rmap_items);
  5410		seq_printf(m, "ksm_merging_pages %lu\n", ksm_merging_pages);
  5411		seq_printf(m, "ksm_process_profits %ld\n", ksm_process_profits);
  5412		return 0;
  5413	}
  5414	
-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                     
                        
                    
                        
                            
                                
                            
                            [openeuler:OLK-5.10] BUILD REGRESSION 28d3b936dc6be28156ddfb85879ccdf7b3cf2ded
                        
                        
by kernel test robot 21 Aug '25
                    by kernel test robot 21 Aug '25
21 Aug '25
                    
                        tree/branch: https://gitee.com/openeuler/kernel.git OLK-5.10
branch HEAD: 28d3b936dc6be28156ddfb85879ccdf7b3cf2ded  !17581  tracing: Add down_write(trace_event_sem) when adding trace event
Error/Warning (recently discovered and may have been fixed):
    block/bfq-cgroup.c:1459:6: warning: no previous prototype for function 'bfqg_and_blkg_get' [-Wmissing-prototypes]
Unverified Error/Warning (likely false positive, kindly check if interested):
    drivers/gpu/drm/amd/amdgpu/../display/dc/core/dc_link_hwss.o: warning: objtool: dp_set_dsc_on_stream() falls through to next function dsc_optc_config_log()
Error/Warning ids grouped by kconfigs:
recent_errors
|-- arm64-allnoconfig
|   |-- mm-filemap.c:warning:no-previous-prototype-for-__add_to_page_cache_locked
|   |-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init
|   `-- mm-page_alloc.c:warning:no-previous-prototype-for-should_fail_alloc_page
|-- arm64-randconfig-001-20250820
|   |-- block-bfq-cgroup.c:warning:Excess-function-parameter-blkcg-description-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:Function-parameter-or-member-bfqg-not-described-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:no-previous-prototype-for-bfqg_and_blkg_get
|   |-- mm-filemap.c:warning:no-previous-prototype-for-__add_to_page_cache_locked
|   |-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init
|   `-- mm-page_alloc.c:warning:no-previous-prototype-for-should_fail_alloc_page
|-- arm64-randconfig-002-20250820
|   |-- crypto-af_alg.c:warning:Function-parameter-or-member-min-not-described-in-af_alg_wait_for_data
|   |-- mm-filemap.c:warning:no-previous-prototype-for-__add_to_page_cache_locked
|   |-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init
|   `-- mm-page_alloc.c:warning:no-previous-prototype-for-should_fail_alloc_page
|-- arm64-randconfig-004-20250820
|   |-- block-bfq-cgroup.c:warning:Excess-function-parameter-blkcg-description-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:Function-parameter-or-member-bfqg-not-described-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:no-previous-prototype-for-bfqg_and_blkg_get
|   |-- crypto-af_alg.c:warning:Function-parameter-or-member-min-not-described-in-af_alg_wait_for_data
|   |-- mm-filemap.c:warning:no-previous-prototype-for-__add_to_page_cache_locked
|   |-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init
|   `-- mm-page_alloc.c:warning:no-previous-prototype-for-should_fail_alloc_page
|-- x86_64-allnoconfig
|   |-- ld.lld:error:version-script-assignment-of-LINUX_2.-to-symbol-__vdso_sgx_enter_enclave-failed:symbol-not-defined
|   |-- llvm-objcopy:error:arch-x86-entry-vdso-vdso64.so.dbg:No-such-file-or-directory
|   `-- llvm-objdump:error:arch-x86-entry-vdso-vdso64.so.dbg:No-such-file-or-directory
|-- x86_64-allyesconfig
|   |-- block-bfq-cgroup.c:warning:Excess-function-parameter-blkcg-description-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:Function-parameter-or-member-bfqg-not-described-in-__bfq_bic_change_cgroup
|   |-- crypto-af_alg.c:warning:Function-parameter-or-member-min-not-described-in-af_alg_wait_for_data
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_entries_exit-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_entries_init-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_exit-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_init-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_ethtool.c:error:no-previous-prototype-for-function-sxe_phys_id_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_ethtool.c:error:no-previous-prototype-for-function-sxe_reg_test-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_all_irq_disable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_event_irq_auto_clear_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_event_irq_map-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_irq_cause_get-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_irq_general_reg_get-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_irq_general_reg_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_link_speed_get-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_nic_reset-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_no_snoop_disable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_pending_irq_read_clear-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_pending_irq_write_clear-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_pf_rst_done_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_ring_irq_auto_disable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_ring_irq_interval_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_ring_irq_map-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_specific_irq_disable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_specific_irq_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_uc_addr_pool_del-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_uc_addr_pool_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_disable_dcb-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_disable_rss-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_lsc_irq_handler-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_mailbox_irq_handler-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_msi_irq_init-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_main.c:error:no-previous-prototype-for-function-sxe_allow_inval_mac-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_phy.c:error:no-previous-prototype-for-function-sxe_multispeed_sfp_link_configure-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_rx_proc.c:error:no-previous-prototype-for-function-sxe_headers_cleanup-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_rx_proc.c:error:no-previous-prototype-for-function-sxe_rx_buffer_page_offset_update-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_sriov.c:error:no-previous-prototype-for-function-sxe_set_vf_link_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_sriov.c:error:variable-ret-set-but-not-used-Werror-Wunused-but-set-variable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_xdp.c:error:no-previous-prototype-for-function-sxe_txrx_ring_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_event_irq_map-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_hw_reset-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_hw_ring_irq_map-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_hw_stop-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_irq_disable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_irq_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_link_state_get-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_mailbox_read-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_mailbox_write-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_msg_read-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_msg_write-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_pf_ack_irq_trigger-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_pf_req_irq_trigger-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_ring_irq_interval_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_rx_rcv_ctl_configure-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_rx_ring_desc_configure-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_rx_ring_switch-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_specific_irq_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_tx_ring_switch-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_rx_proc.c:error:no-previous-prototype-for-function-sxevf_rx_ring_buffers_alloc-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_tx_proc.c:error:no-previous-prototype-for-function-sxevf_tx_ring_alloc-Werror-Wmissing-prototypes
|   `-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_tx_proc.c:error:no-previous-prototype-for-function-sxevf_tx_ring_free-Werror-Wmissing-prototypes
|-- x86_64-buildonly-randconfig-001-20250820
|   |-- block-bfq-cgroup.c:warning:Excess-function-parameter-blkcg-description-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:Function-parameter-or-member-bfqg-not-described-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:no-previous-prototype-for-function-bfqg_and_blkg_get
|   |-- ld.lld:error:version-script-assignment-of-LINUX_2.-to-symbol-__vdso_sgx_enter_enclave-failed:symbol-not-defined
|   |-- llvm-objcopy:error:arch-x86-entry-vdso-vdso64.so.dbg:No-such-file-or-directory
|   `-- llvm-objdump:error:arch-x86-entry-vdso-vdso64.so.dbg:No-such-file-or-directory
|-- x86_64-buildonly-randconfig-002-20250820
|   |-- block-bfq-cgroup.c:warning:Excess-function-parameter-blkcg-description-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:Function-parameter-or-member-bfqg-not-described-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:no-previous-prototype-for-bfqg_and_blkg_get
|   |-- mm-filemap.c:warning:no-previous-prototype-for-__add_to_page_cache_locked
|   |-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init
|   `-- mm-page_alloc.c:warning:no-previous-prototype-for-should_fail_alloc_page
|-- x86_64-buildonly-randconfig-003-20250820
|   |-- block-bfq-cgroup.c:warning:Excess-function-parameter-blkcg-description-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:Function-parameter-or-member-bfqg-not-described-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:no-previous-prototype-for-function-bfqg_and_blkg_get
|   |-- crypto-af_alg.c:warning:Function-parameter-or-member-min-not-described-in-af_alg_wait_for_data
|   |-- ld.lld:error:version-script-assignment-of-LINUX_2.-to-symbol-__vdso_sgx_enter_enclave-failed:symbol-not-defined
|   |-- llvm-objcopy:error:arch-x86-entry-vdso-vdso64.so.dbg:No-such-file-or-directory
|   `-- llvm-objdump:error:arch-x86-entry-vdso-vdso64.so.dbg:No-such-file-or-directory
|-- x86_64-buildonly-randconfig-004-20250820
|   |-- block-bfq-cgroup.c:warning:Excess-function-parameter-blkcg-description-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:Function-parameter-or-member-bfqg-not-described-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:no-previous-prototype-for-bfqg_and_blkg_get
|   |-- crypto-af_alg.c:warning:Function-parameter-or-member-min-not-described-in-af_alg_wait_for_data
|   |-- mm-filemap.c:warning:no-previous-prototype-for-__add_to_page_cache_locked
|   |-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init
|   `-- mm-page_alloc.c:warning:no-previous-prototype-for-should_fail_alloc_page
|-- x86_64-buildonly-randconfig-005-20250820
|   |-- crypto-af_alg.c:warning:Function-parameter-or-member-min-not-described-in-af_alg_wait_for_data
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_entries_exit-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_entries_init-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_exit-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_init-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_ethtool.c:error:no-previous-prototype-for-function-sxe_phys_id_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_ethtool.c:error:no-previous-prototype-for-function-sxe_reg_test-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_all_irq_disable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_event_irq_auto_clear_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_event_irq_map-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_irq_cause_get-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_irq_general_reg_get-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_irq_general_reg_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_link_speed_get-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_nic_reset-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_no_snoop_disable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_pending_irq_read_clear-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_pending_irq_write_clear-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_pf_rst_done_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_ring_irq_auto_disable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_ring_irq_interval_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_ring_irq_map-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_specific_irq_disable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_specific_irq_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_uc_addr_pool_del-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_uc_addr_pool_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_disable_dcb-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_disable_rss-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_lsc_irq_handler-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_mailbox_irq_handler-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_msi_irq_init-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_main.c:error:no-previous-prototype-for-function-sxe_allow_inval_mac-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_phy.c:error:no-previous-prototype-for-function-sxe_multispeed_sfp_link_configure-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_rx_proc.c:error:no-previous-prototype-for-function-sxe_headers_cleanup-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_rx_proc.c:error:no-previous-prototype-for-function-sxe_rx_buffer_page_offset_update-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_sriov.c:error:no-previous-prototype-for-function-sxe_set_vf_link_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_sriov.c:error:variable-ret-set-but-not-used-Werror-Wunused-but-set-variable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_xdp.c:error:no-previous-prototype-for-function-sxe_txrx_ring_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_event_irq_map-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_hw_reset-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_hw_ring_irq_map-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_hw_stop-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_irq_disable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_irq_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_link_state_get-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_mailbox_read-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_mailbox_write-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_msg_read-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_msg_write-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_pf_ack_irq_trigger-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_pf_req_irq_trigger-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_ring_irq_interval_set-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_rx_rcv_ctl_configure-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_rx_ring_desc_configure-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_rx_ring_switch-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_specific_irq_enable-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_tx_ring_switch-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_rx_proc.c:error:no-previous-prototype-for-function-sxevf_rx_ring_buffers_alloc-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_tx_proc.c:error:no-previous-prototype-for-function-sxevf_tx_ring_alloc-Werror-Wmissing-prototypes
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_tx_proc.c:error:no-previous-prototype-for-function-sxevf_tx_ring_free-Werror-Wmissing-prototypes
|   |-- ld.lld:error:version-script-assignment-of-LINUX_2.-to-symbol-__vdso_sgx_enter_enclave-failed:symbol-not-defined
|   |-- llvm-objcopy:error:arch-x86-entry-vdso-vdso64.so.dbg:No-such-file-or-directory
|   `-- llvm-objdump:error:arch-x86-entry-vdso-vdso64.so.dbg:No-such-file-or-directory
|-- x86_64-buildonly-randconfig-006-20250820
|   |-- block-bfq-cgroup.c:warning:Excess-function-parameter-blkcg-description-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:Function-parameter-or-member-bfqg-not-described-in-__bfq_bic_change_cgroup
|   |-- block-bfq-cgroup.c:warning:no-previous-prototype-for-bfqg_and_blkg_get
|   |-- mm-filemap.c:warning:no-previous-prototype-for-__add_to_page_cache_locked
|   |-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init
|   `-- mm-page_alloc.c:warning:no-previous-prototype-for-should_fail_alloc_page
|-- x86_64-defconfig
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-sxe_debugfs_entries_exit
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-sxe_debugfs_entries_init
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-sxe_debugfs_exit
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-sxe_debugfs_init
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_ethtool.c:error:no-previous-prototype-for-sxe_phys_id_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_ethtool.c:error:no-previous-prototype-for-sxe_reg_test
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_ethtool.c:error:suggest-braces-around-empty-body-in-an-if-statement
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_fc_autoneg_localcap_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_all_irq_disable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_all_ring_disable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_crc_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_dcb_max_mem_window_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_dcb_pfc_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_dcb_rate_limiter_clear
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_dcb_rx_bw_alloc_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_dcb_tx_data_bw_alloc_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_dcb_tx_desc_bw_alloc_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_dcb_tx_ring_rate_factor_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_event_irq_auto_clear_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_event_irq_map
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fc_autoneg_disable_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fc_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fc_mac_addr_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fc_requested_mode_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fc_tc_high_water_mark_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fc_tc_low_water_mark_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fnav_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fnav_port_mask_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fnav_sample_rule_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fnav_sample_rules_table_reinit
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fnav_specific_rule_add
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fnav_specific_rule_del
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_fnav_specific_rule_mask_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_channel_state_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_drv_status_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_fw_ack_header_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_fw_ov_clear
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_fw_status_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_is_fw_over_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_lock_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_lock_release
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_packet_data_dword_rcv
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_packet_data_dword_send
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_packet_header_send
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_hdc_packet_send_done
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_irq_cause_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_irq_general_reg_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_irq_general_reg_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_is_fc_autoneg_disabled
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_is_link_state_up
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_link_speed_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_link_speed_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_loopback_switch
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_mac_max_frame_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_mac_max_frame_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_mac_pad_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_mac_txrx_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_mbx_init
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_mbx_mem_clear
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_mc_filter_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_mc_filter_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_mta_hash_table_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_mta_hash_table_update
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_nic_reset
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_no_snoop_disable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_pcie_vt_mode_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_pending_irq_read_clear
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_pending_irq_write_clear
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_pf_rst_done_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_pfc_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_pool_mac_anti_spoof_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_pool_rx_mode_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_pool_rx_mode_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_pool_rx_ring_drop_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ptp_init
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ptp_is_rx_timestamp_valid
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ptp_rx_timestamp_clear
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ptp_rx_timestamp_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ptp_systime_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ptp_systime_init
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ptp_timestamp_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ptp_timestamp_mode_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ptp_tx_timestamp_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rcv_msg_from_vf
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ring_irq_auto_disable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ring_irq_interval_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_ring_irq_map
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rss_key_set_all
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rss_redir_tbl_reg_write
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rss_redir_tbl_set_all
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_cap_switch_off
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_cap_switch_on
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_desc_thresh_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_dma_ctrl_init
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_dma_lro_ctrl_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_drop_switch
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_lro_ack_switch
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_lro_ctl_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_lro_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_mode_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_mode_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_multi_ring_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_nfs_filter_disable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_pkt_buf_size_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_pool_bitmap_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_pool_bitmap_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_queue_desc_reg_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_rcv_ctl_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_ring_desc_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_ring_switch
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_ring_switch_not_polling
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_rx_udp_frag_checksum_disable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_send_msg_to_vf
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_specific_irq_disable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_specific_irq_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_spoof_count_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_stats_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_stats_regs_clean
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_stats_seq_clean
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_desc_thresh_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_pkt_buf_size_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_pkt_buf_switch
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_pkt_buf_thresh_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_pool_bitmap_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_pool_bitmap_set
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_ring_desc_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_ring_head_init
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_ring_info_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_ring_switch
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_ring_switch_not_polling
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_ring_tail_init
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_vlan_insert_get
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_tx_vlan_tag_clear
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_uc_addr_add
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_uc_addr_clear
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_uc_addr_del
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_uc_addr_pool_del
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_uc_addr_pool_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vf_ack_check
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vf_req_check
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vf_rst_check
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vlan_filter_array_clear
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vlan_filter_array_read
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vlan_filter_array_write
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vlan_filter_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vlan_filter_switch
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vlan_pool_filter_read
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vlan_tag_strip_switch
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vlvf_slot_find
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vt_ctrl_cfg
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vt_disable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-sxe_hw_vt_pool_loopback_switch
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:suggest-braces-around-empty-body-in-an-if-statement
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-sxe_disable_dcb
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-sxe_disable_rss
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-sxe_lsc_irq_handler
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-sxe_mailbox_irq_handler
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-sxe_msi_irq_init
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_main.c:error:no-previous-prototype-for-sxe_allow_inval_mac
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_phy.c:error:no-previous-prototype-for-sxe_multispeed_sfp_link_configure
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_rx_proc.c:error:no-previous-prototype-for-sxe_headers_cleanup
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_rx_proc.c:error:no-previous-prototype-for-sxe_rx_buffer_page_offset_update
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_sriov.c:error:no-previous-prototype-for-sxe_set_vf_link_enable
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_sriov.c:error:variable-ret-set-but-not-used
|   |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_xdp.c:error:no-previous-prototype-for-sxe_txrx_ring_enable
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_32bit_counter_update
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_36bit_counter_update
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_event_irq_map
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_hw_reset
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_hw_ring_irq_map
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_hw_stop
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_irq_disable
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_irq_enable
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_link_state_get
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_mailbox_read
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_mailbox_write
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_msg_read
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_msg_write
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_packet_stats_get
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_pf_ack_irq_trigger
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_pf_req_irq_trigger
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_ring_irq_interval_set
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_rx_rcv_ctl_configure
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_rx_ring_desc_configure
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_rx_ring_switch
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_specific_irq_enable
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_stats_init_value_get
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-sxevf_tx_ring_switch
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_rx_proc.c:error:no-previous-prototype-for-sxevf_rx_ring_buffers_alloc
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_tx_proc.c:error:no-previous-prototype-for-sxevf_tx_ring_alloc
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_tx_proc.c:error:no-previous-prototype-for-sxevf_tx_ring_free
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_tx_proc.c:error:suggest-braces-around-empty-body-in-an-else-statement
|   |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_tx_proc.c:error:suggest-braces-around-empty-body-in-an-if-statement
|   |-- mm-filemap.c:warning:no-previous-prototype-for-__add_to_page_cache_locked
|   |-- mm-page_alloc.c:warning:no-previous-prototype-for-arch_memmap_init
|   `-- mm-page_alloc.c:warning:no-previous-prototype-for-should_fail_alloc_page
|-- x86_64-randconfig-104-20250819
|   `-- drivers-gpu-drm-amd-amdgpu-..-display-dc-core-dc_link_hwss.o:warning:objtool:dp_set_dsc_on_stream-falls-through-to-next-function-dsc_optc_config_log()
`-- x86_64-rhel-9.4-rust
    |-- block-bfq-cgroup.c:warning:Excess-function-parameter-blkcg-description-in-__bfq_bic_change_cgroup
    |-- block-bfq-cgroup.c:warning:Function-parameter-or-member-bfqg-not-described-in-__bfq_bic_change_cgroup
    |-- crypto-af_alg.c:warning:Function-parameter-or-member-min-not-described-in-af_alg_wait_for_data
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_entries_exit-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_entries_init-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_exit-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_debugfs.c:error:no-previous-prototype-for-function-sxe_debugfs_init-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_ethtool.c:error:no-previous-prototype-for-function-sxe_phys_id_set-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_ethtool.c:error:no-previous-prototype-for-function-sxe_reg_test-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_all_irq_disable-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_event_irq_auto_clear_set-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_event_irq_map-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_irq_cause_get-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_irq_general_reg_get-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_irq_general_reg_set-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_link_speed_get-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_nic_reset-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_no_snoop_disable-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_pending_irq_read_clear-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_pending_irq_write_clear-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_pf_rst_done_set-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_ring_irq_auto_disable-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_ring_irq_interval_set-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_ring_irq_map-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_specific_irq_disable-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_specific_irq_enable-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_uc_addr_pool_del-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_hw.c:error:no-previous-prototype-for-function-sxe_hw_uc_addr_pool_enable-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_disable_dcb-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_disable_rss-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_lsc_irq_handler-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_mailbox_irq_handler-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_irq.c:error:no-previous-prototype-for-function-sxe_msi_irq_init-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_main.c:error:no-previous-prototype-for-function-sxe_allow_inval_mac-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_phy.c:error:no-previous-prototype-for-function-sxe_multispeed_sfp_link_configure-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_rx_proc.c:error:no-previous-prototype-for-function-sxe_headers_cleanup-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_rx_proc.c:error:no-previous-prototype-for-function-sxe_rx_buffer_page_offset_update-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_sriov.c:error:no-previous-prototype-for-function-sxe_set_vf_link_enable-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_sriov.c:error:variable-ret-set-but-not-used-Werror-Wunused-but-set-variable
    |-- drivers-net-ethernet-linkdata-sxe-sxepf-sxe_xdp.c:error:no-previous-prototype-for-function-sxe_txrx_ring_enable-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_event_irq_map-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_hw_reset-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_hw_ring_irq_map-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_hw_stop-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_irq_disable-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_irq_enable-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_link_state_get-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_mailbox_read-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_mailbox_write-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_msg_read-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_msg_write-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_pf_ack_irq_trigger-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_pf_req_irq_trigger-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_ring_irq_interval_set-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_rx_rcv_ctl_configure-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_rx_ring_desc_configure-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_rx_ring_switch-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_specific_irq_enable-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_hw.c:error:no-previous-prototype-for-function-sxevf_tx_ring_switch-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_rx_proc.c:error:no-previous-prototype-for-function-sxevf_rx_ring_buffers_alloc-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_tx_proc.c:error:no-previous-prototype-for-function-sxevf_tx_ring_alloc-Werror-Wmissing-prototypes
    |-- drivers-net-ethernet-linkdata-sxevf-sxevf-sxevf_tx_proc.c:error:no-previous-prototype-for-function-sxevf_tx_ring_free-Werror-Wmissing-prototypes
    `-- include-net-ip6_fib.h:error:default-initialization-of-an-object-of-type-typeof-(f6i-expires)-(aka-const-unsigned-long-)-leaves-the-object-uninitialized-Werror-Wdefault-const-init-var-unsafe
elapsed time: 727m
configs tested: 16
configs skipped: 114
tested configs:
arm64                        allmodconfig    clang-19
arm64                         allnoconfig    gcc-15.1.0
arm64             randconfig-001-20250820    gcc-14.3.0
arm64             randconfig-002-20250820    gcc-14.3.0
arm64             randconfig-003-20250820    gcc-5.5.0
arm64             randconfig-004-20250820    gcc-14.3.0
x86_64                        allnoconfig    clang-20
x86_64                       allyesconfig    clang-20
x86_64  buildonly-randconfig-001-20250820    clang-20
x86_64  buildonly-randconfig-002-20250820    gcc-11
x86_64  buildonly-randconfig-003-20250820    clang-20
x86_64  buildonly-randconfig-004-20250820    gcc-12
x86_64  buildonly-randconfig-005-20250820    clang-20
x86_64  buildonly-randconfig-006-20250820    gcc-12
x86_64                          defconfig    gcc-11
x86_64                      rhel-9.4-rust    clang-22
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                     
                        
                    
                        
                            
                                
                            
                            [openeuler:OLK-5.10 3135/3135] arch/x86/events/amd/brs.c:339:6: warning: no previous prototype for 'perf_amd_brs_lopwr_cb'
                        
                        
by kernel test robot 21 Aug '25
                    by kernel test robot 21 Aug '25
21 Aug '25
                    
                        Hi Xie,
FYI, the error/warning still remains.
tree:   https://gitee.com/openeuler/kernel.git OLK-5.10
head:   28d3b936dc6be28156ddfb85879ccdf7b3cf2ded
commit: 600130a3b3f73d76dbfa38d63f68d1c2520e582d [3135/3135] kabi: Fix kabi breakage without build warning.
config: x86_64-buildonly-randconfig-2002-20250820 (https://download.01.org/0day-ci/archive/20250820/202508202313.jlfYOA3M-lkp@…)
compiler: gcc-12 (Debian 12.2.0-14+deb12u1) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250820/202508202313.jlfYOA3M-lkp@…)
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(a)intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202508202313.jlfYOA3M-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> arch/x86/events/amd/brs.c:339:6: warning: no previous prototype for 'perf_amd_brs_lopwr_cb' [-Wmissing-prototypes]
     339 | void perf_amd_brs_lopwr_cb(bool lopwr_in)
         |      ^~~~~~~~~~~~~~~~~~~~~
vim +/perf_amd_brs_lopwr_cb +339 arch/x86/events/amd/brs.c
fb5f22f8054df9 Stephane Eranian 2022-03-22  334  
fb5f22f8054df9 Stephane Eranian 2022-03-22  335  /*
fb5f22f8054df9 Stephane Eranian 2022-03-22  336   * called from ACPI processor_idle.c or acpi_pad.c
fb5f22f8054df9 Stephane Eranian 2022-03-22  337   * with interrupts disabled
fb5f22f8054df9 Stephane Eranian 2022-03-22  338   */
fb5f22f8054df9 Stephane Eranian 2022-03-22 @339  void perf_amd_brs_lopwr_cb(bool lopwr_in)
fb5f22f8054df9 Stephane Eranian 2022-03-22  340  {
fb5f22f8054df9 Stephane Eranian 2022-03-22  341  	struct cpu_hw_events *cpuc = this_cpu_ptr(&cpu_hw_events);
fb5f22f8054df9 Stephane Eranian 2022-03-22  342  	union amd_debug_extn_cfg cfg;
fb5f22f8054df9 Stephane Eranian 2022-03-22  343  
fb5f22f8054df9 Stephane Eranian 2022-03-22  344  	/*
fb5f22f8054df9 Stephane Eranian 2022-03-22  345  	 * on mwait in, we may end up in non C0 state.
fb5f22f8054df9 Stephane Eranian 2022-03-22  346  	 * we must disable branch sampling to avoid holding the NMI
fb5f22f8054df9 Stephane Eranian 2022-03-22  347  	 * for too long. We disable it in hardware but we
fb5f22f8054df9 Stephane Eranian 2022-03-22  348  	 * keep the state in cpuc, so we can re-enable.
fb5f22f8054df9 Stephane Eranian 2022-03-22  349  	 *
fb5f22f8054df9 Stephane Eranian 2022-03-22  350  	 * The hardware will deliver the NMI if needed when brsmen cleared
fb5f22f8054df9 Stephane Eranian 2022-03-22  351  	 */
fb5f22f8054df9 Stephane Eranian 2022-03-22  352  	if (cpuc->brs_active) {
fb5f22f8054df9 Stephane Eranian 2022-03-22  353  		cfg.val = get_debug_extn_cfg();
fb5f22f8054df9 Stephane Eranian 2022-03-22  354  		cfg.brsmen = !lopwr_in;
fb5f22f8054df9 Stephane Eranian 2022-03-22  355  		set_debug_extn_cfg(cfg.val);
fb5f22f8054df9 Stephane Eranian 2022-03-22  356  	}
fb5f22f8054df9 Stephane Eranian 2022-03-22  357  }
fb5f22f8054df9 Stephane Eranian 2022-03-22  358  
:::::: The code at line 339 was first introduced by commit
:::::: fb5f22f8054df9c6cc2c2e40e54a76ea62fb4824 perf/x86/amd: Add idle hooks for branch sampling
:::::: TO: Stephane Eranian <eranian(a)google.com>
:::::: CC: Xie Haocheng <haocheng.xie(a)amd.com>
-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                     
                        
                    
                        
                            
                                
                            
                            [openeuler:openEuler-1.0-LTS] BUILD REGRESSION ee456a0eef2bfaf8b45c9a1174a9c61934b9b26f
                        
                        
by kernel test robot 21 Aug '25
                    by kernel test robot 21 Aug '25
21 Aug '25
                    
                        tree/branch: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
branch HEAD: ee456a0eef2bfaf8b45c9a1174a9c61934b9b26f  !17478 EDAC/amd64: Do not warn when removing instances
Error/Warning (recently discovered and may have been fixed):
    https://lore.kernel.org/oe-kbuild-all/202508070154.VYnxHXi4-lkp@intel.com
    https://lore.kernel.org/oe-kbuild-all/202508070349.2ODYAkPf-lkp@intel.com
    https://lore.kernel.org/oe-kbuild-all/202508070424.1zkCZb3G-lkp@intel.com
    block/bio-integrity.c:41:6: warning: no previous prototype for function '__bio_integrity_free' [-Wmissing-prototypes]
    block/blk-cgroup.c:1843: warning: Function parameter or member 'q' not described in 'blkcg_schedule_throttle'
    block/blk-cgroup.c:1843: warning: Function parameter or member 'use_memdelay' not described in 'blkcg_schedule_throttle'
    block/blk-cgroup.c:1868: warning: Function parameter or member 'blkg' not described in 'blkcg_add_delay'
    block/blk-cgroup.c:1868: warning: Function parameter or member 'delta' not described in 'blkcg_add_delay'
    block/blk-cgroup.c:1868: warning: Function parameter or member 'now' not described in 'blkcg_add_delay'
    block/blk-mq-sched.c:220:5: warning: no previous prototype for function '__blk_mq_sched_dispatch_requests' [-Wmissing-prototypes]
    block/genhd.c:642:5: warning: no previous prototype for function 'disk_scan_partitions' [-Wmissing-prototypes]
    mm/early_ioremap.o: warning: objtool: missing symbol for section .text
Error/Warning ids grouped by kconfigs:
recent_errors
|-- arm64-allmodconfig
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-blkg-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-delta-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-now-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-q-not-described-in-blkcg_schedule_throttle
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-use_memdelay-not-described-in-blkcg_schedule_throttle
|   |-- block-blk-io-hierarchy-iodump.c:warning:no-previous-prototype-for-__bio_stage_hierarchy_start
|   |-- drivers-pinctrl-core.c:error:Cannot-parse-struct-or-union
|   |-- include-linux-printk.h:warning:this-statement-may-fall-through
|   |-- include-linux-signal.h:warning:this-statement-may-fall-through
|   `-- mm-rodata_test.c:warning:no-previous-prototype-for-rodata_test
|-- arm64-allnoconfig
|   |-- include-linux-list.h:warning:storing-the-address-of-local-variable-wait-in-((struct-list_head-)x)-.prev
|   |-- include-linux-list.h:warning:storing-the-address-of-local-variable-waiter-in-(struct-list_head-)((char-)sem-).prev
|   |-- include-linux-mempolicy.h:warning:__do_mbind-defined-but-not-used
|   |-- include-linux-printk.h:warning:this-statement-may-fall-through
|   |-- include-linux-signal.h:warning:this-statement-may-fall-through
|   |-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa
|   |-- mm-rmap.c:warning:no-previous-prototype-for-is_vma_temporary_stack
|   `-- mm-vmscan.c:error:implicit-declaration-of-function-kernel_swap_enabled
|-- arm64-defconfig
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-blkg-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-delta-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-now-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-q-not-described-in-blkcg_schedule_throttle
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-use_memdelay-not-described-in-blkcg_schedule_throttle
|   |-- include-linux-list.h:warning:storing-the-address-of-local-variable-waiter-in-(struct-list_head-)((char-)sem-).prev
|   |-- include-linux-printk.h:warning:this-statement-may-fall-through
|   `-- include-linux-signal.h:warning:this-statement-may-fall-through
|-- arm64-randconfig-001-20250820
|   |-- drivers-pinctrl-core.c:error:Cannot-parse-struct-or-union
|   |-- include-linux-mempolicy.h:warning:__do_mbind-defined-but-not-used
|   |-- include-linux-printk.h:warning:this-statement-may-fall-through
|   |-- include-linux-signal.h:warning:this-statement-may-fall-through
|   |-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa
|   `-- mm-vmscan.c:error:implicit-declaration-of-function-kernel_swap_enabled
|-- arm64-randconfig-002-20250820
|   |-- drivers-pinctrl-core.c:error:Cannot-parse-struct-or-union
|   |-- include-linux-printk.h:warning:this-statement-may-fall-through
|   |-- include-linux-signal.h:warning:this-statement-may-fall-through
|   |-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa
|   |-- mm-rmap.c:warning:no-previous-prototype-for-is_vma_temporary_stack
|   `-- mm-rodata_test.c:warning:no-previous-prototype-for-rodata_test
|-- arm64-randconfig-004-20250820
|   |-- drivers-pinctrl-core.c:error:Cannot-parse-struct-or-union
|   |-- include-linux-printk.h:warning:this-statement-may-fall-through
|   |-- include-linux-signal.h:warning:this-statement-may-fall-through
|   |-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa
|   `-- mm-vmscan.c:error:implicit-declaration-of-function-kernel_swap_enabled
|-- x86_64-allyesconfig
|   |-- block-bio-integrity.c:warning:no-previous-prototype-for-function-__bio_integrity_free
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-blkg-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-delta-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-now-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-q-not-described-in-blkcg_schedule_throttle
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-use_memdelay-not-described-in-blkcg_schedule_throttle
|   |-- block-blk-mq-sched.c:warning:no-previous-prototype-for-function-__blk_mq_sched_dispatch_requests
|   |-- block-blk-wbt.c:warning:no-previous-prototype-for-function-wbt_issue
|   |-- block-blk-wbt.c:warning:no-previous-prototype-for-function-wbt_requeue
|   |-- block-genhd.c:warning:no-previous-prototype-for-function-disk_scan_partitions
|   `-- drivers-pinctrl-core.c:error:Cannot-parse-struct-or-union
|-- x86_64-buildonly-randconfig-001-20250820
|   |-- block-bio-integrity.c:warning:no-previous-prototype-for-function-__bio_integrity_free
|   |-- block-blk-mq-sched.c:warning:no-previous-prototype-for-function-__blk_mq_sched_dispatch_requests
|   |-- block-blk-wbt.c:warning:no-previous-prototype-for-function-wbt_issue
|   |-- block-blk-wbt.c:warning:no-previous-prototype-for-function-wbt_requeue
|   |-- block-genhd.c:warning:no-previous-prototype-for-function-disk_scan_partitions
|   `-- drivers-pinctrl-core.c:error:Cannot-parse-struct-or-union
|-- x86_64-buildonly-randconfig-002-20250820
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-blkg-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-delta-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-now-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-q-not-described-in-blkcg_schedule_throttle
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-use_memdelay-not-described-in-blkcg_schedule_throttle
|   |-- drivers-pinctrl-core.c:error:Cannot-parse-struct-or-union
|   |-- include-linux-mempolicy.h:warning:__do_mbind-defined-but-not-used
|   |-- include-linux-printk.h:warning:this-statement-may-fall-through
|   |-- include-linux-signal.h:warning:this-statement-may-fall-through
|   |-- mm-rmap.c:warning:no-previous-prototype-for-is_vma_temporary_stack
|   |-- mm-rodata_test.c:warning:no-previous-prototype-for-rodata_test
|   `-- mm-vmscan.c:error:implicit-declaration-of-function-kernel_swap_enabled
|-- x86_64-buildonly-randconfig-003-20250820
|   |-- block-bfq-cgroup.o:warning:objtool:missing-symbol-for-section-.text
|   |-- block-bio-integrity.c:warning:no-previous-prototype-for-function-__bio_integrity_free
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-blkg-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-delta-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-now-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-q-not-described-in-blkcg_schedule_throttle
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-use_memdelay-not-described-in-blkcg_schedule_throttle
|   |-- block-blk-mq-rdma.o:warning:objtool:missing-symbol-for-section-.text
|   |-- block-blk-mq-sched.c:warning:no-previous-prototype-for-function-__blk_mq_sched_dispatch_requests
|   |-- block-blk-wbt.c:warning:no-previous-prototype-for-function-wbt_issue
|   |-- block-blk-wbt.c:warning:no-previous-prototype-for-function-wbt_requeue
|   |-- block-genhd.c:warning:no-previous-prototype-for-function-disk_scan_partitions
|   |-- drivers-pinctrl-core.c:error:Cannot-parse-struct-or-union
|   |-- mm-debug.o:warning:objtool:missing-symbol-for-section-.text.unlikely.
|   |-- mm-memcontrol.o:warning:objtool:missing-symbol-for-section-.text.unlikely.
|   `-- mm-page_ext.o:warning:objtool:missing-symbol-for-section-.init.text
|-- x86_64-buildonly-randconfig-005-20250820
|   |-- mm-early_ioremap.o:warning:objtool:missing-symbol-for-section-.text
|   |-- mm-kmemleak.c:error:implicit-declaration-of-function-printk_safe_enter-Werror-Wimplicit-function-declaration
|   `-- mm-kmemleak.c:error:implicit-declaration-of-function-printk_safe_exit-Werror-Wimplicit-function-declaration
|-- x86_64-defconfig
|   |-- include-linux-printk.h:warning:this-statement-may-fall-through
|   |-- include-linux-signal.h:warning:this-statement-may-fall-through
|   `-- mm-rmap.c:warning:no-previous-prototype-for-is_vma_temporary_stack
|-- x86_64-randconfig-161-20250821
|   |-- block-bio-integrity.c:warning:no-previous-prototype-for-function-__bio_integrity_free
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-blkg-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-delta-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-now-not-described-in-blkcg_add_delay
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-q-not-described-in-blkcg_schedule_throttle
|   |-- block-blk-cgroup.c:warning:Function-parameter-or-member-use_memdelay-not-described-in-blkcg_schedule_throttle
|   |-- block-blk-mq-sched.c:warning:no-previous-prototype-for-function-__blk_mq_sched_dispatch_requests
|   |-- block-blk-wbt.c:warning:no-previous-prototype-for-function-wbt_issue
|   |-- block-blk-wbt.c:warning:no-previous-prototype-for-function-wbt_requeue
|   |-- block-genhd.c:warning:no-previous-prototype-for-function-disk_scan_partitions
|   |-- drivers-pinctrl-core.c:error:Cannot-parse-struct-or-union
|   `-- mm-hugetlb.c:warning:no-previous-prototype-for-function-free_huge_page_to_dhugetlb_pool
`-- x86_64-rhel-9.4-rust
    |-- block-bio-integrity.c:warning:no-previous-prototype-for-function-__bio_integrity_free
    |-- block-blk-cgroup.c:warning:Function-parameter-or-member-blkg-not-described-in-blkcg_add_delay
    |-- block-blk-cgroup.c:warning:Function-parameter-or-member-delta-not-described-in-blkcg_add_delay
    |-- block-blk-cgroup.c:warning:Function-parameter-or-member-now-not-described-in-blkcg_add_delay
    |-- block-blk-cgroup.c:warning:Function-parameter-or-member-q-not-described-in-blkcg_schedule_throttle
    |-- block-blk-cgroup.c:warning:Function-parameter-or-member-use_memdelay-not-described-in-blkcg_schedule_throttle
    |-- block-blk-mq-sched.c:warning:no-previous-prototype-for-function-__blk_mq_sched_dispatch_requests
    |-- block-blk-wbt.c:warning:no-previous-prototype-for-function-wbt_issue
    |-- block-blk-wbt.c:warning:no-previous-prototype-for-function-wbt_requeue
    |-- block-genhd.c:warning:no-previous-prototype-for-function-disk_scan_partitions
    |-- drivers-pinctrl-core.c:error:Cannot-parse-struct-or-union
    `-- mm-hugetlb.c:warning:no-previous-prototype-for-function-free_huge_page_to_dhugetlb_pool
elapsed time: 729m
configs tested: 17
configs skipped: 114
tested configs:
arm64                        allmodconfig    gcc-15.1.0
arm64                         allnoconfig    gcc-15.1.0
arm64                           defconfig    gcc-15.1.0
arm64             randconfig-001-20250820    gcc-14.3.0
arm64             randconfig-002-20250820    gcc-14.3.0
arm64             randconfig-003-20250820    gcc-5.5.0
arm64             randconfig-004-20250820    gcc-14.3.0
x86_64                        allnoconfig    clang-20
x86_64                       allyesconfig    clang-20
x86_64  buildonly-randconfig-001-20250820    clang-20
x86_64  buildonly-randconfig-002-20250820    gcc-11
x86_64  buildonly-randconfig-003-20250820    clang-20
x86_64  buildonly-randconfig-004-20250820    gcc-12
x86_64  buildonly-randconfig-005-20250820    clang-20
x86_64  buildonly-randconfig-006-20250820    gcc-12
x86_64                          defconfig    gcc-11
x86_64                      rhel-9.4-rust    clang-22
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                     
                        
                    
                        
                            
                                
                            
                            [openeuler:OLK-6.6 2697/2697] arch/arm64/include/asm/cputype.h:163:9: error: "PHYTIUM_CPU_PART_FTC862" redefined
                        
                        
by kernel test robot 21 Aug '25
                    by kernel test robot 21 Aug '25
21 Aug '25
                    
                        tree:   https://gitee.com/openeuler/kernel.git OLK-6.6
head:   86390838db4d0ee205e00d4069a8fdb3e6f0d1d1
commit: 86390838db4d0ee205e00d4069a8fdb3e6f0d1d1 [2697/2697] !16528 [OLK-6.6] dma: phytium: Add PSWIOTLB mechanism to improve DMA performance
config: arm64-randconfig-004-20250820 (https://download.01.org/0day-ci/archive/20250820/202508202358.M9ZVaaay-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.3.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250820/202508202358.M9ZVaaay-lkp@…)
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(a)intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202508202358.M9ZVaaay-lkp@intel.com/
All error/warnings (new ones prefixed by >>):
   In file included from arch/arm64/include/asm/cache.h:49,
                    from include/linux/cache.h:6,
                    from include/linux/slab.h:15,
                    from include/linux/resource_ext.h:11,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
>> arch/arm64/include/asm/cputype.h:163:9: warning: "PHYTIUM_CPU_PART_FTC862" redefined
     163 | #define PHYTIUM_CPU_PART_FTC862         0x862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/cputype.h:110:9: note: this is the location of the previous definition
     110 | #define PHYTIUM_CPU_PART_FTC862 0X862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
--
   In file included from arch/arm64/include/asm/cache.h:49,
                    from include/linux/cache.h:6,
                    from include/linux/time.h:5,
                    from include/linux/stat.h:19,
                    from include/linux/module.h:13,
                    from lib/test_bitops.c:9:
>> arch/arm64/include/asm/cputype.h:163:9: error: "PHYTIUM_CPU_PART_FTC862" redefined [-Werror]
     163 | #define PHYTIUM_CPU_PART_FTC862         0x862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/cputype.h:110:9: note: this is the location of the previous definition
     110 | #define PHYTIUM_CPU_PART_FTC862 0X862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   cc1: all warnings being treated as errors
--
   In file included from arch/arm64/include/asm/cache.h:49,
                    from include/linux/cache.h:6,
                    from include/linux/debug_locks.h:6,
                    from include/linux/lockdep.h:23,
                    from include/linux/mutex.h:17,
                    from include/linux/notifier.h:14,
                    from include/linux/clk.h:14,
                    from lib/vsprintf.c:22:
>> arch/arm64/include/asm/cputype.h:163:9: warning: "PHYTIUM_CPU_PART_FTC862" redefined
     163 | #define PHYTIUM_CPU_PART_FTC862         0x862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/cputype.h:110:9: note: this is the location of the previous definition
     110 | #define PHYTIUM_CPU_PART_FTC862 0X862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   lib/vsprintf.c: In function 'va_format':
   lib/vsprintf.c:1682:9: warning: function 'va_format' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
    1682 |         buf += vsnprintf(buf, end > buf ? end - buf : 0, va_fmt->fmt, va);
         |         ^~~
--
   In file included from arch/arm64/include/asm/cache.h:49,
                    from include/linux/cache.h:6,
                    from include/linux/debug_locks.h:6,
                    from include/linux/lockdep.h:23,
                    from include/linux/radix-tree.h:14,
                    from include/linux/idr.h:15,
                    from lib/test_ida.c:9:
>> arch/arm64/include/asm/cputype.h:163:9: warning: "PHYTIUM_CPU_PART_FTC862" redefined
     163 | #define PHYTIUM_CPU_PART_FTC862         0x862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/cputype.h:110:9: note: this is the location of the previous definition
     110 | #define PHYTIUM_CPU_PART_FTC862 0X862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   lib/test_ida.c:16:6: warning: no previous prototype for 'ida_dump' [-Wmissing-prototypes]
      16 | void ida_dump(struct ida *ida) { }
         |      ^~~~~~~~
--
   In file included from arch/arm64/include/asm/cache.h:49,
                    from include/linux/cache.h:6,
                    from include/linux/time.h:5,
                    from include/linux/stat.h:19,
                    from include/linux/module.h:13,
                    from drivers/clk/clkdev.c:9:
>> arch/arm64/include/asm/cputype.h:163:9: warning: "PHYTIUM_CPU_PART_FTC862" redefined
     163 | #define PHYTIUM_CPU_PART_FTC862         0x862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/cputype.h:110:9: note: this is the location of the previous definition
     110 | #define PHYTIUM_CPU_PART_FTC862 0X862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   drivers/clk/clkdev.c: In function 'vclkdev_alloc':
   drivers/clk/clkdev.c:173:17: warning: function 'vclkdev_alloc' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
     173 |                 vscnprintf(cla->dev_id, sizeof(cla->dev_id), dev_fmt, ap);
         |                 ^~~~~~~~~~
--
   In file included from arch/arm64/include/asm/cache.h:49,
                    from include/linux/cache.h:6,
                    from include/linux/debug_locks.h:6,
                    from include/linux/lockdep.h:23,
                    from include/linux/mutex.h:17,
                    from include/linux/notifier.h:14,
                    from include/linux/clk.h:14,
                    from drivers/clk/clk-cdce925.c:13:
>> arch/arm64/include/asm/cputype.h:163:9: warning: "PHYTIUM_CPU_PART_FTC862" redefined
     163 | #define PHYTIUM_CPU_PART_FTC862         0x862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/cputype.h:110:9: note: this is the location of the previous definition
     110 | #define PHYTIUM_CPU_PART_FTC862 0X862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   drivers/clk/clk-cdce925.c: In function 'cdce925_probe':
   drivers/clk/clk-cdce925.c:717:41: warning: '%d' directive writing between 1 and 11 bytes into a region of size 3 [-Wformat-overflow=]
     717 |                 sprintf(child_name, "PLL%d", i+1);
         |                                         ^~
   drivers/clk/clk-cdce925.c:717:37: note: directive argument in the range [-2147483641, 2147483647]
     717 |                 sprintf(child_name, "PLL%d", i+1);
         |                                     ^~~~~~~
   drivers/clk/clk-cdce925.c:717:17: note: 'sprintf' output between 5 and 15 bytes into a destination of size 6
     717 |                 sprintf(child_name, "PLL%d", i+1);
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
   In file included from arch/arm64/include/asm/cache.h:49,
                    from include/linux/cache.h:6,
                    from include/linux/time.h:5,
                    from include/linux/stat.h:19,
                    from include/linux/module.h:13,
                    from lib/oid_registry.c:8:
>> arch/arm64/include/asm/cputype.h:163:9: warning: "PHYTIUM_CPU_PART_FTC862" redefined
     163 | #define PHYTIUM_CPU_PART_FTC862         0x862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/cputype.h:110:9: note: this is the location of the previous definition
     110 | #define PHYTIUM_CPU_PART_FTC862 0X862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   lib/oid_registry.c:15:10: fatal error: oid_registry_data.c: No such file or directory
      15 | #include "oid_registry_data.c"
         |          ^~~~~~~~~~~~~~~~~~~~~
   compilation terminated.
--
   In file included from arch/arm64/include/asm/cache.h:49,
                    from include/linux/cache.h:6,
                    from include/linux/time.h:5,
                    from include/linux/stat.h:19,
                    from include/linux/module.h:13,
                    from lib/crc64.c:36:
>> arch/arm64/include/asm/cputype.h:163:9: warning: "PHYTIUM_CPU_PART_FTC862" redefined
     163 | #define PHYTIUM_CPU_PART_FTC862         0x862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/cputype.h:110:9: note: this is the location of the previous definition
     110 | #define PHYTIUM_CPU_PART_FTC862 0X862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   lib/crc64.c:39:10: fatal error: crc64table.h: No such file or directory
      39 | #include "crc64table.h"
         |          ^~~~~~~~~~~~~~
   compilation terminated.
--
   In file included from arch/arm64/include/asm/cache.h:49,
                    from include/linux/cache.h:6,
                    from include/linux/slab.h:15,
                    from include/linux/resource_ext.h:11,
                    from include/linux/acpi.h:13,
                    from include/acpi/apei.h:9,
                    from include/acpi/ghes.h:5,
                    from include/linux/arm_sdei.h:8,
                    from arch/arm64/kernel/asm-offsets.c:10:
>> arch/arm64/include/asm/cputype.h:163:9: warning: "PHYTIUM_CPU_PART_FTC862" redefined
     163 | #define PHYTIUM_CPU_PART_FTC862         0x862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/cputype.h:110:9: note: this is the location of the previous definition
     110 | #define PHYTIUM_CPU_PART_FTC862 0X862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/arm64/include/asm/cpufeature.h:11,
                    from arch/arm64/include/asm/assembler.h:21,
                    from arch/arm64/include/asm/linkage.h:5,
                    from include/linux/linkage.h:8,
                    from arch/arm64/kernel/vdso/sigreturn.S:15:
>> arch/arm64/include/asm/cputype.h:163:9: warning: "PHYTIUM_CPU_PART_FTC862" redefined
     163 | #define PHYTIUM_CPU_PART_FTC862         0x862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/cputype.h:110:9: note: this is the location of the previous definition
     110 | #define PHYTIUM_CPU_PART_FTC862 0X862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   In file included from arch/arm64/include/asm/cpufeature.h:11,
                    from arch/arm64/include/asm/assembler.h:21,
                    from arch/arm64/kernel/vdso/note.S:15:
>> arch/arm64/include/asm/cputype.h:163:9: warning: "PHYTIUM_CPU_PART_FTC862" redefined
     163 | #define PHYTIUM_CPU_PART_FTC862         0x862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
   arch/arm64/include/asm/cputype.h:110:9: note: this is the location of the previous definition
     110 | #define PHYTIUM_CPU_PART_FTC862 0X862
         |         ^~~~~~~~~~~~~~~~~~~~~~~
Kconfig warnings: (for reference only)
   WARNING: unmet direct dependencies detected for HALTPOLL_CPUIDLE
   Depends on [n]: CPU_IDLE [=n] && ARCH_CPUIDLE_HALTPOLL [=y] && ARCH_HAS_OPTIMIZED_POLL [=y]
   Selected by [y]:
   - ARM64 [=y]
vim +/PHYTIUM_CPU_PART_FTC862 +163 arch/arm64/include/asm/cputype.h
730ffb45f56dda Easwar Hariharan 2024-03-20  162  
f1e1cfa896d1e8 yuanxia          2025-06-13 @163  #define PHYTIUM_CPU_PART_FTC862		0x862
f1e1cfa896d1e8 yuanxia          2025-06-13  164  #define PHYTIUM_CPU_SOCID_PS24080	0x6
f1e1cfa896d1e8 yuanxia          2025-06-13  165  
:::::: The code at line 163 was first introduced by commit
:::::: f1e1cfa896d1e8d4b7e992a22131b2587bafac78 iommu: smmuv3: Not print information of SMMU 0x10 event
:::::: TO: yuanxia <yuanxia2073(a)phytium.com.cn>
:::::: CC: yuanxia <yuanxia2073(a)phytium.com.cn>
-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            0
                            
                          
                          
                            
    
                          
                        
                     
                        
                    20 Aug '25
                    
                        From: Tetsuo Handa <penguin-kernel(a)I-love.SAKURA.ne.jp>
mainline inclusion
from mainline-v6.13-rc6
commit dd2a5b5514ab0e690f018595e34dd1fcb981d345
category: bugfix
bugzilla: http://hulk.rnd.huawei.com/issue/info/26193
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?…
--------------------------------
Since the string data to copy from userspace is likely less than PAGE_SIZE
bytes, replace GFP_KERNEL with GFP_USER like commit 6c2c97a24f09
("memdup_user(): switch to GFP_USER") does and add __GFP_NOWARN like
commit 6c8fcc096be9 ("mm: don't let userspace spam allocations warnings")
does.  Also, use dedicated slab buckets like commit d73778e4b867
("mm/util: Use dedicated slab buckets for memdup_user()") does.
Link: https://lkml.kernel.org/r/014cd694-cc27-4a07-a34a-2ae95d744515@I-love.SAKUR…
Reported-by: syzbot+7e12e97b36154c54414b(a)syzkaller.appspotmail.com
Closes: https://syzkaller.appspot.com/bug?extid=7e12e97b36154c54414b
Signed-off-by: Tetsuo Handa <penguin-kernel(a)I-love.SAKURA.ne.jp>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
Conflicts:
	mm/util.c
[Comflicts with mainline commit b32801d1255be ("mm/slab: Introduce
kmem_buckets_create() and family").]
Signed-off-by: Zhang Yuwei <zhangyuwei20(a)huawei.com>
---
 mm/util.c | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)
diff --git a/mm/util.c b/mm/util.c
index f3d6751b2f2a..7a5eed15c98f 100644
--- a/mm/util.c
+++ b/mm/util.c
@@ -278,12 +278,7 @@ void *memdup_user_nul(const void __user *src, size_t len)
 {
 	char *p;
 
-	/*
-	 * Always use GFP_KERNEL, since copy_from_user() can sleep and
-	 * cause pagefault, which makes it pointless to use GFP_NOFS
-	 * or GFP_ATOMIC.
-	 */
-	p = kmalloc_track_caller(len + 1, GFP_KERNEL);
+	p = kmalloc_track_caller(len + 1, GFP_USER | __GFP_NOWARN);
 	if (!p)
 		return ERR_PTR(-ENOMEM);
 
-- 
2.22.0
                    
                  
                  
                          
                            
                            2
                            
                          
                          
                            
                            1
                            
                          
                          
                            
    
                          
                        
                    
                    
                        Currently, x86, Riscv, Loongarch use the generic entry which makes
maintainers' work easier and codes more elegant. In the previous patchset,
arm64 has already successfully switched to the generic IRQ entry, it is
time to completely convert arm64 to generic entry.
The main convert steps are as follows:
- Make arm64 closer to generic syscall entry code.
- Switch to generic entry.
This patch set is rebased on v6.17-rc1.
It was tested ok with following test cases on QEMU virt platform:
 - Perf tests.
 - Different `dynamic preempt` mode switch.
 - Pseudo NMI tests.
 - Stress-ng CPU stress test.
 - MTE test case in Documentation/arch/arm64/memory-tagging-extension.rst
   and all test cases in tools/testing/selftests/arm64/mte/*.
The test QEMU configuration is as follows:
	qemu-system-aarch64 \
		-M virt,gic-version=3,virtualization=on,mte=on \
		-cpu max,pauth-impdef=on \
		-kernel Image \
		-smp 8,sockets=1,cores=4,threads=2 \
		-m 512m \
		-nographic \
		-no-reboot \
		-device virtio-rng-pci \
		-append "root=/dev/vda rw console=ttyAMA0 kgdboc=ttyAMA0,115200 \
			earlycon preempt=voluntary irqchip.gicv3_pseudo_nmi=1" \
		-drive if=none,file=images/rootfs.ext4,format=raw,id=hd0 \
		-device virtio-blk-device,drive=hd0 \
Changes in v6:
- Rebased on 6.14 rc2 next.
- Put the irq entry bits aside and split it out.
- Update the commit message.
- Link to v5: https://lore.kernel.org/all/20241206101744.4161990-1-ruanjinjie@huawei.com/
Changes in v5:
- Not change arm32 and keep inerrupts_enabled() macro for gicv3 driver.
- Move irqentry_state definition into arch/arm64/kernel/entry-common.c.
- Avoid removing the __enter_from_*() and __exit_to_*() wrappers.
- Update "irqentry_state_t ret/irq_state" to "state"
  to keep it consistently.
- Use generic irq entry header for PREEMPT_DYNAMIC after split
  the generic entry.
- Also refactor the ARM64 syscall code.
- Introduce arch_ptrace_report_syscall_entry/exit(), instead of
  arch_pre/post_report_syscall_entry/exit() to simplify code.
- Make the syscall patches clear separation.
- Update the commit message.
- Link to v4: https://lore.kernel.org/all/20241025100700.3714552-1-ruanjinjie@huawei.com/
Changes in v4:
- Rework/cleanup split into a few patches as Mark suggested.
- Replace interrupts_enabled() macro with regs_irqs_disabled(), instead
  of left it here.
- Remove rcu and lockdep state in pt_regs by using temporary
  irqentry_state_t as Mark suggested.
- Remove some unnecessary intermediate functions to make it clear.
- Rework preempt irq and PREEMPT_DYNAMIC code
  to make the switch more clear.
- arch_prepare_*_entry/exit() -> arch_pre_*_entry/exit().
- Expand the arch functions comment.
- Make arch functions closer to its caller.
- Declare saved_reg in for block.
- Remove arch_exit_to_kernel_mode_prepare(), arch_enter_from_kernel_mode().
- Adjust "Add few arch functions to use generic entry" patch to be
  the penultimate.
- Update the commit message.
- Add suggested-by.
- Link to v3: https://lore.kernel.org/all/20240629085601.470241-1-ruanjinjie@huawei.com/
Changes in v3:
- Test the MTE test cases.
- Handle forget_syscall() in arch_post_report_syscall_entry()
- Make the arch funcs not use __weak as Thomas suggested, so move
  the arch funcs to entry-common.h, and make arch_forget_syscall() folded
  in arch_post_report_syscall_entry() as suggested.
- Move report_single_step() to thread_info.h for arm64
- Change __always_inline() to inline, add inline for the other arch funcs.
- Remove unused signal.h for entry-common.h.
- Add Suggested-by.
- Update the commit message.
Changes in v2:
- Add tested-by.
- Fix a bug that not call arch_post_report_syscall_entry() in
  syscall_trace_enter() if ptrace_report_syscall_entry() return not zero.
- Refactor report_syscall().
- Add comment for arch_prepare_report_syscall_exit().
- Adjust entry-common.h header file inclusion to alphabetical order.
- Update the commit message.
Jinjie Ruan (10):
  arm64/ptrace: Split report_syscall()
  arm64/ptrace: Refactor syscall_trace_enter/exit()
  arm64/ptrace: Refator el0_svc_common()
  entry: Add syscall_exit_to_user_mode_prepare() helper
  arm64/ptrace: Handle ptrace_report_syscall_entry() error
  arm64/ptrace: Expand secure_computing() in place
  arm64/ptrace: Use syscall_get_arguments() heleper
  entry: Add arch_ptrace_report_syscall_entry/exit()
  entry: Add has_syscall_work() helper
  arm64: entry: Convert to generic entry
 arch/arm64/Kconfig                    |  2 +-
 arch/arm64/include/asm/entry-common.h | 69 ++++++++++++++++++++
 arch/arm64/include/asm/syscall.h      |  6 +-
 arch/arm64/include/asm/thread_info.h  | 22 +------
 arch/arm64/kernel/debug-monitors.c    |  7 +++
 arch/arm64/kernel/ptrace.c            | 90 ---------------------------
 arch/arm64/kernel/signal.c            |  2 +-
 arch/arm64/kernel/syscall.c           | 31 +++------
 include/linux/entry-common.h          | 42 ++++++++-----
 kernel/entry/syscall-common.c         | 43 ++++++++++++-
 10 files changed, 161 insertions(+), 153 deletions(-)
-- 
2.34.1
                    
                  
                  
                          
                            
                            1
                            
                          
                          
                            
                            10
                            
                          
                          
                            
    
                          
                        
                    