Kernel
Threads by month
- ----- 2025 -----
- 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
- 22 participants
- 17517 discussions
driver inclusion
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/IB2DWH
----------------------------------------------------------------------
DCA mmap area would be freed after driver reseted or hot
unplugged. At this time, the vma is still valid, which may
lead to a PUAF.
Using rdma_user_mmap_io() to remap this area to ensure the
vma is zapped after dirver removal.
Fixes: d3caaebdbfe9 ("RDMA/hns: Optimize user DCA perfermance by sharing DCA status")
Signed-off-by: Chengchang Tang <tangchengchang(a)huawei.com>
Signed-off-by: Xinghai Cen <cenxinghai(a)h-partners.com>
---
drivers/infiniband/hw/hns/hns_roce_dca.c | 3 +-
drivers/infiniband/hw/hns/hns_roce_main.c | 39 ++++-------------------
2 files changed, 9 insertions(+), 33 deletions(-)
diff --git a/drivers/infiniband/hw/hns/hns_roce_dca.c b/drivers/infiniband/hw/hns/hns_roce_dca.c
index 91b6b65c83df..65ed7666a826 100644
--- a/drivers/infiniband/hw/hns/hns_roce_dca.c
+++ b/drivers/infiniband/hw/hns/hns_roce_dca.c
@@ -1181,7 +1181,8 @@ static void init_udca_status(struct hns_roce_ucontext *uctx, int udca_max_qps,
return;
ctx->dca_mmap_entry = hns_roce_user_mmap_entry_insert(ib_uctx,
- (u64)kaddr, size, HNS_ROCE_MMAP_TYPE_DCA);
+ (u64)virt_to_phys(kaddr), size,
+ HNS_ROCE_MMAP_TYPE_DCA);
if (!ctx->dca_mmap_entry) {
free_pages_exact(kaddr, size);
return;
diff --git a/drivers/infiniband/hw/hns/hns_roce_main.c b/drivers/infiniband/hw/hns/hns_roce_main.c
index 27b723a40abe..3872e777c74b 100644
--- a/drivers/infiniband/hw/hns/hns_roce_main.c
+++ b/drivers/infiniband/hw/hns/hns_roce_main.c
@@ -674,36 +674,6 @@ static void hns_roce_dealloc_ucontext(struct ib_ucontext *ibcontext)
ida_free(&hr_dev->uar_ida.ida, (int)context->uar.logic_idx);
}
-static int mmap_dca(struct ib_ucontext *context, struct vm_area_struct *vma)
-{
- struct hns_roce_ucontext *uctx = to_hr_ucontext(context);
- struct hns_roce_dca_ctx *ctx = &uctx->dca_ctx;
- struct page **pages;
- unsigned long num;
- int ret;
-
- if ((vma->vm_end - vma->vm_start != (ctx->status_npage * PAGE_SIZE) ||
- !(vma->vm_flags & VM_SHARED)))
- return -EINVAL;
-
- if (!(vma->vm_flags & VM_WRITE) || (vma->vm_flags & VM_EXEC))
- return -EPERM;
-
- if (!ctx->buf_status)
- return -EOPNOTSUPP;
-
- pages = kcalloc(ctx->status_npage, sizeof(struct page *), GFP_KERNEL);
- if (!pages)
- return -ENOMEM;
-
- for (num = 0; num < ctx->status_npage; num++)
- pages[num] = virt_to_page(ctx->buf_status + num * PAGE_SIZE);
-
- ret = vm_insert_pages(vma, vma->vm_start, pages, &num);
- kfree(pages);
- return ret;
-}
-
static int hns_roce_mmap(struct ib_ucontext *uctx, struct vm_area_struct *vma)
{
struct hns_roce_dev *hr_dev = to_hr_dev(uctx->device);
@@ -728,8 +698,13 @@ static int hns_roce_mmap(struct ib_ucontext *uctx, struct vm_area_struct *vma)
prot = pgprot_device(vma->vm_page_prot);
break;
case HNS_ROCE_MMAP_TYPE_DCA:
- ret = mmap_dca(uctx, vma);
- goto out;
+ if (!(vma->vm_flags & VM_WRITE) || (vma->vm_flags & VM_EXEC)) {
+ ret = -EPERM;
+ goto out;
+ }
+ vma->vm_flags |= VM_DONTEXPAND;
+ prot = vma->vm_page_prot;
+ break;
case HNS_ROCE_MMAP_TYPE_RESET:
if (vma->vm_flags & (VM_WRITE | VM_EXEC)) {
ret = -EINVAL;
--
2.33.0
2
1
driver inclusion
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/IB2H4P
----------------------------------------------------------------------
DCA mmap area would be freed after driver reseted or hot
unplugged. At this time, the vma is still valid, which may
lead to a PUAF.
Using rdma_user_mmap_io() to remap this area to ensure the
vma is zapped after dirver removal.
Fixes: d3caaebdbfe9 ("RDMA/hns: Optimize user DCA perfermance by sharing DCA status")
Signed-off-by: Chengchang Tang <tangchengchang(a)huawei.com>
Signed-off-by: Xinghai Cen <cenxinghai(a)h-partners.com>
---
drivers/infiniband/hw/hns/hns_roce_dca.c | 3 +-
drivers/infiniband/hw/hns/hns_roce_main.c | 39 ++++-------------------
2 files changed, 9 insertions(+), 33 deletions(-)
diff --git a/drivers/infiniband/hw/hns/hns_roce_dca.c b/drivers/infiniband/hw/hns/hns_roce_dca.c
index 49adf43261d6..4cef41591795 100644
--- a/drivers/infiniband/hw/hns/hns_roce_dca.c
+++ b/drivers/infiniband/hw/hns/hns_roce_dca.c
@@ -1132,7 +1132,8 @@ static void init_udca_status(struct hns_roce_ucontext *uctx, int udca_max_qps,
return;
ctx->dca_mmap_entry = hns_roce_user_mmap_entry_insert(ib_uctx,
- (u64)kaddr, size, HNS_ROCE_MMAP_TYPE_DCA);
+ (u64)virt_to_phys(kaddr), size,
+ HNS_ROCE_MMAP_TYPE_DCA);
if (!ctx->dca_mmap_entry) {
free_pages_exact(kaddr, size);
return;
diff --git a/drivers/infiniband/hw/hns/hns_roce_main.c b/drivers/infiniband/hw/hns/hns_roce_main.c
index 1302c58c3937..85223d25995d 100644
--- a/drivers/infiniband/hw/hns/hns_roce_main.c
+++ b/drivers/infiniband/hw/hns/hns_roce_main.c
@@ -644,36 +644,6 @@ static void hns_roce_dealloc_ucontext(struct ib_ucontext *ibcontext)
ida_free(&hr_dev->uar_ida.ida, (int)context->uar.logic_idx);
}
-static int mmap_dca(struct ib_ucontext *context, struct vm_area_struct *vma)
-{
- struct hns_roce_ucontext *uctx = to_hr_ucontext(context);
- struct hns_roce_dca_ctx *ctx = &uctx->dca_ctx;
- struct page **pages;
- unsigned long num;
- int ret;
-
- if ((vma->vm_end - vma->vm_start != (ctx->status_npage * PAGE_SIZE) ||
- !(vma->vm_flags & VM_SHARED)))
- return -EINVAL;
-
- if (!(vma->vm_flags & VM_WRITE) || (vma->vm_flags & VM_EXEC))
- return -EPERM;
-
- if (!ctx->buf_status)
- return -EOPNOTSUPP;
-
- pages = kcalloc(ctx->status_npage, sizeof(struct page *), GFP_KERNEL);
- if (!pages)
- return -ENOMEM;
-
- for (num = 0; num < ctx->status_npage; num++)
- pages[num] = virt_to_page(ctx->buf_status + num * PAGE_SIZE);
-
- ret = vm_insert_pages(vma, vma->vm_start, pages, &num);
- kfree(pages);
- return ret;
-}
-
static int hns_roce_mmap(struct ib_ucontext *uctx, struct vm_area_struct *vma)
{
struct hns_roce_dev *hr_dev = to_hr_dev(uctx->device);
@@ -703,8 +673,13 @@ static int hns_roce_mmap(struct ib_ucontext *uctx, struct vm_area_struct *vma)
prot = pgprot_device(vma->vm_page_prot);
break;
case HNS_ROCE_MMAP_TYPE_DCA:
- ret = mmap_dca(uctx, vma);
- goto out;
+ if (!(vma->vm_flags & VM_WRITE) || (vma->vm_flags & VM_EXEC)) {
+ ret = -EPERM;
+ goto out;
+ }
+ vma->vm_flags |= VM_DONTEXPAND;
+ prot = vma->vm_page_prot;
+ break;
case HNS_ROCE_MMAP_TYPE_RESET:
if (vma->vm_flags & (VM_WRITE | VM_EXEC)) {
ret = -EINVAL;
--
2.33.0
2
1

[PATCH OLK-6.6] rcu-tasks: Fix access non-existent percpu rtpcp variable in rcu_tasks_need_gpcb()
by liwei 07 Nov '24
by liwei 07 Nov '24
07 Nov '24
From: Zqiang <qiang.zhang1211(a)gmail.com>
mainline inclusion
from mainline-v6.12-rc1
commit fd70e9f1d85f5323096ad313ba73f5fe3d15ea41
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAYR9E
CVE: CVE-2024-49926
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id…
--------------------------------
For kernels built with CONFIG_FORCE_NR_CPUS=y, the nr_cpu_ids is
defined as NR_CPUS instead of the number of possible cpus, this
will cause the following system panic:
smpboot: Allowing 4 CPUs, 0 hotplug CPUs
...
setup_percpu: NR_CPUS:512 nr_cpumask_bits:512 nr_cpu_ids:512 nr_node_ids:1
...
BUG: unable to handle page fault for address: ffffffff9911c8c8
Oops: 0000 [#1] PREEMPT SMP PTI
CPU: 0 PID: 15 Comm: rcu_tasks_trace Tainted: G W
6.6.21 #1 5dc7acf91a5e8e9ac9dcfc35bee0245691283ea6
RIP: 0010:rcu_tasks_need_gpcb+0x25d/0x2c0
RSP: 0018:ffffa371c00a3e60 EFLAGS: 00010082
CR2: ffffffff9911c8c8 CR3: 000000040fa20005 CR4: 00000000001706f0
Call Trace:
<TASK>
? __die+0x23/0x80
? page_fault_oops+0xa4/0x180
? exc_page_fault+0x152/0x180
? asm_exc_page_fault+0x26/0x40
? rcu_tasks_need_gpcb+0x25d/0x2c0
? __pfx_rcu_tasks_kthread+0x40/0x40
rcu_tasks_one_gp+0x69/0x180
rcu_tasks_kthread+0x94/0xc0
kthread+0xe8/0x140
? __pfx_kthread+0x40/0x40
ret_from_fork+0x34/0x80
? __pfx_kthread+0x40/0x40
ret_from_fork_asm+0x1b/0x80
</TASK>
Considering that there may be holes in the CPU numbers, use the
maximum possible cpu number, instead of nr_cpu_ids, for configuring
enqueue and dequeue limits.
[ neeraj.upadhyay: Fix htmldocs build error reported by Stephen Rothwell ]
Closes: https://lore.kernel.org/linux-input/CALMA0xaTSMN+p4xUXkzrtR5r6k7hgoswcaXx7b…
Reported-by: Zhixu Liu <zhixu.liu(a)gmail.com>
Signed-off-by: Zqiang <qiang.zhang1211(a)gmail.com>
Signed-off-by: Neeraj Upadhyay <neeraj.upadhyay(a)kernel.org>
Conflicts:
kernel/rcu/tasks.h
[commit bfe93930ea1ea3c6c115a7d44af6e4fea609067e("rcu-tasks: Add data to eliminate RCU-tasks/do_exit() deadlocks") was not merged]
[commit e62d8ae4620865411d1b2347980aa28ccf891a3d("rcu-tasks: Pull sampling of ->percpu_dequeue_lim out of loop") was not merged]
Signed-off-by: liwei <liwei728(a)huawei.com>
---
kernel/rcu/tasks.h | 83 ++++++++++++++++++++++++++++++----------------
1 file changed, 54 insertions(+), 29 deletions(-)
diff --git a/kernel/rcu/tasks.h b/kernel/rcu/tasks.h
index df81506cf2bd..fbfa0f90f884 100644
--- a/kernel/rcu/tasks.h
+++ b/kernel/rcu/tasks.h
@@ -33,6 +33,7 @@ typedef void (*postgp_func_t)(struct rcu_tasks *rtp);
* @barrier_q_head: RCU callback for barrier operation.
* @rtp_blkd_tasks: List of tasks blocked as readers.
* @cpu: CPU number corresponding to this entry.
+ * @index: Index of this CPU in rtpcp_array of the rcu_tasks structure.
* @rtpp: Pointer to the rcu_tasks structure.
*/
struct rcu_tasks_percpu {
@@ -47,6 +48,7 @@ struct rcu_tasks_percpu {
struct rcu_head barrier_q_head;
struct list_head rtp_blkd_tasks;
int cpu;
+ int index;
struct rcu_tasks *rtpp;
};
@@ -73,6 +75,7 @@ struct rcu_tasks_percpu {
* @postgp_func: This flavor's post-grace-period function (optional).
* @call_func: This flavor's call_rcu()-equivalent function.
* @rtpcpu: This flavor's rcu_tasks_percpu structure.
+ * @rtpcp_array: Array of pointers to rcu_tasks_percpu structure of CPUs in cpu_possible_mask.
* @percpu_enqueue_shift: Shift down CPU ID this much when enqueuing callbacks.
* @percpu_enqueue_lim: Number of per-CPU callback queues in use for enqueuing.
* @percpu_dequeue_lim: Number of per-CPU callback queues in use for dequeuing.
@@ -106,6 +109,7 @@ struct rcu_tasks {
postgp_func_t postgp_func;
call_rcu_func_t call_func;
struct rcu_tasks_percpu __percpu *rtpcpu;
+ struct rcu_tasks_percpu **rtpcp_array;
int percpu_enqueue_shift;
int percpu_enqueue_lim;
int percpu_dequeue_lim;
@@ -179,6 +183,8 @@ module_param(rcu_task_collapse_lim, int, 0444);
static int rcu_task_lazy_lim __read_mostly = 32;
module_param(rcu_task_lazy_lim, int, 0444);
+static int rcu_task_cpu_ids;
+
/* RCU tasks grace-period state for debugging. */
#define RTGS_INIT 0
#define RTGS_WAIT_WAIT_CBS 1
@@ -243,6 +249,8 @@ static void cblist_init_generic(struct rcu_tasks *rtp)
unsigned long flags;
int lim;
int shift;
+ int maxcpu;
+ int index = 0;
if (rcu_task_enqueue_lim < 0) {
rcu_task_enqueue_lim = 1;
@@ -252,14 +260,9 @@ static void cblist_init_generic(struct rcu_tasks *rtp)
}
lim = rcu_task_enqueue_lim;
- if (lim > nr_cpu_ids)
- lim = nr_cpu_ids;
- shift = ilog2(nr_cpu_ids / lim);
- if (((nr_cpu_ids - 1) >> shift) >= lim)
- shift++;
- WRITE_ONCE(rtp->percpu_enqueue_shift, shift);
- WRITE_ONCE(rtp->percpu_dequeue_lim, lim);
- smp_store_release(&rtp->percpu_enqueue_lim, lim);
+ rtp->rtpcp_array = kcalloc(num_possible_cpus(), sizeof(struct rcu_tasks_percpu *), GFP_KERNEL);
+ BUG_ON(!rtp->rtpcp_array);
+
for_each_possible_cpu(cpu) {
struct rcu_tasks_percpu *rtpcp = per_cpu_ptr(rtp->rtpcpu, cpu);
@@ -273,12 +276,28 @@ static void cblist_init_generic(struct rcu_tasks *rtp)
INIT_WORK(&rtpcp->rtp_work, rcu_tasks_invoke_cbs_wq);
rtpcp->cpu = cpu;
rtpcp->rtpp = rtp;
+ rtpcp->index = index;
+ rtp->rtpcp_array[index] = rtpcp;
+ index++;
if (!rtpcp->rtp_blkd_tasks.next)
INIT_LIST_HEAD(&rtpcp->rtp_blkd_tasks);
+
+ maxcpu = cpu;
}
- pr_info("%s: Setting shift to %d and lim to %d rcu_task_cb_adjust=%d.\n", rtp->name,
- data_race(rtp->percpu_enqueue_shift), data_race(rtp->percpu_enqueue_lim), rcu_task_cb_adjust);
+ rcu_task_cpu_ids = maxcpu + 1;
+ if (lim > rcu_task_cpu_ids)
+ lim = rcu_task_cpu_ids;
+ shift = ilog2(rcu_task_cpu_ids / lim);
+ if (((rcu_task_cpu_ids - 1) >> shift) >= lim)
+ shift++;
+ WRITE_ONCE(rtp->percpu_enqueue_shift, shift);
+ WRITE_ONCE(rtp->percpu_dequeue_lim, lim);
+ smp_store_release(&rtp->percpu_enqueue_lim, lim);
+
+ pr_info("%s: Setting shift to %d and lim to %d rcu_task_cb_adjust=%d rcu_task_cpu_ids=%d.\n",
+ rtp->name, data_race(rtp->percpu_enqueue_shift), data_race(rtp->percpu_enqueue_lim),
+ rcu_task_cb_adjust, rcu_task_cpu_ids);
}
// Compute wakeup time for lazy callback timer.
@@ -346,7 +365,7 @@ static void call_rcu_tasks_generic(struct rcu_head *rhp, rcu_callback_t func,
rtpcp->rtp_n_lock_retries = 0;
}
if (rcu_task_cb_adjust && ++rtpcp->rtp_n_lock_retries > rcu_task_contend_lim &&
- READ_ONCE(rtp->percpu_enqueue_lim) != nr_cpu_ids)
+ READ_ONCE(rtp->percpu_enqueue_lim) != rcu_task_cpu_ids)
needadjust = true; // Defer adjustment to avoid deadlock.
}
// Queuing callbacks before initialization not yet supported.
@@ -366,10 +385,10 @@ static void call_rcu_tasks_generic(struct rcu_head *rhp, rcu_callback_t func,
raw_spin_unlock_irqrestore_rcu_node(rtpcp, flags);
if (unlikely(needadjust)) {
raw_spin_lock_irqsave(&rtp->cbs_gbl_lock, flags);
- if (rtp->percpu_enqueue_lim != nr_cpu_ids) {
+ if (rtp->percpu_enqueue_lim != rcu_task_cpu_ids) {
WRITE_ONCE(rtp->percpu_enqueue_shift, 0);
- WRITE_ONCE(rtp->percpu_dequeue_lim, nr_cpu_ids);
- smp_store_release(&rtp->percpu_enqueue_lim, nr_cpu_ids);
+ WRITE_ONCE(rtp->percpu_dequeue_lim, rcu_task_cpu_ids);
+ smp_store_release(&rtp->percpu_enqueue_lim, rcu_task_cpu_ids);
pr_info("Switching %s to per-CPU callback queuing.\n", rtp->name);
}
raw_spin_unlock_irqrestore(&rtp->cbs_gbl_lock, flags);
@@ -440,6 +459,8 @@ static int rcu_tasks_need_gpcb(struct rcu_tasks *rtp)
int needgpcb = 0;
for (cpu = 0; cpu < smp_load_acquire(&rtp->percpu_dequeue_lim); cpu++) {
+ if (!cpu_possible(cpu))
+ continue;
struct rcu_tasks_percpu *rtpcp = per_cpu_ptr(rtp->rtpcpu, cpu);
/* Advance and accelerate any new callbacks. */
@@ -477,7 +498,7 @@ static int rcu_tasks_need_gpcb(struct rcu_tasks *rtp)
if (rcu_task_cb_adjust && ncbs <= rcu_task_collapse_lim) {
raw_spin_lock_irqsave(&rtp->cbs_gbl_lock, flags);
if (rtp->percpu_enqueue_lim > 1) {
- WRITE_ONCE(rtp->percpu_enqueue_shift, order_base_2(nr_cpu_ids));
+ WRITE_ONCE(rtp->percpu_enqueue_shift, order_base_2(rcu_task_cpu_ids));
smp_store_release(&rtp->percpu_enqueue_lim, 1);
rtp->percpu_dequeue_gpseq = get_state_synchronize_rcu();
gpdone = false;
@@ -492,7 +513,9 @@ static int rcu_tasks_need_gpcb(struct rcu_tasks *rtp)
pr_info("Completing switch %s to CPU-0 callback queuing.\n", rtp->name);
}
if (rtp->percpu_dequeue_lim == 1) {
- for (cpu = rtp->percpu_dequeue_lim; cpu < nr_cpu_ids; cpu++) {
+ for (cpu = rtp->percpu_dequeue_lim; cpu < rcu_task_cpu_ids; cpu++) {
+ if (!cpu_possible(cpu))
+ continue;
struct rcu_tasks_percpu *rtpcp = per_cpu_ptr(rtp->rtpcpu, cpu);
WARN_ON_ONCE(rcu_segcblist_n_cbs(&rtpcp->cblist));
@@ -507,30 +530,32 @@ static int rcu_tasks_need_gpcb(struct rcu_tasks *rtp)
// Advance callbacks and invoke any that are ready.
static void rcu_tasks_invoke_cbs(struct rcu_tasks *rtp, struct rcu_tasks_percpu *rtpcp)
{
- int cpu;
- int cpunext;
int cpuwq;
unsigned long flags;
int len;
+ int index;
struct rcu_head *rhp;
struct rcu_cblist rcl = RCU_CBLIST_INITIALIZER(rcl);
struct rcu_tasks_percpu *rtpcp_next;
- cpu = rtpcp->cpu;
- cpunext = cpu * 2 + 1;
- if (cpunext < smp_load_acquire(&rtp->percpu_dequeue_lim)) {
- rtpcp_next = per_cpu_ptr(rtp->rtpcpu, cpunext);
- cpuwq = rcu_cpu_beenfullyonline(cpunext) ? cpunext : WORK_CPU_UNBOUND;
- queue_work_on(cpuwq, system_wq, &rtpcp_next->rtp_work);
- cpunext++;
- if (cpunext < smp_load_acquire(&rtp->percpu_dequeue_lim)) {
- rtpcp_next = per_cpu_ptr(rtp->rtpcpu, cpunext);
- cpuwq = rcu_cpu_beenfullyonline(cpunext) ? cpunext : WORK_CPU_UNBOUND;
+ index = rtpcp->index * 2 + 1;
+ if (index < num_possible_cpus()) {
+ rtpcp_next = rtp->rtpcp_array[index];
+ if (rtpcp_next->cpu < smp_load_acquire(&rtp->percpu_dequeue_lim)) {
+ cpuwq = rcu_cpu_beenfullyonline(rtpcp_next->cpu) ? rtpcp_next->cpu : WORK_CPU_UNBOUND;
queue_work_on(cpuwq, system_wq, &rtpcp_next->rtp_work);
+ index++;
+ if (index < num_possible_cpus()) {
+ rtpcp_next = rtp->rtpcp_array[index];
+ if (rtpcp_next->cpu < smp_load_acquire(&rtp->percpu_dequeue_lim)) {
+ cpuwq = rcu_cpu_beenfullyonline(rtpcp_next->cpu) ? rtpcp_next->cpu : WORK_CPU_UNBOUND;
+ queue_work_on(cpuwq, system_wq, &rtpcp_next->rtp_work);
+ }
+ }
}
}
- if (rcu_segcblist_empty(&rtpcp->cblist) || !cpu_possible(cpu))
+ if (rcu_segcblist_empty(&rtpcp->cblist))
return;
raw_spin_lock_irqsave_rcu_node(rtpcp, flags);
rcu_segcblist_advance(&rtpcp->cblist, rcu_seq_current(&rtp->tasks_gp_seq));
--
2.25.1
2
1

[PATCH openEuler-22.03-LTS-SP1] bpf, net: Fix a potential race in do_sock_getsockopt()
by Pu Lehui 07 Nov '24
by Pu Lehui 07 Nov '24
07 Nov '24
From: Tze-nan Wu <Tze-nan.Wu(a)mediatek.com>
mainline inclusion
from mainline-v6.11-rc7
commit 33f339a1ba54e56bba57ee9a77c71e385ab4825c
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/IB2EW4
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?…
--------------------------------
There's a potential race when `cgroup_bpf_enabled(CGROUP_GETSOCKOPT)` is
false during the execution of `BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN`, but
becomes true when `BPF_CGROUP_RUN_PROG_GETSOCKOPT` is called.
This inconsistency can lead to `BPF_CGROUP_RUN_PROG_GETSOCKOPT` receiving
an "-EFAULT" from `__cgroup_bpf_run_filter_getsockopt(max_optlen=0)`.
Scenario shown as below:
`process A` `process B`
----------- ------------
BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN
enable CGROUP_GETSOCKOPT
BPF_CGROUP_RUN_PROG_GETSOCKOPT (-EFAULT)
To resolve this, remove the `BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN` macro and
directly uses `copy_from_sockptr` to ensure that `max_optlen` is always
set before `BPF_CGROUP_RUN_PROG_GETSOCKOPT` is invoked.
Fixes: 0d01da6afc54 ("bpf: implement getsockopt and setsockopt hooks")
Co-developed-by: Yanghui Li <yanghui.li(a)mediatek.com>
Signed-off-by: Yanghui Li <yanghui.li(a)mediatek.com>
Co-developed-by: Cheng-Jui Wang <cheng-jui.wang(a)mediatek.com>
Signed-off-by: Cheng-Jui Wang <cheng-jui.wang(a)mediatek.com>
Signed-off-by: Tze-nan Wu <Tze-nan.Wu(a)mediatek.com>
Acked-by: Stanislav Fomichev <sdf(a)fomichev.me>
Acked-by: Alexei Starovoitov <ast(a)kernel.org>
Link: https://patch.msgid.link/20240830082518.23243-1-Tze-nan.Wu@mediatek.com
Signed-off-by: Jakub Kicinski <kuba(a)kernel.org>
Conflicts:
include/linux/bpf-cgroup.h
net/socket.c
[The conflicts were due to not merge commit 0b05b0cd78c9]
Signed-off-by: Pu Lehui <pulehui(a)huawei.com>
---
include/linux/bpf-cgroup.h | 9 ---------
net/socket.c | 4 ++--
2 files changed, 2 insertions(+), 11 deletions(-)
diff --git a/include/linux/bpf-cgroup.h b/include/linux/bpf-cgroup.h
index bf74485b6567..d9d5e38cfc82 100644
--- a/include/linux/bpf-cgroup.h
+++ b/include/linux/bpf-cgroup.h
@@ -432,14 +432,6 @@ int bpf_percpu_cgroup_storage_update(struct bpf_map *map, void *key,
__ret; \
})
-#define BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN(optlen) \
-({ \
- int __ret = 0; \
- if (cgroup_bpf_enabled(CGROUP_GETSOCKOPT)) \
- get_user(__ret, optlen); \
- __ret; \
-})
-
#define BPF_CGROUP_RUN_PROG_GETSOCKOPT(sock, level, optname, optval, optlen, \
max_optlen, retval) \
({ \
@@ -528,7 +520,6 @@ static inline int bpf_percpu_cgroup_storage_update(struct bpf_map *map,
#define BPF_CGROUP_RUN_PROG_SOCK_OPS(sock_ops) ({ 0; })
#define BPF_CGROUP_RUN_PROG_DEVICE_CGROUP(atype, major, minor, access) ({ 0; })
#define BPF_CGROUP_RUN_PROG_SYSCTL(head,table,write,buf,count,pos) ({ 0; })
-#define BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN(optlen) ({ 0; })
#define BPF_CGROUP_RUN_PROG_GETSOCKOPT(sock, level, optname, optval, \
optlen, max_optlen, retval) ({ retval; })
#define BPF_CGROUP_RUN_PROG_SETSOCKOPT(sock, level, optname, optval, optlen, \
diff --git a/net/socket.c b/net/socket.c
index 01d530af98ca..6fe73098df03 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -2148,7 +2148,7 @@ int __sys_getsockopt(int fd, int level, int optname, char __user *optval,
{
int err, fput_needed;
struct socket *sock;
- int max_optlen;
+ int max_optlen = 0;
sock = sockfd_lookup_light(fd, &err, &fput_needed);
if (!sock)
@@ -2159,7 +2159,7 @@ int __sys_getsockopt(int fd, int level, int optname, char __user *optval,
goto out_put;
if (!in_compat_syscall())
- max_optlen = BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN(optlen);
+ get_user(max_optlen, optlen);
if (level == SOL_SOCKET)
err = sock_getsockopt(sock, level, optname, optval, optlen);
--
2.34.1
2
1

07 Nov '24
From: Tze-nan Wu <Tze-nan.Wu(a)mediatek.com>
mainline inclusion
from mainline-v6.11-rc7
commit 33f339a1ba54e56bba57ee9a77c71e385ab4825c
category: bugfix
bugzilla: https://gitee.com/openeuler/kernel/issues/IB2EW4
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?…
--------------------------------
There's a potential race when `cgroup_bpf_enabled(CGROUP_GETSOCKOPT)` is
false during the execution of `BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN`, but
becomes true when `BPF_CGROUP_RUN_PROG_GETSOCKOPT` is called.
This inconsistency can lead to `BPF_CGROUP_RUN_PROG_GETSOCKOPT` receiving
an "-EFAULT" from `__cgroup_bpf_run_filter_getsockopt(max_optlen=0)`.
Scenario shown as below:
`process A` `process B`
----------- ------------
BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN
enable CGROUP_GETSOCKOPT
BPF_CGROUP_RUN_PROG_GETSOCKOPT (-EFAULT)
To resolve this, remove the `BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN` macro and
directly uses `copy_from_sockptr` to ensure that `max_optlen` is always
set before `BPF_CGROUP_RUN_PROG_GETSOCKOPT` is invoked.
Fixes: 0d01da6afc54 ("bpf: implement getsockopt and setsockopt hooks")
Co-developed-by: Yanghui Li <yanghui.li(a)mediatek.com>
Signed-off-by: Yanghui Li <yanghui.li(a)mediatek.com>
Co-developed-by: Cheng-Jui Wang <cheng-jui.wang(a)mediatek.com>
Signed-off-by: Cheng-Jui Wang <cheng-jui.wang(a)mediatek.com>
Signed-off-by: Tze-nan Wu <Tze-nan.Wu(a)mediatek.com>
Acked-by: Stanislav Fomichev <sdf(a)fomichev.me>
Acked-by: Alexei Starovoitov <ast(a)kernel.org>
Link: https://patch.msgid.link/20240830082518.23243-1-Tze-nan.Wu@mediatek.com
Signed-off-by: Jakub Kicinski <kuba(a)kernel.org>
Conflicts:
include/linux/bpf-cgroup.h
net/socket.c
[The conflicts were due to not merge commit 0b05b0cd78c9]
Signed-off-by: Pu Lehui <pulehui(a)huawei.com>
---
include/linux/bpf-cgroup.h | 9 ---------
net/socket.c | 4 ++--
2 files changed, 2 insertions(+), 11 deletions(-)
diff --git a/include/linux/bpf-cgroup.h b/include/linux/bpf-cgroup.h
index bf74485b6567..d9d5e38cfc82 100644
--- a/include/linux/bpf-cgroup.h
+++ b/include/linux/bpf-cgroup.h
@@ -432,14 +432,6 @@ int bpf_percpu_cgroup_storage_update(struct bpf_map *map, void *key,
__ret; \
})
-#define BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN(optlen) \
-({ \
- int __ret = 0; \
- if (cgroup_bpf_enabled(CGROUP_GETSOCKOPT)) \
- get_user(__ret, optlen); \
- __ret; \
-})
-
#define BPF_CGROUP_RUN_PROG_GETSOCKOPT(sock, level, optname, optval, optlen, \
max_optlen, retval) \
({ \
@@ -528,7 +520,6 @@ static inline int bpf_percpu_cgroup_storage_update(struct bpf_map *map,
#define BPF_CGROUP_RUN_PROG_SOCK_OPS(sock_ops) ({ 0; })
#define BPF_CGROUP_RUN_PROG_DEVICE_CGROUP(atype, major, minor, access) ({ 0; })
#define BPF_CGROUP_RUN_PROG_SYSCTL(head,table,write,buf,count,pos) ({ 0; })
-#define BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN(optlen) ({ 0; })
#define BPF_CGROUP_RUN_PROG_GETSOCKOPT(sock, level, optname, optval, \
optlen, max_optlen, retval) ({ retval; })
#define BPF_CGROUP_RUN_PROG_SETSOCKOPT(sock, level, optname, optval, optlen, \
diff --git a/net/socket.c b/net/socket.c
index 01d530af98ca..6fe73098df03 100644
--- a/net/socket.c
+++ b/net/socket.c
@@ -2148,7 +2148,7 @@ int __sys_getsockopt(int fd, int level, int optname, char __user *optval,
{
int err, fput_needed;
struct socket *sock;
- int max_optlen;
+ int max_optlen = 0;
sock = sockfd_lookup_light(fd, &err, &fput_needed);
if (!sock)
@@ -2159,7 +2159,7 @@ int __sys_getsockopt(int fd, int level, int optname, char __user *optval,
goto out_put;
if (!in_compat_syscall())
- max_optlen = BPF_CGROUP_GETSOCKOPT_MAX_OPTLEN(optlen);
+ get_user(max_optlen, optlen);
if (level == SOL_SOCKET)
err = sock_getsockopt(sock, level, optname, optval, optlen);
--
2.34.1
2
1

07 Nov '24
From: Yuri Karpov <YKarpov(a)ispras.ru>
stable inclusion
from stable-v5.10.158
commit 45752af0247589e6d3dede577415bfe117b4392c
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAYRDM
CVE: CVE-2022-49019
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id…
--------------------------------
[ Upstream commit 9256db4e45e8b497b0e993cc3ed4ad08eb2389b6 ]
In function nixge_hw_dma_bd_release() dereference of NULL pointer
priv->rx_bd_v is possible for the case of its allocation failure in
nixge_hw_dma_bd_init().
Move for() loop with priv->rx_bd_v dereference under the check for
its validity.
Found by Linux Verification Center (linuxtesting.org) with SVACE.
Fixes: 492caffa8a1a ("net: ethernet: nixge: Add support for National Instruments XGE netdev")
Signed-off-by: Yuri Karpov <YKarpov(a)ispras.ru>
Reviewed-by: Maciej Fijalkowski <maciej.fijalkowski(a)intel.com>
Signed-off-by: David S. Miller <davem(a)davemloft.net>
Signed-off-by: Sasha Levin <sashal(a)kernel.org>
Signed-off-by: Pu Lehui <pulehui(a)huawei.com>
---
drivers/net/ethernet/ni/nixge.c | 29 +++++++++++++++--------------
1 file changed, 15 insertions(+), 14 deletions(-)
diff --git a/drivers/net/ethernet/ni/nixge.c b/drivers/net/ethernet/ni/nixge.c
index 17205264c2c1..e5a4a2753e17 100644
--- a/drivers/net/ethernet/ni/nixge.c
+++ b/drivers/net/ethernet/ni/nixge.c
@@ -249,25 +249,26 @@ static void nixge_hw_dma_bd_release(struct net_device *ndev)
struct sk_buff *skb;
int i;
- for (i = 0; i < RX_BD_NUM; i++) {
- phys_addr = nixge_hw_dma_bd_get_addr(&priv->rx_bd_v[i],
- phys);
-
- dma_unmap_single(ndev->dev.parent, phys_addr,
- NIXGE_MAX_JUMBO_FRAME_SIZE,
- DMA_FROM_DEVICE);
-
- skb = (struct sk_buff *)(uintptr_t)
- nixge_hw_dma_bd_get_addr(&priv->rx_bd_v[i],
- sw_id_offset);
- dev_kfree_skb(skb);
- }
+ if (priv->rx_bd_v) {
+ for (i = 0; i < RX_BD_NUM; i++) {
+ phys_addr = nixge_hw_dma_bd_get_addr(&priv->rx_bd_v[i],
+ phys);
+
+ dma_unmap_single(ndev->dev.parent, phys_addr,
+ NIXGE_MAX_JUMBO_FRAME_SIZE,
+ DMA_FROM_DEVICE);
+
+ skb = (struct sk_buff *)(uintptr_t)
+ nixge_hw_dma_bd_get_addr(&priv->rx_bd_v[i],
+ sw_id_offset);
+ dev_kfree_skb(skb);
+ }
- if (priv->rx_bd_v)
dma_free_coherent(ndev->dev.parent,
sizeof(*priv->rx_bd_v) * RX_BD_NUM,
priv->rx_bd_v,
priv->rx_bd_p);
+ }
if (priv->tx_skb)
devm_kfree(ndev->dev.parent, priv->tx_skb);
--
2.34.1
2
1

[openeuler:OLK-6.6] BUILD REGRESSION 8edd62f80cd8e00a4ecb15f57010d8fdbff12e16
by kernel test robot 07 Nov '24
by kernel test robot 07 Nov '24
07 Nov '24
tree/branch: https://gitee.com/openeuler/kernel.git OLK-6.6
branch HEAD: 8edd62f80cd8e00a4ecb15f57010d8fdbff12e16 !13077 [openEuler-24.03-LTS][linux-6.6.y sync] Backport 6.6.54-6.6.55 LTS Patches
Error/Warning (recently discovered and may have been fixed):
https://lore.kernel.org/oe-kbuild/202411070817.MsBLoDva-lkp@intel.com
drivers/crypto/ccp/hygon/hct.c:1753:51: error: 'struct device' has no member named 'numa_node'
Unverified Error/Warning (likely false positive, kindly check if interested):
block/bdev.c:829 bdev_open_by_dev() warn: possible memory leak of 'handle'
Error/Warning ids grouped by kconfigs:
recent_errors
|-- arm64-allmodconfig
| |-- drivers-infiniband-hw-xsc-main.c:warning:no-previous-prototype-for-function-xsc_ib_reboot_event_handler
| |-- drivers-infiniband-hw-xsc-mr.c:warning:no-previous-prototype-for-function-xsc_get_mr_page_mode
| |-- drivers-infiniband-hw-xsc-private_dev.c:warning:variable-char_dev-set-but-not-used
| |-- drivers-infiniband-hw-xsc-qp.c:warning:variable-xsc_state-is-uninitialized-when-used-here
| |-- drivers-net-ethernet-huawei-hinic3-cqm-cqm_bitmap_table.c:error:a-randomized-struct-can-only-be-initialized-with-a-designated-initializer
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_channel-nbl_channel.c:warning:no-previous-prototype-for-function-nbl_chan_clean_queue_subtask
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_common-nbl_common.c:warning:variable-node_num-set-but-not-used
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom_length
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_serv_adjust_interrpt_param
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_flush_rx_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_get_vf_base_vsi_id
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_pldmfw_op_pci_match_record
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_stop_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:adding-int-to-a-string-does-not-append-to-the-string
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_insert_pp_ht
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_start_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_stop_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_set_mt_input
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_mgt_init_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_init_qid_map_table
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_remove_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_setup_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_txrx.c:warning:no-previous-prototype-for-function-nbl_alloc_tx_rings
| |-- drivers-net-ethernet-yunsilicon-xsc-net-main.c:warning:no-previous-prototype-for-function-set_feature_vlan_offload
| |-- drivers-net-ethernet-yunsilicon-xsc-net-main.c:warning:no-previous-prototype-for-function-xsc_net_reboot_event_handler
| |-- drivers-net-ethernet-yunsilicon-xsc-net-main.c:warning:no-previous-prototype-for-function-xsc_set_vf_link_state
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-anlt_fec_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-fpga_type_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-hps_ddr_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-ma_xbar_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-onchip_ft_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-pct_exp_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-pp_tbl_dma_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-rdma_icrc_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_hw_comm.c:warning:no-previous-prototype-for-function-xsc_hw_kernel_call
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_hw_comm.c:warning:variable-err-set-but-not-used
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-main.c:warning:no-previous-prototype-for-function-xsc_pci_reboot_event_handler
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-mr.c:warning:no-previous-prototype-for-function-xsc_dereg_mr_via_cmdq
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-mr.c:warning:no-previous-prototype-for-function-xsc_reg_mr_via_cmdq
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-mr.c:warning:no-previous-prototype-for-function-xsc_set_mpt_via_cmdq
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-mr.c:warning:no-previous-prototype-for-function-xsc_set_mtt_via_cmdq
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-vport.c:warning:variable-i-is-uninitialized-when-used-here
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_add_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_create
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_destroy
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_remove_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_update_hash_type
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_update_member_status
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_add_lag_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_board_lag_reset
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_board_lag_set
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_cmd_add_lag_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_cmd_remove_lag_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_cmd_update_lag_hash_type
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_cmd_update_lag_member_status
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_create_lag
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_destroy_lag
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_remove_lag_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_update_lag_hash_type
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_update_lag_member_status
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- arm64-randconfig-003-20241106
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- loongarch-allmodconfig
| |-- arch-loongarch-include-asm-irq.h:error:NR_VECTORS-undeclared-(first-use-in-this-function)
| |-- arch-loongarch-include-asm-irq.h:error:NR_VECTORS-undeclared-here-(not-in-a-function)
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
|-- loongarch-allnoconfig
| |-- arch-loongarch-include-asm-irq.h:error:NR_VECTORS-undeclared-here-(not-in-a-function)
| |-- arch-loongarch-kernel-efi.c:error:incompatible-types-when-assigning-to-type-pmd_t-from-type-int
| `-- drivers-irqchip-irq-loongson-eiointc.c:error:NODES_PER_FLATMODE_NODE-undeclared-(first-use-in-this-function)
|-- loongarch-randconfig-001-20241106
| |-- arch-loongarch-include-asm-irq.h:error:NR_VECTORS-undeclared-here-(not-in-a-function)
| |-- arch-loongarch-kvm-exit.c:error:struct-sched_info-has-no-member-named-run_delay
| |-- arch-loongarch-kvm-vcpu.c:error:struct-sched_info-has-no-member-named-run_delay
| `-- drivers-irqchip-irq-loongson-eiointc.c:error:NODES_PER_FLATMODE_NODE-undeclared-(first-use-in-this-function)
|-- loongarch-randconfig-002-20241106
| |-- arch-loongarch-include-asm-irq.h:error:NR_VECTORS-undeclared-(first-use-in-this-function)
| |-- arch-loongarch-include-asm-irq.h:error:NR_VECTORS-undeclared-here-(not-in-a-function)
| |-- arch-loongarch-kernel-efi.c:error:incompatible-types-when-assigning-to-type-pmd_t-from-type-int
| `-- drivers-irqchip-irq-loongson-eiointc.c:error:NODES_PER_FLATMODE_NODE-undeclared-(first-use-in-this-function)
|-- loongarch-randconfig-051-20241106
| |-- Documentation-devicetree-bindings-arm-arm-mpam-msc.yaml:error-string-value-is-redundantly-quoted-with-any-quotes-(quoted-strings)
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:Example-is-not-one-of-id-schema-title-description-examples-required-allOf-anyOf-oneOf-definitions-defs-additionalProperties-dependencies-dependent
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:id:Cannot-determine-base-path-from-id-relative-path-filename-doesn-t-match-actual-path-or-filename
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:ignoring-error-in-schema:properties:clocks:items
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:properties:clocks:anyOf-conditional-failed-one-must-be-fixed:
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:properties:clocks:items:anyOf-conditional-failed-one-must-be-fixed:
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:properties:clocks:oneOf-conditional-failed-one-must-be-fixed:
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:properties:reg:oneOf-conditional-failed-one-must-be-fixed:
| `-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:warning-wrong-indentation:expected-but-found-(indentation)
|-- loongarch-randconfig-052-20241106
| |-- Documentation-devicetree-bindings-arm-arm-mpam-msc.yaml:error-string-value-is-redundantly-quoted-with-any-quotes-(quoted-strings)
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:Example-is-not-one-of-id-schema-title-description-examples-required-allOf-anyOf-oneOf-definitions-defs-additionalProperties-dependencies-dependent
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:id:Cannot-determine-base-path-from-id-relative-path-filename-doesn-t-match-actual-path-or-filename
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:ignoring-error-in-schema:properties:clocks:items
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:properties:clocks:anyOf-conditional-failed-one-must-be-fixed:
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:properties:clocks:items:anyOf-conditional-failed-one-must-be-fixed:
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:properties:clocks:oneOf-conditional-failed-one-must-be-fixed:
| |-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:properties:reg:oneOf-conditional-failed-one-must-be-fixed:
| `-- Documentation-devicetree-bindings-gpu-phytium-dc.yaml:warning-wrong-indentation:expected-but-found-(indentation)
|-- x86_64-allnoconfig
| |-- Warning:drivers-net-ethernet-nebula-matrix-Kconfig-references-a-file-that-doesn-t-exist:file:Documentation-networking-device_drivers-ethernet-nebula-matrix-m18110.rst
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| `-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
|-- x86_64-allyesconfig
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- drivers-gpu-drm-amd-amdgpu-..-display-dc-dml-calcs-dcn_calc_auto.c:warning:stack-frame-size-()-exceeds-limit-()-in-mode_support_and_system_configuration
| |-- drivers-infiniband-hw-xsc-main.c:warning:no-previous-prototype-for-function-xsc_ib_reboot_event_handler
| |-- drivers-infiniband-hw-xsc-mr.c:warning:no-previous-prototype-for-function-xsc_get_mr_page_mode
| |-- drivers-infiniband-hw-xsc-private_dev.c:warning:variable-char_dev-set-but-not-used
| |-- drivers-infiniband-hw-xsc-qp.c:warning:variable-xsc_state-is-uninitialized-when-used-here
| |-- drivers-net-ethernet-huawei-hinic3-cqm-cqm_bitmap_table.c:error:a-randomized-struct-can-only-be-initialized-with-a-designated-initializer
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_channel-nbl_channel.c:warning:no-previous-prototype-for-function-nbl_chan_clean_queue_subtask
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_common-nbl_common.c:warning:variable-node_num-set-but-not-used
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom_length
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_serv_adjust_interrpt_param
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_flush_rx_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_get_vf_base_vsi_id
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_pldmfw_op_pci_match_record
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_stop_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:adding-int-to-a-string-does-not-append-to-the-string
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_insert_pp_ht
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_start_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_stop_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_set_mt_input
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_mgt_init_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_init_qid_map_table
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_remove_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_setup_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_txrx.c:warning:no-previous-prototype-for-function-nbl_alloc_tx_rings
| |-- drivers-net-ethernet-yunsilicon-xsc-net-main.c:warning:no-previous-prototype-for-function-set_feature_vlan_offload
| |-- drivers-net-ethernet-yunsilicon-xsc-net-main.c:warning:no-previous-prototype-for-function-xsc_net_reboot_event_handler
| |-- drivers-net-ethernet-yunsilicon-xsc-net-main.c:warning:no-previous-prototype-for-function-xsc_set_vf_link_state
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-anlt_fec_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-fpga_type_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-hps_ddr_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-ma_xbar_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-onchip_ft_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-pct_exp_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-pp_tbl_dma_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_eth_ethtool.c:warning:unused-variable-rdma_icrc_name
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_hw_comm.c:warning:no-previous-prototype-for-function-xsc_hw_kernel_call
| |-- drivers-net-ethernet-yunsilicon-xsc-net-xsc_hw_comm.c:warning:variable-err-set-but-not-used
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-main.c:warning:no-previous-prototype-for-function-xsc_pci_reboot_event_handler
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-mr.c:warning:no-previous-prototype-for-function-xsc_dereg_mr_via_cmdq
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-mr.c:warning:no-previous-prototype-for-function-xsc_reg_mr_via_cmdq
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-mr.c:warning:no-previous-prototype-for-function-xsc_set_mpt_via_cmdq
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-mr.c:warning:no-previous-prototype-for-function-xsc_set_mtt_via_cmdq
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-vport.c:warning:variable-i-is-uninitialized-when-used-here
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_add_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_create
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_destroy
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_remove_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_update_hash_type
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-pack_lag_update_member_status
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_add_lag_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_board_lag_reset
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_board_lag_set
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_cmd_add_lag_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_cmd_remove_lag_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_cmd_update_lag_hash_type
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_cmd_update_lag_member_status
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_create_lag
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_destroy_lag
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_remove_lag_member
| |-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_update_lag_hash_type
| `-- drivers-net-ethernet-yunsilicon-xsc-pci-xsc_lag.c:warning:no-previous-prototype-for-function-xsc_update_lag_member_status
|-- x86_64-buildonly-randconfig-001-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- x86_64-buildonly-randconfig-002-20241107
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
|-- x86_64-buildonly-randconfig-003-20241107
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
|-- x86_64-buildonly-randconfig-004-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| `-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
|-- x86_64-buildonly-randconfig-005-20241107
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
| `-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-kh40000_get_direct_dma_ops
|-- x86_64-buildonly-randconfig-006-20241107
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-kh40000_get_direct_dma_ops
| |-- drivers-crypto-ccp-hygon-hct.c:error:struct-device-has-no-member-named-numa_node
| |-- drivers-crypto-ccp-hygon-tdm-dev.c:error:invalid-use-of-undefined-type-struct-module
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
|-- x86_64-kexec
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| `-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
|-- x86_64-randconfig-001-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- x86_64-randconfig-002-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_channel-nbl_channel.c:warning:no-previous-prototype-for-function-nbl_chan_clean_queue_subtask
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_common-nbl_common.c:warning:variable-node_num-set-but-not-used
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom_length
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_serv_adjust_interrpt_param
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_flush_rx_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_get_vf_base_vsi_id
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_pldmfw_op_pci_match_record
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_stop_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:adding-int-to-a-string-does-not-append-to-the-string
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_insert_pp_ht
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_start_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_stop_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_set_mt_input
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_mgt_init_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_init_qid_map_table
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_remove_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_setup_qid_map_table_leonis
| `-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_txrx.c:warning:no-previous-prototype-for-function-nbl_alloc_tx_rings
|-- x86_64-randconfig-003-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_channel-nbl_channel.c:warning:no-previous-prototype-for-function-nbl_chan_clean_queue_subtask
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_common-nbl_common.c:warning:variable-node_num-set-but-not-used
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_dev_user.o:warning:objtool:nbl_dev_start_user_dev-falls-through-to-next-function-__cfi_nbl_mdev_device_release()
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom_length
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_serv_adjust_interrpt_param
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_flush_rx_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_get_vf_base_vsi_id
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_pldmfw_op_pci_match_record
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_stop_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:adding-int-to-a-string-does-not-append-to-the-string
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_insert_pp_ht
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_start_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_stop_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_set_mt_input
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_mgt_init_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_init_qid_map_table
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_remove_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_setup_qid_map_table_leonis
| `-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_txrx.c:warning:no-previous-prototype-for-function-nbl_alloc_tx_rings
|-- x86_64-randconfig-004-20241107
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-kh40000_get_direct_dma_ops
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
|-- x86_64-randconfig-005-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- x86_64-randconfig-006-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_channel-nbl_channel.c:warning:no-previous-prototype-for-function-nbl_chan_clean_queue_subtask
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_common-nbl_common.c:warning:variable-node_num-set-but-not-used
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom_length
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_serv_adjust_interrpt_param
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_flush_rx_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_get_vf_base_vsi_id
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_pldmfw_op_pci_match_record
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_stop_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:adding-int-to-a-string-does-not-append-to-the-string
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_insert_pp_ht
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_start_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_stop_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_set_mt_input
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_mgt_init_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_init_qid_map_table
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_remove_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_setup_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_txrx.c:warning:no-previous-prototype-for-function-nbl_alloc_tx_rings
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- x86_64-randconfig-011-20241107
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
| `-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-kh40000_get_direct_dma_ops
|-- x86_64-randconfig-012-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_channel-nbl_channel.c:warning:no-previous-prototype-for-function-nbl_chan_clean_queue_subtask
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_common-nbl_common.c:warning:variable-node_num-set-but-not-used
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom_length
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_serv_adjust_interrpt_param
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_flush_rx_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_get_vf_base_vsi_id
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_pldmfw_op_pci_match_record
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_stop_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:adding-int-to-a-string-does-not-append-to-the-string
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_insert_pp_ht
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_start_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_stop_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_set_mt_input
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_mgt_init_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_init_qid_map_table
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_remove_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_setup_qid_map_table_leonis
| `-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_txrx.c:warning:no-previous-prototype-for-function-nbl_alloc_tx_rings
|-- x86_64-randconfig-013-20241107
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-kh40000_get_direct_dma_ops
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
|-- x86_64-randconfig-014-20241107
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-kh40000_get_direct_dma_ops
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
|-- x86_64-randconfig-015-20241107
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-kh40000_get_direct_dma_ops
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
|-- x86_64-randconfig-016-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_channel-nbl_channel.c:warning:no-previous-prototype-for-function-nbl_chan_clean_queue_subtask
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_common-nbl_common.c:warning:variable-node_num-set-but-not-used
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom_length
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_serv_adjust_interrpt_param
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_flush_rx_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_get_vf_base_vsi_id
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_pldmfw_op_pci_match_record
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_stop_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:adding-int-to-a-string-does-not-append-to-the-string
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_insert_pp_ht
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_start_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_stop_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_set_mt_input
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_mgt_init_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_init_qid_map_table
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_remove_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_setup_qid_map_table_leonis
| `-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_txrx.c:warning:no-previous-prototype-for-function-nbl_alloc_tx_rings
|-- x86_64-randconfig-071-20241107
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_channel-nbl_channel.c:warning:no-previous-prototype-for-function-nbl_chan_clean_queue_subtask
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_common-nbl_common.c:warning:variable-node_num-set-but-not-used
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom_length
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_serv_adjust_interrpt_param
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_flush_rx_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_get_vf_base_vsi_id
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_pldmfw_op_pci_match_record
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_stop_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:adding-int-to-a-string-does-not-append-to-the-string
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_insert_pp_ht
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_start_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_stop_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_set_mt_input
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_mgt_init_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_init_qid_map_table
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_remove_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_setup_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_txrx.c:warning:no-previous-prototype-for-function-nbl_alloc_tx_rings
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- x86_64-randconfig-072-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_channel-nbl_channel.c:warning:no-previous-prototype-for-function-nbl_chan_clean_queue_subtask
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_common-nbl_common.c:warning:variable-node_num-set-but-not-used
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom_length
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_serv_adjust_interrpt_param
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_flush_rx_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_get_vf_base_vsi_id
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_pldmfw_op_pci_match_record
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_stop_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:adding-int-to-a-string-does-not-append-to-the-string
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_insert_pp_ht
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_start_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_stop_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_set_mt_input
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_mgt_init_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_init_qid_map_table
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_remove_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_setup_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_txrx.c:warning:no-previous-prototype-for-function-nbl_alloc_tx_rings
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- x86_64-randconfig-073-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| |-- drivers-net-ethernet-huawei-hinic-hinic_dcb.c:error:incomplete-definition-of-type-struct-ieee_ets
| |-- drivers-net-ethernet-huawei-hinic-hinic_dcb.c:error:incomplete-definition-of-type-struct-ieee_pfc
| |-- drivers-net-ethernet-huawei-hinic-hinic_dcb.c:error:invalid-application-of-sizeof-to-an-incomplete-type-struct-ieee_ets
| |-- drivers-net-ethernet-huawei-hinic-hinic_dcb.c:error:invalid-application-of-sizeof-to-an-incomplete-type-struct-ieee_pfc
| |-- drivers-net-ethernet-huawei-hinic-hinic_dcb.c:error:use-of-undeclared-identifier-DCB_ATTR_VALUE_UNDEFINED
| |-- drivers-net-ethernet-huawei-hinic-hinic_dcb.c:error:use-of-undeclared-identifier-DCB_CAP_DCBX_HOST
| |-- drivers-net-ethernet-huawei-hinic-hinic_dcb.c:error:use-of-undeclared-identifier-DCB_CAP_DCBX_VER_CEE
| |-- drivers-net-ethernet-huawei-hinic-hinic_lld.c:error:use-of-undeclared-identifier-disable_vf_load
| |-- drivers-net-ethernet-huawei-hinic-hinic_main.c:error:call-to-undeclared-function-vlan_dev_priv-ISO-C99-and-later-do-not-support-implicit-function-declarations
| |-- drivers-net-ethernet-huawei-hinic-hinic_main.c:error:member-reference-type-int-is-not-a-pointer
| |-- drivers-net-ethernet-huawei-hinic-hinic_main.c:error:no-member-named-dcbnl_ops-in-struct-net_device
| |-- drivers-net-ethernet-huawei-hinic-hinic_nic_dev.h:error:field-has-incomplete-type-struct-ieee_ets
| |-- drivers-net-ethernet-huawei-hinic-hinic_nic_dev.h:error:field-has-incomplete-type-struct-ieee_pfc
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_channel-nbl_channel.c:warning:no-previous-prototype-for-function-nbl_chan_clean_queue_subtask
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_common-nbl_common.c:warning:variable-node_num-set-but-not-used
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_dev_user.o:warning:objtool:nbl_dev_start_user_dev-falls-through-to-next-function-__cfi_nbl_mdev_device_release()
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom_length
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_serv_adjust_interrpt_param
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_flush_rx_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_get_vf_base_vsi_id
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_pldmfw_op_pci_match_record
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_stop_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:adding-int-to-a-string-does-not-append-to-the-string
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_insert_pp_ht
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_start_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_stop_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_set_mt_input
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_mgt_init_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_init_qid_map_table
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_remove_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_setup_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_txrx.c:warning:no-previous-prototype-for-function-nbl_alloc_tx_rings
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- x86_64-randconfig-074-20241107
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
| `-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-kh40000_get_direct_dma_ops
|-- x86_64-randconfig-075-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- x86_64-randconfig-076-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_channel-nbl_channel.c:warning:no-previous-prototype-for-function-nbl_chan_clean_queue_subtask
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_common-nbl_common.c:warning:variable-node_num-set-but-not-used
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_dev_user.o:warning:objtool:nbl_dev_start_user_dev-falls-through-to-next-function-__cfi_nbl_mdev_device_release()
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_get_eeprom_length
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_ethtool.c:warning:no-previous-prototype-for-function-nbl_serv_adjust_interrpt_param
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_flush_rx_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_get_vf_base_vsi_id
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_pldmfw_op_pci_match_record
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_queues
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_setup_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_core-nbl_service.c:warning:no-previous-prototype-for-function-nbl_serv_stop_rings
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:adding-int-to-a-string-does-not-append-to-the-string
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_insert_pp_ht
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_start_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_mgt_stop_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_set_mt_input
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_flow_leonis.c:warning:no-previous-prototype-for-function-nbl_flow_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_mgt_init_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_remove_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_queue_setup_ops_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_init_qid_map_table
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_remove_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_hw_leonis-nbl_queue_leonis.c:warning:no-previous-prototype-for-function-nbl_res_queue_setup_qid_map_table_leonis
| |-- drivers-net-ethernet-nebula-matrix-nbl-nbl_hw-nbl_txrx.c:warning:no-previous-prototype-for-function-nbl_alloc_tx_rings
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- x86_64-randconfig-101-20241107
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
| `-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-kh40000_get_direct_dma_ops
|-- x86_64-randconfig-102-20241107
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-kh40000_get_direct_dma_ops
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
|-- x86_64-randconfig-103-20241107
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_cpu_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_mmio_init
| |-- arch-x86-events-zhaoxin-uncore.c:warning:no-previous-prototype-for-function-kx7000_uncore_pci_init
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
| |-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-function-kh40000_get_direct_dma_ops
| `-- kernel-dma-contiguous.c:warning:no-previous-prototype-for-function-is_zhaoxin_kh40000
|-- x86_64-randconfig-161-20241106
| `-- block-bdev.c-bdev_open_by_dev()-warn:possible-memory-leak-of-handle
`-- x86_64-randconfig-161-20241107
|-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-is_zhaoxin_kh40000
|-- arch-x86-kernel-early-quirks.c:warning:no-previous-prototype-for-kh40000_get_direct_dma_ops
|-- drivers-hv-hv_common.c-(null)()-warn:(struct-ctl_table)-proc_handler-cannot-be-NULL.-Expression:hv_ctl_table-proc_handler
|-- drivers-hv-hv_common.c-(null)()-warn:(struct-ctl_table)-procname-cannot-be-NULL.-Expression:hv_ctl_table-procname
|-- fs-resctrl-monitor.c-resctrl_find_cleanest_closid()-warn:iterator-i-not-incremented
|-- fs-sysctls.c-(null)()-warn:(struct-ctl_table)-proc_handler-cannot-be-NULL.-Expression:fs_shared_sysctls-proc_handler
|-- fs-sysctls.c-(null)()-warn:(struct-ctl_table)-procname-cannot-be-NULL.-Expression:fs_shared_sysctls-procname
|-- mm-page_alloc.c-check_after_alloc()-warn:bitwise-AND-condition-is-false-here
|-- mm-page_alloc.c-prepare_before_alloc()-warn:bitwise-AND-condition-is-false-here
`-- mm-readahead.c-page_cache_sync_ra()-warn:bitwise-AND-condition-is-false-here
elapsed time: 724m
configs tested: 39
configs skipped: 122
tested configs:
arm64 allmodconfig clang-20
arm64 allnoconfig gcc-14.2.0
arm64 randconfig-001-20241106 gcc-14.2.0
arm64 randconfig-002-20241106 gcc-14.2.0
arm64 randconfig-003-20241106 clang-20
arm64 randconfig-004-20241106 clang-20
loongarch allmodconfig gcc-14.2.0
loongarch allnoconfig gcc-14.2.0
loongarch randconfig-001-20241106 gcc-14.2.0
loongarch randconfig-002-20241106 gcc-14.2.0
x86_64 allnoconfig clang-19
x86_64 allyesconfig clang-19
x86_64 buildonly-randconfig-001-20241107 clang-19
x86_64 buildonly-randconfig-002-20241107 gcc-12
x86_64 buildonly-randconfig-003-20241107 gcc-12
x86_64 buildonly-randconfig-004-20241107 clang-19
x86_64 buildonly-randconfig-005-20241107 gcc-12
x86_64 buildonly-randconfig-006-20241107 gcc-12
x86_64 defconfig gcc-11
x86_64 kexec clang-19
x86_64 randconfig-001-20241107 clang-19
x86_64 randconfig-002-20241107 clang-19
x86_64 randconfig-003-20241107 clang-19
x86_64 randconfig-004-20241107 gcc-12
x86_64 randconfig-005-20241107 clang-19
x86_64 randconfig-006-20241107 clang-19
x86_64 randconfig-011-20241107 gcc-12
x86_64 randconfig-012-20241107 clang-19
x86_64 randconfig-013-20241107 gcc-12
x86_64 randconfig-014-20241107 gcc-12
x86_64 randconfig-015-20241107 gcc-12
x86_64 randconfig-016-20241107 clang-19
x86_64 randconfig-071-20241107 clang-19
x86_64 randconfig-072-20241107 clang-19
x86_64 randconfig-073-20241107 clang-19
x86_64 randconfig-074-20241107 gcc-12
x86_64 randconfig-075-20241107 clang-19
x86_64 randconfig-076-20241107 clang-19
x86_64 rhel-8.3 gcc-12
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 1231/1231] arch/arm64/kernel/mpam/mpam_resctrl.c:1741:19: warning: variable 'times' set but not used
by kernel test robot 07 Nov '24
by kernel test robot 07 Nov '24
07 Nov '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: e33ed48bc600febcdca9e71e43cf224934dadc4f
commit: e0aed913079d6b30aafeb50318f26d49bfb3d95b [1231/1231] arm64/mpam: resctrl: Add rmid file in resctrl sysfs
config: arm64-randconfig-001-20241029 (https://download.01.org/0day-ci/archive/20241107/202411070826.nwr0luMf-lkp@…)
compiler: aarch64-linux-gcc (GCC) 14.1.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241107/202411070826.nwr0luMf-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/202411070826.nwr0luMf-lkp@intel.com/
All warnings (new ones prefixed by >>):
arch/arm64/kernel/mpam/mpam_resctrl.c:221:1: warning: conflicting types for 'mpam_get_raw_resctrl_resource' due to enum/integer mismatch; have 'struct raw_resctrl_resource *(enum resctrl_resource_level)' [-Wenum-int-mismatch]
221 | mpam_get_raw_resctrl_resource(enum resctrl_resource_level level)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from arch/arm64/kernel/mpam/mpam_resctrl.c:48:
arch/arm64/kernel/mpam/mpam_internal.h:327:1: note: previous declaration of 'mpam_get_raw_resctrl_resource' with type 'struct raw_resctrl_resource *(u32)' {aka 'struct raw_resctrl_resource *(unsigned int)'}
327 | mpam_get_raw_resctrl_resource(u32 level);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
arch/arm64/kernel/mpam/mpam_resctrl.c:525:5: warning: no previous prototype for 'closid_bitmap_init' [-Wmissing-prototypes]
525 | int closid_bitmap_init(void)
| ^~~~~~~~~~~~~~~~~~
arch/arm64/kernel/mpam/mpam_resctrl.c:1319:5: warning: no previous prototype for 'cpus_ctrl_write' [-Wmissing-prototypes]
1319 | int cpus_ctrl_write(struct rdtgroup *rdtgrp, cpumask_var_t newmask,
| ^~~~~~~~~~~~~~~
arch/arm64/kernel/mpam/mpam_resctrl.c:1374:5: warning: no previous prototype for 'cpus_mon_write' [-Wmissing-prototypes]
1374 | int cpus_mon_write(struct rdtgroup *rdtgrp, cpumask_var_t newmask,
| ^~~~~~~~~~~~~~
arch/arm64/kernel/mpam/mpam_resctrl.c: In function 'rdt_last_cmd_printf':
arch/arm64/kernel/mpam/mpam_resctrl.c:1554:9: warning: function 'rdt_last_cmd_printf' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
1554 | seq_buf_vprintf(&last_cmd_status, fmt, ap);
| ^~~~~~~~~~~~~~~
arch/arm64/kernel/mpam/mpam_resctrl.c: In function 'resctrl_group_rmid_show':
>> arch/arm64/kernel/mpam/mpam_resctrl.c:1741:19: warning: variable 'times' set but not used [-Wunused-but-set-variable]
1741 | u32 flag, times;
| ^~~~~
arch/arm64/kernel/mpam/mpam_resctrl.c: In function 'mpam_resctrl_update_component_cfg':
arch/arm64/kernel/mpam/mpam_resctrl.c:2083:25: warning: implicit conversion from 'enum resctrl_ctrl_type' to 'enum rdt_event_id' [-Wenum-conversion]
2083 | type, slave_mpam_cfg);
| ^~~~
arch/arm64/kernel/mpam/mpam_resctrl.c:570: warning: Function parameter or member 'cols' not described in 'rmid_transform'
vim +/times +1741 arch/arm64/kernel/mpam/mpam_resctrl.c
1735
1736 static int resctrl_group_rmid_show(struct kernfs_open_file *of,
1737 struct seq_file *s, void *v)
1738 {
1739 int ret = 0;
1740 struct rdtgroup *rdtgrp;
> 1741 u32 flag, times;
1742
1743 hw_alloc_times_validate(times, flag);
1744
1745 rdtgrp = resctrl_group_kn_lock_live(of->kn);
1746 if (rdtgrp) {
1747 if (flag)
1748 seq_printf(s, "%u-%u\n", rdtgrp->mon.rmid,
1749 rdtgrp->mon.rmid + 1);
1750 else
1751 seq_printf(s, "%u\n", rdtgrp->mon.rmid);
1752 } else
1753 ret = -ENOENT;
1754 resctrl_group_kn_unlock(of->kn);
1755
1756 return ret;
1757 }
1758
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 1225/1225] drivers/base/regmap/regmap.o: warning: objtool: _regmap_raw_read()+0x247: unreachable instruction
by kernel test robot 07 Nov '24
by kernel test robot 07 Nov '24
07 Nov '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: e33ed48bc600febcdca9e71e43cf224934dadc4f
commit: d98c83e735e83721d3f995fe2bd190cf8aec8d78 [1225/1225] regmap: fix NULL deref on lookup
config: x86_64-buildonly-randconfig-002-20241028 (https://download.01.org/0day-ci/archive/20241107/202411070506.bB360ucR-lkp@…)
compiler: clang version 19.1.2 (https://github.com/llvm/llvm-project 7ba7d8e2f7b6445b60679da826210cdde29eaf8b)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241107/202411070506.bB360ucR-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/202411070506.bB360ucR-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/base/regmap/regmap.o: warning: objtool: _regmap_raw_read()+0x247: unreachable instruction
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:openEuler-1.0-LTS 1225/1225] drivers/hwmon/k10temp.o: warning: objtool: read_tempreg_nb_zen()+0x11b: unreachable instruction
by kernel test robot 07 Nov '24
by kernel test robot 07 Nov '24
07 Nov '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS
head: e33ed48bc600febcdca9e71e43cf224934dadc4f
commit: c230f66f19ad44afbef0bbf2a49c0168a5211f37 [1225/1225] hwmon: (k10temp) Create common functions and macros for Zen CPU families
config: x86_64-buildonly-randconfig-002-20241028 (https://download.01.org/0day-ci/archive/20241107/202411070216.fFHEZGdK-lkp@…)
compiler: clang version 19.1.2 (https://github.com/llvm/llvm-project 7ba7d8e2f7b6445b60679da826210cdde29eaf8b)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241107/202411070216.fFHEZGdK-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/202411070216.fFHEZGdK-lkp@intel.com/
All warnings (new ones prefixed by >>):
>> drivers/hwmon/k10temp.o: warning: objtool: read_tempreg_nb_zen()+0x11b: unreachable instruction
drivers/hwmon/k10temp.o: warning: objtool: missing symbol for section .init.text
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0