Kernel
Threads by month
- ----- 2025 -----
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- 51 participants
- 18724 discussions
v1->v2: Fix compile error.
This part include:
1. Compatible with memory reliable feature[1-3].
2. Compatible with memory migration[4]
3. Fix an incorrect set of subpool[5].
4. Make the lock in dynamic pool irq safe[6].
Liu Shixin (6):
mm/dynamic_pool: Stop alloc reliable page from dynamic pool
mm/mem_reliable: Treat page from dhugetlb pool as unreliable page
mm/mem_reliable: Fallback to dpool if reliable memory is not enough
mm/dynamic_pool: skip unexpected migration
mm/dynamic_pool: don't set subpool for page from dynamic pool
mm/dynamic_pool: disable irq for dynamic_pool lock
include/linux/dynamic_pool.h | 6 ++
include/linux/mem_reliable.h | 3 +
mm/compaction.c | 4 ++
mm/dynamic_pool.c | 112 +++++++++++++++++++----------------
mm/hugetlb.c | 3 +-
mm/migrate.c | 7 +++
mm/page_alloc.c | 27 +++++++++
mm/page_isolation.c | 9 ++-
8 files changed, 118 insertions(+), 53 deletions(-)
--
2.25.1
2
7

[PATCH openEuler-1.0-LTS] btrfs: don't abort filesystem when attempting to snapshot deleted subvolume
by Long Li 29 Mar '24
by Long Li 29 Mar '24
29 Mar '24
From: Omar Sandoval <osandov(a)fb.com>
mainline inclusion
from mainline-v6.7-rc5
commit 7081929ab2572920e94d70be3d332e5c9f97095a
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/I9BV23
CVE: NA
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?…
--------------------------------
If the source file descriptor to the snapshot ioctl refers to a deleted
subvolume, we get the following abort:
BTRFS: Transaction aborted (error -2)
WARNING: CPU: 0 PID: 833 at fs/btrfs/transaction.c:1875 create_pending_snapshot+0x1040/0x1190 [btrfs]
Modules linked in: pata_acpi btrfs ata_piix libata scsi_mod virtio_net blake2b_generic xor net_failover virtio_rng failover scsi_common rng_core raid6_pq libcrc32c
CPU: 0 PID: 833 Comm: t_snapshot_dele Not tainted 6.7.0-rc6 #2
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-1.fc39 04/01/2014
RIP: 0010:create_pending_snapshot+0x1040/0x1190 [btrfs]
RSP: 0018:ffffa09c01337af8 EFLAGS: 00010282
RAX: 0000000000000000 RBX: ffff9982053e7c78 RCX: 0000000000000027
RDX: ffff99827dc20848 RSI: 0000000000000001 RDI: ffff99827dc20840
RBP: ffffa09c01337c00 R08: 0000000000000000 R09: ffffa09c01337998
R10: 0000000000000003 R11: ffffffffb96da248 R12: fffffffffffffffe
R13: ffff99820535bb28 R14: ffff99820b7bd000 R15: ffff99820381ea80
FS: 00007fe20aadabc0(0000) GS:ffff99827dc00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000559a120b502f CR3: 00000000055b6000 CR4: 00000000000006f0
Call Trace:
<TASK>
? create_pending_snapshot+0x1040/0x1190 [btrfs]
? __warn+0x81/0x130
? create_pending_snapshot+0x1040/0x1190 [btrfs]
? report_bug+0x171/0x1a0
? handle_bug+0x3a/0x70
? exc_invalid_op+0x17/0x70
? asm_exc_invalid_op+0x1a/0x20
? create_pending_snapshot+0x1040/0x1190 [btrfs]
? create_pending_snapshot+0x1040/0x1190 [btrfs]
create_pending_snapshots+0x92/0xc0 [btrfs]
btrfs_commit_transaction+0x66b/0xf40 [btrfs]
btrfs_mksubvol+0x301/0x4d0 [btrfs]
btrfs_mksnapshot+0x80/0xb0 [btrfs]
__btrfs_ioctl_snap_create+0x1c2/0x1d0 [btrfs]
btrfs_ioctl_snap_create_v2+0xc4/0x150 [btrfs]
btrfs_ioctl+0x8a6/0x2650 [btrfs]
? kmem_cache_free+0x22/0x340
? do_sys_openat2+0x97/0xe0
__x64_sys_ioctl+0x97/0xd0
do_syscall_64+0x46/0xf0
entry_SYSCALL_64_after_hwframe+0x6e/0x76
RIP: 0033:0x7fe20abe83af
RSP: 002b:00007ffe6eff1360 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000004 RCX: 00007fe20abe83af
RDX: 00007ffe6eff23c0 RSI: 0000000050009417 RDI: 0000000000000003
RBP: 0000000000000003 R08: 0000000000000000 R09: 00007fe20ad16cd0
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007ffe6eff13c0 R14: 00007fe20ad45000 R15: 0000559a120b6d58
</TASK>
---[ end trace 0000000000000000 ]---
BTRFS: error (device vdc: state A) in create_pending_snapshot:1875: errno=-2 No such entry
BTRFS info (device vdc: state EA): forced readonly
BTRFS warning (device vdc: state EA): Skipping commit of aborted transaction.
BTRFS: error (device vdc: state EA) in cleanup_transaction:2055: errno=-2 No such entry
This happens because create_pending_snapshot() initializes the new root
item as a copy of the source root item. This includes the refs field,
which is 0 for a deleted subvolume. The call to btrfs_insert_root()
therefore inserts a root with refs == 0. btrfs_get_new_fs_root() then
finds the root and returns -ENOENT if refs == 0, which causes
create_pending_snapshot() to abort.
Fix it by checking the source root's refs before attempting the
snapshot, but after locking subvol_sem to avoid racing with deletion.
CC: stable(a)vger.kernel.org # 4.14+
Reviewed-by: Sweet Tea Dorminy <sweettea-kernel(a)dorminy.me>
Reviewed-by: Anand Jain <anand.jain(a)oracle.com>
Signed-off-by: Omar Sandoval <osandov(a)fb.com>
Reviewed-by: David Sterba <dsterba(a)suse.com>
Signed-off-by: David Sterba <dsterba(a)suse.com>
Conflict:
fs/btrfs/ioctl.c
Signed-off-by: Long Li <leo.lilong(a)huawei.com>
---
fs/btrfs/ioctl.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
index 00424d3f3464..178e49bd0060 100644
--- a/fs/btrfs/ioctl.c
+++ b/fs/btrfs/ioctl.c
@@ -768,6 +768,9 @@ static int create_snapshot(struct btrfs_root *root, struct inode *dir,
int ret;
bool snapshot_force_cow = false;
+ if (btrfs_root_refs(&root->root_item) == 0)
+ return -ENOENT;
+
if (!test_bit(BTRFS_ROOT_REF_COWS, &root->state))
return -EINVAL;
--
2.31.1
2
1

[PATCH OLK-5.10] btrfs: don't abort filesystem when attempting to snapshot deleted subvolume
by Long Li 29 Mar '24
by Long Li 29 Mar '24
29 Mar '24
From: Omar Sandoval <osandov(a)fb.com>
mainline inclusion
from mainline-v6.7-rc5
commit 7081929ab2572920e94d70be3d332e5c9f97095a
category: bugfix
bugzilla: https://gitee.com/src-openeuler/kernel/issues/I9BV23
CVE: CVE-2024-26644
Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?…
--------------------------------
If the source file descriptor to the snapshot ioctl refers to a deleted
subvolume, we get the following abort:
BTRFS: Transaction aborted (error -2)
WARNING: CPU: 0 PID: 833 at fs/btrfs/transaction.c:1875 create_pending_snapshot+0x1040/0x1190 [btrfs]
Modules linked in: pata_acpi btrfs ata_piix libata scsi_mod virtio_net blake2b_generic xor net_failover virtio_rng failover scsi_common rng_core raid6_pq libcrc32c
CPU: 0 PID: 833 Comm: t_snapshot_dele Not tainted 6.7.0-rc6 #2
Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.3-1.fc39 04/01/2014
RIP: 0010:create_pending_snapshot+0x1040/0x1190 [btrfs]
RSP: 0018:ffffa09c01337af8 EFLAGS: 00010282
RAX: 0000000000000000 RBX: ffff9982053e7c78 RCX: 0000000000000027
RDX: ffff99827dc20848 RSI: 0000000000000001 RDI: ffff99827dc20840
RBP: ffffa09c01337c00 R08: 0000000000000000 R09: ffffa09c01337998
R10: 0000000000000003 R11: ffffffffb96da248 R12: fffffffffffffffe
R13: ffff99820535bb28 R14: ffff99820b7bd000 R15: ffff99820381ea80
FS: 00007fe20aadabc0(0000) GS:ffff99827dc00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000559a120b502f CR3: 00000000055b6000 CR4: 00000000000006f0
Call Trace:
<TASK>
? create_pending_snapshot+0x1040/0x1190 [btrfs]
? __warn+0x81/0x130
? create_pending_snapshot+0x1040/0x1190 [btrfs]
? report_bug+0x171/0x1a0
? handle_bug+0x3a/0x70
? exc_invalid_op+0x17/0x70
? asm_exc_invalid_op+0x1a/0x20
? create_pending_snapshot+0x1040/0x1190 [btrfs]
? create_pending_snapshot+0x1040/0x1190 [btrfs]
create_pending_snapshots+0x92/0xc0 [btrfs]
btrfs_commit_transaction+0x66b/0xf40 [btrfs]
btrfs_mksubvol+0x301/0x4d0 [btrfs]
btrfs_mksnapshot+0x80/0xb0 [btrfs]
__btrfs_ioctl_snap_create+0x1c2/0x1d0 [btrfs]
btrfs_ioctl_snap_create_v2+0xc4/0x150 [btrfs]
btrfs_ioctl+0x8a6/0x2650 [btrfs]
? kmem_cache_free+0x22/0x340
? do_sys_openat2+0x97/0xe0
__x64_sys_ioctl+0x97/0xd0
do_syscall_64+0x46/0xf0
entry_SYSCALL_64_after_hwframe+0x6e/0x76
RIP: 0033:0x7fe20abe83af
RSP: 002b:00007ffe6eff1360 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 0000000000000004 RCX: 00007fe20abe83af
RDX: 00007ffe6eff23c0 RSI: 0000000050009417 RDI: 0000000000000003
RBP: 0000000000000003 R08: 0000000000000000 R09: 00007fe20ad16cd0
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007ffe6eff13c0 R14: 00007fe20ad45000 R15: 0000559a120b6d58
</TASK>
---[ end trace 0000000000000000 ]---
BTRFS: error (device vdc: state A) in create_pending_snapshot:1875: errno=-2 No such entry
BTRFS info (device vdc: state EA): forced readonly
BTRFS warning (device vdc: state EA): Skipping commit of aborted transaction.
BTRFS: error (device vdc: state EA) in cleanup_transaction:2055: errno=-2 No such entry
This happens because create_pending_snapshot() initializes the new root
item as a copy of the source root item. This includes the refs field,
which is 0 for a deleted subvolume. The call to btrfs_insert_root()
therefore inserts a root with refs == 0. btrfs_get_new_fs_root() then
finds the root and returns -ENOENT if refs == 0, which causes
create_pending_snapshot() to abort.
Fix it by checking the source root's refs before attempting the
snapshot, but after locking subvol_sem to avoid racing with deletion.
CC: stable(a)vger.kernel.org # 4.14+
Reviewed-by: Sweet Tea Dorminy <sweettea-kernel(a)dorminy.me>
Reviewed-by: Anand Jain <anand.jain(a)oracle.com>
Signed-off-by: Omar Sandoval <osandov(a)fb.com>
Reviewed-by: David Sterba <dsterba(a)suse.com>
Signed-off-by: David Sterba <dsterba(a)suse.com>
Conflict:
fs/btrfs/ioctl.c
Signed-off-by: Long Li <leo.lilong(a)huawei.com>
---
fs/btrfs/ioctl.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/fs/btrfs/ioctl.c b/fs/btrfs/ioctl.c
index 155ce045fabc..28337ebb061c 100644
--- a/fs/btrfs/ioctl.c
+++ b/fs/btrfs/ioctl.c
@@ -798,6 +798,9 @@ static int create_snapshot(struct btrfs_root *root, struct inode *dir,
struct btrfs_trans_handle *trans;
int ret;
+ if (btrfs_root_refs(&root->root_item) == 0)
+ return -ENOENT;
+
if (!test_bit(BTRFS_ROOT_SHAREABLE, &root->state))
return -EINVAL;
--
2.31.1
2
1
From: ZhangPeng <zhangpeng362(a)huawei.com>
maillist inclusion
category: performance
bugzilla: https://gitee.com/openeuler/kernel/issues/I9CKXN
CVE: NA
Reference: https://lore.kernel.org/all/20240327090835.3232629-1-zhangpeng362@huawei.co…
--------------------------------
When vma->vm_userfaultfd_ctx.ctx is NULL, vma->vm_flags should have
cleared __VM_UFFD_FLAGS. Therefore, there is no need to down_write or
clear the flag, which will affect fork performance. Fix this by
returning early if octx is NULL in dup_userfaultfd().
By applying this patch we can get a 1.3% performance improvement for
lmbench fork_prot. Results are as follows:
base early return
Process fork+exit: 419.1106 413.4804
Link: https://lkml.kernel.org/r/20240327090835.3232629-1-zhangpeng362@huawei.com
Signed-off-by: ZhangPeng <zhangpeng362(a)huawei.com>
Reviewed-by: Peter Xu <peterx(a)redhat.com>
Cc: Axel Rasmussen <axelrasmussen(a)google.com>
Cc: David Hildenbrand <david(a)redhat.com>
Cc: Kefeng Wang <wangkefeng.wang(a)huawei.com>
Cc: Liam R. Howlett <Liam.Howlett(a)oracle.com>
Cc: Lokesh Gidra <lokeshgidra(a)google.com>
Cc: Nanyong Sun <sunnanyong(a)huawei.com>
Cc: Suren Baghdasaryan <surenb(a)google.com>
Signed-off-by: Andrew Morton <akpm(a)linux-foundation.org>
Signed-off-by: ZhangPeng <zhangpeng362(a)huawei.com>
---
fs/userfaultfd.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/fs/userfaultfd.c b/fs/userfaultfd.c
index 4db4a6b8a4a3..789c8328b24a 100644
--- a/fs/userfaultfd.c
+++ b/fs/userfaultfd.c
@@ -707,7 +707,10 @@ int dup_userfaultfd(struct vm_area_struct *vma, struct list_head *fcs)
struct userfaultfd_fork_ctx *fctx;
octx = vma->vm_userfaultfd_ctx.ctx;
- if (!octx || !(octx->features & UFFD_FEATURE_EVENT_FORK)) {
+ if (!octx)
+ return 0;
+
+ if (!(octx->features & UFFD_FEATURE_EVENT_FORK)) {
vma_start_write(vma);
vma->vm_userfaultfd_ctx = NULL_VM_UFFD_CTX;
userfaultfd_set_vm_flags(vma, vma->vm_flags & ~__VM_UFFD_FLAGS);
--
2.25.1
2
1
From: JiangShui Yang <yangjiangshui(a)h-partners.com>
Longfang Liu (4):
vfio/migration: added map length page alignment
vfio/migration: bugfix some driver code
vfio/migration: add eq and aeq interruption restore
vfio/migration: bugfix cache write-back issue
Weili Qian (12):
crypto: hisilicon/qm - reset device before enabling it
crypto: hisilicon/qm - modify interrupt processing resource
application
crypto: hisilicon/qm - disable same error report before resetting
crypto: hisilicon/hpre - mask cluster timeout error
crypto: hisilicon/qm - obtain the mailbox configuration at one time
crypto: hisilicon/qm - fix the pf2vf timeout when global reset
crypto: hisilicon/qm - mask error bit before flr
crypto: hisilicon/qm - check device status before sending mailbox
crypto: hisilicon/qm - hardware error does not reset during
binding/unbinding
crypto: hisilicon/sec2: fix memory use-after-free issue
vfio/migration: remove unused local variable
hisi_acc_vfio_pci: obtain the mailbox configuration at one time
drivers/crypto/hisilicon/hpre/hpre_main.c | 85 ++-
drivers/crypto/hisilicon/qm.c | 679 +++++++++++-------
drivers/crypto/hisilicon/sec2/sec.h | 2 -
drivers/crypto/hisilicon/sec2/sec_crypto.c | 49 +-
drivers/crypto/hisilicon/sec2/sec_main.c | 49 +-
drivers/crypto/hisilicon/zip/zip_main.c | 51 +-
.../vfio/pci/hisilicon/hisi_acc_vfio_pci.c | 140 ++--
.../vfio/pci/hisilicon/hisi_acc_vfio_pci.h | 3 +
include/linux/hisi_acc_qm.h | 18 +-
9 files changed, 646 insertions(+), 430 deletions(-)
--
2.33.0
2
17

[openeuler:OLK-6.6 4065/7000] drivers/net/ethernet/huawei/hinic3/hw/hinic3_mgmt.c:995: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
by kernel test robot 29 Mar '24
by kernel test robot 29 Mar '24
29 Mar '24
tree: https://gitee.com/openeuler/kernel.git OLK-6.6
head: 704605877ce9913071214d2515a4c2b9077f5078
commit: dcb286ce50a35a77e51b61db72c7cc001647b598 [4065/7000] net/hinic3: add huawei/hinic3 driver
config: arm64-allmodconfig (https://download.01.org/0day-ci/archive/20240329/202403290935.d2CD8fUI-lkp@…)
compiler: clang version 19.0.0git (https://github.com/llvm/llvm-project 23de3862dce582ce91c1aa914467d982cb1a73b4)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240329/202403290935.d2CD8fUI-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/202403290935.d2CD8fUI-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from drivers/net/ethernet/huawei/hinic3/hw/hinic3_devlink.c:6:
In file included from include/linux/netlink.h:7:
In file included from include/linux/skbuff.h:17:
In file included from include/linux/bvec.h:10:
In file included from include/linux/highmem.h:8:
In file included from include/linux/cacheflush.h:5:
In file included from arch/arm64/include/asm/cacheflush.h:11:
In file included from include/linux/kgdb.h:19:
In file included from include/linux/kprobes.h:28:
In file included from include/linux/ftrace.h:13:
In file included from include/linux/kallsyms.h:13:
In file included from include/linux/mm.h:2193:
include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
509 | item];
| ~~~~
include/linux/vmstat.h:515:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
516 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
| ~~~~~~~~~~~ ^ ~~~
include/linux/vmstat.h:527:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
528 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:536:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
537 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/huawei/hinic3/hw/hinic3_devlink.c:350:18: warning: variable 'pdev' set but not used [-Wunused-but-set-variable]
350 | struct pci_dev *pdev = NULL;
| ^
6 warnings generated.
--
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:445: warning: Function parameter or member 'ctxt' not described in 'wait_for_resp_polling'
>> drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:445: warning: expecting prototype for prepare_cell(). Prototype was for wait_for_resp_polling() instead
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:459: warning: Function parameter or member 'ctxt' not described in 'wait_for_api_cmd_completion'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:459: warning: Function parameter or member 'ack' not described in 'wait_for_api_cmd_completion'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:459: warning: Function parameter or member 'ack_size' not described in 'wait_for_api_cmd_completion'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:519: warning: Function parameter or member 'cmd_size' not described in 'api_cmd'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:519: warning: Function parameter or member 'ack' not described in 'api_cmd'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:519: warning: Function parameter or member 'ack_size' not described in 'api_cmd'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:519: warning: Excess function parameter 'size' description in 'api_cmd'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:580: warning: Function parameter or member 'ack' not described in 'hinic3_api_cmd_read'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:580: warning: Function parameter or member 'ack_size' not described in 'hinic3_api_cmd_read'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:605: warning: Function parameter or member 'cmd_chain' not described in 'api_cmd_hw_restart'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:605: warning: Excess function parameter 'chain' description in 'api_cmd_hw_restart'
>> drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:825: warning: expecting prototype for alloc_cmd_buf(). Prototype was for alloc_resp_buf() instead
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:1095: warning: Function parameter or member 'cmd_chain' not described in 'api_cmd_create_chain'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:1095: warning: Excess function parameter 'chain' description in 'api_cmd_create_chain'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:1159: warning: Function parameter or member 'hwdev' not described in 'hinic3_api_cmd_init'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:1159: warning: Excess function parameter 'hwif' description in 'hinic3_api_cmd_init'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_api_cmd.c:1199: warning: Function parameter or member 'hwdev' not described in 'hinic3_api_cmd_free'
--
drivers/net/ethernet/huawei/hinic3/hw/hinic3_mgmt.c:167: warning: Function parameter or member 'ack_type' not described in 'prepare_header'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_mgmt.c:167: warning: Function parameter or member 'cmd' not described in 'prepare_header'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_mgmt.c:246: warning: Function parameter or member 'ack_type' not described in 'send_msg_to_mgmt_sync'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_mgmt.c:765: warning: Function parameter or member 'hwdev' not described in 'hinic3_mgmt_msg_aeqe_handler'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_mgmt.c:765: warning: Excess function parameter 'handle' description in 'hinic3_mgmt_msg_aeqe_handler'
>> drivers/net/ethernet/huawei/hinic3/hw/hinic3_mgmt.c:892: warning: expecting prototype for hinic_pf_to_mgmt_init(). Prototype was for hinic3_pf_to_mgmt_init() instead
>> drivers/net/ethernet/huawei/hinic3/hw/hinic3_mgmt.c:947: warning: expecting prototype for hinic_pf_to_mgmt_free(). Prototype was for hinic3_pf_to_mgmt_free() instead
>> drivers/net/ethernet/huawei/hinic3/hw/hinic3_mgmt.c:995: warning: This comment starts with '/**', but isn't a kernel-doc comment. Refer Documentation/doc-guide/kernel-doc.rst
* api cmd write or read bypass default use poll, if want to use aeq interrupt,
--
drivers/net/ethernet/huawei/hinic3/hw/hinic3_mbox.c:176: warning: Function parameter or member 'pri_handle' not described in 'hinic3_register_ppf_mbox_cb'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_mbox.c:203: warning: Function parameter or member 'pri_handle' not described in 'hinic3_register_pf_mbox_cb'
drivers/net/ethernet/huawei/hinic3/hw/hinic3_mbox.c:230: warning: Function parameter or member 'pri_handle' not described in 'hinic3_register_vf_mbox_cb'
>> drivers/net/ethernet/huawei/hinic3/hw/hinic3_mbox.c:279: warning: expecting prototype for hinic3_unregister_ppf_mbox_cb(). Prototype was for hinic3_unregister_pf_mbox_cb() instead
>> drivers/net/ethernet/huawei/hinic3/hw/hinic3_mbox.c:327: warning: expecting prototype for hinic3_unregister_ppf_mbox_cb(). Prototype was for hinic3_unregister_ppf_to_pf_mbox_cb() instead
vim +995 drivers/net/ethernet/huawei/hinic3/hw/hinic3_mgmt.c
885
886 /**
887 * hinic_pf_to_mgmt_init - initialize PF to MGMT channel
888 * @hwdev: the pointer to hw device
889 * Return: 0 - success, negative - failure
890 **/
891 int hinic3_pf_to_mgmt_init(struct hinic3_hwdev *hwdev)
> 892 {
893 struct hinic3_msg_pf_to_mgmt *pf_to_mgmt;
894 void *dev = hwdev->dev_hdl;
895 int err;
896
897 pf_to_mgmt = kzalloc(sizeof(*pf_to_mgmt), GFP_KERNEL);
898 if (!pf_to_mgmt)
899 return -ENOMEM;
900
901 hwdev->pf_to_mgmt = pf_to_mgmt;
902 pf_to_mgmt->hwdev = hwdev;
903 spin_lock_init(&pf_to_mgmt->async_msg_lock);
904 spin_lock_init(&pf_to_mgmt->sync_event_lock);
905 sema_init(&pf_to_mgmt->sync_msg_lock, 1);
906 pf_to_mgmt->workq = create_singlethread_workqueue(HINIC3_MGMT_WQ_NAME);
907 if (!pf_to_mgmt->workq) {
908 sdk_err(dev, "Failed to initialize MGMT workqueue\n");
909 err = -ENOMEM;
910 goto create_mgmt_workq_err;
911 }
912
913 err = alloc_msg_buf(pf_to_mgmt);
914 if (err) {
915 sdk_err(dev, "Failed to allocate msg buffers\n");
916 goto alloc_msg_buf_err;
917 }
918
919 err = hinic3_api_cmd_init(hwdev, pf_to_mgmt->cmd_chain);
920 if (err) {
921 sdk_err(dev, "Failed to init the api cmd chains\n");
922 goto api_cmd_init_err;
923 }
924
925 return 0;
926
927 api_cmd_init_err:
928 free_msg_buf(pf_to_mgmt);
929
930 alloc_msg_buf_err:
931 destroy_workqueue(pf_to_mgmt->workq);
932
933 create_mgmt_workq_err:
934 spin_lock_deinit(&pf_to_mgmt->sync_event_lock);
935 spin_lock_deinit(&pf_to_mgmt->async_msg_lock);
936 sema_deinit(&pf_to_mgmt->sync_msg_lock);
937 kfree(pf_to_mgmt);
938
939 return err;
940 }
941
942 /**
943 * hinic_pf_to_mgmt_free - free PF to MGMT channel
944 * @hwdev: the pointer to hw device
945 **/
946 void hinic3_pf_to_mgmt_free(struct hinic3_hwdev *hwdev)
> 947 {
948 struct hinic3_msg_pf_to_mgmt *pf_to_mgmt = hwdev->pf_to_mgmt;
949
950 /* destroy workqueue before free related pf_to_mgmt resources in case of
951 * illegal resource access
952 */
953 destroy_workqueue(pf_to_mgmt->workq);
954 hinic3_api_cmd_free(hwdev, pf_to_mgmt->cmd_chain);
955
956 free_msg_buf(pf_to_mgmt);
957 spin_lock_deinit(&pf_to_mgmt->sync_event_lock);
958 spin_lock_deinit(&pf_to_mgmt->async_msg_lock);
959 sema_deinit(&pf_to_mgmt->sync_msg_lock);
960 kfree(pf_to_mgmt);
961 }
962
963 void hinic3_flush_mgmt_workq(void *hwdev)
964 {
965 struct hinic3_hwdev *dev = (struct hinic3_hwdev *)hwdev;
966
967 flush_workqueue(dev->aeqs->workq);
968
969 if (hinic3_func_type(dev) != TYPE_VF)
970 flush_workqueue(dev->pf_to_mgmt->workq);
971 }
972
973 int hinic3_api_cmd_read_ack(void *hwdev, u8 dest, const void *cmd,
974 u16 size, void *ack, u16 ack_size)
975 {
976 struct hinic3_msg_pf_to_mgmt *pf_to_mgmt = NULL;
977 struct hinic3_api_cmd_chain *chain = NULL;
978
979 if (!hwdev || !cmd || (ack_size && !ack) || size > MAX_PF_MGMT_BUF_SIZE)
980 return -EINVAL;
981
982 if (!COMM_SUPPORT_API_CHAIN((struct hinic3_hwdev *)hwdev))
983 return -EPERM;
984
985 pf_to_mgmt = ((struct hinic3_hwdev *)hwdev)->pf_to_mgmt;
986 chain = pf_to_mgmt->cmd_chain[HINIC3_API_CMD_POLL_READ];
987
988 if (!(((struct hinic3_hwdev *)hwdev)->chip_present_flag))
989 return -EPERM;
990
991 return hinic3_api_cmd_read(chain, dest, cmd, size, ack, ack_size);
992 }
993
994 /**
> 995 * api cmd write or read bypass default use poll, if want to use aeq interrupt,
996 * please set wb_trigger_aeqe to 1
997 **/
998 int hinic3_api_cmd_write_nack(void *hwdev, u8 dest, const void *cmd, u16 size)
999 {
1000 struct hinic3_msg_pf_to_mgmt *pf_to_mgmt = NULL;
1001 struct hinic3_api_cmd_chain *chain = NULL;
1002
1003 if (!hwdev || !size || !cmd || size > MAX_PF_MGMT_BUF_SIZE)
1004 return -EINVAL;
1005
1006 if (!COMM_SUPPORT_API_CHAIN((struct hinic3_hwdev *)hwdev))
1007 return -EPERM;
1008
1009 pf_to_mgmt = ((struct hinic3_hwdev *)hwdev)->pf_to_mgmt;
1010 chain = pf_to_mgmt->cmd_chain[HINIC3_API_CMD_POLL_WRITE];
1011
1012 if (!(((struct hinic3_hwdev *)hwdev)->chip_present_flag))
1013 return -EPERM;
1014
1015 return hinic3_api_cmd_write(chain, dest, cmd, size);
1016 }
1017
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0
From: ZhangPeng <zhangpeng362(a)huawei.com>
This patch set includes two patch sets: Mitigate a vmap lock contention
and mm/vmalloc: lock contention optimization under multi-threading.
In high-concurrency scenarios such as the "/test_vmalloc.sh
run_test_mask=7 nr_threads=64" scenario, the performance is improved by
more than 10x. The run time was reduced from 18m45.268s to 1m45.066s.
Changelog:
v2->v3:
- Fix commit format warning
v1->v2:
- Remove 2 maillist inclusion patches
- Merge patch 21 to resolve the conflict in patch 16
Alexei Starovoitov (3):
mm: Enforce VM_IOREMAP flag and range in ioremap_page_range.
mm: Introduce VM_SPARSE kind and vm_area_[un]map_pages().
mm: Introduce vmap_page_range() to map pages in PCI address space
Baoquan He (2):
mm/vmalloc: fix the unchecked dereference warning in vread_iter()
mm/vmalloc: remove vmap_area_list
Uladzislau Rezki (Sony) (13):
mm: vmalloc: add va_alloc() helper
mm: vmalloc: rename adjust_va_to_fit_type() function
mm: vmalloc: move vmap_init_free_space() down in vmalloc.c
mm: vmalloc: remove global vmap_area_root rb-tree
mm: vmalloc: remove global purge_vmap_area_root rb-tree
mm: vmalloc: offload free_vmap_area_lock lock
mm: vmalloc: add a scan area of VA only once
mm: vmalloc: support multiple nodes in vread_iter
mm: vmalloc: support multiple nodes in vmallocinfo
mm: vmalloc: set nr_nodes based on CPUs in a system
mm: vmalloc: add a shrinker to drain vmap pools
mm: vmalloc: improve description of vmap node layer
mm: vmalloc: refactor vmalloc_dump_obj() function
.../admin-guide/kdump/vmcoreinfo.rst | 8 +-
arch/arm/mm/ioremap.c | 8 +-
arch/arm64/kernel/crash_core.c | 1 -
arch/loongarch/kernel/setup.c | 2 +-
arch/mips/loongson64/init.c | 2 +-
arch/powerpc/kernel/isa-bridge.c | 4 +-
arch/riscv/kernel/crash_core.c | 1 -
drivers/pci/pci.c | 4 +-
include/linux/io.h | 7 +
include/linux/vmalloc.h | 6 +-
kernel/crash_core.c | 4 +-
kernel/kallsyms_selftest.c | 1 -
mm/nommu.c | 2 -
mm/vmalloc.c | 1156 +++++++++++++----
14 files changed, 914 insertions(+), 292 deletions(-)
--
2.25.1
2
19

[openeuler:OLK-6.6] BUILD REGRESSION 704605877ce9913071214d2515a4c2b9077f5078
by kernel test robot 29 Mar '24
by kernel test robot 29 Mar '24
29 Mar '24
tree/branch: https://gitee.com/openeuler/kernel.git OLK-6.6
branch HEAD: 704605877ce9913071214d2515a4c2b9077f5078 !5461 [OLK-6.6] Add support for Mucse Virtual Function Network Adapter(N10)
Error/Warning reports:
https://lore.kernel.org/oe-kbuild-all/202403282112.uqH8B4BH-lkp@intel.com
https://lore.kernel.org/oe-kbuild-all/202403282349.LRO1UNJH-lkp@intel.com
https://lore.kernel.org/oe-kbuild-all/202403290120.dpqjbxn2-lkp@intel.com
https://lore.kernel.org/oe-kbuild-all/202403290335.CYelvdrv-lkp@intel.com
https://lore.kernel.org/oe-kbuild-all/202403290645.zX0Lyrpo-lkp@intel.com
https://lore.kernel.org/oe-kbuild-all/202403290654.z6VnxcxA-lkp@intel.com
Error/Warning: (recently discovered and may have been fixed)
drivers/net/ethernet/mucse/rnpvf/ethtool.c:103:19: warning: unused variable 'rnp_gstrings_test' [-Wunused-const-variable]
drivers/net/ethernet/mucse/rnpvf/ethtool.c:131:17: warning: variable 'advertising' set but not used [-Wunused-but-set-variable]
drivers/net/ethernet/mucse/rnpvf/ethtool.c:142:3: warning: variable 'advertising' is uninitialized when used here [-Wuninitialized]
drivers/net/ethernet/mucse/rnpvf/ethtool.c:249:6: warning: no previous prototype for function 'rnpvf_get_ringparam' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/ethtool.c:269:6: warning: variable 'queue_idx' set but not used [-Wunused-but-set-variable]
drivers/net/ethernet/mucse/rnpvf/mbx.c:130: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_check_for_msg_vf'
drivers/net/ethernet/mucse/rnpvf/mbx.c:159: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_poll_for_msg'
drivers/net/ethernet/mucse/rnpvf/mbx.c:178: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_poll_for_ack'
drivers/net/ethernet/mucse/rnpvf/mbx.c:201: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_check_for_rst_msg_vf'
drivers/net/ethernet/mucse/rnpvf/mbx.c:20: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_read_posted_mbx'
drivers/net/ethernet/mucse/rnpvf/mbx.c:351: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_check_for_ack_vf'
drivers/net/ethernet/mucse/rnpvf/mbx.c:380: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_obtain_mbx_lock_vf'
drivers/net/ethernet/mucse/rnpvf/mbx.c:411: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_write_mbx_vf'
drivers/net/ethernet/mucse/rnpvf/mbx.c:464: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_read_mbx_vf'
drivers/net/ethernet/mucse/rnpvf/mbx.c:47: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_write_posted_mbx'
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1030: warning: Excess function parameter 'skb' description in 'rnpvf_is_non_eop'
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:112: warning: Function parameter or member 'rnpvf_msix_vector' not described in 'rnpvf_set_ring_vector'
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:112: warning: Function parameter or member 'rnpvf_queue' not described in 'rnpvf_set_ring_vector'
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:112: warning: expecting prototype for rnpvf_set_ivar(). Prototype was for rnpvf_set_ring_vector() instead
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1226: warning: expecting prototype for rnp_clean_rx_irq(). Prototype was for rnpvf_clean_rx_irq() instead
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:127:6: warning: no previous prototype for function 'rnpvf_unmap_and_free_tx_resource' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1365:6: warning: no previous prototype for function 'rnpvf_alloc_rx_buffers' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1659:7: warning: variable 'xdp_xmit' set but not used [-Wunused-but-set-variable]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1945:6: warning: no previous prototype for function 'update_rx_count' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2203: warning: Function parameter or member 'type' not described in 'rnpvf_update_itr'
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2420:6: warning: no previous prototype for function 'rnpvf_write_eitr_rx' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2421: warning: expecting prototype for rnpvf_write_eitr(). Prototype was for rnpvf_write_eitr_rx() instead
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2523:6: warning: no previous prototype for function 'rnpvf_configure_tx_ring' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2589:6: warning: no previous prototype for function 'rnpvf_disable_rx_queue' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2595:6: warning: no previous prototype for function 'rnpvf_enable_rx_queue' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2601:6: warning: no previous prototype for function 'rnpvf_configure_rx_ring' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2736:6: warning: variable 'err' set but not used [-Wunused-but-set-variable]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:3307:6: warning: variable 'vector_threshold' set but not used [-Wunused-but-set-variable]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:3456:19: warning: variable 'hw' set but not used [-Wunused-but-set-variable]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:3922: warning: Excess function parameter 'data' description in 'rnpvf_watchdog'
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:3922: warning: Function parameter or member 't' not described in 'rnpvf_watchdog'
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:4590:6: warning: no previous prototype for function 'rnpvf_tx_ctxtdesc' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:469: warning: expecting prototype for rnp_clean_rx_ring(). Prototype was for rnpvf_clean_rx_ring() instead
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5039:6: warning: no previous prototype for function 'rnpvf_maybe_tx_ctxtdesc' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5089:13: warning: no previous prototype for function 'rnpvf_xmit_frame_ring' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5484:6: warning: variable 'ring_csum_err' set but not used [-Wunused-but-set-variable]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5485:6: warning: variable 'ring_csum_good' set but not used [-Wunused-but-set-variable]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5580:6: warning: no previous prototype for function 'rnpvf_assign_netdev_ops' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:807: warning: Excess function parameter 'rx_ring' description in 'rnpvf_pull_tail'
drivers/net/ethernet/mucse/rnpvf/vf.c:256:6: warning: variable 'number_of_queues' set but not used [-Wunused-but-set-variable]
drivers/net/ethernet/mucse/rnpvf/vf.c:374: warning: Excess function parameter 'mac_addr' description in 'rnpvf_get_queues_vf'
drivers/net/ethernet/mucse/rnpvf/vf.c:486:5: warning: no previous prototype for function 'rnpvf_addr_list_itr' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/vf.c:685:5: warning: no previous prototype for function 'rnpvf_negotiate_api_version' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/vf.c:690:5: warning: no previous prototype for function 'rnpvf_get_queues' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/vf.c:696:6: warning: no previous prototype for function 'rnpvf_set_veb_mac_n10' [-Wmissing-prototypes]
drivers/net/ethernet/mucse/rnpvf/vf.c:718:6: warning: no previous prototype for function 'rnpvf_set_vlan_n10' [-Wmissing-prototypes]
kismet: WARNING: unmet direct dependencies detected for ARM64_ERRATUM_845719 when selected by ARCH_MXC
kismet: WARNING: unmet direct dependencies detected for PGP_KEY_PARSER when selected by PGP_PRELOAD
ld.lld: error: duplicate symbol: __cfi_nic_ioctl
ld.lld: error: duplicate symbol: __cfi_set_slave_host_enable
ld: include/linux/resctrl.h:291:(.text+0xff9aa): undefined reference to `lockdep_is_cpus_held'
Error/Warning ids grouped by kconfigs:
gcc_recent_errors
|-- arm64-allnoconfig
| `-- kismet:WARNING:unmet-direct-dependencies-detected-for-ARM64_ERRATUM_845719-when-selected-by-ARCH_MXC
|-- arm64-defconfig
| `-- drivers-irqchip-irq-mbigen.c:warning:expecting-prototype-for-Due-to-the-existence-of-hyper().-Prototype-was-for-GICR_LENGTH()-instead
|-- loongarch-allnoconfig
| `-- kismet:WARNING:unmet-direct-dependencies-detected-for-PGP_KEY_PARSER-when-selected-by-PGP_PRELOAD
|-- loongarch-randconfig-r113-20240328
| |-- net-ipv4-tcp_comp.c:sparse:sparse:symbol-comp_setup_strp-was-not-declared.-Should-it-be-static
| `-- net-ipv4-tcp_comp.c:sparse:sparse:symbol-comp_stream_read-was-not-declared.-Should-it-be-static
`-- x86_64-randconfig-013-20240328
`-- ld:include-linux-resctrl.h:(.text):undefined-reference-to-lockdep_is_cpus_held
clang_recent_errors
|-- arm64-allmodconfig
| |-- drivers-i2c-busses-i2c-hisi.c:warning:expecting-prototype-for-i2c_dw_acpi_pin_mux_change().-Prototype-was-for-i2c_hisi_pin_mux_change()-instead
| |-- drivers-irqchip-irq-mbigen.c:warning:expecting-prototype-for-Due-to-the-existence-of-hyper().-Prototype-was-for-GICR_LENGTH()-instead
| |-- drivers-net-ethernet-huawei-hinic-hinic_api_cmd.c:warning:expecting-prototype-for-prepare_cell().-Prototype-was-for-wait_for_resp_polling()-instead
| |-- drivers-net-ethernet-huawei-hinic-hinic_cfg.c:warning:arithmetic-between-different-enumeration-types-(-enum-hinic_node_id-and-enum-hinic_fault_err_level-)
| |-- drivers-net-ethernet-huawei-hinic-hinic_eqs.c:warning:expecting-prototype-for-hinic_aeq_register_sw_cb().-Prototype-was-for-hinic_aeq_register_swe_cb()-instead
| |-- drivers-net-ethernet-huawei-hinic-hinic_eqs.c:warning:expecting-prototype-for-hinic_aeq_unregister_sw_cb().-Prototype-was-for-hinic_aeq_unregister_swe_cb()-instead
| |-- drivers-net-ethernet-huawei-hinic-hinic_eqs.c:warning:expecting-prototype-for-hinic_ceq_register_sw_cb().-Prototype-was-for-hinic_ceq_register_cb()-instead
| |-- drivers-net-ethernet-huawei-hinic-hinic_hwdev.c:warning:arithmetic-between-different-enumeration-types-(-enum-hinic_node_id-and-enum-hinic_fault_err_level-)
| |-- drivers-net-ethernet-huawei-hinic-hinic_hwif.c:warning:This-comment-starts-with-but-isn-t-a-kernel-doc-comment.-Refer-Documentation-doc-guide-kernel-doc.rst
| |-- drivers-net-ethernet-huawei-hinic-hinic_mbox.c:warning:expecting-prototype-for-hinic_unregister_ppf_mbox_cb().-Prototype-was-for-hinic_unregister_pf_mbox_cb()-instead
| |-- drivers-net-ethernet-huawei-hinic-hinic_mbox.c:warning:expecting-prototype-for-hinic_unregister_ppf_mbox_cb().-Prototype-was-for-hinic_unregister_ppf_to_pf_mbox_cb()-instead
| |-- drivers-net-ethernet-huawei-hinic-hinic_mgmt.c:warning:This-comment-starts-with-but-isn-t-a-kernel-doc-comment.-Refer-Documentation-doc-guide-kernel-doc.rst
| |-- drivers-net-ethernet-huawei-hinic-hinic_nic_dbg.c:warning:arithmetic-between-different-enumeration-types-(-enum-hinic_node_id-and-enum-hinic_fault_err_level-)
| |-- drivers-net-ethernet-mucse-rnp-rnp_ethtool.c:warning:expecting-prototype-for-rnp_set_rxfh().-Prototype-was-for-rnp_set_rxnfc()-instead
| |-- drivers-net-ethernet-mucse-rnp-rnp_ethtool.c:warning:expecting-prototype-for-rnp_tet_rxfh().-Prototype-was-for-rnp_get_rxfh()-instead
| |-- drivers-net-ethernet-mucse-rnp-rnp_main.c:warning:expecting-prototype-for-rnp_write_eitr().-Prototype-was-for-rnp_write_eitr_rx()-instead
| |-- drivers-net-ethernet-mucse-rnp-rnp_mbx_fw.c:warning:expecting-prototype-for-rnp_mbx_link_event_eanble().-Prototype-was-for-rnp_mbx_link_event_enable()-instead
| |-- drivers-net-ethernet-mucse-rnp-rnp_mbx_fw.c:warning:expecting-prototype-for-rnp_mbx_stat_mark().-Prototype-was-for-rnp_link_stat_mark()-instead
| |-- drivers-net-ethernet-mucse-rnp-rnp_mbx_fw.c:warning:no-previous-prototype-for-function-rnp_mbx_lldp_all_ports_enable
| |-- drivers-net-ethernet-mucse-rnp-rnp_n10.c:warning:expecting-prototype-for-rnp_fc_mode_n10().-Prototype-was-for-rnp_mac_fc_mode_n10()-instead
| |-- drivers-net-ethernet-mucse-rnp-rnp_n10.c:warning:expecting-prototype-for-rnp_init_hw_n10().-Prototype-was-for-rnp_init_hw_ops_n10()-instead
| |-- drivers-net-ethernet-mucse-rnp-rnp_n10.c:warning:expecting-prototype-for-rnp_write_uc_addr_list().-Prototype-was-for-rnp_write_uc_addr_list_n10()-instead
| |-- drivers-net-ethernet-mucse-rnp-rnp_n10.c:warning:expecting-prototype-for-rnpm_device_supports_autoneg_fc().-Prototype-was-for-rnp_device_supports_autoneg_fc()-instead
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_common.c:warning:expecting-prototype-for-rnpm_enable_rx_buff().-Prototype-was-for-rnpm_enable_rx_buff_generic()-instead
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_common.c:warning:expecting-prototype-for-rnpm_update_mc_addr_list_generic().-Prototype-was-for-rnpm_update_mutiport_mc_addr_list_generic()-instead
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_debugfs.c:warning:expecting-prototype-for-rnpm_dbg_reg_ops_write().-Prototype-was-for-rnpm_dbg_phy_ops_write()-instead
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_ethtool.c:warning:no-previous-prototype-for-function-rnpm_get_phy_statistics
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_main.c:warning:expecting-prototype-for-ixgbe_write_eitr().-Prototype-was-for-rnpm_write_eitr()-instead
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_main.c:warning:expecting-prototype-for-rnp_irq_affinity_notify().-Prototype-was-for-rnpm_irq_affinity_notify()-instead
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_main.c:warning:expecting-prototype-for-rnp_irq_affinity_release().-Prototype-was-for-rnpm_irq_affinity_release()-instead
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_main.c:warning:expecting-prototype-for-rnp_is_non_eop().-Prototype-was-for-rnpm_is_non_eop()-instead
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_main.c:warning:expecting-prototype-for-rnpm_set_ivar().-Prototype-was-for-rnpm_set_ring_vector()-instead
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_mbx_fw.c:warning:Cannot-understand-speed:
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_n10.c:warning:expecting-prototype-for-rnpm_atr_add_signature_filter_n10().-Prototype-was-for-rnpm_fdir_add_signature_filter_n10()-instead
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_sriov.c:warning:no-previous-prototype-for-function-rnpm_get_vf_ringnum
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_sriov.c:warning:no-previous-prototype-for-function-rnpm_setup_ring_maxrate
| |-- drivers-net-ethernet-mucse-rnpm-rnpm_sriov.c:warning:variable-y-set-but-not-used
| |-- drivers-net-ethernet-mucse-rnpvf-ethtool.c:warning:no-previous-prototype-for-function-rnpvf_get_ringparam
| |-- drivers-net-ethernet-mucse-rnpvf-ethtool.c:warning:unused-variable-rnp_gstrings_test
| |-- drivers-net-ethernet-mucse-rnpvf-ethtool.c:warning:variable-advertising-is-uninitialized-when-used-here
| |-- drivers-net-ethernet-mucse-rnpvf-ethtool.c:warning:variable-advertising-set-but-not-used
| |-- drivers-net-ethernet-mucse-rnpvf-ethtool.c:warning:variable-queue_idx-set-but-not-used
| |-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_check_for_ack_vf
| |-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_check_for_msg_vf
| |-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_check_for_rst_msg_vf
| |-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_obtain_mbx_lock_vf
| |-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_poll_for_ack
| |-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_poll_for_msg
| |-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_read_mbx_vf
| |-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_read_posted_mbx
| |-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_write_mbx_vf
| |-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_write_posted_mbx
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Excess-function-parameter-data-description-in-rnpvf_watchdog
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Excess-function-parameter-rx_ring-description-in-rnpvf_pull_tail
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Excess-function-parameter-skb-description-in-rnpvf_is_non_eop
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Function-parameter-or-member-rnpvf_msix_vector-not-described-in-rnpvf_set_ring_vector
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Function-parameter-or-member-rnpvf_queue-not-described-in-rnpvf_set_ring_vector
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Function-parameter-or-member-t-not-described-in-rnpvf_watchdog
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Function-parameter-or-member-type-not-described-in-rnpvf_update_itr
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:expecting-prototype-for-rnp_clean_rx_irq().-Prototype-was-for-rnpvf_clean_rx_irq()-instead
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:expecting-prototype-for-rnp_clean_rx_ring().-Prototype-was-for-rnpvf_clean_rx_ring()-instead
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:expecting-prototype-for-rnpvf_set_ivar().-Prototype-was-for-rnpvf_set_ring_vector()-instead
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:expecting-prototype-for-rnpvf_write_eitr().-Prototype-was-for-rnpvf_write_eitr_rx()-instead
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_alloc_rx_buffers
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_assign_netdev_ops
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_configure_rx_ring
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_configure_tx_ring
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_disable_rx_queue
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_enable_rx_queue
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_maybe_tx_ctxtdesc
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_tx_ctxtdesc
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_unmap_and_free_tx_resource
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_write_eitr_rx
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_xmit_frame_ring
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-update_rx_count
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-err-set-but-not-used
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-hw-set-but-not-used
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-ring_csum_err-set-but-not-used
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-ring_csum_good-set-but-not-used
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-vector_threshold-set-but-not-used
| |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-xdp_xmit-set-but-not-used
| |-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:Excess-function-parameter-mac_addr-description-in-rnpvf_get_queues_vf
| |-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:no-previous-prototype-for-function-rnpvf_addr_list_itr
| |-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:no-previous-prototype-for-function-rnpvf_get_queues
| |-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:no-previous-prototype-for-function-rnpvf_negotiate_api_version
| |-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:no-previous-prototype-for-function-rnpvf_set_veb_mac_n10
| |-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:no-previous-prototype-for-function-rnpvf_set_vlan_n10
| |-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:variable-number_of_queues-set-but-not-used
| `-- mm-mem_reliable.c:warning:arithmetic-between-different-enumeration-types-(-enum-node_stat_item-and-enum-lru_list-)
|-- arm64-randconfig-002-20240329
| `-- drivers-i2c-busses-i2c-hisi.c:warning:expecting-prototype-for-i2c_dw_acpi_pin_mux_change().-Prototype-was-for-i2c_hisi_pin_mux_change()-instead
|-- arm64-randconfig-003-20240329
| `-- drivers-i2c-busses-i2c-hisi.c:warning:expecting-prototype-for-i2c_dw_acpi_pin_mux_change().-Prototype-was-for-i2c_hisi_pin_mux_change()-instead
|-- arm64-randconfig-004-20240329
| |-- drivers-i2c-busses-i2c-hisi.c:warning:expecting-prototype-for-i2c_dw_acpi_pin_mux_change().-Prototype-was-for-i2c_hisi_pin_mux_change()-instead
| `-- drivers-irqchip-irq-mbigen.c:warning:expecting-prototype-for-Due-to-the-existence-of-hyper().-Prototype-was-for-GICR_LENGTH()-instead
`-- x86_64-allyesconfig
|-- drivers-i2c-busses-i2c-hisi.c:warning:expecting-prototype-for-i2c_dw_acpi_pin_mux_change().-Prototype-was-for-i2c_hisi_pin_mux_change()-instead
|-- drivers-net-ethernet-huawei-hinic-hinic_api_cmd.c:warning:expecting-prototype-for-prepare_cell().-Prototype-was-for-wait_for_resp_polling()-instead
|-- drivers-net-ethernet-huawei-hinic-hinic_eqs.c:warning:expecting-prototype-for-hinic_aeq_register_sw_cb().-Prototype-was-for-hinic_aeq_register_swe_cb()-instead
|-- drivers-net-ethernet-huawei-hinic-hinic_eqs.c:warning:expecting-prototype-for-hinic_aeq_unregister_sw_cb().-Prototype-was-for-hinic_aeq_unregister_swe_cb()-instead
|-- drivers-net-ethernet-huawei-hinic-hinic_eqs.c:warning:expecting-prototype-for-hinic_ceq_register_sw_cb().-Prototype-was-for-hinic_ceq_register_cb()-instead
|-- drivers-net-ethernet-huawei-hinic-hinic_hwif.c:warning:This-comment-starts-with-but-isn-t-a-kernel-doc-comment.-Refer-Documentation-doc-guide-kernel-doc.rst
|-- drivers-net-ethernet-huawei-hinic-hinic_mbox.c:warning:expecting-prototype-for-hinic_unregister_ppf_mbox_cb().-Prototype-was-for-hinic_unregister_pf_mbox_cb()-instead
|-- drivers-net-ethernet-huawei-hinic-hinic_mbox.c:warning:expecting-prototype-for-hinic_unregister_ppf_mbox_cb().-Prototype-was-for-hinic_unregister_ppf_to_pf_mbox_cb()-instead
|-- drivers-net-ethernet-huawei-hinic-hinic_mgmt.c:warning:This-comment-starts-with-but-isn-t-a-kernel-doc-comment.-Refer-Documentation-doc-guide-kernel-doc.rst
|-- drivers-net-ethernet-mucse-rnp-rnp_ethtool.c:warning:expecting-prototype-for-rnp_set_rxfh().-Prototype-was-for-rnp_set_rxnfc()-instead
|-- drivers-net-ethernet-mucse-rnp-rnp_ethtool.c:warning:expecting-prototype-for-rnp_tet_rxfh().-Prototype-was-for-rnp_get_rxfh()-instead
|-- drivers-net-ethernet-mucse-rnp-rnp_main.c:warning:expecting-prototype-for-rnp_write_eitr().-Prototype-was-for-rnp_write_eitr_rx()-instead
|-- drivers-net-ethernet-mucse-rnp-rnp_mbx_fw.c:warning:expecting-prototype-for-rnp_mbx_link_event_eanble().-Prototype-was-for-rnp_mbx_link_event_enable()-instead
|-- drivers-net-ethernet-mucse-rnp-rnp_mbx_fw.c:warning:expecting-prototype-for-rnp_mbx_stat_mark().-Prototype-was-for-rnp_link_stat_mark()-instead
|-- drivers-net-ethernet-mucse-rnp-rnp_mbx_fw.c:warning:no-previous-prototype-for-function-rnp_mbx_lldp_all_ports_enable
|-- drivers-net-ethernet-mucse-rnp-rnp_n10.c:warning:expecting-prototype-for-rnp_fc_mode_n10().-Prototype-was-for-rnp_mac_fc_mode_n10()-instead
|-- drivers-net-ethernet-mucse-rnp-rnp_n10.c:warning:expecting-prototype-for-rnp_init_hw_n10().-Prototype-was-for-rnp_init_hw_ops_n10()-instead
|-- drivers-net-ethernet-mucse-rnp-rnp_n10.c:warning:expecting-prototype-for-rnp_write_uc_addr_list().-Prototype-was-for-rnp_write_uc_addr_list_n10()-instead
|-- drivers-net-ethernet-mucse-rnp-rnp_n10.c:warning:expecting-prototype-for-rnpm_device_supports_autoneg_fc().-Prototype-was-for-rnp_device_supports_autoneg_fc()-instead
|-- drivers-net-ethernet-mucse-rnpm-rnpm_common.c:warning:expecting-prototype-for-rnpm_enable_rx_buff().-Prototype-was-for-rnpm_enable_rx_buff_generic()-instead
|-- drivers-net-ethernet-mucse-rnpm-rnpm_common.c:warning:expecting-prototype-for-rnpm_update_mc_addr_list_generic().-Prototype-was-for-rnpm_update_mutiport_mc_addr_list_generic()-instead
|-- drivers-net-ethernet-mucse-rnpm-rnpm_debugfs.c:warning:expecting-prototype-for-rnpm_dbg_reg_ops_write().-Prototype-was-for-rnpm_dbg_phy_ops_write()-instead
|-- drivers-net-ethernet-mucse-rnpm-rnpm_ethtool.c:warning:no-previous-prototype-for-function-rnpm_get_phy_statistics
|-- drivers-net-ethernet-mucse-rnpm-rnpm_main.c:warning:expecting-prototype-for-ixgbe_write_eitr().-Prototype-was-for-rnpm_write_eitr()-instead
|-- drivers-net-ethernet-mucse-rnpm-rnpm_main.c:warning:expecting-prototype-for-rnp_irq_affinity_notify().-Prototype-was-for-rnpm_irq_affinity_notify()-instead
|-- drivers-net-ethernet-mucse-rnpm-rnpm_main.c:warning:expecting-prototype-for-rnp_irq_affinity_release().-Prototype-was-for-rnpm_irq_affinity_release()-instead
|-- drivers-net-ethernet-mucse-rnpm-rnpm_main.c:warning:expecting-prototype-for-rnp_is_non_eop().-Prototype-was-for-rnpm_is_non_eop()-instead
|-- drivers-net-ethernet-mucse-rnpm-rnpm_main.c:warning:expecting-prototype-for-rnpm_set_ivar().-Prototype-was-for-rnpm_set_ring_vector()-instead
|-- drivers-net-ethernet-mucse-rnpm-rnpm_mbx_fw.c:warning:Cannot-understand-speed:
|-- drivers-net-ethernet-mucse-rnpm-rnpm_n10.c:warning:expecting-prototype-for-rnpm_atr_add_signature_filter_n10().-Prototype-was-for-rnpm_fdir_add_signature_filter_n10()-instead
|-- drivers-net-ethernet-mucse-rnpm-rnpm_sriov.c:warning:no-previous-prototype-for-function-rnpm_get_vf_ringnum
|-- drivers-net-ethernet-mucse-rnpm-rnpm_sriov.c:warning:no-previous-prototype-for-function-rnpm_setup_ring_maxrate
|-- drivers-net-ethernet-mucse-rnpm-rnpm_sriov.c:warning:variable-y-set-but-not-used
|-- drivers-net-ethernet-mucse-rnpvf-ethtool.c:warning:no-previous-prototype-for-function-rnpvf_get_ringparam
|-- drivers-net-ethernet-mucse-rnpvf-ethtool.c:warning:unused-variable-rnp_gstrings_test
|-- drivers-net-ethernet-mucse-rnpvf-ethtool.c:warning:variable-advertising-is-uninitialized-when-used-here
|-- drivers-net-ethernet-mucse-rnpvf-ethtool.c:warning:variable-advertising-set-but-not-used
|-- drivers-net-ethernet-mucse-rnpvf-ethtool.c:warning:variable-queue_idx-set-but-not-used
|-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_check_for_ack_vf
|-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_check_for_msg_vf
|-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_check_for_rst_msg_vf
|-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_obtain_mbx_lock_vf
|-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_poll_for_ack
|-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_poll_for_msg
|-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_read_mbx_vf
|-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_read_posted_mbx
|-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_write_mbx_vf
|-- drivers-net-ethernet-mucse-rnpvf-mbx.c:warning:Function-parameter-or-member-to_cm3-not-described-in-rnpvf_write_posted_mbx
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Excess-function-parameter-data-description-in-rnpvf_watchdog
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Excess-function-parameter-rx_ring-description-in-rnpvf_pull_tail
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Excess-function-parameter-skb-description-in-rnpvf_is_non_eop
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Function-parameter-or-member-rnpvf_msix_vector-not-described-in-rnpvf_set_ring_vector
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Function-parameter-or-member-rnpvf_queue-not-described-in-rnpvf_set_ring_vector
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Function-parameter-or-member-t-not-described-in-rnpvf_watchdog
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Function-parameter-or-member-type-not-described-in-rnpvf_update_itr
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:expecting-prototype-for-rnp_clean_rx_irq().-Prototype-was-for-rnpvf_clean_rx_irq()-instead
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:expecting-prototype-for-rnp_clean_rx_ring().-Prototype-was-for-rnpvf_clean_rx_ring()-instead
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:expecting-prototype-for-rnpvf_set_ivar().-Prototype-was-for-rnpvf_set_ring_vector()-instead
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:expecting-prototype-for-rnpvf_write_eitr().-Prototype-was-for-rnpvf_write_eitr_rx()-instead
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_alloc_rx_buffers
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_assign_netdev_ops
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_configure_rx_ring
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_configure_tx_ring
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_disable_rx_queue
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_enable_rx_queue
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_maybe_tx_ctxtdesc
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_tx_ctxtdesc
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_unmap_and_free_tx_resource
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_write_eitr_rx
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-rnpvf_xmit_frame_ring
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:no-previous-prototype-for-function-update_rx_count
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-err-set-but-not-used
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-hw-set-but-not-used
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-ring_csum_err-set-but-not-used
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-ring_csum_good-set-but-not-used
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-vector_threshold-set-but-not-used
|-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:variable-xdp_xmit-set-but-not-used
|-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:Excess-function-parameter-mac_addr-description-in-rnpvf_get_queues_vf
|-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:no-previous-prototype-for-function-rnpvf_addr_list_itr
|-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:no-previous-prototype-for-function-rnpvf_get_queues
|-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:no-previous-prototype-for-function-rnpvf_negotiate_api_version
|-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:no-previous-prototype-for-function-rnpvf_set_veb_mac_n10
|-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:no-previous-prototype-for-function-rnpvf_set_vlan_n10
|-- drivers-net-ethernet-mucse-rnpvf-vf.c:warning:variable-number_of_queues-set-but-not-used
|-- ld.lld:error:duplicate-symbol:__cfi_check_ari_mode
|-- ld.lld:error:duplicate-symbol:__cfi_mbx_cookie_zalloc
|-- ld.lld:error:duplicate-symbol:__cfi_nic_ioctl
|-- ld.lld:error:duplicate-symbol:__cfi_set_slave_host_enable
|-- ld.lld:error:duplicate-symbol:check_ari_mode
|-- ld.lld:error:duplicate-symbol:mbx_cookie_zalloc
`-- ld.lld:error:duplicate-symbol:rnp10_netdev_ops
elapsed time: 756m
configs tested: 16
configs skipped: 126
tested configs:
arm64 allmodconfig clang
arm64 allnoconfig gcc
arm64 defconfig gcc
arm64 randconfig-001-20240329 gcc
arm64 randconfig-002-20240329 clang
arm64 randconfig-003-20240329 clang
arm64 randconfig-004-20240329 clang
loongarch allmodconfig gcc
loongarch allnoconfig gcc
loongarch defconfig gcc
loongarch randconfig-001-20240329 gcc
loongarch randconfig-002-20240329 gcc
x86_64 allnoconfig clang
x86_64 allyesconfig clang
x86_64 defconfig gcc
x86_64 rhel-8.3-rust clang
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:OLK-6.6 6859/7000] drivers/net/ethernet/mucse/rnpvf/vf.c:256:6: warning: variable 'number_of_queues' set but not used
by kernel test robot 29 Mar '24
by kernel test robot 29 Mar '24
29 Mar '24
tree: https://gitee.com/openeuler/kernel.git OLK-6.6
head: 704605877ce9913071214d2515a4c2b9077f5078
commit: 6adab536d69347a10c2366aaf6b86de963d5994b [6859/7000] drivers: initial support for rnpvf drivers from Mucse Technology
config: arm64-allmodconfig (https://download.01.org/0day-ci/archive/20240329/202403290654.z6VnxcxA-lkp@…)
compiler: clang version 19.0.0git (https://github.com/llvm/llvm-project 79ba323bdd0843275019e16b6e9b35133677c514)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240329/202403290654.z6VnxcxA-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/202403290654.z6VnxcxA-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from drivers/net/ethernet/mucse/rnpvf/vf.c:4:
In file included from drivers/net/ethernet/mucse/rnpvf/vf.h:7:
In file included from include/linux/pci.h:1663:
In file included from include/linux/dmapool.h:14:
In file included from include/linux/scatterlist.h:8:
In file included from include/linux/mm.h:2193:
include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
509 | item];
| ~~~~
include/linux/vmstat.h:515:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
516 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
| ~~~~~~~~~~~ ^ ~~~
include/linux/vmstat.h:527:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
528 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:536:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
537 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/mucse/rnpvf/vf.c:256:6: warning: variable 'number_of_queues' set but not used [-Wunused-but-set-variable]
256 | u32 number_of_queues;
| ^
>> drivers/net/ethernet/mucse/rnpvf/vf.c:486:5: warning: no previous prototype for function 'rnpvf_addr_list_itr' [-Wmissing-prototypes]
486 | u8 *rnpvf_addr_list_itr(struct rnpvf_hw __maybe_unused *hw,
| ^
drivers/net/ethernet/mucse/rnpvf/vf.c:486:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
486 | u8 *rnpvf_addr_list_itr(struct rnpvf_hw __maybe_unused *hw,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/vf.c:685:5: warning: no previous prototype for function 'rnpvf_negotiate_api_version' [-Wmissing-prototypes]
685 | int rnpvf_negotiate_api_version(struct rnpvf_hw *hw, int api)
| ^
drivers/net/ethernet/mucse/rnpvf/vf.c:685:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
685 | int rnpvf_negotiate_api_version(struct rnpvf_hw *hw, int api)
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/vf.c:690:5: warning: no previous prototype for function 'rnpvf_get_queues' [-Wmissing-prototypes]
690 | int rnpvf_get_queues(struct rnpvf_hw *hw, unsigned int *num_tcs,
| ^
drivers/net/ethernet/mucse/rnpvf/vf.c:690:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
690 | int rnpvf_get_queues(struct rnpvf_hw *hw, unsigned int *num_tcs,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/vf.c:696:6: warning: no previous prototype for function 'rnpvf_set_veb_mac_n10' [-Wmissing-prototypes]
696 | void rnpvf_set_veb_mac_n10(struct rnpvf_hw *hw, u8 *mac, u32 vfnum,
| ^
drivers/net/ethernet/mucse/rnpvf/vf.c:696:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
696 | void rnpvf_set_veb_mac_n10(struct rnpvf_hw *hw, u8 *mac, u32 vfnum,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/vf.c:718:6: warning: no previous prototype for function 'rnpvf_set_vlan_n10' [-Wmissing-prototypes]
718 | void rnpvf_set_vlan_n10(struct rnpvf_hw *hw, u16 vid, u32 vf_num)
| ^
drivers/net/ethernet/mucse/rnpvf/vf.c:718:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
718 | void rnpvf_set_vlan_n10(struct rnpvf_hw *hw, u16 vid, u32 vf_num)
| ^
| static
11 warnings generated.
--
In file included from drivers/net/ethernet/mucse/rnpvf/ethtool.c:7:
In file included from include/linux/pci.h:1663:
In file included from include/linux/dmapool.h:14:
In file included from include/linux/scatterlist.h:8:
In file included from include/linux/mm.h:2193:
include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
509 | item];
| ~~~~
include/linux/vmstat.h:515:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
516 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
| ~~~~~~~~~~~ ^ ~~~
include/linux/vmstat.h:527:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
528 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:536:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
537 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/mucse/rnpvf/ethtool.c:131:17: warning: variable 'advertising' set but not used [-Wunused-but-set-variable]
131 | u32 supported, advertising;
| ^
>> drivers/net/ethernet/mucse/rnpvf/ethtool.c:142:3: warning: variable 'advertising' is uninitialized when used here [-Wuninitialized]
142 | advertising |= ADVERTISED_FIBRE |
| ^~~~~~~~~~~
drivers/net/ethernet/mucse/rnpvf/ethtool.c:131:28: note: initialize the variable 'advertising' to silence this warning
131 | u32 supported, advertising;
| ^
| = 0
>> drivers/net/ethernet/mucse/rnpvf/ethtool.c:249:6: warning: no previous prototype for function 'rnpvf_get_ringparam' [-Wmissing-prototypes]
249 | void rnpvf_get_ringparam(struct net_device *netdev,
| ^
drivers/net/ethernet/mucse/rnpvf/ethtool.c:249:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
249 | void rnpvf_get_ringparam(struct net_device *netdev,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/ethtool.c:269:6: warning: variable 'queue_idx' set but not used [-Wunused-but-set-variable]
269 | u16 queue_idx;
| ^
>> drivers/net/ethernet/mucse/rnpvf/ethtool.c:103:19: warning: unused variable 'rnp_gstrings_test' [-Wunused-const-variable]
103 | static const char rnp_gstrings_test[][ETH_GSTRING_LEN] = {
| ^~~~~~~~~~~~~~~~~
10 warnings generated.
--
In file included from drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:7:
In file included from include/linux/pci.h:1663:
In file included from include/linux/dmapool.h:14:
In file included from include/linux/scatterlist.h:8:
In file included from include/linux/mm.h:2193:
include/linux/vmstat.h:508:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
508 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
509 | item];
| ~~~~
include/linux/vmstat.h:515:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
515 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
516 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:522:36: warning: arithmetic between different enumeration types ('enum node_stat_item' and 'enum lru_list') [-Wenum-enum-conversion]
522 | return node_stat_name(NR_LRU_BASE + lru) + 3; // skip "nr_"
| ~~~~~~~~~~~ ^ ~~~
include/linux/vmstat.h:527:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
527 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
528 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
include/linux/vmstat.h:536:43: warning: arithmetic between different enumeration types ('enum zone_stat_item' and 'enum numa_stat_item') [-Wenum-enum-conversion]
536 | return vmstat_text[NR_VM_ZONE_STAT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~ ^
537 | NR_VM_NUMA_EVENT_ITEMS +
| ~~~~~~~~~~~~~~~~~~~~~~
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:127:6: warning: no previous prototype for function 'rnpvf_unmap_and_free_tx_resource' [-Wmissing-prototypes]
127 | void rnpvf_unmap_and_free_tx_resource(struct rnpvf_ring *ring,
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:127:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
127 | void rnpvf_unmap_and_free_tx_resource(struct rnpvf_ring *ring,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1365:6: warning: no previous prototype for function 'rnpvf_alloc_rx_buffers' [-Wmissing-prototypes]
1365 | void rnpvf_alloc_rx_buffers(struct rnpvf_ring *rx_ring, u16 cleaned_count)
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1365:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
1365 | void rnpvf_alloc_rx_buffers(struct rnpvf_ring *rx_ring, u16 cleaned_count)
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1659:7: warning: variable 'xdp_xmit' set but not used [-Wunused-but-set-variable]
1659 | bool xdp_xmit = false;
| ^
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1945:6: warning: no previous prototype for function 'update_rx_count' [-Wmissing-prototypes]
1945 | void update_rx_count(int cleaned, struct rnpvf_q_vector *q_vector)
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1945:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
1945 | void update_rx_count(int cleaned, struct rnpvf_q_vector *q_vector)
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2420:6: warning: no previous prototype for function 'rnpvf_write_eitr_rx' [-Wmissing-prototypes]
2420 | void rnpvf_write_eitr_rx(struct rnpvf_q_vector *q_vector)
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2420:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
2420 | void rnpvf_write_eitr_rx(struct rnpvf_q_vector *q_vector)
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2523:6: warning: no previous prototype for function 'rnpvf_configure_tx_ring' [-Wmissing-prototypes]
2523 | void rnpvf_configure_tx_ring(struct rnpvf_adapter *adapter,
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2523:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
2523 | void rnpvf_configure_tx_ring(struct rnpvf_adapter *adapter,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2589:6: warning: no previous prototype for function 'rnpvf_disable_rx_queue' [-Wmissing-prototypes]
2589 | void rnpvf_disable_rx_queue(struct rnpvf_adapter *adapter,
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2589:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
2589 | void rnpvf_disable_rx_queue(struct rnpvf_adapter *adapter,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2595:6: warning: no previous prototype for function 'rnpvf_enable_rx_queue' [-Wmissing-prototypes]
2595 | void rnpvf_enable_rx_queue(struct rnpvf_adapter *adapter,
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2595:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
2595 | void rnpvf_enable_rx_queue(struct rnpvf_adapter *adapter,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2601:6: warning: no previous prototype for function 'rnpvf_configure_rx_ring' [-Wmissing-prototypes]
2601 | void rnpvf_configure_rx_ring(struct rnpvf_adapter *adapter,
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2601:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
2601 | void rnpvf_configure_rx_ring(struct rnpvf_adapter *adapter,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2736:6: warning: variable 'err' set but not used [-Wunused-but-set-variable]
2736 | int err = -EOPNOTSUPP;
| ^
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:3307:6: warning: variable 'vector_threshold' set but not used [-Wunused-but-set-variable]
3307 | int vector_threshold;
| ^
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:3456:19: warning: variable 'hw' set but not used [-Wunused-but-set-variable]
3456 | struct rnpvf_hw *hw;
| ^
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:4590:6: warning: no previous prototype for function 'rnpvf_tx_ctxtdesc' [-Wmissing-prototypes]
4590 | void rnpvf_tx_ctxtdesc(struct rnpvf_ring *tx_ring, u16 mss_seg_len,
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:4590:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
4590 | void rnpvf_tx_ctxtdesc(struct rnpvf_ring *tx_ring, u16 mss_seg_len,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5039:6: warning: no previous prototype for function 'rnpvf_maybe_tx_ctxtdesc' [-Wmissing-prototypes]
5039 | void rnpvf_maybe_tx_ctxtdesc(struct rnpvf_ring *tx_ring,
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5039:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
5039 | void rnpvf_maybe_tx_ctxtdesc(struct rnpvf_ring *tx_ring,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5089:13: warning: no previous prototype for function 'rnpvf_xmit_frame_ring' [-Wmissing-prototypes]
5089 | netdev_tx_t rnpvf_xmit_frame_ring(struct sk_buff *skb,
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5089:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
5089 | netdev_tx_t rnpvf_xmit_frame_ring(struct sk_buff *skb,
| ^
| static
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5484:6: warning: variable 'ring_csum_err' set but not used [-Wunused-but-set-variable]
5484 | u64 ring_csum_err = 0;
| ^
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5485:6: warning: variable 'ring_csum_good' set but not used [-Wunused-but-set-variable]
5485 | u64 ring_csum_good = 0;
| ^
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5580:6: warning: no previous prototype for function 'rnpvf_assign_netdev_ops' [-Wmissing-prototypes]
5580 | void rnpvf_assign_netdev_ops(struct net_device *dev)
| ^
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5580:1: note: declare 'static' if the function is not intended to be used outside of this translation unit
5580 | void rnpvf_assign_netdev_ops(struct net_device *dev)
| ^
| static
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:5619:29: warning: unused function 'rnpvf_tso_features' [-Wunused-function]
5619 | static inline unsigned long rnpvf_tso_features(struct rnpvf_hw *hw)
| ^~~~~~~~~~~~~~~~~~
24 warnings generated.
--
>> drivers/net/ethernet/mucse/rnpvf/vf.c:374: warning: Excess function parameter 'mac_addr' description in 'rnpvf_get_queues_vf'
--
>> drivers/net/ethernet/mucse/rnpvf/mbx.c:20: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_read_posted_mbx'
>> drivers/net/ethernet/mucse/rnpvf/mbx.c:47: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_write_posted_mbx'
>> drivers/net/ethernet/mucse/rnpvf/mbx.c:130: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_check_for_msg_vf'
>> drivers/net/ethernet/mucse/rnpvf/mbx.c:159: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_poll_for_msg'
>> drivers/net/ethernet/mucse/rnpvf/mbx.c:178: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_poll_for_ack'
>> drivers/net/ethernet/mucse/rnpvf/mbx.c:201: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_check_for_rst_msg_vf'
>> drivers/net/ethernet/mucse/rnpvf/mbx.c:351: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_check_for_ack_vf'
>> drivers/net/ethernet/mucse/rnpvf/mbx.c:380: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_obtain_mbx_lock_vf'
>> drivers/net/ethernet/mucse/rnpvf/mbx.c:411: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_write_mbx_vf'
>> drivers/net/ethernet/mucse/rnpvf/mbx.c:464: warning: Function parameter or member 'to_cm3' not described in 'rnpvf_read_mbx_vf'
--
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:112: warning: Function parameter or member 'rnpvf_queue' not described in 'rnpvf_set_ring_vector'
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:112: warning: Function parameter or member 'rnpvf_msix_vector' not described in 'rnpvf_set_ring_vector'
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:112: warning: expecting prototype for rnpvf_set_ivar(). Prototype was for rnpvf_set_ring_vector() instead
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:469: warning: expecting prototype for rnp_clean_rx_ring(). Prototype was for rnpvf_clean_rx_ring() instead
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:807: warning: Excess function parameter 'rx_ring' description in 'rnpvf_pull_tail'
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1030: warning: Excess function parameter 'skb' description in 'rnpvf_is_non_eop'
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1226: warning: expecting prototype for rnp_clean_rx_irq(). Prototype was for rnpvf_clean_rx_irq() instead
drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:1653: warning: expecting prototype for rnp_clean_rx_irq(). Prototype was for rnpvf_clean_rx_irq() instead
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2203: warning: Function parameter or member 'type' not described in 'rnpvf_update_itr'
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:2421: warning: expecting prototype for rnpvf_write_eitr(). Prototype was for rnpvf_write_eitr_rx() instead
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:3922: warning: Function parameter or member 't' not described in 'rnpvf_watchdog'
>> drivers/net/ethernet/mucse/rnpvf/rnpvf_main.c:3922: warning: Excess function parameter 'data' description in 'rnpvf_watchdog'
vim +/number_of_queues +256 drivers/net/ethernet/mucse/rnpvf/vf.c
244
245 /**
246 * rnpvf_stop_hw_vf - Generic stop Tx/Rx units
247 * @hw: pointer to hardware structure
248 *
249 * Sets the adapter_stopped flag within rnpvf_hw struct. Clears interrupts,
250 * disables transmit and receive units. The adapter_stopped flag is used by
251 * the shared code and drivers to determine if the adapter is in a stopped
252 * state and should not touch the hardware.
253 **/
254 static s32 rnpvf_stop_hw_vf(struct rnpvf_hw *hw)
255 {
> 256 u32 number_of_queues;
257 u16 i;
258 struct rnpvf_adapter *adapter = hw->back;
259 struct rnpvf_ring *ring;
260
261 /* Set the adapter_stopped flag so other driver functions stop touching
262 * the hardware
263 */
264 hw->adapter_stopped = true;
265
266 /* Disable the receive unit by stopped each queue */
267 for (i = 0; i < adapter->num_rx_queues; i++) {
268 ring = adapter->rx_ring[i];
269 ring_wr32(ring, RNP_DMA_RX_START, 0);
270 }
271
272 /* Disable the transmit unit. Each queue must be disabled. */
273 number_of_queues = hw->mac.max_tx_queues;
274
275 return 0;
276 }
277
278 /**
279 * rnpvf_mta_vector - Determines bit-vector in multicast table to set
280 * @hw: pointer to hardware structure
281 * @mc_addr: the multicast address
282 *
283 * Extracts the 12 bits, from a multicast address, to determine which
284 * bit-vector to set in the multicast table. The hardware uses 12 bits, from
285 * incoming rx multicast addresses, to determine the bit-vector to check in
286 * the MTA. Which of the 4 combination, of 12-bits, the hardware uses is set
287 * by the MO field of the MCSTCTRL. The MO field is set during initialization
288 * to mc_filter_type.
289 **/
290 static s32 rnpvf_mta_vector(struct rnpvf_hw *hw, u8 *mc_addr)
291 {
292 u32 vector = 0;
293
294 switch (hw->mac.mc_filter_type) {
295 case 0: /* use bits [47:36] of the address */
296 vector = ((mc_addr[4] << 8) | (((u16)mc_addr[5])));
297 break;
298 case 1: /* use bits [46:35] of the address */
299 vector = ((mc_addr[4] << 7) | (((u16)mc_addr[5]) >> 1));
300 break;
301 case 2: /* use bits [45:34] of the address */
302 vector = ((mc_addr[4] << 6) | (((u16)mc_addr[5]) >> 2));
303 break;
304 case 3: /* use bits [43:32] of the address */
305 vector = ((mc_addr[4]) << 4 | (((u16)mc_addr[5]) >> 4));
306 break;
307 case 4: /* use bits [32:43] of the address */
308 vector = ((mc_addr[0] << 8) | (((u16)mc_addr[1])));
309 vector = (vector >> 4);
310 break;
311 case 5: /* use bits [32:43] of the address */
312 vector = ((mc_addr[0] << 8) | (((u16)mc_addr[1])));
313 vector = (vector >> 3);
314 break;
315 case 6: /* use bits [32:43] of the address */
316 vector = ((mc_addr[0] << 8) | (((u16)mc_addr[1])));
317 vector = (vector >> 2);
318 break;
319 case 7: /* use bits [32:43] of the address */
320 vector = ((mc_addr[0] << 8) | (((u16)mc_addr[1])));
321 break;
322 default: /* Invalid mc_filter_type */
323 break;
324 }
325
326 /* vector can only be 12-bits or boundary will be exceeded */
327 vector &= 0xFFF;
328 return vector;
329 }
330
331 /**
332 * rnpvf_get_mac_addr_vf - Read device MAC address
333 * @hw: pointer to the HW structure
334 * @mac_addr: pointer to storage for retrieved MAC address
335 **/
336 static s32 rnpvf_get_mac_addr_vf(struct rnpvf_hw *hw, u8 *mac_addr)
337 {
338 // memcpy(mac_addr, hw->mac.perm_addr, ETH_ALEN);
339 struct rnp_mbx_info *mbx = &hw->mbx;
340 u32 msgbuf[3];
341 u8 *msg_addr = (u8 *)(&msgbuf[1]);
342 s32 ret_val = 0;
343
344 memset(msgbuf, 0, sizeof(msgbuf));
345 /* If index is one then this is the start of a new list and needs
346 * indication to the PF so it can do it's own list management.
347 * If it is zero then that tells the PF to just clear all of
348 * this VF's macvlans and there is no new list.
349 */
350 msgbuf[0] |= RNP_VF_SET_MACVLAN;
351 ret_val = mbx->ops.write_posted(hw, msgbuf, 1, false);
352
353 if (!ret_val)
354 ret_val = mbx->ops.read_posted(hw, msgbuf, 3, false);
355
356 msgbuf[0] &= ~RNP_VT_MSGTYPE_CTS;
357
358 if (!ret_val)
359 if (msgbuf[0] ==
360 (RNP_VF_GET_MACVLAN | RNP_VT_MSGTYPE_NACK))
361 ret_val = -ENOMEM;
362
363 memcpy(mac_addr, msg_addr, 6);
364
365 return 0;
366 }
367
368 /**
369 * rnpvf_get_queues_vf - Read device MAC address
370 * @hw: pointer to the HW structure
371 * @mac_addr: pointer to storage for retrieved MAC address
372 **/
373 static s32 rnpvf_get_queues_vf(struct rnpvf_hw *hw)
> 374 {
375 struct rnp_mbx_info *mbx = &hw->mbx;
376 s32 ret_val = 0;
377 u32 msgbuf[7];
378
379 memset(msgbuf, 0, sizeof(msgbuf));
380 msgbuf[0] |= RNP_VF_GET_QUEUE;
381
382 ret_val = mbx->ops.write_posted(hw, msgbuf, 1, false);
383
384 mdelay(10);
385
386 if (!ret_val)
387 ret_val = mbx->ops.read_posted(hw, msgbuf, 7, false);
388
389 msgbuf[0] &= ~RNP_VT_MSGTYPE_CTS;
390
391 if (!ret_val)
392 if (msgbuf[0] == (RNP_VF_GET_QUEUE | RNP_VT_MSGTYPE_NACK))
393 ret_val = -ENOMEM;
394 #define MSG_TX_NUM_WORD 1
395 #define MSG_RX_NUM_WORD 2
396 #define MSG_RING_BASE_WORD 5
397 #define MSG_RING_DEPTH 6
398
399 hw->queue_ring_base = msgbuf[MSG_RING_BASE_WORD];
400 hw->mac.max_tx_queues = msgbuf[MSG_TX_NUM_WORD];
401 hw->mac.max_rx_queues = msgbuf[MSG_RX_NUM_WORD];
402 hw->tx_items_count = 0xffff & (msgbuf[MSG_RING_DEPTH] >> 16);
403 hw->rx_items_count = 0xffff & (msgbuf[MSG_RING_DEPTH] >> 0);
404
405 return 0;
406 }
407
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0

[openeuler:OLK-6.6 2676/7000] ld: include/linux/resctrl.h:291:undefined reference to `lockdep_is_cpus_held'
by kernel test robot 29 Mar '24
by kernel test robot 29 Mar '24
29 Mar '24
tree: https://gitee.com/openeuler/kernel.git OLK-6.6
head: 704605877ce9913071214d2515a4c2b9077f5078
commit: c054efea286659a6504fdeafc0a611c6a3b124cc [2676/7000] x86/resctrl: Claim get_domain_from_cpu() for resctrl
config: x86_64-randconfig-013-20240328 (https://download.01.org/0day-ci/archive/20240329/202403290645.zX0Lyrpo-lkp@…)
compiler: gcc-10 (Ubuntu 10.5.0-1ubuntu1) 10.5.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240329/202403290645.zX0Lyrpo-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/202403290645.zX0Lyrpo-lkp@intel.com/
All errors (new ones prefixed by >>):
ld: vmlinux.o: in function `resctrl_get_domain_from_cpu':
include/linux/resctrl.h:291:(.text+0xec75a): undefined reference to `lockdep_is_cpus_held'
>> ld: include/linux/resctrl.h:291:(.text+0xff9aa): undefined reference to `lockdep_is_cpus_held'
ld: include/linux/resctrl.h:291:(.text+0x100423): undefined reference to `lockdep_is_cpus_held'
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
1
0