mailweb.openeuler.org
Manage this list

Keyboard Shortcuts

Thread View

  • j: Next unread message
  • k: Previous unread message
  • j a: Jump to all threads
  • j l: Jump to MailingList overview

Kernel

Threads by month
  • ----- 2026 -----
  • April
  • March
  • February
  • January
  • ----- 2025 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2024 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2023 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2022 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2021 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2020 -----
  • December
  • November
  • October
  • September
  • August
  • July
  • June
  • May
  • April
  • March
  • February
  • January
  • ----- 2019 -----
  • December
kernel@openeuler.org

  • 27 participants
  • 23208 discussions
[OLK-5.10 0/2] Add generic xdp xsk multi-buffer recv for ipvlan
by Yue Haibing 08 Oct '24

08 Oct '24
Yue Haibing (1): xsk: Add generic xdp multi-buffer recv support bitcoffee (1): ipvlan: support use xdp native mode drivers/net/ipvlan/ipvlan.h | 1 + drivers/net/ipvlan/ipvlan_core.c | 16 +++ drivers/net/ipvlan/ipvlan_main.c | 22 ++++ include/linux/netdevice.h | 7 ++ include/linux/skbuff.h | 6 + include/net/xdp.h | 42 +++++++ include/net/xdp_sock.h | 20 +++ include/net/xdp_sock_drv.h | 14 +++ include/net/xsk_buff_pool.h | 7 ++ include/uapi/linux/if_xdp.h | 13 ++ net/core/dev.c | 210 +++++++++++++++++++++++++++++++ net/core/filter.c | 4 + net/core/skbuff.c | 90 +++++++++++++ net/xdp/Kconfig | 8 ++ net/xdp/xsk.c | 168 +++++++++++++++++++++++++ net/xdp/xsk_queue.h | 62 +++++++++ 16 files changed, 690 insertions(+) -- 2.34.1
1 2
0 0
[PATCH openEuler-1.0-LTS] ASoC: meson: axg-card: fix 'use-after-free'
by Zeng Heng 08 Oct '24

08 Oct '24
From: Arseniy Krasnov <avkrasnov(a)salutedevices.com> stable inclusion from stable-v6.6.52 commit e43364f578cdc2f8083abbc0cb743ea55e827c29 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9R1 CVE: CVE-2024-46849 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id… -------------------------------- commit 4f9a71435953f941969a4f017e2357db62d85a86 upstream. Buffer 'card->dai_link' is reallocated in 'meson_card_reallocate_links()', so move 'pad' pointer initialization after this function when memory is already reallocated. Kasan bug report: ================================================================== BUG: KASAN: slab-use-after-free in axg_card_add_link+0x76c/0x9bc Read of size 8 at addr ffff000000e8b260 by task modprobe/356 CPU: 0 PID: 356 Comm: modprobe Tainted: G O 6.9.12-sdkernel #1 Call trace: dump_backtrace+0x94/0xec show_stack+0x18/0x24 dump_stack_lvl+0x78/0x90 print_report+0xfc/0x5c0 kasan_report+0xb8/0xfc __asan_load8+0x9c/0xb8 axg_card_add_link+0x76c/0x9bc [snd_soc_meson_axg_sound_card] meson_card_probe+0x344/0x3b8 [snd_soc_meson_card_utils] platform_probe+0x8c/0xf4 really_probe+0x110/0x39c __driver_probe_device+0xb8/0x18c driver_probe_device+0x108/0x1d8 __driver_attach+0xd0/0x25c bus_for_each_dev+0xe0/0x154 driver_attach+0x34/0x44 bus_add_driver+0x134/0x294 driver_register+0xa8/0x1e8 __platform_driver_register+0x44/0x54 axg_card_pdrv_init+0x20/0x1000 [snd_soc_meson_axg_sound_card] do_one_initcall+0xdc/0x25c do_init_module+0x10c/0x334 load_module+0x24c4/0x26cc init_module_from_file+0xd4/0x128 __arm64_sys_finit_module+0x1f4/0x41c invoke_syscall+0x60/0x188 el0_svc_common.constprop.0+0x78/0x13c do_el0_svc+0x30/0x40 el0_svc+0x38/0x78 el0t_64_sync_handler+0x100/0x12c el0t_64_sync+0x190/0x194 Fixes: 7864a79f37b5 ("ASoC: meson: add axg sound card support") Cc: Stable(a)vger.kernel.org Signed-off-by: Arseniy Krasnov <avkrasnov(a)salutedevices.com> Reviewed-by: Jerome Brunet <jbrunet(a)baylibre.com> Link: https://patch.msgid.link/20240911142425.598631-1-avkrasnov@salutedevices.com Signed-off-by: Mark Brown <broonie(a)kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org> Signed-off-by: Zeng Heng <zengheng4(a)huawei.com> --- sound/soc/meson/axg-card.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sound/soc/meson/axg-card.c b/sound/soc/meson/axg-card.c index 2914ba0d965b..da9a8f946f74 100644 --- a/sound/soc/meson/axg-card.c +++ b/sound/soc/meson/axg-card.c @@ -241,7 +241,7 @@ static int axg_card_add_tdm_loopback(struct snd_soc_card *card, int *index) { struct axg_card *priv = snd_soc_card_get_drvdata(card); - struct snd_soc_dai_link *pad = &card->dai_link[*index]; + struct snd_soc_dai_link *pad; struct snd_soc_dai_link *lb; int ret; @@ -250,6 +250,7 @@ static int axg_card_add_tdm_loopback(struct snd_soc_card *card, if (ret) return ret; + pad = &card->dai_link[*index]; lb = &card->dai_link[*index + 1]; lb->name = kasprintf(GFP_KERNEL, "%s-lb", pad->name); -- 2.25.1
2 1
0 0
[PATCH openEuler-22.03-LTS-SP1] ASoC: meson: axg-card: fix 'use-after-free'
by Zeng Heng 08 Oct '24

08 Oct '24
From: Arseniy Krasnov <avkrasnov(a)salutedevices.com> stable inclusion from stable-v6.6.52 commit e43364f578cdc2f8083abbc0cb743ea55e827c29 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9R1 CVE: CVE-2024-46849 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id… -------------------------------- commit 4f9a71435953f941969a4f017e2357db62d85a86 upstream. Buffer 'card->dai_link' is reallocated in 'meson_card_reallocate_links()', so move 'pad' pointer initialization after this function when memory is already reallocated. Kasan bug report: ================================================================== BUG: KASAN: slab-use-after-free in axg_card_add_link+0x76c/0x9bc Read of size 8 at addr ffff000000e8b260 by task modprobe/356 CPU: 0 PID: 356 Comm: modprobe Tainted: G O 6.9.12-sdkernel #1 Call trace: dump_backtrace+0x94/0xec show_stack+0x18/0x24 dump_stack_lvl+0x78/0x90 print_report+0xfc/0x5c0 kasan_report+0xb8/0xfc __asan_load8+0x9c/0xb8 axg_card_add_link+0x76c/0x9bc [snd_soc_meson_axg_sound_card] meson_card_probe+0x344/0x3b8 [snd_soc_meson_card_utils] platform_probe+0x8c/0xf4 really_probe+0x110/0x39c __driver_probe_device+0xb8/0x18c driver_probe_device+0x108/0x1d8 __driver_attach+0xd0/0x25c bus_for_each_dev+0xe0/0x154 driver_attach+0x34/0x44 bus_add_driver+0x134/0x294 driver_register+0xa8/0x1e8 __platform_driver_register+0x44/0x54 axg_card_pdrv_init+0x20/0x1000 [snd_soc_meson_axg_sound_card] do_one_initcall+0xdc/0x25c do_init_module+0x10c/0x334 load_module+0x24c4/0x26cc init_module_from_file+0xd4/0x128 __arm64_sys_finit_module+0x1f4/0x41c invoke_syscall+0x60/0x188 el0_svc_common.constprop.0+0x78/0x13c do_el0_svc+0x30/0x40 el0_svc+0x38/0x78 el0t_64_sync_handler+0x100/0x12c el0t_64_sync+0x190/0x194 Fixes: 7864a79f37b5 ("ASoC: meson: add axg sound card support") Cc: Stable(a)vger.kernel.org Signed-off-by: Arseniy Krasnov <avkrasnov(a)salutedevices.com> Reviewed-by: Jerome Brunet <jbrunet(a)baylibre.com> Link: https://patch.msgid.link/20240911142425.598631-1-avkrasnov@salutedevices.com Signed-off-by: Mark Brown <broonie(a)kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org> Signed-off-by: Zeng Heng <zengheng4(a)huawei.com> --- sound/soc/meson/axg-card.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sound/soc/meson/axg-card.c b/sound/soc/meson/axg-card.c index 2b77010c2c5c..985dbe1805e3 100644 --- a/sound/soc/meson/axg-card.c +++ b/sound/soc/meson/axg-card.c @@ -104,7 +104,7 @@ static int axg_card_add_tdm_loopback(struct snd_soc_card *card, int *index) { struct meson_card *priv = snd_soc_card_get_drvdata(card); - struct snd_soc_dai_link *pad = &card->dai_link[*index]; + struct snd_soc_dai_link *pad; struct snd_soc_dai_link *lb; struct snd_soc_dai_link_component *dlc; int ret; @@ -114,6 +114,7 @@ static int axg_card_add_tdm_loopback(struct snd_soc_card *card, if (ret) return ret; + pad = &card->dai_link[*index]; lb = &card->dai_link[*index + 1]; lb->name = devm_kasprintf(card->dev, GFP_KERNEL, "%s-lb", pad->name); -- 2.25.1
2 1
0 0
[PATCH OLK-5.10] ASoC: meson: axg-card: fix 'use-after-free'
by Zeng Heng 08 Oct '24

08 Oct '24
From: Arseniy Krasnov <avkrasnov(a)salutedevices.com> stable inclusion from stable-v6.6.52 commit e43364f578cdc2f8083abbc0cb743ea55e827c29 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9R1 CVE: CVE-2024-46849 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id… -------------------------------- commit 4f9a71435953f941969a4f017e2357db62d85a86 upstream. Buffer 'card->dai_link' is reallocated in 'meson_card_reallocate_links()', so move 'pad' pointer initialization after this function when memory is already reallocated. Kasan bug report: ================================================================== BUG: KASAN: slab-use-after-free in axg_card_add_link+0x76c/0x9bc Read of size 8 at addr ffff000000e8b260 by task modprobe/356 CPU: 0 PID: 356 Comm: modprobe Tainted: G O 6.9.12-sdkernel #1 Call trace: dump_backtrace+0x94/0xec show_stack+0x18/0x24 dump_stack_lvl+0x78/0x90 print_report+0xfc/0x5c0 kasan_report+0xb8/0xfc __asan_load8+0x9c/0xb8 axg_card_add_link+0x76c/0x9bc [snd_soc_meson_axg_sound_card] meson_card_probe+0x344/0x3b8 [snd_soc_meson_card_utils] platform_probe+0x8c/0xf4 really_probe+0x110/0x39c __driver_probe_device+0xb8/0x18c driver_probe_device+0x108/0x1d8 __driver_attach+0xd0/0x25c bus_for_each_dev+0xe0/0x154 driver_attach+0x34/0x44 bus_add_driver+0x134/0x294 driver_register+0xa8/0x1e8 __platform_driver_register+0x44/0x54 axg_card_pdrv_init+0x20/0x1000 [snd_soc_meson_axg_sound_card] do_one_initcall+0xdc/0x25c do_init_module+0x10c/0x334 load_module+0x24c4/0x26cc init_module_from_file+0xd4/0x128 __arm64_sys_finit_module+0x1f4/0x41c invoke_syscall+0x60/0x188 el0_svc_common.constprop.0+0x78/0x13c do_el0_svc+0x30/0x40 el0_svc+0x38/0x78 el0t_64_sync_handler+0x100/0x12c el0t_64_sync+0x190/0x194 Fixes: 7864a79f37b5 ("ASoC: meson: add axg sound card support") Cc: Stable(a)vger.kernel.org Signed-off-by: Arseniy Krasnov <avkrasnov(a)salutedevices.com> Reviewed-by: Jerome Brunet <jbrunet(a)baylibre.com> Link: https://patch.msgid.link/20240911142425.598631-1-avkrasnov@salutedevices.com Signed-off-by: Mark Brown <broonie(a)kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org> Signed-off-by: Zeng Heng <zengheng4(a)huawei.com> --- sound/soc/meson/axg-card.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sound/soc/meson/axg-card.c b/sound/soc/meson/axg-card.c index 2b77010c2c5c..985dbe1805e3 100644 --- a/sound/soc/meson/axg-card.c +++ b/sound/soc/meson/axg-card.c @@ -104,7 +104,7 @@ static int axg_card_add_tdm_loopback(struct snd_soc_card *card, int *index) { struct meson_card *priv = snd_soc_card_get_drvdata(card); - struct snd_soc_dai_link *pad = &card->dai_link[*index]; + struct snd_soc_dai_link *pad; struct snd_soc_dai_link *lb; struct snd_soc_dai_link_component *dlc; int ret; @@ -114,6 +114,7 @@ static int axg_card_add_tdm_loopback(struct snd_soc_card *card, if (ret) return ret; + pad = &card->dai_link[*index]; lb = &card->dai_link[*index + 1]; lb->name = devm_kasprintf(card->dev, GFP_KERNEL, "%s-lb", pad->name); -- 2.25.1
2 1
0 0
[PATCH OLK-6.6] ASoC: meson: axg-card: fix 'use-after-free'
by Zeng Heng 08 Oct '24

08 Oct '24
From: Arseniy Krasnov <avkrasnov(a)salutedevices.com> stable inclusion from stable-v6.6.52 commit e43364f578cdc2f8083abbc0cb743ea55e827c29 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9R1 CVE: CVE-2024-46849 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id… -------------------------------- commit 4f9a71435953f941969a4f017e2357db62d85a86 upstream. Buffer 'card->dai_link' is reallocated in 'meson_card_reallocate_links()', so move 'pad' pointer initialization after this function when memory is already reallocated. Kasan bug report: ================================================================== BUG: KASAN: slab-use-after-free in axg_card_add_link+0x76c/0x9bc Read of size 8 at addr ffff000000e8b260 by task modprobe/356 CPU: 0 PID: 356 Comm: modprobe Tainted: G O 6.9.12-sdkernel #1 Call trace: dump_backtrace+0x94/0xec show_stack+0x18/0x24 dump_stack_lvl+0x78/0x90 print_report+0xfc/0x5c0 kasan_report+0xb8/0xfc __asan_load8+0x9c/0xb8 axg_card_add_link+0x76c/0x9bc [snd_soc_meson_axg_sound_card] meson_card_probe+0x344/0x3b8 [snd_soc_meson_card_utils] platform_probe+0x8c/0xf4 really_probe+0x110/0x39c __driver_probe_device+0xb8/0x18c driver_probe_device+0x108/0x1d8 __driver_attach+0xd0/0x25c bus_for_each_dev+0xe0/0x154 driver_attach+0x34/0x44 bus_add_driver+0x134/0x294 driver_register+0xa8/0x1e8 __platform_driver_register+0x44/0x54 axg_card_pdrv_init+0x20/0x1000 [snd_soc_meson_axg_sound_card] do_one_initcall+0xdc/0x25c do_init_module+0x10c/0x334 load_module+0x24c4/0x26cc init_module_from_file+0xd4/0x128 __arm64_sys_finit_module+0x1f4/0x41c invoke_syscall+0x60/0x188 el0_svc_common.constprop.0+0x78/0x13c do_el0_svc+0x30/0x40 el0_svc+0x38/0x78 el0t_64_sync_handler+0x100/0x12c el0t_64_sync+0x190/0x194 Fixes: 7864a79f37b5 ("ASoC: meson: add axg sound card support") Cc: Stable(a)vger.kernel.org Signed-off-by: Arseniy Krasnov <avkrasnov(a)salutedevices.com> Reviewed-by: Jerome Brunet <jbrunet(a)baylibre.com> Link: https://patch.msgid.link/20240911142425.598631-1-avkrasnov@salutedevices.com Signed-off-by: Mark Brown <broonie(a)kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org> Signed-off-by: Zeng Heng <zengheng4(a)huawei.com> --- sound/soc/meson/axg-card.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sound/soc/meson/axg-card.c b/sound/soc/meson/axg-card.c index b6f5b4572012..44175b1b14a2 100644 --- a/sound/soc/meson/axg-card.c +++ b/sound/soc/meson/axg-card.c @@ -104,7 +104,7 @@ static int axg_card_add_tdm_loopback(struct snd_soc_card *card, int *index) { struct meson_card *priv = snd_soc_card_get_drvdata(card); - struct snd_soc_dai_link *pad = &card->dai_link[*index]; + struct snd_soc_dai_link *pad; struct snd_soc_dai_link *lb; struct snd_soc_dai_link_component *dlc; int ret; @@ -114,6 +114,7 @@ static int axg_card_add_tdm_loopback(struct snd_soc_card *card, if (ret) return ret; + pad = &card->dai_link[*index]; lb = &card->dai_link[*index + 1]; lb->name = devm_kasprintf(card->dev, GFP_KERNEL, "%s-lb", pad->name); -- 2.25.1
2 1
0 0
[PATCH OLK-6.6] drm/amd/display: Check gpio_id before used as array index
by Zeng Heng 08 Oct '24

08 Oct '24
From: Alex Hung <alex.hung(a)amd.com> stable inclusion from stable-v6.6.50 commit 08e7755f754e3d2cef7d3a7da538d33526bd6f7c category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9MK CVE: CVE-2024-46818 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?… -------------------------------- [ Upstream commit 2a5626eeb3b5eec7a36886f9556113dd93ec8ed6 ] [WHY & HOW] GPIO_ID_UNKNOWN (-1) is not a valid value for array index and therefore should be checked in advance. This fixes 5 OVERRUN issues reported by Coverity. Reviewed-by: Harry Wentland <harry.wentland(a)amd.com> Acked-by: Tom Chung <chiahsuan.chung(a)amd.com> Signed-off-by: Alex Hung <alex.hung(a)amd.com> Tested-by: Daniel Wheeler <daniel.wheeler(a)amd.com> Signed-off-by: Alex Deucher <alexander.deucher(a)amd.com> Signed-off-by: Sasha Levin <sashal(a)kernel.org> Signed-off-by: Zeng Heng <zengheng4(a)huawei.com> --- drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c index 3ede6e02c3a7..2f8ca831afa2 100644 --- a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c +++ b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c @@ -239,6 +239,9 @@ static bool is_pin_busy( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return false; + return service->busyness[id][en]; } @@ -247,6 +250,9 @@ static void set_pin_busy( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return; + service->busyness[id][en] = true; } @@ -255,6 +261,9 @@ static void set_pin_free( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return; + service->busyness[id][en] = false; } @@ -263,7 +272,7 @@ enum gpio_result dal_gpio_service_lock( enum gpio_id id, uint32_t en) { - if (!service->busyness[id]) { + if (id != GPIO_ID_UNKNOWN && !service->busyness[id]) { ASSERT_CRITICAL(false); return GPIO_RESULT_OPEN_FAILED; } @@ -277,7 +286,7 @@ enum gpio_result dal_gpio_service_unlock( enum gpio_id id, uint32_t en) { - if (!service->busyness[id]) { + if (id != GPIO_ID_UNKNOWN && !service->busyness[id]) { ASSERT_CRITICAL(false); return GPIO_RESULT_OPEN_FAILED; } -- 2.25.1
2 1
0 0
[PATCH openEuler-22.03-LTS-SP1] drm/amd/display: Check gpio_id before used as array index
by Zeng Heng 08 Oct '24

08 Oct '24
From: Alex Hung <alex.hung(a)amd.com> stable inclusion from stable-v5.10.226 commit 40c2e8bc117cab8bca8814735f28a8b121654a84 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9MK CVE: CVE-2024-46818 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?… -------------------------------- [ Upstream commit 2a5626eeb3b5eec7a36886f9556113dd93ec8ed6 ] [WHY & HOW] GPIO_ID_UNKNOWN (-1) is not a valid value for array index and therefore should be checked in advance. This fixes 5 OVERRUN issues reported by Coverity. Reviewed-by: Harry Wentland <harry.wentland(a)amd.com> Acked-by: Tom Chung <chiahsuan.chung(a)amd.com> Signed-off-by: Alex Hung <alex.hung(a)amd.com> Tested-by: Daniel Wheeler <daniel.wheeler(a)amd.com> Signed-off-by: Alex Deucher <alexander.deucher(a)amd.com> Signed-off-by: Sasha Levin <sashal(a)kernel.org> Signed-off-by: Zeng Heng <zengheng4(a)huawei.com> --- drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c index dae8e489c8cf..a7c92c64490c 100644 --- a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c +++ b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c @@ -241,6 +241,9 @@ static bool is_pin_busy( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return false; + return service->busyness[id][en]; } @@ -249,6 +252,9 @@ static void set_pin_busy( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return; + service->busyness[id][en] = true; } @@ -257,6 +263,9 @@ static void set_pin_free( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return; + service->busyness[id][en] = false; } @@ -265,7 +274,7 @@ enum gpio_result dal_gpio_service_lock( enum gpio_id id, uint32_t en) { - if (!service->busyness[id]) { + if (id != GPIO_ID_UNKNOWN && !service->busyness[id]) { ASSERT_CRITICAL(false); return GPIO_RESULT_OPEN_FAILED; } @@ -279,7 +288,7 @@ enum gpio_result dal_gpio_service_unlock( enum gpio_id id, uint32_t en) { - if (!service->busyness[id]) { + if (id != GPIO_ID_UNKNOWN && !service->busyness[id]) { ASSERT_CRITICAL(false); return GPIO_RESULT_OPEN_FAILED; } -- 2.25.1
2 1
0 0
[PATCH OLK-5.10] drm/amd/display: Check gpio_id before used as array index
by Zeng Heng 08 Oct '24

08 Oct '24
From: Alex Hung <alex.hung(a)amd.com> stable inclusion from stable-v5.10.226 commit 40c2e8bc117cab8bca8814735f28a8b121654a84 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9MK CVE: CVE-2024-46818 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?… -------------------------------- [ Upstream commit 2a5626eeb3b5eec7a36886f9556113dd93ec8ed6 ] [WHY & HOW] GPIO_ID_UNKNOWN (-1) is not a valid value for array index and therefore should be checked in advance. This fixes 5 OVERRUN issues reported by Coverity. Reviewed-by: Harry Wentland <harry.wentland(a)amd.com> Acked-by: Tom Chung <chiahsuan.chung(a)amd.com> Signed-off-by: Alex Hung <alex.hung(a)amd.com> Tested-by: Daniel Wheeler <daniel.wheeler(a)amd.com> Signed-off-by: Alex Deucher <alexander.deucher(a)amd.com> Signed-off-by: Sasha Levin <sashal(a)kernel.org> Signed-off-by: Zeng Heng <zengheng4(a)huawei.com> --- drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c index dae8e489c8cf..a7c92c64490c 100644 --- a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c +++ b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c @@ -241,6 +241,9 @@ static bool is_pin_busy( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return false; + return service->busyness[id][en]; } @@ -249,6 +252,9 @@ static void set_pin_busy( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return; + service->busyness[id][en] = true; } @@ -257,6 +263,9 @@ static void set_pin_free( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return; + service->busyness[id][en] = false; } @@ -265,7 +274,7 @@ enum gpio_result dal_gpio_service_lock( enum gpio_id id, uint32_t en) { - if (!service->busyness[id]) { + if (id != GPIO_ID_UNKNOWN && !service->busyness[id]) { ASSERT_CRITICAL(false); return GPIO_RESULT_OPEN_FAILED; } @@ -279,7 +288,7 @@ enum gpio_result dal_gpio_service_unlock( enum gpio_id id, uint32_t en) { - if (!service->busyness[id]) { + if (id != GPIO_ID_UNKNOWN && !service->busyness[id]) { ASSERT_CRITICAL(false); return GPIO_RESULT_OPEN_FAILED; } -- 2.25.1
2 1
0 0
[PATCH OLK-6.6] drm/amd/display: Check gpio_id before used as array index
by Zeng Heng 08 Oct '24

08 Oct '24
From: Alex Hung <alex.hung(a)amd.com> mainline inclusion from stable-v6.6.50 commit 08e7755f754e3d2cef7d3a7da538d33526bd6f7c category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9MK CVE: CVE-2024-46818 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?… -------------------------------- [ Upstream commit 2a5626eeb3b5eec7a36886f9556113dd93ec8ed6 ] [WHY & HOW] GPIO_ID_UNKNOWN (-1) is not a valid value for array index and therefore should be checked in advance. This fixes 5 OVERRUN issues reported by Coverity. Reviewed-by: Harry Wentland <harry.wentland(a)amd.com> Acked-by: Tom Chung <chiahsuan.chung(a)amd.com> Signed-off-by: Alex Hung <alex.hung(a)amd.com> Tested-by: Daniel Wheeler <daniel.wheeler(a)amd.com> Signed-off-by: Alex Deucher <alexander.deucher(a)amd.com> Signed-off-by: Sasha Levin <sashal(a)kernel.org> Signed-off-by: Zeng Heng <zengheng4(a)huawei.com> --- drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c index 3ede6e02c3a7..2f8ca831afa2 100644 --- a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c +++ b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c @@ -239,6 +239,9 @@ static bool is_pin_busy( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return false; + return service->busyness[id][en]; } @@ -247,6 +250,9 @@ static void set_pin_busy( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return; + service->busyness[id][en] = true; } @@ -255,6 +261,9 @@ static void set_pin_free( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return; + service->busyness[id][en] = false; } @@ -263,7 +272,7 @@ enum gpio_result dal_gpio_service_lock( enum gpio_id id, uint32_t en) { - if (!service->busyness[id]) { + if (id != GPIO_ID_UNKNOWN && !service->busyness[id]) { ASSERT_CRITICAL(false); return GPIO_RESULT_OPEN_FAILED; } @@ -277,7 +286,7 @@ enum gpio_result dal_gpio_service_unlock( enum gpio_id id, uint32_t en) { - if (!service->busyness[id]) { + if (id != GPIO_ID_UNKNOWN && !service->busyness[id]) { ASSERT_CRITICAL(false); return GPIO_RESULT_OPEN_FAILED; } -- 2.25.1
2 1
0 0
[PATCH OLK-6.6] drm/amd/display: Check gpio_id before used as array index
by Zeng Heng 08 Oct '24

08 Oct '24
From: Alex Hung <alex.hung(a)amd.com> mainline inclusion from stable-v6.6.50 commit 2a5626eeb3b5eec7a36886f9556113dd93ec8ed6 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9MK CVE: CVE-2024-46818 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?… -------------------------------- [ Upstream commit 2a5626eeb3b5eec7a36886f9556113dd93ec8ed6 ] [WHY & HOW] GPIO_ID_UNKNOWN (-1) is not a valid value for array index and therefore should be checked in advance. This fixes 5 OVERRUN issues reported by Coverity. Reviewed-by: Harry Wentland <harry.wentland(a)amd.com> Acked-by: Tom Chung <chiahsuan.chung(a)amd.com> Signed-off-by: Alex Hung <alex.hung(a)amd.com> Tested-by: Daniel Wheeler <daniel.wheeler(a)amd.com> Signed-off-by: Alex Deucher <alexander.deucher(a)amd.com> Signed-off-by: Sasha Levin <sashal(a)kernel.org> Signed-off-by: Zeng Heng <zengheng4(a)huawei.com> --- drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c index 3ede6e02c3a7..2f8ca831afa2 100644 --- a/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c +++ b/drivers/gpu/drm/amd/display/dc/gpio/gpio_service.c @@ -239,6 +239,9 @@ static bool is_pin_busy( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return false; + return service->busyness[id][en]; } @@ -247,6 +250,9 @@ static void set_pin_busy( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return; + service->busyness[id][en] = true; } @@ -255,6 +261,9 @@ static void set_pin_free( enum gpio_id id, uint32_t en) { + if (id == GPIO_ID_UNKNOWN) + return; + service->busyness[id][en] = false; } @@ -263,7 +272,7 @@ enum gpio_result dal_gpio_service_lock( enum gpio_id id, uint32_t en) { - if (!service->busyness[id]) { + if (id != GPIO_ID_UNKNOWN && !service->busyness[id]) { ASSERT_CRITICAL(false); return GPIO_RESULT_OPEN_FAILED; } @@ -277,7 +286,7 @@ enum gpio_result dal_gpio_service_unlock( enum gpio_id id, uint32_t en) { - if (!service->busyness[id]) { + if (id != GPIO_ID_UNKNOWN && !service->busyness[id]) { ASSERT_CRITICAL(false); return GPIO_RESULT_OPEN_FAILED; } -- 2.25.1
2 1
0 0
[PATCH OLK-6.6] cppc_cpufreq: Fix possible null pointer dereference
by Liu Mingrui 08 Oct '24

08 Oct '24
From: Aleksandr Mishin <amishin(a)t-argos.ru> stable inclusion from stable-v6.6.33 commit f84b9b25d045e67a7eee5e73f21278c8ab06713c category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/IA74DQ Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id… -------------------------------- [ Upstream commit cf7de25878a1f4508c69dc9f6819c21ba177dbfe ] cppc_cpufreq_get_rate() and hisi_cppc_cpufreq_get_rate() can be called from different places with various parameters. So cpufreq_cpu_get() can return null as 'policy' in some circumstances. Fix this bug by adding null return check. Found by Linux Verification Center (linuxtesting.org) with SVACE. Fixes: a28b2bfc099c ("cppc_cpufreq: replace per-cpu data array with a list") Signed-off-by: Aleksandr Mishin <amishin(a)t-argos.ru> Signed-off-by: Viresh Kumar <viresh.kumar(a)linaro.org> Signed-off-by: Sasha Levin <sashal(a)kernel.org> Conflicts: drivers/cpufreq/cppc_cpufreq.c [Context conflict] Signed-off-by: ZhangPeng <zhangpeng362(a)huawei.com> Signed-off-by: Liu Mingrui <liumingrui(a)huawei.com> --- drivers/cpufreq/cppc_cpufreq.c | 14 ++++++++++++-- 1 file changed, 12 insertions(+), 2 deletions(-) diff --git a/drivers/cpufreq/cppc_cpufreq.c b/drivers/cpufreq/cppc_cpufreq.c index 66e8c850e6f2..eb4e27a4d192 100644 --- a/drivers/cpufreq/cppc_cpufreq.c +++ b/drivers/cpufreq/cppc_cpufreq.c @@ -878,10 +878,15 @@ static unsigned int cppc_cpufreq_get_rate(unsigned int cpu) { struct fb_ctr_pair fb_ctrs = { .cpu = cpu, }; struct cpufreq_policy *policy = cpufreq_cpu_get(cpu); - struct cppc_cpudata *cpu_data = policy->driver_data; + struct cppc_cpudata *cpu_data; u64 delivered_perf; int ret; + if (!policy) + return -ENODEV; + + cpu_data = policy->driver_data; + cpufreq_cpu_put(policy); if (cpu_has_amu_feat(cpu)) @@ -961,10 +966,15 @@ static struct cpufreq_driver cppc_cpufreq_driver = { static unsigned int hisi_cppc_cpufreq_get_rate(unsigned int cpu) { struct cpufreq_policy *policy = cpufreq_cpu_get(cpu); - struct cppc_cpudata *cpu_data = policy->driver_data; + struct cppc_cpudata *cpu_data; u64 desired_perf; int ret; + if (!policy) + return -ENODEV; + + cpu_data = policy->driver_data; + cpufreq_cpu_put(policy); ret = cppc_get_desired_perf(cpu, &desired_perf); -- 2.25.1
2 1
0 0
[PATCH OLK-6.6] perf/x86/intel: Limit the period on Haswell
by Li Huafei 08 Oct '24

08 Oct '24
From: Kan Liang <kan.liang(a)linux.intel.com> stable inclusion from stable-v6.6.51 commit 0eaf812aa1506704f3b78be87036860e5d0fe81d category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IR511 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id… -------------------------------- commit 25dfc9e357af8aed1ca79b318a73f2c59c1f0b2b upstream. Running the ltp test cve-2015-3290 concurrently reports the following warnings. perfevents: irq loop stuck! WARNING: CPU: 31 PID: 32438 at arch/x86/events/intel/core.c:3174 intel_pmu_handle_irq+0x285/0x370 Call Trace: <NMI> ? __warn+0xa4/0x220 ? intel_pmu_handle_irq+0x285/0x370 ? __report_bug+0x123/0x130 ? intel_pmu_handle_irq+0x285/0x370 ? __report_bug+0x123/0x130 ? intel_pmu_handle_irq+0x285/0x370 ? report_bug+0x3e/0xa0 ? handle_bug+0x3c/0x70 ? exc_invalid_op+0x18/0x50 ? asm_exc_invalid_op+0x1a/0x20 ? irq_work_claim+0x1e/0x40 ? intel_pmu_handle_irq+0x285/0x370 perf_event_nmi_handler+0x3d/0x60 nmi_handle+0x104/0x330 Thanks to Thomas Gleixner's analysis, the issue is caused by the low initial period (1) of the frequency estimation algorithm, which triggers the defects of the HW, specifically erratum HSW11 and HSW143. (For the details, please refer https://lore.kernel.org/lkml/87plq9l5d2.ffs@tglx/) The HSW11 requires a period larger than 100 for the INST_RETIRED.ALL event, but the initial period in the freq mode is 1. The erratum is the same as the BDM11, which has been supported in the kernel. A minimum period of 128 is enforced as well on HSW. HSW143 is regarding that the fixed counter 1 may overcount 32 with the Hyper-Threading is enabled. However, based on the test, the hardware has more issues than it tells. Besides the fixed counter 1, the message 'interrupt took too long' can be observed on any counter which was armed with a period < 32 and two events expired in the same NMI. A minimum period of 32 is enforced for the rest of the events. The recommended workaround code of the HSW143 is not implemented. Because it only addresses the issue for the fixed counter. It brings extra overhead through extra MSR writing. No related overcounting issue has been reported so far. Fixes: 3a632cb229bf ("perf/x86/intel: Add simple Haswell PMU support") Reported-by: Li Huafei <lihuafei1(a)huawei.com> Suggested-by: Thomas Gleixner <tglx(a)linutronix.de> Signed-off-by: Kan Liang <kan.liang(a)linux.intel.com> Signed-off-by: Thomas Gleixner <tglx(a)linutronix.de> Cc: stable(a)vger.kernel.org Link: https://lore.kernel.org/all/20240819183004.3132920-1-kan.liang@linux.intel.… Closes: https://lore.kernel.org/lkml/20240729223328.327835-1-lihuafei1@huawei.com/ Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org> Conflicts: arch/x86/events/intel/core.c [ Context conflict due to the backported commit b0560bfd4b70 ("perf/x86/intel: Clean up the hybrid CPU type handling code"). ] Signed-off-by: Li Huafei <lihuafei1(a)huawei.com> --- arch/x86/events/intel/core.c | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/arch/x86/events/intel/core.c b/arch/x86/events/intel/core.c index 8b8e9189fd41..e2c1c51d8a01 100644 --- a/arch/x86/events/intel/core.c +++ b/arch/x86/events/intel/core.c @@ -4520,6 +4520,25 @@ static enum hybrid_cpu_type adl_get_hybrid_cpu_type(void) return HYBRID_INTEL_CORE; } +static inline bool erratum_hsw11(struct perf_event *event) +{ + return (event->hw.config & INTEL_ARCH_EVENT_MASK) == + X86_CONFIG(.event=0xc0, .umask=0x01); +} + +/* + * The HSW11 requires a period larger than 100 which is the same as the BDM11. + * A minimum period of 128 is enforced as well for the INST_RETIRED.ALL. + * + * The message 'interrupt took too long' can be observed on any counter which + * was armed with a period < 32 and two events expired in the same NMI. + * A minimum period of 32 is enforced for the rest of the events. + */ +static void hsw_limit_period(struct perf_event *event, s64 *left) +{ + *left = max(*left, erratum_hsw11(event) ? 128 : 32); +} + /* * Broadwell: * @@ -4537,8 +4556,7 @@ static enum hybrid_cpu_type adl_get_hybrid_cpu_type(void) */ static void bdw_limit_period(struct perf_event *event, s64 *left) { - if ((event->hw.config & INTEL_ARCH_EVENT_MASK) == - X86_CONFIG(.event=0xc0, .umask=0x01)) { + if (erratum_hsw11(event)) { if (*left < 128) *left = 128; *left &= ~0x3fULL; @@ -6598,6 +6616,7 @@ __init int intel_pmu_init(void) x86_pmu.hw_config = hsw_hw_config; x86_pmu.get_event_constraints = hsw_get_event_constraints; + x86_pmu.limit_period = hsw_limit_period; x86_pmu.lbr_double_abort = true; extra_attr = boot_cpu_has(X86_FEATURE_RTM) ? hsw_format_attr : nhm_format_attr; -- 2.25.1
2 1
0 0
[PATCH OLK-5.10] perf/x86/intel: Limit the period on Haswell
by Li Huafei 08 Oct '24

08 Oct '24
From: Kan Liang <kan.liang(a)linux.intel.com> mainline inclusion from mainline-v6.11-rc7 commit 25dfc9e357af8aed1ca79b318a73f2c59c1f0b2b category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAR511 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?… -------------------------------- Running the ltp test cve-2015-3290 concurrently reports the following warnings. perfevents: irq loop stuck! WARNING: CPU: 31 PID: 32438 at arch/x86/events/intel/core.c:3174 intel_pmu_handle_irq+0x285/0x370 Call Trace: <NMI> ? __warn+0xa4/0x220 ? intel_pmu_handle_irq+0x285/0x370 ? __report_bug+0x123/0x130 ? intel_pmu_handle_irq+0x285/0x370 ? __report_bug+0x123/0x130 ? intel_pmu_handle_irq+0x285/0x370 ? report_bug+0x3e/0xa0 ? handle_bug+0x3c/0x70 ? exc_invalid_op+0x18/0x50 ? asm_exc_invalid_op+0x1a/0x20 ? irq_work_claim+0x1e/0x40 ? intel_pmu_handle_irq+0x285/0x370 perf_event_nmi_handler+0x3d/0x60 nmi_handle+0x104/0x330 Thanks to Thomas Gleixner's analysis, the issue is caused by the low initial period (1) of the frequency estimation algorithm, which triggers the defects of the HW, specifically erratum HSW11 and HSW143. (For the details, please refer https://lore.kernel.org/lkml/87plq9l5d2.ffs@tglx/) The HSW11 requires a period larger than 100 for the INST_RETIRED.ALL event, but the initial period in the freq mode is 1. The erratum is the same as the BDM11, which has been supported in the kernel. A minimum period of 128 is enforced as well on HSW. HSW143 is regarding that the fixed counter 1 may overcount 32 with the Hyper-Threading is enabled. However, based on the test, the hardware has more issues than it tells. Besides the fixed counter 1, the message 'interrupt took too long' can be observed on any counter which was armed with a period < 32 and two events expired in the same NMI. A minimum period of 32 is enforced for the rest of the events. The recommended workaround code of the HSW143 is not implemented. Because it only addresses the issue for the fixed counter. It brings extra overhead through extra MSR writing. No related overcounting issue has been reported so far. Fixes: 3a632cb229bf ("perf/x86/intel: Add simple Haswell PMU support") Reported-by: Li Huafei <lihuafei1(a)huawei.com> Suggested-by: Thomas Gleixner <tglx(a)linutronix.de> Signed-off-by: Kan Liang <kan.liang(a)linux.intel.com> Signed-off-by: Thomas Gleixner <tglx(a)linutronix.de> Cc: stable(a)vger.kernel.org Link: https://lore.kernel.org/all/20240819183004.3132920-1-kan.liang@linux.intel.… Closes: https://lore.kernel.org/lkml/20240729223328.327835-1-lihuafei1@huawei.com/ Conflicts: arch/x86/events/intel/core.c [ Adapted x86_pmu::limit_period signature due to commit 28f0f3c44b5c (“perf/x86: Change x86_pmu::limit_period signature”) not backported. ] Signed-off-by: Li Huafei <lihuafei1(a)huawei.com> --- arch/x86/events/intel/core.c | 23 +++++++++++++++++++++-- 1 file changed, 21 insertions(+), 2 deletions(-) diff --git a/arch/x86/events/intel/core.c b/arch/x86/events/intel/core.c index 4372ed2d1637..1786e8d85b6b 100644 --- a/arch/x86/events/intel/core.c +++ b/arch/x86/events/intel/core.c @@ -4414,6 +4414,25 @@ static u8 adl_get_hybrid_cpu_type(void) return hybrid_big; } +static inline bool erratum_hsw11(struct perf_event *event) +{ + return (event->hw.config & INTEL_ARCH_EVENT_MASK) == + X86_CONFIG(.event=0xc0, .umask=0x01); +} + +/* + * The HSW11 requires a period larger than 100 which is the same as the BDM11. + * A minimum period of 128 is enforced as well for the INST_RETIRED.ALL. + * + * The message 'interrupt took too long' can be observed on any counter which + * was armed with a period < 32 and two events expired in the same NMI. + * A minimum period of 32 is enforced for the rest of the events. + */ +static u64 hsw_limit_period(struct perf_event *event, u64 left) +{ + return max(left, erratum_hsw11(event) ? 128ULL : 32ULL); +} + /* * Broadwell: * @@ -4431,8 +4450,7 @@ static u8 adl_get_hybrid_cpu_type(void) */ static u64 bdw_limit_period(struct perf_event *event, u64 left) { - if ((event->hw.config & INTEL_ARCH_EVENT_MASK) == - X86_CONFIG(.event=0xc0, .umask=0x01)) { + if (erratum_hsw11(event)) { if (left < 128) left = 128; left &= ~0x3fULL; @@ -6406,6 +6424,7 @@ __init int intel_pmu_init(void) x86_pmu.hw_config = hsw_hw_config; x86_pmu.get_event_constraints = hsw_get_event_constraints; + x86_pmu.limit_period = hsw_limit_period; x86_pmu.lbr_double_abort = true; extra_attr = boot_cpu_has(X86_FEATURE_RTM) ? hsw_format_attr : nhm_format_attr; -- 2.25.1
2 1
0 0
[openeuler:openEuler-1.0-LTS 9625/23811] drivers/soundwire/bus_type.o: warning: objtool: missing symbol for section .init.text
by kernel test robot 08 Oct '24

08 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: fe38a6fef0e5f4ba9c21d3e26381987519b7edc7 [9625/23811] soundwire: fix regmap dependencies and align with other serial links config: x86_64-buildonly-randconfig-003-20240925 (https://download.01.org/0day-ci/archive/20241008/202410080128.3Ornv3xR-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241008/202410080128.3Ornv3xR-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/202410080128.3Ornv3xR-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/soundwire/bus_type.o: warning: objtool: missing symbol for section .init.text -- >> drivers/soundwire/intel.o: warning: objtool: missing symbol for section .init.text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 8557/23811] lib/test_sort.o: warning: objtool: missing symbol for section .text.unlikely
by kernel test robot 07 Oct '24

07 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 775947c125d5bd6e00e0dcf9d12c57fd5d44d07f [8557/23811] asm-generic: fix -Wtype-limits compiler warnings config: x86_64-buildonly-randconfig-003-20240925 (https://download.01.org/0day-ci/archive/20241007/202410071411.kGlEzJT5-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241007/202410071411.kGlEzJT5-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/202410071411.kGlEzJT5-lkp@intel.com/ All warnings (new ones prefixed by >>): >> lib/test_sort.o: warning: objtool: missing symbol for section .text.unlikely -- >> lib/test_list_sort.o: warning: objtool: missing symbol for section .text.unlikely -- >> lib/test_printf.o: warning: objtool: missing symbol for section .text.unlikely -- >> drivers/hwmon/coretemp.o: warning: objtool: missing symbol for section .text.unlikely -- >> drivers/hsi/hsi_boardinfo.o: warning: objtool: missing symbol for section .text.unlikely -- drivers/mtd/nand/raw/diskonchip.c: In function 'DoC_Delay': drivers/mtd/nand/raw/diskonchip.c:220:23: warning: variable 'dummy' set but not used [-Wunused-but-set-variable] 220 | volatile char dummy; | ^~~~~ drivers/mtd/nand/raw/diskonchip.c: In function 'doc200x_calculate_ecc': drivers/mtd/nand/raw/diskonchip.c:845:13: warning: variable 'emptymatch' set but not used [-Wunused-but-set-variable] 845 | int emptymatch = 1; | ^~~~~~~~~~ In file included from include/linux/kernel.h:14, from drivers/mtd/nand/raw/diskonchip.c:18: drivers/mtd/nand/raw/diskonchip.c: In function 'doc_probe': include/linux/printk.h:348:9: warning: this statement may fall through [-Wimplicit-fallthrough=] 348 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/mtd/nand/raw/diskonchip.c:1497:25: note: in expansion of macro 'pr_err' 1497 | pr_err("DiskOnChip Millennium Plus 32MB is not supported, ignoring.\n"); | ^~~~~~ drivers/mtd/nand/raw/diskonchip.c:1498:17: note: here 1498 | default: | ^~~~~~~ >> drivers/mtd/nand/raw/diskonchip.o: warning: objtool: missing symbol for section .text.unlikely -- kernel/events/hw_breakpoint.c:84:12: warning: no previous prototype for 'hw_breakpoint_weight' [-Wmissing-prototypes] 84 | __weak int hw_breakpoint_weight(struct perf_event *bp) | ^~~~~~~~~~~~~~~~~~~~ kernel/events/hw_breakpoint.c:232:13: warning: no previous prototype for 'arch_unregister_hw_breakpoint' [-Wmissing-prototypes] 232 | __weak void arch_unregister_hw_breakpoint(struct perf_event *bp) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/events/hw_breakpoint.c:458: warning: Function parameter or member 'context' not described in 'register_user_hw_breakpoint' kernel/events/hw_breakpoint.c:557: warning: Function parameter or member 'context' not described in 'register_wide_hw_breakpoint' >> kernel/events/hw_breakpoint.o: warning: objtool: missing symbol for section .text.unlikely -- >> drivers/thermal/intel_powerclamp.o: warning: objtool: missing symbol for section .text.unlikely -- >> drivers/clk/bcm/clk-iproc-asiu.o: warning: objtool: missing symbol for section .text.unlikely -- >> drivers/clk/renesas/clk-div6.o: warning: objtool: missing symbol for section .text.unlikely -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[PATCH OLK-6.6] dma-buf: heaps: Fix off-by-one in CMA heap fault handler
by Xiongfeng Wang 07 Oct '24

07 Oct '24
From: "T.J. Mercier" <tjmercier(a)google.com> stable inclusion from stable-v6.6.52 commit eb7fc8b65cea22f9038c52398c8b22849e9620ea category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9M8 CVE: CVE-2024-46852 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id… -------------------------------- commit ea5ff5d351b520524019f7ff7f9ce418de2dad87 upstream. Until VM_DONTEXPAND was added in commit 1c1914d6e8c6 ("dma-buf: heaps: Don't track CMA dma-buf pages under RssFile") it was possible to obtain a mapping larger than the buffer size via mremap and bypass the overflow check in dma_buf_mmap_internal. When using such a mapping to attempt to fault past the end of the buffer, the CMA heap fault handler also checks the fault offset against the buffer size, but gets the boundary wrong by 1. Fix the boundary check so that we don't read off the end of the pages array and insert an arbitrary page in the mapping. Reported-by: Xingyu Jin <xingyuj(a)google.com> Fixes: a5d2d29e24be ("dma-buf: heaps: Move heap-helper logic into the cma_heap implementation") Cc: stable(a)vger.kernel.org # Applicable >= 5.10. Needs adjustments only for 5.10. Signed-off-by: T.J. Mercier <tjmercier(a)google.com> Acked-by: John Stultz <jstultz(a)google.com> Signed-off-by: Sumit Semwal <sumit.semwal(a)linaro.org> Link: https://patchwork.freedesktop.org/patch/msgid/20240830192627.2546033-1-tjme… Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org> Signed-off-by: Xiongfeng Wang <wangxiongfeng2(a)huawei.com> --- drivers/dma-buf/heaps/cma_heap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/dma-buf/heaps/cma_heap.c b/drivers/dma-buf/heaps/cma_heap.c index ee899f8e6721..bea7e574f916 100644 --- a/drivers/dma-buf/heaps/cma_heap.c +++ b/drivers/dma-buf/heaps/cma_heap.c @@ -165,7 +165,7 @@ static vm_fault_t cma_heap_vm_fault(struct vm_fault *vmf) struct vm_area_struct *vma = vmf->vma; struct cma_heap_buffer *buffer = vma->vm_private_data; - if (vmf->pgoff > buffer->pagecount) + if (vmf->pgoff >= buffer->pagecount) return VM_FAULT_SIGBUS; vmf->page = buffer->pages[vmf->pgoff]; -- 2.20.1
2 1
0 0
[openeuler:openEuler-1.0-LTS 8452/23811] kernel/ktask.o: warning: objtool: missing symbol for section .init.text
by kernel test robot 07 Oct '24

07 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: c48676ef6b6f9cb8497d6264ae9ff71b87630337 [8452/23811] ktask: multithread CPU-intensive kernel work config: x86_64-buildonly-randconfig-003-20240925 (https://download.01.org/0day-ci/archive/20241007/202410070443.gzxmSrdz-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241007/202410070443.gzxmSrdz-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/202410070443.gzxmSrdz-lkp@intel.com/ All warnings (new ones prefixed by >>): >> kernel/ktask.o: warning: objtool: missing symbol for section .init.text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 6661/23811] kernel/signal.o: warning: objtool: missing symbol for section .text.unlikely
by kernel test robot 06 Oct '24

06 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: f1bfcb97c436ae547c2889f3a25d74d85867e09f [6661/23811] kernel/signal.c: trace_signal_deliver when signal_group_exit config: x86_64-buildonly-randconfig-003-20240925 (https://download.01.org/0day-ci/archive/20241006/202410062155.gpahLOpk-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241006/202410062155.gpahLOpk-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/202410062155.gpahLOpk-lkp@intel.com/ All warnings (new ones prefixed by >>): include/linux/signal.h:128:9: note: here 128 | case 2: \ | ^~~~ include/linux/signal.h:141:1: note: in expansion of macro '_SIG_SET_BINOP' 141 | _SIG_SET_BINOP(sigorsets, _sig_or) | ^~~~~~~~~~~~~~ include/linux/signal.h:130:27: warning: this statement may fall through [-Wimplicit-fallthrough=] 130 | r->sig[1] = op(a1, b1); \ | ^ include/linux/signal.h:141:1: note: in expansion of macro '_SIG_SET_BINOP' 141 | _SIG_SET_BINOP(sigorsets, _sig_or) | ^~~~~~~~~~~~~~ include/linux/signal.h:131:9: note: here 131 | case 1: \ | ^~~~ include/linux/signal.h:141:1: note: in expansion of macro '_SIG_SET_BINOP' 141 | _SIG_SET_BINOP(sigorsets, _sig_or) | ^~~~~~~~~~~~~~ include/linux/signal.h: In function 'sigandsets': include/linux/signal.h:127:27: warning: this statement may fall through [-Wimplicit-fallthrough=] 127 | r->sig[2] = op(a2, b2); \ | ^ include/linux/signal.h:144:1: note: in expansion of macro '_SIG_SET_BINOP' 144 | _SIG_SET_BINOP(sigandsets, _sig_and) | ^~~~~~~~~~~~~~ include/linux/signal.h:128:9: note: here 128 | case 2: \ | ^~~~ include/linux/signal.h:144:1: note: in expansion of macro '_SIG_SET_BINOP' 144 | _SIG_SET_BINOP(sigandsets, _sig_and) | ^~~~~~~~~~~~~~ include/linux/signal.h:130:27: warning: this statement may fall through [-Wimplicit-fallthrough=] 130 | r->sig[1] = op(a1, b1); \ | ^ include/linux/signal.h:144:1: note: in expansion of macro '_SIG_SET_BINOP' 144 | _SIG_SET_BINOP(sigandsets, _sig_and) | ^~~~~~~~~~~~~~ include/linux/signal.h:131:9: note: here 131 | case 1: \ | ^~~~ include/linux/signal.h:144:1: note: in expansion of macro '_SIG_SET_BINOP' 144 | _SIG_SET_BINOP(sigandsets, _sig_and) | ^~~~~~~~~~~~~~ include/linux/signal.h: In function 'sigandnsets': include/linux/signal.h:127:27: warning: this statement may fall through [-Wimplicit-fallthrough=] 127 | r->sig[2] = op(a2, b2); \ | ^ include/linux/signal.h:147:1: note: in expansion of macro '_SIG_SET_BINOP' 147 | _SIG_SET_BINOP(sigandnsets, _sig_andn) | ^~~~~~~~~~~~~~ include/linux/signal.h:128:9: note: here 128 | case 2: \ | ^~~~ include/linux/signal.h:147:1: note: in expansion of macro '_SIG_SET_BINOP' 147 | _SIG_SET_BINOP(sigandnsets, _sig_andn) | ^~~~~~~~~~~~~~ include/linux/signal.h:130:27: warning: this statement may fall through [-Wimplicit-fallthrough=] 130 | r->sig[1] = op(a1, b1); \ | ^ include/linux/signal.h:147:1: note: in expansion of macro '_SIG_SET_BINOP' 147 | _SIG_SET_BINOP(sigandnsets, _sig_andn) | ^~~~~~~~~~~~~~ include/linux/signal.h:131:9: note: here 131 | case 1: \ | ^~~~ include/linux/signal.h:147:1: note: in expansion of macro '_SIG_SET_BINOP' 147 | _SIG_SET_BINOP(sigandnsets, _sig_andn) | ^~~~~~~~~~~~~~ kernel/signal.c: In function 'check_kill_permission': kernel/signal.c:830:34: warning: this statement may fall through [-Wimplicit-fallthrough=] 830 | if (!sid || sid == task_session(current)) | ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/signal.c:832:17: note: here 832 | default: | ^~~~~~~ include/linux/signal.h: In function 'signotset': include/linux/signal.h:159:29: warning: this statement may fall through [-Wimplicit-fallthrough=] 159 | set->sig[2] = op(set->sig[2]); \ | ^ include/linux/signal.h:169:1: note: in expansion of macro '_SIG_SET_OP' 169 | _SIG_SET_OP(signotset, _sig_not) | ^~~~~~~~~~~ include/linux/signal.h:160:9: note: here 160 | case 2: set->sig[1] = op(set->sig[1]); \ | ^~~~ include/linux/signal.h:169:1: note: in expansion of macro '_SIG_SET_OP' 169 | _SIG_SET_OP(signotset, _sig_not) | ^~~~~~~~~~~ include/linux/signal.h:160:29: warning: this statement may fall through [-Wimplicit-fallthrough=] 160 | case 2: set->sig[1] = op(set->sig[1]); \ | ^ include/linux/signal.h:169:1: note: in expansion of macro '_SIG_SET_OP' 169 | _SIG_SET_OP(signotset, _sig_not) | ^~~~~~~~~~~ include/linux/signal.h:161:9: note: here 161 | case 1: set->sig[0] = op(set->sig[0]); \ | ^~~~ include/linux/signal.h:169:1: note: in expansion of macro '_SIG_SET_OP' 169 | _SIG_SET_OP(signotset, _sig_not) | ^~~~~~~~~~~ >> kernel/signal.o: warning: objtool: missing symbol for section .text.unlikely -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 3328/23811] drivers/char/ipmi/ipmi_si_intf.o: warning: objtool: missing symbol for section .init.text
by kernel test robot 06 Oct '24

06 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 221a9ce1bd3b42ba2226d22663110aed96ae471b [3328/23811] ipmi_si: Fix crash when using hard-coded device config: x86_64-buildonly-randconfig-003-20240925 (https://download.01.org/0day-ci/archive/20241006/202410060723.NM8MwCWb-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241006/202410060723.NM8MwCWb-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/202410060723.NM8MwCWb-lkp@intel.com/ All warnings (new ones prefixed by >>): In file included from drivers/char/ipmi/ipmi_si_intf.c:22: include/linux/module.h:133:13: warning: 'init_module' specifies less restrictive attribute than its target 'init_ipmi_si': 'cold' [-Wmissing-attributes] 133 | int init_module(void) __attribute__((alias(#initfn))); | ^~~~~~~~~~~ drivers/char/ipmi/ipmi_si_intf.c:2175:1: note: in expansion of macro 'module_init' 2175 | module_init(init_ipmi_si); | ^~~~~~~~~~~ drivers/char/ipmi/ipmi_si_intf.c:2109:19: note: 'init_module' target declared here 2109 | static int __init init_ipmi_si(void) | ^~~~~~~~~~~~ >> drivers/char/ipmi/ipmi_si_intf.o: warning: objtool: missing symbol for section .init.text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 6289/23811] drivers/scsi/hisi_sas/hisi_sas_main.c:2888:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_linkrate_write' was not declared. Should it be static?
by kernel test robot 04 Oct '24

04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 7add7cc0243793dca7bdeeb53c37212a87076c69 [6289/23811] hisi_sas: add the bist loopback feature. config: arm64-randconfig-r111-20241003 (https://download.01.org/0day-ci/archive/20241004/202410041051.A286AcSf-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce: (https://download.01.org/0day-ci/archive/20241004/202410041051.A286AcSf-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/202410041051.A286AcSf-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) drivers/scsi/hisi_sas/hisi_sas_main.c:1660:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_main.c:1660:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed drivers/scsi/hisi_sas/hisi_sas_main.c:1660:52: sparse: got restricted __le16 [usertype] drivers/scsi/hisi_sas/hisi_sas_main.c:1917:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_main.c:1917:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed drivers/scsi/hisi_sas/hisi_sas_main.c:1917:52: sparse: got restricted __le16 [usertype] drivers/scsi/hisi_sas/hisi_sas_main.c:2800:12: sparse: sparse: symbol 'hisi_sas_debugfs_to_reg_name' was not declared. Should it be static? drivers/scsi/hisi_sas/hisi_sas_main.c:2827:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2827:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2827:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2827:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2827:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2827:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2830:36: sparse: sparse: cast to restricted __le32 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2888:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_linkrate_write' was not declared. Should it be static? >> drivers/scsi/hisi_sas/hisi_sas_main.c:2979:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_code_mode_write' was not declared. Should it be static? >> drivers/scsi/hisi_sas/hisi_sas_main.c:3034:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_phy_write' was not declared. Should it be static? >> drivers/scsi/hisi_sas/hisi_sas_main.c:3120:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_mode_write' was not declared. Should it be static? >> drivers/scsi/hisi_sas/hisi_sas_main.c:3174:9: sparse: sparse: symbol 'hisi_sas_debugfs_bist_enable_write' was not declared. Should it be static? drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:3277:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:3296:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2801:1: warning: no previous prototype for 'hisi_sas_debugfs_to_reg_name' [-Wmissing-prototypes] 2801 | hisi_sas_debugfs_to_reg_name(int off, int base_off, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/hisi_sas/hisi_sas_main.c:2888:9: warning: no previous prototype for 'hisi_sas_debugfs_bist_linkrate_write' [-Wmissing-prototypes] 2888 | ssize_t hisi_sas_debugfs_bist_linkrate_write(struct file *filp, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/hisi_sas/hisi_sas_main.c:2979:9: warning: no previous prototype for 'hisi_sas_debugfs_bist_code_mode_write' [-Wmissing-prototypes] 2979 | ssize_t hisi_sas_debugfs_bist_code_mode_write(struct file *filp, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/hisi_sas/hisi_sas_main.c:3034:9: warning: no previous prototype for 'hisi_sas_debugfs_bist_phy_write' [-Wmissing-prototypes] 3034 | ssize_t hisi_sas_debugfs_bist_phy_write(struct file *filp, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/hisi_sas/hisi_sas_main.c:3120:9: warning: no previous prototype for 'hisi_sas_debugfs_bist_mode_write' [-Wmissing-prototypes] 3120 | ssize_t hisi_sas_debugfs_bist_mode_write(struct file *filp, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/hisi_sas/hisi_sas_main.c:3174:9: warning: no previous prototype for 'hisi_sas_debugfs_bist_enable_write' [-Wmissing-prototypes] 3174 | ssize_t hisi_sas_debugfs_bist_enable_write(struct file *filp, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from include/scsi/libsas.h:36, from include/scsi/sas_ata.h:29, from drivers/scsi/hisi_sas/hisi_sas.h:29, from drivers/scsi/hisi_sas/hisi_sas_main.c:12: In function 'scsi_prot_sglist', inlined from 'hisi_sas_dif_dma_map' at drivers/scsi/hisi_sas/hisi_sas_main.c:448:2: include/scsi/scsi_cmnd.h:333:19: warning: 'scsi_cmnd' may be used uninitialized [-Wmaybe-uninitialized] 333 | return cmd->prot_sdb ? cmd->prot_sdb->table.sgl : NULL; | ~~~^~~~~~~~~~ drivers/scsi/hisi_sas/hisi_sas_main.c: In function 'hisi_sas_dif_dma_map': drivers/scsi/hisi_sas/hisi_sas_main.c:418:27: note: 'scsi_cmnd' was declared here 418 | struct scsi_cmnd *scsi_cmnd; | ^~~~~~~~~ In file included from include/asm-generic/preempt.h:5, from ./arch/arm64/include/generated/asm/preempt.h:1, from include/linux/preempt.h:81, from include/linux/spinlock.h:51, from include/linux/mmzone.h:9, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/resource_ext.h:19, from include/linux/acpi.h:26, from drivers/scsi/hisi_sas/hisi_sas.h:15: In function 'check_object_size', inlined from 'check_copy_size' at include/linux/thread_info.h:150:2, inlined from 'copy_from_user' at include/linux/uaccess.h:143:6, inlined from 'hisi_sas_debugfs_trigger_dump_write' at drivers/scsi/hisi_sas/hisi_sas_main.c:3550:6: include/linux/thread_info.h:119:17: warning: 'buf' may be used uninitialized [-Wmaybe-uninitialized] 119 | __check_object_size(ptr, n, to_user); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ include/linux/thread_info.h: In function 'hisi_sas_debugfs_trigger_dump_write': include/linux/thread_info.h:112:13: note: by argument 1 of type 'const void *' to '__check_object_size' declared here 112 | extern void __check_object_size(const void *ptr, unsigned long n, | ^~~~~~~~~~~~~~~~~~~ drivers/scsi/hisi_sas/hisi_sas_main.c:3537:12: note: 'buf' declared here 3537 | u8 buf[8]; | ^~~ vim +/hisi_sas_debugfs_bist_linkrate_write +2888 drivers/scsi/hisi_sas/hisi_sas_main.c 2887 > 2888 ssize_t hisi_sas_debugfs_bist_linkrate_write(struct file *filp, 2889 const char __user *buf, 2890 size_t count, loff_t *ppos) 2891 { 2892 struct seq_file *m = filp->private_data; 2893 struct hisi_hba *hisi_hba = m->private; 2894 char kbuf[16] = {}, *pkbuf; 2895 bool found = false; 2896 int i; 2897 2898 if (hisi_hba->bist_loopback_enable) 2899 return -EINVAL; 2900 2901 if (count >= sizeof(kbuf)) 2902 return -EINVAL; 2903 2904 if (copy_from_user(kbuf, buf, count)) 2905 return -EINVAL; 2906 2907 pkbuf = strstrip(kbuf); 2908 2909 for (i = 0; i < ARRAY_SIZE(hisi_sas_debugfs_loop_linkrate); i++) { 2910 if (!strncmp(hisi_sas_debugfs_loop_linkrate[i].name, 2911 pkbuf, 16)) { 2912 hisi_hba->bist_loopback_linkrate = 2913 hisi_sas_debugfs_loop_linkrate[i].value; 2914 found = true; 2915 break; 2916 } 2917 } 2918 2919 if (!found) { 2920 dev_err(hisi_hba->dev, "unknown mode\n"); 2921 return -EINVAL; 2922 } 2923 2924 return count; 2925 } 2926 2927 static int hisi_sas_debugfs_bist_linkrate_open(struct inode *inode, 2928 struct file *filp) 2929 { 2930 return single_open(filp, hisi_sas_debugfs_bist_linkrate_show, 2931 inode->i_private); 2932 } 2933 2934 static const struct file_operations hisi_sas_debugfs_bist_linkrate_ops = { 2935 .open = hisi_sas_debugfs_bist_linkrate_open, 2936 .read = seq_read, 2937 .write = hisi_sas_debugfs_bist_linkrate_write, 2938 .llseek = seq_lseek, 2939 .release = single_release, 2940 .owner = THIS_MODULE, 2941 }; 2942 2943 static struct { 2944 int value; 2945 char *name; 2946 } hisi_sas_debugfs_loop_code_mode[] = { 2947 { HISI_SAS_BIST_CODE_MODE_PRBS7, "PRBS7" }, 2948 { HISI_SAS_BIST_CODE_MODE_PRBS23, "PRBS23" }, 2949 { HISI_SAS_BIST_CODE_MODE_PRBS31, "PRBS31" }, 2950 { HISI_SAS_BIST_CODE_MODE_JTPAT, "JTPAT" }, 2951 { HISI_SAS_BIST_CODE_MODE_CJTPAT, "CJTPAT" }, 2952 { HISI_SAS_BIST_CODE_MODE_SCRAMBED_0, "SCRAMBED_0" }, 2953 { HISI_SAS_BIST_CODE_MODE_TRAIN, "TRAIN" }, 2954 { HISI_SAS_BIST_CODE_MODE_TRAIN_DONE, "TRAIN_DONE" }, 2955 { HISI_SAS_BIST_CODE_MODE_HFTP, "HFTP" }, 2956 { HISI_SAS_BIST_CODE_MODE_MFTP, "MFTP" }, 2957 { HISI_SAS_BIST_CODE_MODE_LFTP, "LFTP" }, 2958 { HISI_SAS_BIST_CODE_MODE_FIXED_DATA, "FIXED_DATA" }, 2959 }; 2960 2961 static int hisi_sas_debugfs_bist_code_mode_show(struct seq_file *s, void *p) 2962 { 2963 struct hisi_hba *hisi_hba = s->private; 2964 int i; 2965 2966 for (i = 0; i < ARRAY_SIZE(hisi_sas_debugfs_loop_code_mode); i++) { 2967 int match = (hisi_hba->bist_loopback_code_mode == 2968 hisi_sas_debugfs_loop_code_mode[i].value); 2969 2970 seq_printf(s, "%s%s%s ", match ? "[" : "", 2971 hisi_sas_debugfs_loop_code_mode[i].name, 2972 match ? "]" : ""); 2973 } 2974 seq_puts(s, "\n"); 2975 2976 return 0; 2977 } 2978 > 2979 ssize_t hisi_sas_debugfs_bist_code_mode_write(struct file *filp, 2980 const char __user *buf, 2981 size_t count, loff_t *ppos) 2982 { 2983 struct seq_file *m = filp->private_data; 2984 struct hisi_hba *hisi_hba = m->private; 2985 char kbuf[16] = {}, *pkbuf; 2986 bool found = false; 2987 int i; 2988 2989 if (hisi_hba->bist_loopback_enable) 2990 return -EINVAL; 2991 2992 if (count >= sizeof(kbuf)) 2993 return -EINVAL; 2994 2995 if (copy_from_user(kbuf, buf, count)) 2996 return -EINVAL; 2997 2998 pkbuf = strstrip(kbuf); 2999 3000 for (i = 0; i < ARRAY_SIZE(hisi_sas_debugfs_loop_code_mode); i++) { 3001 if (!strncmp(hisi_sas_debugfs_loop_code_mode[i].name, 3002 pkbuf, 16)) { 3003 hisi_hba->bist_loopback_code_mode = 3004 hisi_sas_debugfs_loop_code_mode[i].value; 3005 found = true; 3006 break; 3007 } 3008 } 3009 3010 if (!found) { 3011 dev_err(hisi_hba->dev, "unknown mode\n"); 3012 return -EINVAL; 3013 } 3014 3015 return count; 3016 } 3017 3018 static int hisi_sas_debugfs_bist_code_mode_open(struct inode *inode, 3019 struct file *filp) 3020 { 3021 return single_open(filp, hisi_sas_debugfs_bist_code_mode_show, 3022 inode->i_private); 3023 } 3024 3025 static const struct file_operations hisi_sas_debugfs_bist_code_mode_ops = { 3026 .open = hisi_sas_debugfs_bist_code_mode_open, 3027 .read = seq_read, 3028 .write = hisi_sas_debugfs_bist_code_mode_write, 3029 .llseek = seq_lseek, 3030 .release = single_release, 3031 .owner = THIS_MODULE, 3032 }; 3033 > 3034 ssize_t hisi_sas_debugfs_bist_phy_write(struct file *filp, 3035 const char __user *buf, 3036 size_t count, loff_t *ppos) 3037 { 3038 struct seq_file *m = filp->private_data; 3039 struct hisi_hba *hisi_hba = m->private; 3040 char kbuf[16] = {}, *pkbuf; 3041 int val, phy; 3042 3043 if (hisi_hba->bist_loopback_enable) 3044 return -EINVAL; 3045 3046 if (count >= sizeof(kbuf)) 3047 return -EINVAL; 3048 3049 if (copy_from_user(kbuf, buf, count)) 3050 return -EINVAL; 3051 3052 pkbuf = strstrip(kbuf); 3053 3054 val = kstrtoint(pkbuf, 0, &phy); 3055 if (val < 0) 3056 return val; 3057 3058 if (phy >= hisi_hba->n_phy) { 3059 dev_err(hisi_hba->dev, "phy index %d exceeds limit\n", phy); 3060 return -EINVAL; 3061 } 3062 3063 hisi_hba->bist_loopback_phy_id = phy; 3064 3065 return count; 3066 } 3067 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 3349/23811] drivers/scsi/hisi_sas/hisi_sas_main.c:2711:12: sparse: sparse: symbol 'hisi_sas_debugfs_to_reg_name' was not declared. Should it be static?
by kernel test robot 04 Oct '24

04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 82153b96f94df7483e215df3057befe744915991 [3349/23811] scsi: hisi_sas: Sync upstream version of DFX feature code config: arm64-randconfig-r111-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040809.szghfgF1-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040809.szghfgF1-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/202410040809.szghfgF1-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) drivers/scsi/hisi_sas/hisi_sas_main.c:1623:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_main.c:1623:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed drivers/scsi/hisi_sas/hisi_sas_main.c:1623:52: sparse: got restricted __le16 [usertype] drivers/scsi/hisi_sas/hisi_sas_main.c:1871:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_main.c:1871:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed drivers/scsi/hisi_sas/hisi_sas_main.c:1871:52: sparse: got restricted __le16 [usertype] >> drivers/scsi/hisi_sas/hisi_sas_main.c:2711:12: sparse: sparse: symbol 'hisi_sas_debugfs_to_reg_name' was not declared. Should it be static? drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2738:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2741:36: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:2805:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2823:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2712:1: warning: no previous prototype for 'hisi_sas_debugfs_to_reg_name' [-Wmissing-prototypes] 2712 | hisi_sas_debugfs_to_reg_name(int off, int base_off, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from include/scsi/libsas.h:36, from include/scsi/sas_ata.h:29, from drivers/scsi/hisi_sas/hisi_sas.h:28, from drivers/scsi/hisi_sas/hisi_sas_main.c:12: In function 'scsi_prot_sglist', inlined from 'hisi_sas_dif_dma_map' at drivers/scsi/hisi_sas/hisi_sas_main.c:443:2: include/scsi/scsi_cmnd.h:327:19: warning: 'scsi_cmnd' may be used uninitialized [-Wmaybe-uninitialized] 327 | return cmd->prot_sdb ? cmd->prot_sdb->table.sgl : NULL; | ~~~^~~~~~~~~~ drivers/scsi/hisi_sas/hisi_sas_main.c: In function 'hisi_sas_dif_dma_map': drivers/scsi/hisi_sas/hisi_sas_main.c:413:27: note: 'scsi_cmnd' was declared here 413 | struct scsi_cmnd *scsi_cmnd; | ^~~~~~~~~ vim +/hisi_sas_debugfs_to_reg_name +2711 drivers/scsi/hisi_sas/hisi_sas_main.c 2710 > 2711 const char * 2712 hisi_sas_debugfs_to_reg_name(int off, int base_off, 2713 const struct hisi_sas_debugfs_reg_lu *lu) 2714 { 2715 for (; lu->name; lu++) { 2716 if (off == lu->off - base_off) 2717 return lu->name; 2718 } 2719 2720 return NULL; 2721 } 2722 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 1571/23811] drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64
by kernel test robot 04 Oct '24

04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 5674e8c212d6087835d2a77b9bb7c26f03413d84 [1571/23811] scsi: hisi_sas: Add DFX Feature: IOST create file and add file operations config: arm64-randconfig-r111-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040525.qH3EJS90-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040525.qH3EJS90-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/202410040525.qH3EJS90-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: got restricted __le16 [usertype] drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: got restricted __le16 [usertype] drivers/scsi/hisi_sas/hisi_sas_main.c:2664:12: sparse: sparse: symbol 'hisi_sas_reg_name' was not declared. Should it be static? drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2762:42: sparse: sparse: cast to restricted __le32 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2864:45: sparse: sparse: cast to restricted __le64 drivers/scsi/hisi_sas/hisi_sas_main.c:2664:13: warning: no previous prototype for 'hisi_sas_reg_name' [-Wmissing-prototypes] 2664 | const char *hisi_sas_reg_name(int off, | ^~~~~~~~~~~~~~~~~ In file included from include/scsi/libsas.h:36, from include/scsi/sas_ata.h:29, from drivers/scsi/hisi_sas/hisi_sas.h:28, from drivers/scsi/hisi_sas/hisi_sas_main.c:12: In function 'scsi_prot_sglist', inlined from 'hisi_sas_dif_dma_map' at drivers/scsi/hisi_sas/hisi_sas_main.c:442:2: include/scsi/scsi_cmnd.h:327:19: warning: 'scsi_cmnd' may be used uninitialized [-Wmaybe-uninitialized] 327 | return cmd->prot_sdb ? cmd->prot_sdb->table.sgl : NULL; | ~~~^~~~~~~~~~ drivers/scsi/hisi_sas/hisi_sas_main.c: In function 'hisi_sas_dif_dma_map': drivers/scsi/hisi_sas/hisi_sas_main.c:412:27: note: 'scsi_cmnd' was declared here 412 | struct scsi_cmnd *scsi_cmnd; | ^~~~~~~~~ vim +2864 drivers/scsi/hisi_sas/hisi_sas_main.c 2853 2854 static int hisi_sas_show_row_64(struct seq_file *s, 2855 int index, 2856 int sz, 2857 u64 *ptr) 2858 { 2859 int i; 2860 2861 /* completion header size not fixed per HW version */ 2862 seq_printf(s, "index %04d:\n\t", index); 2863 for (i = 1; i <= sz / 8; i++, ptr++) { > 2864 seq_printf(s, " 0x%016llx", le64_to_cpu(*ptr)); 2865 /* when print 4 character , new a line */ 2866 if (!(i % 4)) 2867 seq_puts(s, "\n\t"); 2868 } 2869 2870 seq_puts(s, "\n"); 2871 2872 return 0; 2873 } 2874 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 21385/23811] drivers/tee/optee/core.c:618:31: sparse: sparse: incorrect type in return expression (different base types)
by kernel test robot 04 Oct '24

04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 595311cf7e49c781dd26782e4b45fd54bbfb3e40 [21385/23811] optee: model OP-TEE as a platform device/driver config: arm64-randconfig-r121-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040450.NkRme0Yj-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040450.NkRme0Yj-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/202410040450.NkRme0Yj-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) >> drivers/tee/optee/core.c:618:31: sparse: sparse: incorrect type in return expression (different base types) @@ expected int @@ got void * @@ drivers/tee/optee/core.c:618:31: sparse: expected int drivers/tee/optee/core.c:618:31: sparse: got void * drivers/tee/optee/core.c: In function 'optee_probe': drivers/tee/optee/core.c:618:24: warning: returning 'void *' from a function with return type 'int' makes integer from pointer without a cast [-Wint-conversion] 618 | return ERR_PTR(-EINVAL); | ^~~~~~~~~~~~~~~~ vim +618 drivers/tee/optee/core.c 595311cf7e49c7 Ard Biesheuvel 2019-12-09 581 595311cf7e49c7 Ard Biesheuvel 2019-12-09 582 static int optee_probe(struct platform_device *pdev) 4fb0a5eb364d23 Jens Wiklander 2015-04-14 583 { 4fb0a5eb364d23 Jens Wiklander 2015-04-14 584 optee_invoke_fn *invoke_fn; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 585 struct tee_shm_pool *pool; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 586 struct optee *optee = NULL; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 587 void *memremaped_shm = NULL; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 588 struct tee_device *teedev; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 589 u32 sec_caps; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 590 int rc; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 591 595311cf7e49c7 Ard Biesheuvel 2019-12-09 592 invoke_fn = get_invoke_func(&pdev->dev); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 593 if (IS_ERR(invoke_fn)) 595311cf7e49c7 Ard Biesheuvel 2019-12-09 594 return PTR_ERR(invoke_fn); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 595 4fb0a5eb364d23 Jens Wiklander 2015-04-14 596 if (!optee_msg_api_uid_is_optee_api(invoke_fn)) { 4fb0a5eb364d23 Jens Wiklander 2015-04-14 597 pr_warn("api uid mismatch\n"); 595311cf7e49c7 Ard Biesheuvel 2019-12-09 598 return -EINVAL; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 599 } 4fb0a5eb364d23 Jens Wiklander 2015-04-14 600 5c5f80307ab27c Jérôme Forissier 2017-11-24 601 optee_msg_get_os_revision(invoke_fn); 5c5f80307ab27c Jérôme Forissier 2017-11-24 602 4fb0a5eb364d23 Jens Wiklander 2015-04-14 603 if (!optee_msg_api_revision_is_compatible(invoke_fn)) { 4fb0a5eb364d23 Jens Wiklander 2015-04-14 604 pr_warn("api revision mismatch\n"); 595311cf7e49c7 Ard Biesheuvel 2019-12-09 605 return -EINVAL; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 606 } 4fb0a5eb364d23 Jens Wiklander 2015-04-14 607 4fb0a5eb364d23 Jens Wiklander 2015-04-14 608 if (!optee_msg_exchange_capabilities(invoke_fn, &sec_caps)) { 4fb0a5eb364d23 Jens Wiklander 2015-04-14 609 pr_warn("capabilities mismatch\n"); 595311cf7e49c7 Ard Biesheuvel 2019-12-09 610 return -EINVAL; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 611 } 4fb0a5eb364d23 Jens Wiklander 2015-04-14 612 4fb0a5eb364d23 Jens Wiklander 2015-04-14 613 /* 4fb0a5eb364d23 Jens Wiklander 2015-04-14 614 * We have no other option for shared memory, if secure world 4fb0a5eb364d23 Jens Wiklander 2015-04-14 615 * doesn't have any reserved memory we can use we can't continue. 4fb0a5eb364d23 Jens Wiklander 2015-04-14 616 */ 4fb0a5eb364d23 Jens Wiklander 2015-04-14 617 if (!(sec_caps & OPTEE_SMC_SEC_CAP_HAVE_RESERVED_SHM)) 4fb0a5eb364d23 Jens Wiklander 2015-04-14 @618 return ERR_PTR(-EINVAL); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 619 f58e236c9d665a Volodymyr Babchuk 2017-11-29 620 pool = optee_config_shm_memremap(invoke_fn, &memremaped_shm, sec_caps); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 621 if (IS_ERR(pool)) 595311cf7e49c7 Ard Biesheuvel 2019-12-09 622 return PTR_ERR(pool); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 623 4fb0a5eb364d23 Jens Wiklander 2015-04-14 624 optee = kzalloc(sizeof(*optee), GFP_KERNEL); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 625 if (!optee) { 4fb0a5eb364d23 Jens Wiklander 2015-04-14 626 rc = -ENOMEM; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 627 goto err; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 628 } 4fb0a5eb364d23 Jens Wiklander 2015-04-14 629 4fb0a5eb364d23 Jens Wiklander 2015-04-14 630 optee->invoke_fn = invoke_fn; d885cc5e0759fc Volodymyr Babchuk 2017-11-29 631 optee->sec_caps = sec_caps; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 632 4fb0a5eb364d23 Jens Wiklander 2015-04-14 633 teedev = tee_device_alloc(&optee_desc, NULL, pool, optee); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 634 if (IS_ERR(teedev)) { 4fb0a5eb364d23 Jens Wiklander 2015-04-14 635 rc = PTR_ERR(teedev); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 636 goto err; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 637 } 4fb0a5eb364d23 Jens Wiklander 2015-04-14 638 optee->teedev = teedev; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 639 4fb0a5eb364d23 Jens Wiklander 2015-04-14 640 teedev = tee_device_alloc(&optee_supp_desc, NULL, pool, optee); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 641 if (IS_ERR(teedev)) { 4fb0a5eb364d23 Jens Wiklander 2015-04-14 642 rc = PTR_ERR(teedev); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 643 goto err; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 644 } 4fb0a5eb364d23 Jens Wiklander 2015-04-14 645 optee->supp_teedev = teedev; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 646 4fb0a5eb364d23 Jens Wiklander 2015-04-14 647 rc = tee_device_register(optee->teedev); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 648 if (rc) 4fb0a5eb364d23 Jens Wiklander 2015-04-14 649 goto err; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 650 4fb0a5eb364d23 Jens Wiklander 2015-04-14 651 rc = tee_device_register(optee->supp_teedev); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 652 if (rc) 4fb0a5eb364d23 Jens Wiklander 2015-04-14 653 goto err; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 654 4fb0a5eb364d23 Jens Wiklander 2015-04-14 655 mutex_init(&optee->call_queue.mutex); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 656 INIT_LIST_HEAD(&optee->call_queue.waiters); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 657 optee_wait_queue_init(&optee->wait_queue); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 658 optee_supp_init(&optee->supp); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 659 optee->memremaped_shm = memremaped_shm; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 660 optee->pool = pool; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 661 4fb0a5eb364d23 Jens Wiklander 2015-04-14 662 optee_enable_shm_cache(optee); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 663 595311cf7e49c7 Ard Biesheuvel 2019-12-09 664 platform_set_drvdata(pdev, optee); 595311cf7e49c7 Ard Biesheuvel 2019-12-09 665 4fb0a5eb364d23 Jens Wiklander 2015-04-14 666 pr_info("initialized driver\n"); 595311cf7e49c7 Ard Biesheuvel 2019-12-09 667 return 0; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 668 err: 4fb0a5eb364d23 Jens Wiklander 2015-04-14 669 if (optee) { 4fb0a5eb364d23 Jens Wiklander 2015-04-14 670 /* 4fb0a5eb364d23 Jens Wiklander 2015-04-14 671 * tee_device_unregister() is safe to call even if the 4fb0a5eb364d23 Jens Wiklander 2015-04-14 672 * devices hasn't been registered with 4fb0a5eb364d23 Jens Wiklander 2015-04-14 673 * tee_device_register() yet. 4fb0a5eb364d23 Jens Wiklander 2015-04-14 674 */ 4fb0a5eb364d23 Jens Wiklander 2015-04-14 675 tee_device_unregister(optee->supp_teedev); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 676 tee_device_unregister(optee->teedev); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 677 kfree(optee); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 678 } 4fb0a5eb364d23 Jens Wiklander 2015-04-14 679 if (pool) 4fb0a5eb364d23 Jens Wiklander 2015-04-14 680 tee_shm_pool_free(pool); 4fb0a5eb364d23 Jens Wiklander 2015-04-14 681 if (memremaped_shm) 4fb0a5eb364d23 Jens Wiklander 2015-04-14 682 memunmap(memremaped_shm); 595311cf7e49c7 Ard Biesheuvel 2019-12-09 683 return rc; 4fb0a5eb364d23 Jens Wiklander 2015-04-14 684 } 4fb0a5eb364d23 Jens Wiklander 2015-04-14 685 :::::: The code at line 618 was first introduced by commit :::::: 4fb0a5eb364d239722e745c02aef0dbd4e0f1ad2 tee: add OP-TEE driver :::::: TO: Jens Wiklander <jens.wiklander(a)linaro.org> :::::: CC: Jens Wiklander <jens.wiklander(a)linaro.org> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 1567/23811] drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32
by kernel test robot 04 Oct '24

04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: bee9d00acd7e651a6ec989ef3e7b1309b24469af [1567/23811] scsi: hisi_sas: Add DFX Feature: Global register create file and add file operations config: arm64-randconfig-r111-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040348.tx3GNMPZ-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040348.tx3GNMPZ-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/202410040348.tx3GNMPZ-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed drivers/scsi/hisi_sas/hisi_sas_main.c:1603:52: sparse: got restricted __le16 [usertype] drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed @@ got restricted __le16 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: expected unsigned short [assigned] [usertype] tag_of_task_to_be_managed drivers/scsi/hisi_sas/hisi_sas_main.c:1857:52: sparse: got restricted __le16 [usertype] drivers/scsi/hisi_sas/hisi_sas_main.c:2664:12: sparse: sparse: symbol 'hisi_sas_reg_name' was not declared. Should it be static? >> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 >> drivers/scsi/hisi_sas/hisi_sas_main.c:2692:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2697:33: sparse: sparse: cast to restricted __le32 drivers/scsi/hisi_sas/hisi_sas_main.c:2664:13: warning: no previous prototype for 'hisi_sas_reg_name' [-Wmissing-prototypes] 2664 | const char *hisi_sas_reg_name(int off, | ^~~~~~~~~~~~~~~~~ In file included from include/scsi/libsas.h:36, from include/scsi/sas_ata.h:29, from drivers/scsi/hisi_sas/hisi_sas.h:28, from drivers/scsi/hisi_sas/hisi_sas_main.c:12: In function 'scsi_prot_sglist', inlined from 'hisi_sas_dif_dma_map' at drivers/scsi/hisi_sas/hisi_sas_main.c:442:2: include/scsi/scsi_cmnd.h:327:19: warning: 'scsi_cmnd' may be used uninitialized [-Wmaybe-uninitialized] 327 | return cmd->prot_sdb ? cmd->prot_sdb->table.sgl : NULL; | ~~~^~~~~~~~~~ drivers/scsi/hisi_sas/hisi_sas_main.c: In function 'hisi_sas_dif_dma_map': drivers/scsi/hisi_sas/hisi_sas_main.c:412:27: note: 'scsi_cmnd' was declared here 412 | struct scsi_cmnd *scsi_cmnd; | ^~~~~~~~~ vim +2692 drivers/scsi/hisi_sas/hisi_sas_main.c 2675 2676 static void hisi_sas_print_reg(u32 *regs_val, 2677 const void *ptr, 2678 struct seq_file *s) 2679 { 2680 const struct hisi_sas_debugfs_reg *reg = ptr; 2681 int i; 2682 2683 for (i = 0; i < reg->count; i++) { 2684 int off = i * 4; 2685 const char *name = hisi_sas_reg_name(off, 2686 reg->base_off, 2687 reg->lu); 2688 2689 if (name) 2690 seq_printf(s, "0x%08x 0x%08x %s\n", 2691 off, > 2692 le32_to_cpu(regs_val[i]), 2693 name); 2694 else 2695 seq_printf(s, "0x%08x 0x%08x\n", 2696 off, 2697 le32_to_cpu(regs_val[i])); 2698 } 2699 } 2700 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 5957/23811] drivers/vfio/vfio_iommu_type1.c:2144:70: sparse: sparse: incorrect type in argument 2 (different address spaces)
by kernel test robot 04 Oct '24

04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 2dd8345826607c5d2d6528de872118da554015b6 [5957/23811] vfio: Add support for Shared Virtual Addressing config: arm64-randconfig-r121-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040218.7HQ3naCI-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040218.7HQ3naCI-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/202410040218.7HQ3naCI-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) >> drivers/vfio/vfio_iommu_type1.c:2144:70: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] <asn:1> *[assigned] arg @@ got void * @@ drivers/vfio/vfio_iommu_type1.c:2144:70: sparse: expected void [noderef] <asn:1> *[assigned] arg drivers/vfio/vfio_iommu_type1.c:2144:70: sparse: got void * drivers/vfio/vfio_iommu_type1.c:2164:65: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void [noderef] <asn:1> *[assigned] arg @@ got void * @@ drivers/vfio/vfio_iommu_type1.c:2164:65: sparse: expected void [noderef] <asn:1> *[assigned] arg drivers/vfio/vfio_iommu_type1.c:2164:65: sparse: got void * drivers/vfio/vfio_iommu_type1.c:1103:26: sparse: sparse: self-comparison always evaluates to false drivers/vfio/vfio_iommu_type1.c:1103:48: sparse: sparse: self-comparison always evaluates to false drivers/vfio/vfio_iommu_type1.c:1103:70: sparse: sparse: self-comparison always evaluates to false vim +2144 drivers/vfio/vfio_iommu_type1.c 2059 2060 static long vfio_iommu_type1_ioctl(void *iommu_data, 2061 unsigned int cmd, unsigned long arg) 2062 { 2063 struct vfio_iommu *iommu = iommu_data; 2064 unsigned long minsz; 2065 2066 if (cmd == VFIO_CHECK_EXTENSION) { 2067 switch (arg) { 2068 case VFIO_TYPE1_IOMMU: 2069 case VFIO_TYPE1v2_IOMMU: 2070 case VFIO_TYPE1_NESTING_IOMMU: 2071 return 1; 2072 case VFIO_DMA_CC_IOMMU: 2073 if (!iommu) 2074 return 0; 2075 return vfio_domains_have_iommu_cache(iommu); 2076 default: 2077 return 0; 2078 } 2079 } else if (cmd == VFIO_IOMMU_GET_INFO) { 2080 struct vfio_iommu_type1_info info; 2081 2082 minsz = offsetofend(struct vfio_iommu_type1_info, iova_pgsizes); 2083 2084 if (copy_from_user(&info, (void __user *)arg, minsz)) 2085 return -EFAULT; 2086 2087 if (info.argsz < minsz) 2088 return -EINVAL; 2089 2090 info.flags = VFIO_IOMMU_INFO_PGSIZES; 2091 2092 info.iova_pgsizes = vfio_pgsize_bitmap(iommu); 2093 2094 return copy_to_user((void __user *)arg, &info, minsz) ? 2095 -EFAULT : 0; 2096 2097 } else if (cmd == VFIO_IOMMU_MAP_DMA) { 2098 struct vfio_iommu_type1_dma_map map; 2099 uint32_t mask = VFIO_DMA_MAP_FLAG_READ | 2100 VFIO_DMA_MAP_FLAG_WRITE; 2101 2102 minsz = offsetofend(struct vfio_iommu_type1_dma_map, size); 2103 2104 if (copy_from_user(&map, (void __user *)arg, minsz)) 2105 return -EFAULT; 2106 2107 if (map.argsz < minsz || map.flags & ~mask) 2108 return -EINVAL; 2109 2110 return vfio_dma_do_map(iommu, &map); 2111 2112 } else if (cmd == VFIO_IOMMU_UNMAP_DMA) { 2113 struct vfio_iommu_type1_dma_unmap unmap; 2114 long ret; 2115 2116 minsz = offsetofend(struct vfio_iommu_type1_dma_unmap, size); 2117 2118 if (copy_from_user(&unmap, (void __user *)arg, minsz)) 2119 return -EFAULT; 2120 2121 if (unmap.argsz < minsz || unmap.flags) 2122 return -EINVAL; 2123 2124 ret = vfio_dma_do_unmap(iommu, &unmap); 2125 if (ret) 2126 return ret; 2127 2128 return copy_to_user((void __user *)arg, &unmap, minsz) ? 2129 -EFAULT : 0; 2130 2131 } else if (cmd == VFIO_IOMMU_BIND) { 2132 struct vfio_iommu_type1_bind bind; 2133 2134 minsz = offsetofend(struct vfio_iommu_type1_bind, flags); 2135 2136 if (copy_from_user(&bind, (void __user *)arg, minsz)) 2137 return -EFAULT; 2138 2139 if (bind.argsz < minsz) 2140 return -EINVAL; 2141 2142 switch (bind.flags) { 2143 case VFIO_IOMMU_BIND_PROCESS: > 2144 return vfio_iommu_type1_bind_process(iommu, (void *)arg, 2145 &bind); 2146 default: 2147 return -EINVAL; 2148 } 2149 2150 } else if (cmd == VFIO_IOMMU_UNBIND) { 2151 struct vfio_iommu_type1_bind bind; 2152 2153 minsz = offsetofend(struct vfio_iommu_type1_bind, flags); 2154 2155 if (copy_from_user(&bind, (void __user *)arg, minsz)) 2156 return -EFAULT; 2157 2158 if (bind.argsz < minsz) 2159 return -EINVAL; 2160 2161 switch (bind.flags) { 2162 case VFIO_IOMMU_BIND_PROCESS: 2163 return vfio_iommu_type1_unbind_process(iommu, 2164 (void *)arg, 2165 &bind); 2166 default: 2167 return -EINVAL; 2168 } 2169 } 2170 2171 return -ENOTTY; 2172 } 2173 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 14777/23811] drivers/scsi/huawei/hifc/hifc_queue.c:1965:12: sparse: sparse: cast removes address space '<asn:2>' of expression
by kernel test robot 04 Oct '24

04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 7fc993d55d1b54ae40e29dfac825a18d04d644c6 [14777/23811] scsi/hifc: add hifc driver FC service module config: x86_64-randconfig-122-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040129.X3kkQqhf-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241004/202410040129.X3kkQqhf-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/202410040129.X3kkQqhf-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) drivers/scsi/huawei/hifc/hifc_queue.c:386:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:386:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:386:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:386:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:376:13: sparse: sparse: symbol 'hifc_root_sq_irq' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_queue.c:1140:13: sparse: sparse: symbol 'hifc_root_rq_irq' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_queue.c:1697:39: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short @@ got restricted __be16 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:1697:39: sparse: expected unsigned short drivers/scsi/huawei/hifc/hifc_queue.c:1697:39: sparse: got restricted __be16 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:1962:16: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [addressable] [assigned] [usertype] dw0 @@ got restricted __be32 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:1962:16: sparse: expected unsigned int [addressable] [assigned] [usertype] dw0 drivers/scsi/huawei/hifc/hifc_queue.c:1962:16: sparse: got restricted __be32 [usertype] >> drivers/scsi/huawei/hifc/hifc_queue.c:1965:12: sparse: sparse: cast removes address space '<asn:2>' of expression drivers/scsi/huawei/hifc/hifc_queue.c:1980:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:1980:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:1980:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:1980:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:1999:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:1999:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:1999:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:1999:18: sparse: sparse: cast to restricted __be16 drivers/scsi/huawei/hifc/hifc_queue.c:2159:41: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short @@ got restricted __be16 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:2159:41: sparse: expected unsigned short drivers/scsi/huawei/hifc/hifc_queue.c:2159:41: sparse: got restricted __be16 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:2128:6: sparse: sparse: symbol 'hifc_update_root_rq_info' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_queue.c:2163:6: sparse: sparse: symbol 'hifc_root_rqe_analysis' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_queue.c:2386:6: sparse: sparse: symbol 'hifc_set_scq_irq_cfg' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_queue.c:2419:13: sparse: sparse: symbol 'hifc_scq_irq' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2902:35: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2904:42: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] ctrl_ch_val @@ got restricted __be32 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:2904:42: sparse: expected unsigned int [usertype] ctrl_ch_val drivers/scsi/huawei/hifc/hifc_queue.c:2904:42: sparse: got restricted __be32 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2916:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2919:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int val_wd1 @@ got restricted __be32 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:2919:29: sparse: expected unsigned int val_wd1 drivers/scsi/huawei/hifc/hifc_queue.c:2919:29: sparse: got restricted __be32 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2921:28: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_queue.c:2923:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] val_wd0 @@ got restricted __be32 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:2923:29: sparse: expected unsigned int [usertype] val_wd0 drivers/scsi/huawei/hifc/hifc_queue.c:2923:29: sparse: got restricted __be32 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:3646:6: sparse: sparse: symbol 'hifc_invalid_parent_sq' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_queue.c:4023:14: sparse: sparse: symbol 'hifc_alloc_parent_sq' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_queue.c:4389:49: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long @@ got restricted __be64 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:4389:49: sparse: expected unsigned long long drivers/scsi/huawei/hifc/hifc_queue.c:4389:49: sparse: got restricted __be64 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:4394:72: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long @@ got restricted __be64 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:4394:72: sparse: expected unsigned long long drivers/scsi/huawei/hifc/hifc_queue.c:4394:72: sparse: got restricted __be64 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:4408:52: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long @@ got restricted __be64 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:4408:52: sparse: expected unsigned long long drivers/scsi/huawei/hifc/hifc_queue.c:4408:52: sparse: got restricted __be64 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:4416:42: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] oqid_rd @@ got restricted __be16 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:4416:42: sparse: expected unsigned short [usertype] oqid_rd drivers/scsi/huawei/hifc/hifc_queue.c:4416:42: sparse: got restricted __be16 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:4418:42: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] oqid_wr @@ got restricted __be16 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:4418:42: sparse: expected unsigned short [usertype] oqid_wr drivers/scsi/huawei/hifc/hifc_queue.c:4418:42: sparse: got restricted __be16 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:4450:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] conn_id @@ got restricted __be16 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:4450:29: sparse: expected unsigned short [usertype] conn_id drivers/scsi/huawei/hifc/hifc_queue.c:4450:29: sparse: got restricted __be16 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:4456:37: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] scq_num_rcv_cmd @@ got restricted __be32 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:4456:37: sparse: expected unsigned int [usertype] scq_num_rcv_cmd drivers/scsi/huawei/hifc/hifc_queue.c:4456:37: sparse: got restricted __be32 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:4473:40: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] per_xmit_data_size @@ got restricted __be32 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:4473:40: sparse: expected unsigned int [usertype] per_xmit_data_size drivers/scsi/huawei/hifc/hifc_queue.c:4473:40: sparse: got restricted __be32 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:4511:6: sparse: sparse: symbol 'hifc_init_parent_ctx' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_queue.c:4559:6: sparse: sparse: symbol 'hifc_map_shared_queue_qid' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_queue.c:5242:45: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long doorbell_record @@ got restricted __be64 [usertype] @@ drivers/scsi/huawei/hifc/hifc_queue.c:5242:45: sparse: expected unsigned long long doorbell_record drivers/scsi/huawei/hifc/hifc_queue.c:5242:45: sparse: got restricted __be64 [usertype] drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_queue.c:5331:17: sparse: sparse: cast to restricted __be64 -- drivers/scsi/huawei/hifc/hifc_lld.c:67:22: sparse: sparse: symbol 'g_lld_lock' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_lld.c:291:29: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [usertype] manufacture_id @@ got restricted __be32 [usertype] @@ drivers/scsi/huawei/hifc/hifc_lld.c:291:29: sparse: expected unsigned int [usertype] manufacture_id drivers/scsi/huawei/hifc/hifc_lld.c:291:29: sparse: got restricted __be32 [usertype] drivers/scsi/huawei/hifc/hifc_lld.c:292:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] resp_code @@ got restricted __be16 [usertype] @@ drivers/scsi/huawei/hifc/hifc_lld.c:292:24: sparse: expected unsigned short [usertype] resp_code drivers/scsi/huawei/hifc/hifc_lld.c:292:24: sparse: got restricted __be16 [usertype] drivers/scsi/huawei/hifc/hifc_lld.c:293:26: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned short [usertype] reason_code @@ got restricted __be16 [usertype] @@ drivers/scsi/huawei/hifc/hifc_lld.c:293:26: sparse: expected unsigned short [usertype] reason_code drivers/scsi/huawei/hifc/hifc_lld.c:293:26: sparse: got restricted __be16 [usertype] drivers/scsi/huawei/hifc/hifc_lld.c:333:6: sparse: sparse: symbol 'hifc_get_ppf_hwdev_by_pdev' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_lld.c:362:6: sparse: sparse: symbol 'hifc_event_process' was not declared. Should it be static? >> drivers/scsi/huawei/hifc/hifc_lld.c:645:32: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] cfg_reg_base @@ got void [noderef] <asn:2> *cfg_reg_base @@ drivers/scsi/huawei/hifc/hifc_lld.c:645:32: sparse: expected void *[assigned] cfg_reg_base drivers/scsi/huawei/hifc/hifc_lld.c:645:32: sparse: got void [noderef] <asn:2> *cfg_reg_base >> drivers/scsi/huawei/hifc/hifc_lld.c:646:33: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] intr_reg_base @@ got void [noderef] <asn:2> *intr_reg_base @@ drivers/scsi/huawei/hifc/hifc_lld.c:646:33: sparse: expected void *[assigned] intr_reg_base drivers/scsi/huawei/hifc/hifc_lld.c:646:33: sparse: got void [noderef] <asn:2> *intr_reg_base >> drivers/scsi/huawei/hifc/hifc_lld.c:647:27: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected void *[assigned] db_base @@ got void [noderef] <asn:2> *db_base @@ drivers/scsi/huawei/hifc/hifc_lld.c:647:27: sparse: expected void *[assigned] db_base drivers/scsi/huawei/hifc/hifc_lld.c:647:27: sparse: got void [noderef] <asn:2> *db_base drivers/scsi/huawei/hifc/hifc_lld.c:333:7: warning: no previous prototype for 'hifc_get_ppf_hwdev_by_pdev' [-Wmissing-prototypes] 333 | void *hifc_get_ppf_hwdev_by_pdev(struct pci_dev *pdev) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_lld.c:362:6: warning: no previous prototype for 'hifc_event_process' [-Wmissing-prototypes] 362 | void hifc_event_process(void *adapter, struct hifc_event_info *event) | ^~~~~~~~~~~~~~~~~~ -- >> drivers/scsi/huawei/hifc/hifc_tool.c:90:43: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got void *in_buff @@ drivers/scsi/huawei/hifc/hifc_tool.c:90:43: sparse: expected void const [noderef] <asn:1> *from drivers/scsi/huawei/hifc/hifc_tool.c:90:43: sparse: got void *in_buff >> drivers/scsi/huawei/hifc/hifc_tool.c:157:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *out_buf @@ drivers/scsi/huawei/hifc/hifc_tool.c:157:32: sparse: expected void [noderef] <asn:1> *to drivers/scsi/huawei/hifc/hifc_tool.c:157:32: sparse: got void *out_buf drivers/scsi/huawei/hifc/hifc_tool.c:256:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *out_buf @@ drivers/scsi/huawei/hifc/hifc_tool.c:256:32: sparse: expected void [noderef] <asn:1> *to drivers/scsi/huawei/hifc/hifc_tool.c:256:32: sparse: got void *out_buf drivers/scsi/huawei/hifc/hifc_tool.c:386:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *out_buf @@ drivers/scsi/huawei/hifc/hifc_tool.c:386:32: sparse: expected void [noderef] <asn:1> *to drivers/scsi/huawei/hifc/hifc_tool.c:386:32: sparse: got void *out_buf drivers/scsi/huawei/hifc/hifc_tool.c:459:32: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *out_buf @@ drivers/scsi/huawei/hifc/hifc_tool.c:459:32: sparse: expected void [noderef] <asn:1> *to drivers/scsi/huawei/hifc/hifc_tool.c:459:32: sparse: got void *out_buf drivers/scsi/huawei/hifc/hifc_tool.c:465:5: sparse: sparse: symbol 'send_to_service_driver' was not declared. Should it be static? >> drivers/scsi/huawei/hifc/hifc_tool.c:599:38: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got void * @@ drivers/scsi/huawei/hifc/hifc_tool.c:599:38: sparse: expected void const [noderef] <asn:1> *from drivers/scsi/huawei/hifc/hifc_tool.c:599:38: sparse: got void * drivers/scsi/huawei/hifc/hifc_tool.c:664:5: sparse: sparse: symbol 'if_nictool_exist' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_tool.c:465:5: warning: no previous prototype for 'send_to_service_driver' [-Wmissing-prototypes] 465 | int send_to_service_driver(struct msg_module *nt_msg, void *buf_in, | ^~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_tool.c:664:5: warning: no previous prototype for 'if_nictool_exist' [-Wmissing-prototypes] 664 | int if_nictool_exist(void) | ^~~~~~~~~~~~~~~~ -- drivers/scsi/huawei/hifc/hifc_tool_hw.c:36:4: sparse: sparse: symbol 'hifc_physical_port_id' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_tool_hw.c:47:5: sparse: sparse: symbol 'hifc_clp_to_mgmt' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_tool_hw.c:236:6: sparse: sparse: symbol 'hifc_is_in_host' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_tool_hw.c:401:25: sparse: sparse: symbol 'sm_module_cmd_handle' was not declared. Should it be static? >> drivers/scsi/huawei/hifc/hifc_tool_hw.c:482:35: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got void * @@ drivers/scsi/huawei/hifc/hifc_tool_hw.c:482:35: sparse: expected void const [noderef] <asn:1> *from drivers/scsi/huawei/hifc/hifc_tool_hw.c:482:35: sparse: got void * drivers/scsi/huawei/hifc/hifc_tool_hw.c:36:4: warning: no previous prototype for 'hifc_physical_port_id' [-Wmissing-prototypes] 36 | u8 hifc_physical_port_id(void *hwdev) | ^~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_tool_hw.c:47:5: warning: no previous prototype for 'hifc_clp_to_mgmt' [-Wmissing-prototypes] 47 | int hifc_clp_to_mgmt(void *hwdev, enum hifc_mod_type mod, u8 cmd, | ^~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_tool_hw.c:236:6: warning: no previous prototype for 'hifc_is_in_host' [-Wmissing-prototypes] 236 | bool hifc_is_in_host(void) | ^~~~~~~~~~~~~~~ -- drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:62:7: sparse: sparse: symbol 'dbgtool_dev_id' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:63:13: sparse: sparse: symbol 'dbgtool_chr_dev' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:66:14: sparse: sparse: symbol 'dbgtool_d_class' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:69:5: sparse: sparse: symbol 'g_dbgtool_init_flag' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:70:5: sparse: sparse: symbol 'g_dbgtool_ref_cnt' was not declared. Should it be static? >> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:202:51: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got unsigned char [usertype] *cmd @@ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:202:51: sparse: expected void const [noderef] <asn:1> *from drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:202:51: sparse: got unsigned char [usertype] *cmd >> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:216:44: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *ack @@ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:216:44: sparse: expected void [noderef] <asn:1> *to drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:216:44: sparse: got void *ack drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:150:6: sparse: sparse: symbol 'dbgtool_knl_api_cmd_read' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:269:51: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got unsigned char [usertype] *cmd @@ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:269:51: sparse: expected void const [noderef] <asn:1> *from drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:269:51: sparse: got unsigned char [usertype] *cmd drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:234:6: sparse: sparse: symbol 'dbgtool_knl_api_cmd_write' was not declared. Should it be static? >> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:374:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got struct pf_dev_info *dev_info @@ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:374:37: sparse: expected void [noderef] <asn:1> *to drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:374:37: sparse: got struct pf_dev_info *dev_info drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:331:6: sparse: sparse: symbol 'dbgtool_knl_pf_dev_info_get' was not declared. Should it be static? >> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:393:37: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got struct ffm_record_info *ffm_rd @@ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:393:37: sparse: expected void [noderef] <asn:1> *to drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:393:37: sparse: got struct ffm_record_info *ffm_rd drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:389:6: sparse: sparse: symbol 'dbgtool_knl_ffm_info_rd' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:407:6: sparse: sparse: symbol 'dbgtool_knl_ffm_info_clr' was not declared. Should it be static? >> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:461:54: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got void *buf_in @@ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:461:54: sparse: expected void const [noderef] <asn:1> *from drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:461:54: sparse: got void *buf_in >> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:482:44: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got unsigned short [usertype] *out_size @@ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:482:44: sparse: expected void [noderef] <asn:1> *to drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:482:44: sparse: got unsigned short [usertype] *out_size >> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:489:44: sparse: sparse: incorrect type in argument 1 (different address spaces) @@ expected void [noderef] <asn:1> *to @@ got void *buf_out @@ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:489:44: sparse: expected void [noderef] <asn:1> *to drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:489:44: sparse: got void *buf_out drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:419:6: sparse: sparse: symbol 'dbgtool_knl_msg_to_up' was not declared. Should it be static? >> drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:621:37: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void const [noderef] <asn:1> *from @@ got void * @@ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:621:37: sparse: expected void const [noderef] <asn:1> *from drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:621:37: sparse: got void * drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:612:6: sparse: sparse: symbol 'dbgtool_knl_unlocked_ioctl' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:672:6: sparse: sparse: symbol 'ffm_intr_msg_record' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:150:6: warning: no previous prototype for 'dbgtool_knl_api_cmd_read' [-Wmissing-prototypes] 150 | long dbgtool_knl_api_cmd_read(struct dbgtool_param *para, | ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:234:6: warning: no previous prototype for 'dbgtool_knl_api_cmd_write' [-Wmissing-prototypes] 234 | long dbgtool_knl_api_cmd_write(struct dbgtool_param *para, | ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:331:6: warning: no previous prototype for 'dbgtool_knl_pf_dev_info_get' [-Wmissing-prototypes] 331 | long dbgtool_knl_pf_dev_info_get(struct dbgtool_param *para, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:389:6: warning: no previous prototype for 'dbgtool_knl_ffm_info_rd' [-Wmissing-prototypes] 389 | long dbgtool_knl_ffm_info_rd(struct dbgtool_param *para, | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:407:6: warning: no previous prototype for 'dbgtool_knl_ffm_info_clr' [-Wmissing-prototypes] 407 | void dbgtool_knl_ffm_info_clr(struct dbgtool_param *para, | ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:419:6: warning: no previous prototype for 'dbgtool_knl_msg_to_up' [-Wmissing-prototypes] 419 | long dbgtool_knl_msg_to_up(struct dbgtool_param *para, | ^~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:612:6: warning: no previous prototype for 'dbgtool_knl_unlocked_ioctl' [-Wmissing-prototypes] 612 | long dbgtool_knl_unlocked_ioctl(struct file *pfile, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:672:6: warning: no previous prototype for 'ffm_intr_msg_record' [-Wmissing-prototypes] 672 | void ffm_intr_msg_record(void *handle, void *buf_in, u16 in_size, | ^~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:802: warning: Function parameter or member 'vhwdev' not described in 'dbgtool_knl_init' drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:802: warning: Excess function parameter 'hwdev' description in 'dbgtool_knl_init' drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:897: warning: Function parameter or member 'vhwdev' not described in 'dbgtool_knl_deinit' drivers/scsi/huawei/hifc/hifc_dbgtool_knl.c:897: warning: Excess function parameter 'hwdev' description in 'dbgtool_knl_deinit' -- drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_hwif.c:27:16: sparse: sparse: cast to restricted __be32 >> drivers/scsi/huawei/hifc/hifc_hwif.c:32:16: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int val @@ got restricted __be32 [usertype] @@ drivers/scsi/huawei/hifc/hifc_hwif.c:32:16: sparse: expected unsigned int val drivers/scsi/huawei/hifc/hifc_hwif.c:32:16: sparse: got restricted __be32 [usertype] >> drivers/scsi/huawei/hifc/hifc_hwif.c:453:29: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char [noderef] [usertype] <asn:2> *cfg_regs_base @@ got void *cfg_reg_base @@ drivers/scsi/huawei/hifc/hifc_hwif.c:453:29: sparse: expected unsigned char [noderef] [usertype] <asn:2> *cfg_regs_base drivers/scsi/huawei/hifc/hifc_hwif.c:453:29: sparse: got void *cfg_reg_base >> drivers/scsi/huawei/hifc/hifc_hwif.c:454:30: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char [noderef] [usertype] <asn:2> *intr_regs_base @@ got void *intr_reg_base @@ drivers/scsi/huawei/hifc/hifc_hwif.c:454:30: sparse: expected unsigned char [noderef] [usertype] <asn:2> *intr_regs_base drivers/scsi/huawei/hifc/hifc_hwif.c:454:30: sparse: got void *intr_reg_base >> drivers/scsi/huawei/hifc/hifc_hwif.c:457:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char [noderef] [usertype] <asn:2> *db_base @@ got void *db_base @@ drivers/scsi/huawei/hifc/hifc_hwif.c:457:23: sparse: expected unsigned char [noderef] [usertype] <asn:2> *db_base drivers/scsi/huawei/hifc/hifc_hwif.c:457:23: sparse: got void *db_base >> drivers/scsi/huawei/hifc/hifc_hwif.c:517:65: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted gfp_t [usertype] flag @@ got unsigned int flag @@ drivers/scsi/huawei/hifc/hifc_hwif.c:517:65: sparse: expected restricted gfp_t [usertype] flag drivers/scsi/huawei/hifc/hifc_hwif.c:517:65: sparse: got unsigned int flag drivers/scsi/huawei/hifc/hifc_hwif.c:532:65: sparse: sparse: incorrect type in argument 4 (different base types) @@ expected restricted gfp_t [usertype] flag @@ got unsigned int flag @@ drivers/scsi/huawei/hifc/hifc_hwif.c:532:65: sparse: expected restricted gfp_t [usertype] flag drivers/scsi/huawei/hifc/hifc_hwif.c:532:65: sparse: got unsigned int flag drivers/scsi/huawei/hifc/hifc_hwif.c:442: warning: Function parameter or member 'intr_reg_base' not described in 'hifc_init_hwif' drivers/scsi/huawei/hifc/hifc_hwif.c:442: warning: Function parameter or member 'db_base_phy' not described in 'hifc_init_hwif' drivers/scsi/huawei/hifc/hifc_hwif.c:442: warning: Function parameter or member 'db_base' not described in 'hifc_init_hwif' drivers/scsi/huawei/hifc/hifc_hwif.c:442: warning: Function parameter or member 'dwqe_mapping' not described in 'hifc_init_hwif' -- drivers/scsi/huawei/hifc/hifc_cmdq.c:345:20: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned int [addressable] [usertype] db_info @@ got restricted __be32 [usertype] @@ drivers/scsi/huawei/hifc/hifc_cmdq.c:345:20: sparse: expected unsigned int [addressable] [usertype] db_info drivers/scsi/huawei/hifc/hifc_cmdq.c:345:20: sparse: got restricted __be32 [usertype] >> drivers/scsi/huawei/hifc/hifc_cmdq.c:348:28: sparse: sparse: cast removes address space '<asn:2>' of expression >> drivers/scsi/huawei/hifc/hifc_cmdq.c:348:28: sparse: sparse: incorrect type in argument 2 (different address spaces) @@ expected void volatile [noderef] <asn:2> *addr @@ got unsigned char [usertype] * @@ drivers/scsi/huawei/hifc/hifc_cmdq.c:348:28: sparse: expected void volatile [noderef] <asn:2> *addr drivers/scsi/huawei/hifc/hifc_cmdq.c:348:28: sparse: got unsigned char [usertype] * drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:489:31: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:495:40: sparse: sparse: incorrect type in assignment (different base types) @@ expected unsigned long long [usertype] @@ got restricted __be64 [usertype] @@ drivers/scsi/huawei/hifc/hifc_cmdq.c:495:40: sparse: expected unsigned long long [usertype] drivers/scsi/huawei/hifc/hifc_cmdq.c:495:40: sparse: got restricted __be64 [usertype] drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:509:21: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1060:27: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1132:25: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1219:37: sparse: sparse: cast to restricted __be32 drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_cmdq.c:1250:31: sparse: sparse: cast to restricted __be64 drivers/scsi/huawei/hifc/hifc_cmdq.c:1299:26: sparse: sparse: cast removes address space '<asn:2>' of expression >> drivers/scsi/huawei/hifc/hifc_cmdq.c:1299:23: sparse: sparse: incorrect type in assignment (different address spaces) @@ expected unsigned char [noderef] [usertype] <asn:2> *db_base @@ got unsigned char [usertype] * @@ drivers/scsi/huawei/hifc/hifc_cmdq.c:1299:23: sparse: expected unsigned char [noderef] [usertype] <asn:2> *db_base drivers/scsi/huawei/hifc/hifc_cmdq.c:1299:23: sparse: got unsigned char [usertype] * drivers/scsi/huawei/hifc/hifc_cmdq.c:1316:5: sparse: sparse: symbol 'hifc_set_cmdq_ctxts' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_cmdq.c:1316:5: warning: no previous prototype for 'hifc_set_cmdq_ctxts' [-Wmissing-prototypes] 1316 | int hifc_set_cmdq_ctxts(struct hifc_hwdev *hwdev) | ^~~~~~~~~~~~~~~~~~~ -- drivers/scsi/huawei/hifc/hifc_cqm_main.c:46:6: sparse: sparse: symbol 'cqm_test_mode_init' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_cqm_main.c:95:5: sparse: sparse: symbol 'cqm_service_capability_init' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_cqm_main.c:114:5: sparse: sparse: symbol 'cqm_capability_init' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_cqm_main.c:431:5: sparse: sparse: symbol 'cqm_db_addr_alloc' was not declared. Should it be static? drivers/scsi/huawei/hifc/hifc_cqm_main.c:476:6: sparse: sparse: symbol 'cqm_db_addr_free' was not declared. Should it be static? >> drivers/scsi/huawei/hifc/hifc_cqm_main.c:691:12: sparse: sparse: cast removes address space '<asn:2>' of expression drivers/scsi/huawei/hifc/hifc_cqm_main.c:46:6: warning: no previous prototype for 'cqm_test_mode_init' [-Wmissing-prototypes] 46 | void cqm_test_mode_init(struct cqm_handle_s *cqm_handle, | ^~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_cqm_main.c:95:5: warning: no previous prototype for 'cqm_service_capability_init' [-Wmissing-prototypes] 95 | s32 cqm_service_capability_init(struct cqm_handle_s *cqm_handle, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_cqm_main.c:114:5: warning: no previous prototype for 'cqm_capability_init' [-Wmissing-prototypes] 114 | s32 cqm_capability_init(void *ex_handle) | ^~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_cqm_main.c:431:5: warning: no previous prototype for 'cqm_db_addr_alloc' [-Wmissing-prototypes] 431 | s32 cqm_db_addr_alloc(void *ex_handle, void __iomem **db_addr, | ^~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_cqm_main.c:476:6: warning: no previous prototype for 'cqm_db_addr_free' [-Wmissing-prototypes] 476 | void cqm_db_addr_free(void *ex_handle, void __iomem *db_addr, | ^~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_cqm_main.c:592: warning: Excess function parameter 'service_type' description in 'cqm_service_unregister' vim +1965 drivers/scsi/huawei/hifc/hifc_queue.c 31015b9ad992c4 Chenguangli 2020-11-16 1947 31015b9ad992c4 Chenguangli 2020-11-16 1948 static void hifc_ring_root_sq_db(struct hifc_hba_s *v_hba, 31015b9ad992c4 Chenguangli 2020-11-16 1949 struct hifc_root_sq_info_s *v_sq_info) 31015b9ad992c4 Chenguangli 2020-11-16 1950 { 31015b9ad992c4 Chenguangli 2020-11-16 1951 struct nic_tx_doorbell db; 31015b9ad992c4 Chenguangli 2020-11-16 1952 31015b9ad992c4 Chenguangli 2020-11-16 1953 UNF_CHECK_VALID(INVALID_VALUE32, UNF_TRUE, NULL != v_sq_info, return); 31015b9ad992c4 Chenguangli 2020-11-16 1954 31015b9ad992c4 Chenguangli 2020-11-16 1955 memset(&db, 0, sizeof(struct nic_tx_doorbell)); 31015b9ad992c4 Chenguangli 2020-11-16 1956 31015b9ad992c4 Chenguangli 2020-11-16 1957 db.bs0.srv_type = HIFC_DOORBELL_SQ_TYPE; 31015b9ad992c4 Chenguangli 2020-11-16 1958 db.bs0.queue_id = v_sq_info->qid; 31015b9ad992c4 Chenguangli 2020-11-16 1959 db.bs0.pi_high = v_sq_info->pi >> HIFC_DOORBELL_SQ_PI_HIGH_BITS_SHIFT; 31015b9ad992c4 Chenguangli 2020-11-16 1960 db.bs0.cos = 0; 31015b9ad992c4 Chenguangli 2020-11-16 1961 31015b9ad992c4 Chenguangli 2020-11-16 1962 db.dw0 = cpu_to_be32(db.dw0); 31015b9ad992c4 Chenguangli 2020-11-16 1963 wmb(); 31015b9ad992c4 Chenguangli 2020-11-16 1964 31015b9ad992c4 Chenguangli 2020-11-16 @1965 *((unsigned long long *)(v_sq_info->normal_db.virt_map_addr) 31015b9ad992c4 Chenguangli 2020-11-16 1966 + (v_sq_info->pi & HIFC_DOORBELL_SQ_PI_LOW_BITS_MASK)) = 31015b9ad992c4 Chenguangli 2020-11-16 1967 *(unsigned long long *)&db; 31015b9ad992c4 Chenguangli 2020-11-16 1968 } 31015b9ad992c4 Chenguangli 2020-11-16 1969 :::::: The code at line 1965 was first introduced by commit :::::: 31015b9ad992c40fc0db81055932bbabe74f2533 scsi/hifc: add hifc driver port resource module :::::: TO: Chenguangli <chenguangli2(a)huawei.com> :::::: CC: Yang Yingliang <yangyingliang(a)huawei.com> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 1553/23811] drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3553:25: sparse: sparse: symbol 'host_attrs_v2_hw' was not declared. Should it be static?
by kernel test robot 04 Oct '24

04 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: a9cc7cd9ecc843e5cc77a350cfe76ae24421064d [1553/23811] scsi: hisi_sas: add a separate host attribute for every host adapter config: arm64-randconfig-r111-20241003 (https://download.01.org/0day-ci/archive/20241004/202410040135.yxN1SBCM-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce: (https://download.01.org/0day-ci/archive/20241004/202410040135.yxN1SBCM-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/202410040135.yxN1SBCM-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned long long [usertype] val @@ got restricted __le64 [usertype] sas_addr @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: expected unsigned long long [usertype] val drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: got restricted __le64 [usertype] sas_addr drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:26: sparse: sparse: cast from restricted __le64 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:24: sparse: sparse: incorrect type in assignment (different base types) @@ expected restricted __le64 [usertype] sas_addr @@ got unsigned long long @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:24: sparse: expected restricted __le64 [usertype] sas_addr drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:968:24: sparse: got unsigned long long drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] trans_tx_fail_type @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: expected unsigned int [usertype] val drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: got restricted __le32 [usertype] trans_tx_fail_type drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int [usertype] trans_tx_fail_type @@ got restricted __le32 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: expected unsigned int [usertype] trans_tx_fail_type drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2045:34: sparse: got restricted __le32 [usertype] drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] trans_rx_fail_type @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: expected unsigned int [usertype] val drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: got restricted __le32 [usertype] trans_rx_fail_type drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int [usertype] trans_rx_fail_type @@ got restricted __le32 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: expected unsigned int [usertype] trans_rx_fail_type drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2046:34: sparse: got restricted __le32 [usertype] drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: sparse: cast from restricted __le16 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short [usertype] val @@ got restricted __le16 [usertype] dma_tx_err_type @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: expected unsigned short [usertype] val drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: got restricted __le16 [usertype] dma_tx_err_type drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: sparse: cast from restricted __le16 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: sparse: cast from restricted __le16 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned short [usertype] dma_tx_err_type @@ got restricted __le16 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: expected unsigned short [usertype] dma_tx_err_type drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2047:31: sparse: got restricted __le16 [usertype] drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: sparse: cast from restricted __le16 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned short [usertype] val @@ got restricted __le16 [usertype] sipc_rx_err_type @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: expected unsigned short [usertype] val drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: got restricted __le16 [usertype] sipc_rx_err_type drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: sparse: cast from restricted __le16 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: sparse: cast from restricted __le16 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned short [usertype] sipc_rx_err_type @@ got restricted __le16 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: expected unsigned short [usertype] sipc_rx_err_type drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2048:32: sparse: got restricted __le16 [usertype] drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: incorrect type in argument 1 (different base types) @@ expected unsigned int [usertype] val @@ got restricted __le32 [usertype] dma_rx_err_type @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: expected unsigned int [usertype] val drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: got restricted __le32 [usertype] dma_rx_err_type drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: cast from restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int [usertype] dma_rx_err_type @@ got restricted __le32 [usertype] @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: expected unsigned int [usertype] dma_rx_err_type drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2049:31: sparse: got restricted __le32 [usertype] drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2383:30: sparse: sparse: restricted __le32 degrades to integer drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2409:26: sparse: sparse: restricted __le32 degrades to integer drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2410:32: sparse: sparse: restricted __le32 degrades to integer drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2411:46: sparse: sparse: restricted __le32 degrades to integer drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2538:26: sparse: sparse: invalid assignment: |= drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2538:26: sparse: left side has type restricted __le32 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:2538:26: sparse: right side has type int drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3153:51: sparse: sparse: incorrect type in initializer (different base types) @@ expected unsigned int [usertype] act_tmp @@ got restricted __le32 [usertype] act @@ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3153:51: sparse: expected unsigned int [usertype] act_tmp drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3153:51: sparse: got restricted __le32 [usertype] act drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3156:47: sparse: sparse: restricted __le32 degrades to integer drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3165:48: sparse: sparse: restricted __le64 degrades to integer drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3177:45: sparse: sparse: restricted __le32 degrades to integer >> drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3553:25: sparse: sparse: symbol 'host_attrs_v2_hw' was not declared. Should it be static? drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:773:1: sparse: sparse: context imbalance in 'slot_index_alloc_quirk_v2_hw' - wrong count at exit drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3646:36: warning: 'sas_v2_acpi_match' defined but not used [-Wunused-const-variable=] 3646 | static const struct acpi_device_id sas_v2_acpi_match[] = { | ^~~~~~~~~~~~~~~~~ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c: In function 'clear_itct_v2_hw': drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:987:29: warning: storing the address of local variable 'completion' in '*sas_dev.completion' [-Wdangling-pointer=] 987 | sas_dev->completion = &completion; | ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~ In file included from include/linux/srcutree.h:28, from include/linux/srcu.h:62, from include/linux/notifier.h:16, from include/linux/memory_hotplug.h:7, from include/linux/mmzone.h:748, from include/linux/gfp.h:6, from include/linux/slab.h:15, from include/linux/resource_ext.h:19, from include/linux/acpi.h:26, from drivers/scsi/hisi_sas/hisi_sas.h:15, from drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:12: drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:981:36: note: 'completion' declared here 981 | DECLARE_COMPLETION_ONSTACK(completion); | ^~~~~~~~~~ include/linux/completion.h:70:27: note: in definition of macro 'DECLARE_COMPLETION_ONSTACK' 70 | struct completion work = COMPLETION_INITIALIZER_ONSTACK(work) | ^~~~ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:979:55: note: 'sas_dev' declared here 979 | struct hisi_sas_device *sas_dev) | ~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~ drivers/scsi/hisi_sas/hisi_sas_v2_hw.c:3319: warning: Function parameter or member 'hisi_hba' not described in 'interrupt_init_v2_hw' vim +/host_attrs_v2_hw +3553 drivers/scsi/hisi_sas/hisi_sas_v2_hw.c 3552 > 3553 struct device_attribute *host_attrs_v2_hw[] = { 3554 &dev_attr_phy_event_threshold, 3555 NULL 3556 }; 3557 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 20638/23811] drivers/i2c/busses/.tmp_i2c-zhaoxin.o: warning: objtool: missing symbol for section .init.text
by kernel test robot 03 Oct '24

03 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 735c81b4d33c46ea097f6437f63ea624ccf6dee1 [20638/23811] i2c: Add Zhaoxin I2C driver config: x86_64-buildonly-randconfig-004-20240923 (https://download.01.org/0day-ci/archive/20241003/202410030906.pfPY7k7C-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241003/202410030906.pfPY7k7C-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/202410030906.pfPY7k7C-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/i2c/busses/.tmp_i2c-zhaoxin.o: warning: objtool: missing symbol for section .init.text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 18554/23811] drivers/net/ethernet/netswift/ngbe/.tmp_ngbe_lib.o: warning: objtool: missing symbol for section .text
by kernel test robot 03 Oct '24

03 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 206f9c11a8c8b0197da5a26859d96d2ed65f5757 [18554/23811] net: ngbe: Add Netswift Giga NIC driver config: x86_64-buildonly-randconfig-004-20240923 (https://download.01.org/0day-ci/archive/20241003/202410030547.hVYVuqx4-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241003/202410030547.hVYVuqx4-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/202410030547.hVYVuqx4-lkp@intel.com/ All warnings (new ones prefixed by >>): In file included from include/linux/sctp.h:57, from drivers/net/ethernet/netswift/ngbe/ngbe.h:28, from drivers/net/ethernet/netswift/ngbe/ngbe_lib.c:19: include/uapi/linux/sctp.h:390:1: warning: alignment 4 of 'struct sctp_paddr_change' is less than 8 [-Wpacked-not-aligned] 390 | } __attribute__((packed, aligned(4))); | ^ include/uapi/linux/sctp.h:719:1: warning: alignment 4 of 'struct sctp_setpeerprim' is less than 8 [-Wpacked-not-aligned] 719 | } __attribute__((packed, aligned(4))); | ^ include/uapi/linux/sctp.h:718:33: warning: 'sspp_addr' offset 4 in 'struct sctp_setpeerprim' isn't aligned to 8 [-Wpacked-not-aligned] 718 | struct sockaddr_storage sspp_addr; | ^~~~~~~~~ include/uapi/linux/sctp.h:732:1: warning: alignment 4 of 'struct sctp_prim' is less than 8 [-Wpacked-not-aligned] 732 | } __attribute__((packed, aligned(4))); | ^ include/uapi/linux/sctp.h:731:33: warning: 'ssp_addr' offset 4 in 'struct sctp_prim' isn't aligned to 8 [-Wpacked-not-aligned] 731 | struct sockaddr_storage ssp_addr; | ^~~~~~~~ include/uapi/linux/sctp.h:783:1: warning: alignment 4 of 'struct sctp_paddrparams' is less than 8 [-Wpacked-not-aligned] 783 | } __attribute__((packed, aligned(4))); | ^ include/uapi/linux/sctp.h:775:33: warning: 'spp_address' offset 4 in 'struct sctp_paddrparams' isn't aligned to 8 [-Wpacked-not-aligned] 775 | struct sockaddr_storage spp_address; | ^~~~~~~~~~~ include/uapi/linux/sctp.h:896:1: warning: alignment 4 of 'struct sctp_paddrinfo' is less than 8 [-Wpacked-not-aligned] 896 | } __attribute__((packed, aligned(4))); | ^ include/uapi/linux/sctp.h:890:33: warning: 'spinfo_address' offset 4 in 'struct sctp_paddrinfo' isn't aligned to 8 [-Wpacked-not-aligned] 890 | struct sockaddr_storage spinfo_address; | ^~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe.h: In function 'ngbe_misc_isb': drivers/net/ethernet/netswift/ngbe/ngbe.h:764:13: warning: variable 'cur_diff' set but not used [-Wunused-but-set-variable] 764 | u32 cur_diff = 0; | ^~~~~~~~ >> drivers/net/ethernet/netswift/ngbe/.tmp_ngbe_lib.o: warning: objtool: missing symbol for section .text -- In file included from include/linux/sctp.h:57, from drivers/net/ethernet/netswift/ngbe/ngbe.h:28, from drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:20: include/uapi/linux/sctp.h:390:1: warning: alignment 4 of 'struct sctp_paddr_change' is less than 8 [-Wpacked-not-aligned] 390 | } __attribute__((packed, aligned(4))); | ^ include/uapi/linux/sctp.h:719:1: warning: alignment 4 of 'struct sctp_setpeerprim' is less than 8 [-Wpacked-not-aligned] 719 | } __attribute__((packed, aligned(4))); | ^ include/uapi/linux/sctp.h:718:33: warning: 'sspp_addr' offset 4 in 'struct sctp_setpeerprim' isn't aligned to 8 [-Wpacked-not-aligned] 718 | struct sockaddr_storage sspp_addr; | ^~~~~~~~~ include/uapi/linux/sctp.h:732:1: warning: alignment 4 of 'struct sctp_prim' is less than 8 [-Wpacked-not-aligned] 732 | } __attribute__((packed, aligned(4))); | ^ include/uapi/linux/sctp.h:731:33: warning: 'ssp_addr' offset 4 in 'struct sctp_prim' isn't aligned to 8 [-Wpacked-not-aligned] 731 | struct sockaddr_storage ssp_addr; | ^~~~~~~~ include/uapi/linux/sctp.h:783:1: warning: alignment 4 of 'struct sctp_paddrparams' is less than 8 [-Wpacked-not-aligned] 783 | } __attribute__((packed, aligned(4))); | ^ include/uapi/linux/sctp.h:775:33: warning: 'spp_address' offset 4 in 'struct sctp_paddrparams' isn't aligned to 8 [-Wpacked-not-aligned] 775 | struct sockaddr_storage spp_address; | ^~~~~~~~~~~ include/uapi/linux/sctp.h:896:1: warning: alignment 4 of 'struct sctp_paddrinfo' is less than 8 [-Wpacked-not-aligned] 896 | } __attribute__((packed, aligned(4))); | ^ include/uapi/linux/sctp.h:890:33: warning: 'spinfo_address' offset 4 in 'struct sctp_paddrinfo' isn't aligned to 8 [-Wpacked-not-aligned] 890 | struct sockaddr_storage spinfo_address; | ^~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe.h: In function 'ngbe_misc_isb': drivers/net/ethernet/netswift/ngbe/ngbe.h:764:13: warning: variable 'cur_diff' set but not used [-Wunused-but-set-variable] 764 | u32 cur_diff = 0; | ^~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c: At top level: drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:128:5: warning: no previous prototype for 'ngbe_poll_for_msg' [-Wmissing-prototypes] 128 | int ngbe_poll_for_msg(struct ngbe_hw *hw, u16 mbx_id) | ^~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:158:5: warning: no previous prototype for 'ngbe_poll_for_ack' [-Wmissing-prototypes] 158 | int ngbe_poll_for_ack(struct ngbe_hw *hw, u16 mbx_id) | ^~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:259:5: warning: no previous prototype for 'ngbe_read_v2p_mailbox' [-Wmissing-prototypes] 259 | u32 ngbe_read_v2p_mailbox(struct ngbe_hw *hw) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:277:5: warning: no previous prototype for 'ngbe_check_for_bit_vf' [-Wmissing-prototypes] 277 | int ngbe_check_for_bit_vf(struct ngbe_hw *hw, u32 mask) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:293:5: warning: no previous prototype for 'ngbe_check_for_msg_vf' [-Wmissing-prototypes] 293 | int ngbe_check_for_msg_vf(struct ngbe_hw *hw, u16 mbx_id) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:315:5: warning: no previous prototype for 'ngbe_check_for_ack_vf' [-Wmissing-prototypes] 315 | int ngbe_check_for_ack_vf(struct ngbe_hw *hw, u16 mbx_id) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:337:5: warning: no previous prototype for 'ngbe_check_for_rst_vf' [-Wmissing-prototypes] 337 | int ngbe_check_for_rst_vf(struct ngbe_hw *hw, u16 mbx_id) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:357:5: warning: no previous prototype for 'ngbe_obtain_mbx_lock_vf' [-Wmissing-prototypes] 357 | int ngbe_obtain_mbx_lock_vf(struct ngbe_hw *hw) | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:385:5: warning: no previous prototype for 'ngbe_write_mbx_vf' [-Wmissing-prototypes] 385 | int ngbe_write_mbx_vf(struct ngbe_hw *hw, u32 *msg, u16 size, | ^~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:425:5: warning: no previous prototype for 'ngbe_read_mbx_vf' [-Wmissing-prototypes] 425 | int ngbe_read_mbx_vf(struct ngbe_hw *hw, u32 *msg, u16 size, | ^~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:483:5: warning: no previous prototype for 'ngbe_check_for_bit_pf' [-Wmissing-prototypes] 483 | int ngbe_check_for_bit_pf(struct ngbe_hw *hw, u32 mask) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:503:5: warning: no previous prototype for 'ngbe_check_for_msg_pf' [-Wmissing-prototypes] 503 | int ngbe_check_for_msg_pf(struct ngbe_hw *hw, u16 vf) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:523:5: warning: no previous prototype for 'ngbe_check_for_ack_pf' [-Wmissing-prototypes] 523 | int ngbe_check_for_ack_pf(struct ngbe_hw *hw, u16 vf) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:543:5: warning: no previous prototype for 'ngbe_check_for_rst_pf' [-Wmissing-prototypes] 543 | int ngbe_check_for_rst_pf(struct ngbe_hw *hw, u16 vf) | ^~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:566:5: warning: no previous prototype for 'ngbe_obtain_mbx_lock_pf' [-Wmissing-prototypes] 566 | int ngbe_obtain_mbx_lock_pf(struct ngbe_hw *hw, u16 vf) | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:594:5: warning: no previous prototype for 'ngbe_write_mbx_pf' [-Wmissing-prototypes] 594 | int ngbe_write_mbx_pf(struct ngbe_hw *hw, u32 *msg, u16 size, | ^~~~~~~~~~~~~~~~~ drivers/net/ethernet/netswift/ngbe/ngbe_mbx.c:634:5: warning: no previous prototype for 'ngbe_read_mbx_pf' [-Wmissing-prototypes] 634 | int ngbe_read_mbx_pf(struct ngbe_hw *hw, u32 *msg, u16 size, | ^~~~~~~~~~~~~~~~ >> drivers/net/ethernet/netswift/ngbe/.tmp_ngbe_mbx.o: warning: objtool: missing symbol for section .text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-5.10 22806/30000] drivers/md/md.c:4884:38: sparse: sparse: dereference of noderef expression
by kernel test robot 02 Oct '24

02 Oct '24
tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: 084a6771cfb3ef307b750af8b7c35a07a725fc4c commit: 448fbeaf0f07ea578841346b938245f5c5220b9b [22806/30000] md: protect md_thread with rcu config: x86_64-randconfig-121-20241002 (https://download.01.org/0day-ci/archive/20241002/202410022132.Z3G20996-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241002/202410022132.Z3G20996-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/202410022132.Z3G20996-lkp@intel.com/ sparse warnings: (new ones prefixed by >>) drivers/md/md.c:3392:29: sparse: sparse: self-comparison always evaluates to false drivers/md/md.c:3561:33: sparse: sparse: self-comparison always evaluates to false drivers/md/md.c:4341:36: sparse: sparse: self-comparison always evaluates to false >> drivers/md/md.c:4884:38: sparse: sparse: dereference of noderef expression drivers/md/md.c:5247:30: sparse: sparse: self-comparison always evaluates to false drivers/md/md.c:5284:30: sparse: sparse: self-comparison always evaluates to false drivers/md/md.c:5326:30: sparse: sparse: self-comparison always evaluates to false vim +4884 drivers/md/md.c 24dd469d728dae NeilBrown 2005-11-08 4857 e98a235fdfce57 Yu Kuai 2023-05-31 4858 static void stop_sync_thread(struct mddev *mddev) 24dd469d728dae NeilBrown 2005-11-08 4859 { e98a235fdfce57 Yu Kuai 2023-05-31 4860 if (!test_bit(MD_RECOVERY_RUNNING, &mddev->recovery)) e98a235fdfce57 Yu Kuai 2023-05-31 4861 return; 7eec314d7512d5 NeilBrown 2005-11-08 4862 e98a235fdfce57 Yu Kuai 2023-05-31 4863 if (mddev_lock(mddev)) e98a235fdfce57 Yu Kuai 2023-05-31 4864 return; e98a235fdfce57 Yu Kuai 2023-05-31 4865 e98a235fdfce57 Yu Kuai 2023-05-31 4866 /* e98a235fdfce57 Yu Kuai 2023-05-31 4867 * Check again in case MD_RECOVERY_RUNNING is cleared before lock is e98a235fdfce57 Yu Kuai 2023-05-31 4868 * held. e98a235fdfce57 Yu Kuai 2023-05-31 4869 */ e98a235fdfce57 Yu Kuai 2023-05-31 4870 if (!test_bit(MD_RECOVERY_RUNNING, &mddev->recovery)) { e98a235fdfce57 Yu Kuai 2023-05-31 4871 mddev_unlock(mddev); e98a235fdfce57 Yu Kuai 2023-05-31 4872 return; e98a235fdfce57 Yu Kuai 2023-05-31 4873 } 56ccc1125bc141 NeilBrown 2015-05-28 4874 cc1ffe61c026e2 Guoqing Jiang 2020-04-04 4875 if (work_pending(&mddev->del_work)) f851b60db0fd83 NeilBrown 2014-12-11 4876 flush_workqueue(md_misc_wq); e98a235fdfce57 Yu Kuai 2023-05-31 4877 7eec314d7512d5 NeilBrown 2005-11-08 4878 set_bit(MD_RECOVERY_INTR, &mddev->recovery); 1ade24b66e5223 Yu Kuai 2023-05-31 4879 /* 1ade24b66e5223 Yu Kuai 2023-05-31 4880 * Thread might be blocked waiting for metadata update which will now 1ade24b66e5223 Yu Kuai 2023-05-31 4881 * never happen. 1ade24b66e5223 Yu Kuai 2023-05-31 4882 */ 1ade24b66e5223 Yu Kuai 2023-05-31 4883 if (mddev->sync_thread) 1ade24b66e5223 Yu Kuai 2023-05-31 @4884 wake_up_process(mddev->sync_thread->tsk); e98a235fdfce57 Yu Kuai 2023-05-31 4885 8e8e2518fceca4 NeilBrown 2015-06-12 4886 mddev_unlock(mddev); 7eec314d7512d5 NeilBrown 2005-11-08 4887 } e98a235fdfce57 Yu Kuai 2023-05-31 4888 :::::: The code at line 4884 was first introduced by commit :::::: 1ade24b66e52235723afa4554f8cf6ecc2fb29b4 md: refactor idle/frozen_sync_thread() :::::: TO: Yu Kuai <yukuai3(a)huawei.com> :::::: CC: Jialin Zhang <zhangjialin11(a)huawei.com> -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 17825/23811] drivers/platform/x86/intel_speed_select_if/.tmp_isst_if_mmio.o: warning: objtool: missing symbol for section .init.text
by kernel test robot 02 Oct '24

02 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 8453d1c1d4ecff553e6c5d7ef7671ab91a241f4a [17825/23811] Intel: platform/x86: ISST: Add Intel Speed Select mmio interface config: x86_64-buildonly-randconfig-004-20240923 (https://download.01.org/0day-ci/archive/20241002/202410021538.rzR8vgtb-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241002/202410021538.rzR8vgtb-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/202410021538.rzR8vgtb-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/platform/x86/intel_speed_select_if/.tmp_isst_if_mmio.o: warning: objtool: missing symbol for section .init.text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 11568/23811] drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_led.o: warning: objtool: missing symbol for section .text
by kernel test robot 02 Oct '24

02 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: eb3a8c90a2b27a2f2dbe26e8a2e7edff6b61417c [11568/23811] net: HNS3: Increase the dft for the command of led config: x86_64-buildonly-randconfig-005-20240929 (https://download.01.org/0day-ci/archive/20241002/202410021314.hqdtVNNo-lkp@…) compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241002/202410021314.hqdtVNNo-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/202410021314.hqdtVNNo-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_led.o: warning: objtool: missing symbol for section .text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-5.10 26381/30000] drivers/ub/urma/ubcore/ubcore_msg.c:264:15: warning: 'strncpy' output may be truncated copying 63 bytes from a string of length 63
by kernel test robot 02 Oct '24

02 Oct '24
tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: 084a6771cfb3ef307b750af8b7c35a07a725fc4c commit: 5d130e2cfa3d2aaee4d10e18c075f6c3750600c5 [26381/30000] urma: upload kernel patch for 20240511_mig config: arm64-randconfig-004-20240928 (https://download.01.org/0day-ci/archive/20241002/202410020611.L9WVfDmZ-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241002/202410020611.L9WVfDmZ-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/202410020611.L9WVfDmZ-lkp@intel.com/ All warnings (new ones prefixed by >>): drivers/ub/urma/ubcore/ubcore_msg.c:519:28: warning: no previous prototype for 'ubcore_asyn_send_fe2tpf_msg' [-Wmissing-prototypes] 519 | struct ubcore_msg_session *ubcore_asyn_send_fe2tpf_msg(struct ubcore_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In function 'ubcore_migrate_req', inlined from 'ubcore_recv_req' at drivers/ub/urma/ubcore/ubcore_msg.c:368:16: >> drivers/ub/urma/ubcore/ubcore_msg.c:264:15: warning: 'strncpy' output may be truncated copying 63 bytes from a string of length 63 [-Wstringop-truncation] 264 | (void)strncpy(mig_resp->dev_name, dev->dev_name, UBCORE_MAX_DEV_NAME - 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- drivers/ub/urma/ubcore/ubcore_umem.c:242:21: warning: no previous prototype for 'ubcore_umem_get' [-Wmissing-prototypes] 242 | struct ubcore_umem *ubcore_umem_get(struct ubcore_device *dev, uint64_t va, | ^~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_umem.c:260:6: warning: no previous prototype for 'ubcore_umem_release' [-Wmissing-prototypes] 260 | void ubcore_umem_release(struct ubcore_umem *umem) | ^~~~~~~~~~~~~~~~~~~ >> drivers/ub/urma/ubcore/ubcore_umem.c:284:10: warning: no previous prototype for 'ubcore_umem_find_best_page_size' [-Wmissing-prototypes] 284 | uint64_t ubcore_umem_find_best_page_size(struct ubcore_umem *umem, uint64_t page_size_bitmap, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- drivers/ub/urma/ubcore/ubcore_netlink.c:192:5: warning: no previous prototype for 'ubcore_genl_unicast' [-Wmissing-prototypes] 192 | int ubcore_genl_unicast(struct ubcore_nlmsg *req, uint32_t len) | ^~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netlink.c: In function 'ubcore_create_nl_session': >> drivers/ub/urma/ubcore/ubcore_netlink.c:89:15: warning: 'strncpy' output may be truncated copying 63 bytes from a string of length 63 [-Wstringop-truncation] 89 | (void)strncpy(s->dev_name, dev->dev_name, UBCORE_MAX_DEV_NAME - 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- drivers/ub/urma/ubcore/ubcore_netdev.c:41:25: warning: no previous prototype for 'ubcore_lookup_sip_info_without_lock' [-Wmissing-prototypes] 41 | struct ubcore_sip_info *ubcore_lookup_sip_info_without_lock( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:75:5: warning: no previous prototype for 'ubcore_notify_uvs_del_sip' [-Wmissing-prototypes] 75 | int ubcore_notify_uvs_del_sip(struct ubcore_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:113:22: warning: no previous prototype for 'ubcore_new_sip_req_msg' [-Wmissing-prototypes] 113 | struct ubcore_nlmsg *ubcore_new_sip_req_msg(struct ubcore_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:145:5: warning: no previous prototype for 'ubcore_notify_uvs_add_sip' [-Wmissing-prototypes] 145 | int ubcore_notify_uvs_add_sip(struct ubcore_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:177:5: warning: no previous prototype for 'ubcore_check_port_state' [-Wmissing-prototypes] 177 | int ubcore_check_port_state(struct ubcore_device *dev) | ^~~~~~~~~~~~~~~~~~~~~~~ >> drivers/ub/urma/ubcore/ubcore_netdev.c:204:6: warning: no previous prototype for 'ubcore_fill_port_netdev' [-Wmissing-prototypes] 204 | void ubcore_fill_port_netdev(struct ubcore_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:268:5: warning: no previous prototype for 'ubcore_set_port_netdev' [-Wmissing-prototypes] 268 | int ubcore_set_port_netdev(struct ubcore_device *dev, struct net_device *ndev, | ^~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:353:5: warning: no previous prototype for 'ubcore_unset_port_netdev' [-Wmissing-prototypes] 353 | int ubcore_unset_port_netdev(struct ubcore_device *dev, struct net_device *ndev, | ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:385:6: warning: no previous prototype for 'ubcore_put_port_netdev' [-Wmissing-prototypes] 385 | void ubcore_put_port_netdev(struct ubcore_device *dev) | ^~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:412:5: warning: no previous prototype for 'ubcore_sip_table_init' [-Wmissing-prototypes] 412 | int ubcore_sip_table_init(struct ubcore_sip_table *sip_table, uint32_t size) | ^~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:431:6: warning: no previous prototype for 'ubcore_sip_table_uninit' [-Wmissing-prototypes] 431 | void ubcore_sip_table_uninit(struct ubcore_sip_table *sip_table) | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:442:5: warning: no previous prototype for 'ubcore_sip_idx_alloc' [-Wmissing-prototypes] 442 | int ubcore_sip_idx_alloc(struct ubcore_sip_table *sip_table) | ^~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:458:5: warning: no previous prototype for 'ubcore_sip_idx_free' [-Wmissing-prototypes] 458 | int ubcore_sip_idx_free(struct ubcore_sip_table *sip_table, uint32_t idx) | ^~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:471:5: warning: no previous prototype for 'ubcore_add_sip_entry' [-Wmissing-prototypes] 471 | int ubcore_add_sip_entry(struct ubcore_sip_table *sip_table, const struct ubcore_sip_info *sip, | ^~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:489:5: warning: no previous prototype for 'ubcore_del_sip_entry' [-Wmissing-prototypes] 489 | int ubcore_del_sip_entry(struct ubcore_sip_table *sip_table, uint32_t idx) | ^~~~~~~~~~~~~~~~~~~~ >> drivers/ub/urma/ubcore/ubcore_netdev.c:519:5: warning: no previous prototype for 'ubcore_update_sip_entry' [-Wmissing-prototypes] 519 | int ubcore_update_sip_entry(struct ubcore_sip_table *sip_table, struct ubcore_sip_info *new_sip, | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:548:5: warning: no previous prototype for 'ubcore_lookup_sip_idx' [-Wmissing-prototypes] 548 | int ubcore_lookup_sip_idx(struct ubcore_sip_table *sip_table, struct ubcore_sip_info *sip, | ^~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c: In function 'ubcore_set_port_netdev': drivers/ub/urma/ubcore/ubcore_netdev.c:275:17: warning: 'strnlen' specified bound 64 exceeds source size 21 [-Wstringop-overread] 275 | strnlen(netdev_name(ndev), UBCORE_MAX_DEV_NAME) >= UBCORE_MAX_DEV_NAME) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c: In function 'ubcore_unset_port_netdev': drivers/ub/urma/ubcore/ubcore_netdev.c:360:17: warning: 'strnlen' specified bound 64 exceeds source size 21 [-Wstringop-overread] 360 | strnlen(netdev_name(ndev), UBCORE_MAX_DEV_NAME) >= UBCORE_MAX_DEV_NAME) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- drivers/ub/urma/ubcore/ubcore_device.c:413:6: warning: no previous prototype for 'ubcore_destroy_upi_list' [-Wmissing-prototypes] 413 | void ubcore_destroy_upi_list(struct ubcore_device *dev) | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c:1666:5: warning: no previous prototype for 'ubcore_dispatch_event' [-Wmissing-prototypes] 1666 | int ubcore_dispatch_event(struct ubcore_event *event) | ^~~~~~~~~~~~~~~~~~~~~ In file included from include/linux/printk.h:7, from include/linux/kernel.h:17, from include/asm-generic/bug.h:20, from arch/arm64/include/asm/bug.h:26, from include/linux/bug.h:5, from include/linux/refcount.h:96, from include/net/net_namespace.h:9, from drivers/ub/urma/ubcore/ubcore_device.c:21: drivers/ub/urma/ubcore/ubcore_device.c: In function 'ubcore_add_ueid': include/linux/kern_levels.h:5:25: warning: too many arguments for format [-Wformat-extra-args] 5 | #define KERN_SOH "\001" /* ASCII Start Of Header */ | ^~~~~~ include/linux/kern_levels.h:11:25: note: in expansion of macro 'KERN_SOH' 11 | #define KERN_ERR KERN_SOH "3" /* error conditions */ | ^~~~~~~~ include/linux/printk.h:392:16: note: in expansion of macro 'KERN_ERR' 392 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__) | ^~~~~~~~ drivers/ub/urma/ubcore/ubcore_log.h:46:16: note: in expansion of macro 'pr_err' 46 | ((void)pr_##l("%s|%s:[%d]|" format, UBCORE_LOG_TAG, __func__, __LINE__, ##args)) | ^~~ drivers/ub/urma/ubcore/ubcore_log.h:57:17: note: in expansion of macro 'ubcore_default_log' 57 | ubcore_default_log(err, __VA_ARGS__); \ | ^~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c:1874:17: note: in expansion of macro 'ubcore_log_err' 1874 | ubcore_log_err("failed to add ueid, ret:%d\n", | ^~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c: In function 'ubcore_delete_ueid': include/linux/kern_levels.h:5:25: warning: too many arguments for format [-Wformat-extra-args] 5 | #define KERN_SOH "\001" /* ASCII Start Of Header */ | ^~~~~~ include/linux/kern_levels.h:11:25: note: in expansion of macro 'KERN_SOH' 11 | #define KERN_ERR KERN_SOH "3" /* error conditions */ | ^~~~~~~~ include/linux/printk.h:392:16: note: in expansion of macro 'KERN_ERR' 392 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__) | ^~~~~~~~ drivers/ub/urma/ubcore/ubcore_log.h:46:16: note: in expansion of macro 'pr_err' 46 | ((void)pr_##l("%s|%s:[%d]|" format, UBCORE_LOG_TAG, __func__, __LINE__, ##args)) | ^~~ drivers/ub/urma/ubcore/ubcore_log.h:57:17: note: in expansion of macro 'ubcore_default_log' 57 | ubcore_default_log(err, __VA_ARGS__); \ | ^~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c:1896:17: note: in expansion of macro 'ubcore_log_err' 1896 | ubcore_log_err("failed to add ueid, ret:%d\n", | ^~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c: At top level: drivers/ub/urma/ubcore/ubcore_device.c:2372:6: warning: no previous prototype for 'ubcore_net_exit' [-Wmissing-prototypes] 2372 | void ubcore_net_exit(struct net *net) | ^~~~~~~~~~~~~~~ In function 'ubcore_send_remove_tpf_dev_info', inlined from 'uninit_ubcore_device' at drivers/ub/urma/ubcore/ubcore_device.c:1057:37: >> drivers/ub/urma/ubcore/ubcore_device.c:823:15: warning: 'strncpy' output may be truncated copying 63 bytes from a string of length 63 [-Wstringop-truncation] 823 | (void)strncpy(data->dev_name, dev->dev_name, UBCORE_MAX_DEV_NAME - 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c: In function 'ubcore_new_tpf_dev_msg': drivers/ub/urma/ubcore/ubcore_device.c:888:15: warning: 'strncpy' output may be truncated copying 63 bytes from a string of length 63 [-Wstringop-truncation] 888 | (void)strncpy(data->dev_name, dev->dev_name, UBCORE_MAX_DEV_NAME - 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c:892:17: warning: 'strnlen' specified bound 64 exceeds source size 16 [-Wstringop-overread] 892 | strnlen(dev->netdev->name, UBCORE_MAX_DEV_NAME) < UBCORE_MAX_DEV_NAME) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/ub/urma/ubcore/ubcore_device.c:32: include/linux/netdevice.h:1957:33: note: source object allocated here 1957 | char name[IFNAMSIZ]; | ^~~~ -- drivers/ub/urma/ubcore/ubcore_tp.c:70:17: warning: no previous prototype for 'ubcore_get_mtu' [-Wmissing-prototypes] 70 | enum ubcore_mtu ubcore_get_mtu(int mtu) | ^~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_tp.c:341:5: warning: no previous prototype for 'ubcore_modify_tp_state' [-Wmissing-prototypes] 341 | int ubcore_modify_tp_state(struct ubcore_device *dev, struct ubcore_tp *tp, | ^~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_tp.c: In function 'ubcore_send_del_tp_req.isra': >> drivers/ub/urma/ubcore/ubcore_tp.c:687:15: warning: 'strncpy' output may be truncated copying 63 bytes from a string of length 63 [-Wstringop-truncation] 687 | (void)strncpy(data->dev_name, dev->dev_name, UBCORE_MAX_DEV_NAME - 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_tp.c: In function 'ubcore_init_create_tp_req': drivers/ub/urma/ubcore/ubcore_tp.c:581:15: warning: 'strncpy' output may be truncated copying 63 bytes from a string of length 63 [-Wstringop-truncation] 581 | (void)strncpy(data->dev_name, dev->dev_name, UBCORE_MAX_DEV_NAME - 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- >> drivers/ub/urma/ubcore/ubcore_tpg.c:85:6: warning: no previous prototype for 'ubcore_tpg_kref_get' [-Wmissing-prototypes] 85 | void ubcore_tpg_kref_get(struct ubcore_tpg *tpg) | ^~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_tpg.c: In function 'ubcore_find_remove_tpg': drivers/ub/urma/ubcore/ubcore_tpg.c:100:42: warning: the comparison will always evaluate as 'false' for the address of 'head' will never be NULL [-Waddress] 100 | if (&dev->ht[UBCORE_HT_TPG].head == NULL) { | ^~ In file included from drivers/ub/urma/ubcore/ubcore_hash_table.h:24, from drivers/ub/urma/ubcore/ubcore_tpg.c:23: include/urma/ubcore_types.h:178:28: note: 'head' declared here 178 | struct hlist_head *head; | ^~~~ drivers/ub/urma/ubcore/ubcore_tpg.c: In function 'ubcore_find_remove_tp_node': drivers/ub/urma/ubcore/ubcore_tpg.c:131:41: warning: the comparison will always evaluate as 'false' for the address of 'head' will never be NULL [-Waddress] 131 | if (&dev->ht[UBCORE_HT_TP].head == NULL) { | ^~ include/urma/ubcore_types.h:178:28: note: 'head' declared here 178 | struct hlist_head *head; | ^~~~ -- drivers/ub/urma/ubcore/ubcore_vtp.c:337:6: warning: no previous prototype for 'ubcore_hash_table_rmv_vtpn' [-Wmissing-prototypes] 337 | void ubcore_hash_table_rmv_vtpn(struct ubcore_device *dev, struct ubcore_vtpn *vtpn, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ In function 'ubcore_send_create_vtp_req', inlined from 'ubcore_connect_vtp' at drivers/ub/urma/ubcore/ubcore_vtp.c:419:8: >> drivers/ub/urma/ubcore/ubcore_vtp.c:93:15: warning: 'strncpy' output may be truncated copying 63 bytes from a string of length 63 [-Wstringop-truncation] 93 | (void)strncpy(create->dev_name, dev->dev_name, UBCORE_MAX_DEV_NAME - 1); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ vim +/strncpy +264 drivers/ub/urma/ubcore/ubcore_msg.c 239 240 static struct ubcore_req_host *ubcore_migrate_req(struct ubcore_device *dev, 241 struct ubcore_req_host *req_host) 242 { 243 uint32_t len; 244 struct ubcore_nl_function_mig_req *mig_resp; 245 struct ubcore_function_mig_req *mig_msg; 246 struct ubcore_req_host *req_copy; 247 248 len = (uint32_t)sizeof(struct ubcore_req_host) + 249 (uint32_t)sizeof(struct ubcore_nl_function_mig_req); 250 mig_msg = (struct ubcore_function_mig_req *)req_host->req.data; 251 req_copy = kzalloc(len, GFP_KERNEL); 252 if (req_copy == NULL) { 253 ubcore_log_err("Failed to kzalloc req_host req_copy!\n"); 254 return NULL; 255 } 256 257 req_copy->src_fe_idx = req_host->src_fe_idx; 258 req_copy->req.opcode = req_host->req.opcode; 259 req_copy->req.msg_id = req_host->req.msg_id; 260 req_copy->req.len = sizeof(struct ubcore_nl_function_mig_req); 261 262 mig_resp = (struct ubcore_nl_function_mig_req *)req_copy->req.data; 263 mig_resp->mig_fe_idx = mig_msg->mig_fe_idx; > 264 (void)strncpy(mig_resp->dev_name, dev->dev_name, UBCORE_MAX_DEV_NAME - 1); 265 266 return req_copy; 267 } 268 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 17806/23811] drivers/powercap/.tmp_intel_rapl_msr.o: warning: objtool: missing symbol for section .init.text
by kernel test robot 02 Oct '24

02 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 0ea5d304521b68fb459c57e55f3f1bd853127bc7 [17806/23811] intel_rapl: abstract RAPL common code config: x86_64-buildonly-randconfig-004-20240923 (https://download.01.org/0day-ci/archive/20241002/202410020406.FALjNWrC-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241002/202410020406.FALjNWrC-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/202410020406.FALjNWrC-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/powercap/.tmp_intel_rapl_msr.o: warning: objtool: missing symbol for section .init.text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-5.10 26380/30000] drivers/ub/urma/ubcore/ubcore_msg.c:433:28: warning: no previous prototype for 'ubcore_asyn_send_fe2tpf_msg'
by kernel test robot 02 Oct '24

02 Oct '24
tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: 084a6771cfb3ef307b750af8b7c35a07a725fc4c commit: 6d14be01fcb032c478cd4669b32526fda0393195 [26380/30000] urma: upload kernel patch for 20240318_happy_birthday config: arm64-randconfig-004-20240928 (https://download.01.org/0day-ci/archive/20241002/202410020358.lBEOzVu8-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241002/202410020358.lBEOzVu8-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/202410020358.lBEOzVu8-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/ub/urma/ubcore/ubcore_msg.c:433:28: warning: no previous prototype for 'ubcore_asyn_send_fe2tpf_msg' [-Wmissing-prototypes] 433 | struct ubcore_msg_session *ubcore_asyn_send_fe2tpf_msg(struct ubcore_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~ In function 'ubcore_migrate_req', inlined from 'ubcore_recv_req' at drivers/ub/urma/ubcore/ubcore_msg.c:282:16: drivers/ub/urma/ubcore/ubcore_msg.c:261:15: warning: 'strncpy' specified bound depends on the length of the source argument [-Wstringop-truncation] 261 | (void)strncpy(mig_resp->dev_name, dev->dev_name, strlen(dev->dev_name)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_msg.c:261:15: note: length computed here 261 | (void)strncpy(mig_resp->dev_name, dev->dev_name, strlen(dev->dev_name)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- >> drivers/ub/urma/ubcore/ubcore_netlink.c:185:5: warning: no previous prototype for 'ubcore_genl_unicast' [-Wmissing-prototypes] 185 | int ubcore_genl_unicast(struct ubcore_nlmsg *req, uint32_t len) | ^~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netlink.c: In function 'ubcore_create_nl_session': drivers/ub/urma/ubcore/ubcore_netlink.c:87:15: warning: 'strncpy' specified bound depends on the length of the source argument [-Wstringop-truncation] 87 | (void)strncpy(s->dev_name, dev->dev_name, strlen(dev->dev_name)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netlink.c:87:15: note: length computed here 87 | (void)strncpy(s->dev_name, dev->dev_name, strlen(dev->dev_name)); | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- >> drivers/ub/urma/ubcore/ubcore_netdev.c:40:25: warning: no previous prototype for 'ubcore_lookup_sip_info_without_lock' [-Wmissing-prototypes] 40 | struct ubcore_sip_info *ubcore_lookup_sip_info_without_lock( | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:74:5: warning: no previous prototype for 'ubcore_notify_uvs_del_sip' [-Wmissing-prototypes] 74 | int ubcore_notify_uvs_del_sip(struct ubcore_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/ub/urma/ubcore/ubcore_netdev.c:112:22: warning: no previous prototype for 'ubcore_new_sip_req_msg' [-Wmissing-prototypes] 112 | struct ubcore_nlmsg *ubcore_new_sip_req_msg(struct ubcore_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:144:5: warning: no previous prototype for 'ubcore_notify_uvs_add_sip' [-Wmissing-prototypes] 144 | int ubcore_notify_uvs_add_sip(struct ubcore_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:176:5: warning: no previous prototype for 'ubcore_check_port_state' [-Wmissing-prototypes] 176 | int ubcore_check_port_state(struct ubcore_device *dev, uint8_t port_idx) | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:200:6: warning: no previous prototype for 'ubcore_find_port_netdev' [-Wmissing-prototypes] 200 | void ubcore_find_port_netdev(struct ubcore_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:291:5: warning: no previous prototype for 'ubcore_set_port_netdev' [-Wmissing-prototypes] 291 | int ubcore_set_port_netdev(struct ubcore_device *dev, struct net_device *ndev, | ^~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:377:5: warning: no previous prototype for 'ubcore_unset_port_netdev' [-Wmissing-prototypes] 377 | int ubcore_unset_port_netdev(struct ubcore_device *dev, struct net_device *ndev, | ^~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:408:6: warning: no previous prototype for 'ubcore_put_port_netdev' [-Wmissing-prototypes] 408 | void ubcore_put_port_netdev(struct ubcore_device *dev) | ^~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:435:5: warning: no previous prototype for 'ubcore_sip_table_init' [-Wmissing-prototypes] 435 | int ubcore_sip_table_init(struct ubcore_sip_table *sip_table, uint32_t size) | ^~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:454:6: warning: no previous prototype for 'ubcore_sip_table_uninit' [-Wmissing-prototypes] 454 | void ubcore_sip_table_uninit(struct ubcore_sip_table *sip_table) | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:465:5: warning: no previous prototype for 'ubcore_sip_idx_alloc' [-Wmissing-prototypes] 465 | int ubcore_sip_idx_alloc(struct ubcore_sip_table *sip_table) | ^~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:481:5: warning: no previous prototype for 'ubcore_sip_idx_free' [-Wmissing-prototypes] 481 | int ubcore_sip_idx_free(struct ubcore_sip_table *sip_table, uint32_t idx) | ^~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:494:5: warning: no previous prototype for 'ubcore_add_sip_entry' [-Wmissing-prototypes] 494 | int ubcore_add_sip_entry(struct ubcore_sip_table *sip_table, const struct ubcore_sip_info *sip, | ^~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:512:5: warning: no previous prototype for 'ubcore_del_sip_entry' [-Wmissing-prototypes] 512 | int ubcore_del_sip_entry(struct ubcore_sip_table *sip_table, uint32_t idx) | ^~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c:542:5: warning: no previous prototype for 'ubcore_lookup_sip_idx' [-Wmissing-prototypes] 542 | int ubcore_lookup_sip_idx(struct ubcore_sip_table *sip_table, struct ubcore_sip_info *sip, | ^~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c: In function 'ubcore_set_port_netdev': >> drivers/ub/urma/ubcore/ubcore_netdev.c:298:17: warning: 'strnlen' specified bound 64 exceeds source size 21 [-Wstringop-overread] 298 | strnlen(netdev_name(ndev), UBCORE_MAX_DEV_NAME) >= UBCORE_MAX_DEV_NAME) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_netdev.c: In function 'ubcore_unset_port_netdev': drivers/ub/urma/ubcore/ubcore_netdev.c:384:17: warning: 'strnlen' specified bound 64 exceeds source size 21 [-Wstringop-overread] 384 | strnlen(netdev_name(ndev), UBCORE_MAX_DEV_NAME) >= UBCORE_MAX_DEV_NAME) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- drivers/ub/urma/ubcore/ubcore_device.c:409:6: warning: no previous prototype for 'ubcore_destroy_upi_list' [-Wmissing-prototypes] 409 | void ubcore_destroy_upi_list(struct ubcore_device *dev) | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c:504:23: warning: no previous prototype for 'ubcore_find_tpf_device_legacy' [-Wmissing-prototypes] 504 | struct ubcore_device *ubcore_find_tpf_device_legacy(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c:1637:5: warning: no previous prototype for 'ubcore_dispatch_event' [-Wmissing-prototypes] 1637 | int ubcore_dispatch_event(struct ubcore_event *event) | ^~~~~~~~~~~~~~~~~~~~~ In file included from include/linux/printk.h:7, from include/linux/kernel.h:17, from include/asm-generic/bug.h:20, from arch/arm64/include/asm/bug.h:26, from include/linux/bug.h:5, from include/linux/refcount.h:96, from include/net/net_namespace.h:9, from drivers/ub/urma/ubcore/ubcore_device.c:21: drivers/ub/urma/ubcore/ubcore_device.c: In function 'ubcore_add_ueid': include/linux/kern_levels.h:5:25: warning: too many arguments for format [-Wformat-extra-args] 5 | #define KERN_SOH "\001" /* ASCII Start Of Header */ | ^~~~~~ include/linux/kern_levels.h:11:25: note: in expansion of macro 'KERN_SOH' 11 | #define KERN_ERR KERN_SOH "3" /* error conditions */ | ^~~~~~~~ include/linux/printk.h:392:16: note: in expansion of macro 'KERN_ERR' 392 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__) | ^~~~~~~~ drivers/ub/urma/ubcore/ubcore_log.h:46:16: note: in expansion of macro 'pr_err' 46 | ((void)pr_##l("%s|%s:[%d]|" format, UBCORE_LOG_TAG, __func__, __LINE__, ##args)) | ^~~ drivers/ub/urma/ubcore/ubcore_log.h:57:17: note: in expansion of macro 'ubcore_default_log' 57 | ubcore_default_log(err, __VA_ARGS__); \ | ^~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c:1857:17: note: in expansion of macro 'ubcore_log_err' 1857 | ubcore_log_err("failed to add ueid, ret:%d\n", | ^~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c: In function 'ubcore_delete_ueid': include/linux/kern_levels.h:5:25: warning: too many arguments for format [-Wformat-extra-args] 5 | #define KERN_SOH "\001" /* ASCII Start Of Header */ | ^~~~~~ include/linux/kern_levels.h:11:25: note: in expansion of macro 'KERN_SOH' 11 | #define KERN_ERR KERN_SOH "3" /* error conditions */ | ^~~~~~~~ include/linux/printk.h:392:16: note: in expansion of macro 'KERN_ERR' 392 | printk(KERN_ERR pr_fmt(fmt), ##__VA_ARGS__) | ^~~~~~~~ drivers/ub/urma/ubcore/ubcore_log.h:46:16: note: in expansion of macro 'pr_err' 46 | ((void)pr_##l("%s|%s:[%d]|" format, UBCORE_LOG_TAG, __func__, __LINE__, ##args)) | ^~~ drivers/ub/urma/ubcore/ubcore_log.h:57:17: note: in expansion of macro 'ubcore_default_log' 57 | ubcore_default_log(err, __VA_ARGS__); \ | ^~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c:1885:17: note: in expansion of macro 'ubcore_log_err' 1885 | ubcore_log_err("failed to add ueid, ret:%d\n", | ^~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c: At top level: drivers/ub/urma/ubcore/ubcore_device.c:2389:6: warning: no previous prototype for 'ubcore_net_exit' [-Wmissing-prototypes] 2389 | void ubcore_net_exit(struct net *net) | ^~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c: In function 'ubcore_new_tpf_dev_msg': >> drivers/ub/urma/ubcore/ubcore_device.c:913:21: warning: 'strnlen' specified bound 64 exceeds source size 16 [-Wstringop-overread] 913 | if (strnlen(dev->netdev->name, UBCORE_MAX_DEV_NAME) >= UBCORE_MAX_DEV_NAME) { | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from drivers/ub/urma/ubcore/ubcore_device.c:32: include/linux/netdevice.h:1957:33: note: source object allocated here 1957 | char name[IFNAMSIZ]; | ^~~~ -- drivers/ub/urma/ubcore/ubcore_ctp.c: In function 'ubcore_find_remove_ctp': >> drivers/ub/urma/ubcore/ubcore_ctp.c:114:42: warning: the comparison will always evaluate as 'false' for the address of 'head' will never be NULL [-Waddress] 114 | if (&dev->ht[UBCORE_HT_CTP].head == NULL) { | ^~ In file included from drivers/ub/urma/ubcore/ubcore_hash_table.h:24, from drivers/ub/urma/ubcore/ubcore_ctp.c:23: include/urma/ubcore_types.h:162:28: note: 'head' declared here 162 | struct hlist_head *head; | ^~~~ -- drivers/ub/urma/ubcore/ubcore_tpg.c: In function 'ubcore_find_remove_tpg': >> drivers/ub/urma/ubcore/ubcore_tpg.c:113:42: warning: the comparison will always evaluate as 'false' for the address of 'head' will never be NULL [-Waddress] 113 | if (&dev->ht[UBCORE_HT_TPG].head == NULL) { | ^~ In file included from drivers/ub/urma/ubcore/ubcore_hash_table.h:24, from drivers/ub/urma/ubcore/ubcore_tpg.c:23: include/urma/ubcore_types.h:162:28: note: 'head' declared here 162 | struct hlist_head *head; | ^~~~ drivers/ub/urma/ubcore/ubcore_tpg.c: In function 'ubcore_find_remove_tp_node': drivers/ub/urma/ubcore/ubcore_tpg.c:149:44: warning: the comparison will always evaluate as 'false' for the address of 'head' will never be NULL [-Waddress] 149 | if (&dev->ht[UBCORE_HT_UB_TP].head == NULL) { | ^~ include/urma/ubcore_types.h:162:28: note: 'head' declared here 162 | struct hlist_head *head; | ^~~~ -- drivers/ub/urma/ubcore/ubcore_utp.c: In function 'ubcore_find_remove_utp': >> drivers/ub/urma/ubcore/ubcore_utp.c:139:42: warning: the comparison will always evaluate as 'false' for the address of 'head' will never be NULL [-Waddress] 139 | if (&dev->ht[UBCORE_HT_UTP].head == NULL) { | ^~ In file included from drivers/ub/urma/ubcore/ubcore_hash_table.h:24, from drivers/ub/urma/ubcore/ubcore_utp.c:23: include/urma/ubcore_types.h:162:28: note: 'head' declared here 162 | struct hlist_head *head; | ^~~~ vim +/ubcore_asyn_send_fe2tpf_msg +433 drivers/ub/urma/ubcore/ubcore_msg.c 428 429 /** 430 * If you do not need to wait for the response of a message, use ubcore_asyn_send_fe2tpf_msg. 431 * If you need to wait for a response to a message, use ubcore_send_fe2tpf_msg 432 */ > 433 struct ubcore_msg_session *ubcore_asyn_send_fe2tpf_msg(struct ubcore_device *dev, 434 struct ubcore_req *req) 435 { 436 struct ubcore_msg_session *s; 437 int ret; 438 439 req->msg_id = ubcore_get_msg_seq(); 440 s = ubcore_create_msg_session(req); 441 if (s == NULL) { 442 ubcore_log_err("Failed to create req session!\n"); 443 return NULL; 444 } 445 446 ret = ubcore_send_req(dev, req); 447 if (ret != 0) { 448 ubcore_log_err("Failed to send req, msg_id = %u, opcode = %hu.\n", 449 req->msg_id, (uint16_t)req->opcode); 450 ubcore_destroy_msg_session(s); 451 return NULL; 452 } 453 return s; 454 } 455 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-5.10 26379/30000] drivers/ub/urma/ubcore/ubcore_vtp.c:261:6: warning: no previous prototype for 'ubcore_hash_table_rmv_vtpn'
by kernel test robot 02 Oct '24

02 Oct '24
tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: 084a6771cfb3ef307b750af8b7c35a07a725fc4c commit: 013280dfab06d20e73de842e8d2fc2a200055455 [26379/30000] urma: upload kernel patch for 20240224_rain config: arm64-randconfig-004-20240928 (https://download.01.org/0day-ci/archive/20241002/202410020053.5eT51YoK-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241002/202410020053.5eT51YoK-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/202410020053.5eT51YoK-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/ub/urma/ubcore/ubcore_vtp.c:261:6: warning: no previous prototype for 'ubcore_hash_table_rmv_vtpn' [-Wmissing-prototypes] 261 | void ubcore_hash_table_rmv_vtpn(struct ubcore_device *dev, struct ubcore_vtpn *vtpn) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ vim +/ubcore_hash_table_rmv_vtpn +261 drivers/ub/urma/ubcore/ubcore_vtp.c 260 > 261 void ubcore_hash_table_rmv_vtpn(struct ubcore_device *dev, struct ubcore_vtpn *vtpn) 262 { 263 struct ubcore_hash_table *ht; 264 265 ht = ubcore_get_vtpn_ht(dev, vtpn->trans_mode); 266 if (ht == NULL) 267 return; 268 ubcore_hash_table_remove(ht, &vtpn->hnode); 269 } 270 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 11555/23811] drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_dcqcn.o: warning: objtool: missing symbol for section .text
by kernel test robot 02 Oct '24

02 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 8ad07513042c8fef5a03b404f0bbf066f603c101 [11555/23811] net: hns3: place dcqcn implementations in an ind file config: x86_64-buildonly-randconfig-005-20240929 (https://download.01.org/0day-ci/archive/20241002/202410020035.4BK3PpPS-lkp@…) compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241002/202410020035.4BK3PpPS-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/202410020035.4BK3PpPS-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_dcqcn.o: warning: objtool: missing symbol for section .text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-5.10 26378/30000] drivers/ub/urma/ubcore/ubcore_cdev_file.c:690:5: warning: no previous prototype for 'ubcore_create_port_attr_files'
by kernel test robot 01 Oct '24

01 Oct '24
tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: 084a6771cfb3ef307b750af8b7c35a07a725fc4c commit: f1753f8b17480bdb750cbd33fbaa358aef5dbb23 [26378/30000] urma: upload kernel patch for 20240219_Spring config: arm64-randconfig-004-20240928 (https://download.01.org/0day-ci/archive/20241001/202410012222.QwUgBNys-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241001/202410012222.QwUgBNys-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/202410012222.QwUgBNys-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/ub/urma/ubcore/ubcore_cdev_file.c:690:5: warning: no previous prototype for 'ubcore_create_port_attr_files' [-Wmissing-prototypes] 690 | int ubcore_create_port_attr_files(struct ubcore_logic_device *ldev, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_cdev_file.c:785:5: warning: no previous prototype for 'ubcore_create_eid_attr_files' [-Wmissing-prototypes] 785 | int ubcore_create_eid_attr_files(struct ubcore_logic_device *ldev, uint32_t eid_num) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/ub/urma/ubcore/ubcore_cdev_file.c:797:5: warning: no previous prototype for 'ubcore_create_dev_attr_files' [-Wmissing-prototypes] 797 | int ubcore_create_dev_attr_files(struct ubcore_logic_device *ldev) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/ub/urma/ubcore/ubcore_cdev_file.c:810:6: warning: no previous prototype for 'ubcore_remove_port_attr_files' [-Wmissing-prototypes] 810 | void ubcore_remove_port_attr_files(struct ubcore_logic_device *ldev, uint8_t port_id) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_cdev_file.c:815:6: warning: no previous prototype for 'ubcore_remove_eid_attr_files' [-Wmissing-prototypes] 815 | void ubcore_remove_eid_attr_files(struct ubcore_logic_device *ldev, uint32_t eid_num) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/ub/urma/ubcore/ubcore_cdev_file.c:820:6: warning: no previous prototype for 'ubcore_remove_dev_attr_files' [-Wmissing-prototypes] 820 | void ubcore_remove_dev_attr_files(struct ubcore_logic_device *ldev) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- drivers/ub/urma/ubcore/ubcore_device.c:352:6: warning: no previous prototype for 'ubcore_destroy_upi_list' [-Wmissing-prototypes] 352 | void ubcore_destroy_upi_list(struct ubcore_device *dev) | ^~~~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c:440:23: warning: no previous prototype for 'ubcore_find_tpf_device_legacy' [-Wmissing-prototypes] 440 | struct ubcore_device *ubcore_find_tpf_device_legacy(void) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ >> drivers/ub/urma/ubcore/ubcore_device.c:1329:5: warning: no previous prototype for 'ubcore_dispatch_event' [-Wmissing-prototypes] 1329 | int ubcore_dispatch_event(struct ubcore_event *event) | ^~~~~~~~~~~~~~~~~~~~~ drivers/ub/urma/ubcore/ubcore_device.c:1454:6: warning: no previous prototype for 'ubcore_dev_accessible' [-Wmissing-prototypes] 1454 | bool ubcore_dev_accessible(struct ubcore_device *dev) | ^~~~~~~~~~~~~~~~~~~~~ >> drivers/ub/urma/ubcore/ubcore_device.c:2015:6: warning: no previous prototype for 'ubcore_net_exit' [-Wmissing-prototypes] 2015 | void ubcore_net_exit(struct net *net) | ^~~~~~~~~~~~~~~ vim +/ubcore_create_port_attr_files +690 drivers/ub/urma/ubcore/ubcore_cdev_file.c 689 > 690 int ubcore_create_port_attr_files(struct ubcore_logic_device *ldev, 691 struct ubcore_device *dev, uint8_t port_id) 692 { 693 struct ubcore_port_kobj *p; 694 695 p = &ldev->port[port_id]; 696 p->dev = dev; 697 p->port_id = port_id; 698 699 return kobject_init_and_add(&p->kobj, &ubcore_port_type, &ldev->dev->kobj, 700 "port%hhu", port_id); 701 } 702 703 static ssize_t ubcore_show_eid_attr(struct ubcore_eid_kobj *eid, struct ubcore_eid_attribute *attr, 704 char *buf, ubcore_show_eid_attr_cb show_cb) 705 { 706 struct ubcore_logic_device *ldev = eid->ldev; 707 struct ubcore_device *dev = get_ubcore_device(ldev); 708 709 if (!ldev || !dev) { 710 ubcore_log_err("Invalid argument in show_fe_attr.\n"); 711 return -EINVAL; 712 } 713 714 return show_cb(dev, buf, eid->eid_idx, read_pnet(&ldev->net)); 715 } 716 717 static ssize_t show_eid_cb(struct ubcore_device *dev, char *buf, uint16_t idx, struct net *net) 718 { 719 union ubcore_eid eid; 720 721 if (net_eq(dev->eid_table.eid_entries[idx].net, net)) { 722 return snprintf(buf, (UBCORE_EID_STR_LEN + 1) + 1, EID_FMT"\n", 723 EID_ARGS(dev->eid_table.eid_entries[idx].eid)); 724 } else { 725 memset(&eid, 0, sizeof(union ubcore_eid)); 726 return snprintf(buf, (UBCORE_EID_STR_LEN + 1) + 1, EID_FMT"\n", 727 EID_ARGS(eid)); 728 } 729 } 730 731 static ssize_t eid_show(struct ubcore_eid_kobj *eid, struct ubcore_eid_attribute *attr, char *buf) 732 { 733 return ubcore_show_eid_attr(eid, attr, buf, show_eid_cb); 734 } 735 736 static EID_ATTR_RO(eid); 737 738 static struct attribute *ubcore_eid_attrs[] = { 739 &eid_attr_eid.attr, 740 NULL, 741 }; 742 743 static ssize_t ubcore_eid_attr_show(struct kobject *kobj, struct attribute *attr, char *buf) 744 { 745 struct ubcore_eid_attribute *eid_attr = 746 container_of(attr, struct ubcore_eid_attribute, attr); 747 struct ubcore_eid_kobj *eid = container_of(kobj, struct ubcore_eid_kobj, kobj); 748 749 if (!eid_attr->show) 750 return -EIO; 751 752 return eid_attr->show(eid, eid_attr, buf); 753 } 754 755 static ssize_t ubcore_eid_attr_store(struct kobject *kobj, struct attribute *attr, 756 const char *buf, size_t count) 757 { 758 struct ubcore_eid_attribute *eid_attr = 759 container_of(attr, struct ubcore_eid_attribute, attr); 760 struct ubcore_eid_kobj *eid = container_of(kobj, struct ubcore_eid_kobj, kobj); 761 762 if (!eid_attr->store) 763 return -EIO; 764 return eid_attr->store(eid, eid_attr, buf, count); 765 } 766 767 static const struct sysfs_ops ubcore_eid_sysfs_ops = { 768 .show = ubcore_eid_attr_show, 769 .store = ubcore_eid_attr_store 770 }; 771 772 static void ubcore_eid_release(struct kobject *kobj) 773 { 774 } 775 776 // ATTRIBUTE_GROUPS defined in 3.11, but must be consistent with kobj_type->default_groups 777 ATTRIBUTE_GROUPS(ubcore_eid); 778 779 static struct kobj_type ubcore_eid_type = { 780 .release = ubcore_eid_release, 781 .sysfs_ops = &ubcore_eid_sysfs_ops, 782 .default_groups = ubcore_eid_groups 783 }; 784 785 int ubcore_create_eid_attr_files(struct ubcore_logic_device *ldev, uint32_t eid_num) 786 { 787 struct ubcore_eid_kobj *eid; 788 789 eid = &ldev->eid[eid_num]; 790 eid->ldev = ldev; 791 eid->eid_idx = eid_num; 792 793 return kobject_init_and_add(&eid->kobj, &ubcore_eid_type, &ldev->dev->kobj, 794 "eid%u", eid_num); 795 } 796 > 797 int ubcore_create_dev_attr_files(struct ubcore_logic_device *ldev) 798 { 799 int ret; 800 801 ret = sysfs_create_group(&ldev->dev->kobj, &ubcore_dev_attr_group); 802 if (ret != 0) { 803 ubcore_log_err("sysfs create group failed, ret:%d.\n", ret); 804 return -1; 805 } 806 807 return 0; 808 } 809 > 810 void ubcore_remove_port_attr_files(struct ubcore_logic_device *ldev, uint8_t port_id) 811 { 812 kobject_put(&ldev->port[port_id].kobj); 813 } 814 815 void ubcore_remove_eid_attr_files(struct ubcore_logic_device *ldev, uint32_t eid_num) 816 { 817 kobject_put(&ldev->eid[eid_num].kobj); 818 } 819 > 820 void ubcore_remove_dev_attr_files(struct ubcore_logic_device *ldev) 821 { 822 sysfs_remove_group(&ldev->dev->kobj, &ubcore_dev_attr_group); 823 } 824 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 17427/23811] drivers/gpio/.tmp_gpio-hisi.o: warning: objtool: missing symbol for section .init.text
by kernel test robot 01 Oct '24

01 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: f724c4effa231b88b4fd545803f9e7f122ad3efc [17427/23811] gpio: gpio-hisi: Add HiSilicon GPIO support config: x86_64-buildonly-randconfig-004-20240923 (https://download.01.org/0day-ci/archive/20241001/202410012015.7DrvrSEM-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241001/202410012015.7DrvrSEM-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/202410012015.7DrvrSEM-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/gpio/.tmp_gpio-hisi.o: warning: objtool: missing symbol for section .init.text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 14777/23811] drivers/scsi/huawei/hifc/.tmp_hifc_lld.o: warning: objtool: missing symbol for section .init.text
by kernel test robot 01 Oct '24

01 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 7fc993d55d1b54ae40e29dfac825a18d04d644c6 [14777/23811] scsi/hifc: add hifc driver FC service module config: x86_64-buildonly-randconfig-004-20240923 (https://download.01.org/0day-ci/archive/20241001/202410011241.NNAuBhq7-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241001/202410011241.NNAuBhq7-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/202410011241.NNAuBhq7-lkp@intel.com/ All warnings (new ones prefixed by >>): drivers/scsi/huawei/hifc/hifc_lld.c:333:7: warning: no previous prototype for 'hifc_get_ppf_hwdev_by_pdev' [-Wmissing-prototypes] 333 | void *hifc_get_ppf_hwdev_by_pdev(struct pci_dev *pdev) | ^~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/scsi/huawei/hifc/hifc_lld.c:362:6: warning: no previous prototype for 'hifc_event_process' [-Wmissing-prototypes] 362 | void hifc_event_process(void *adapter, struct hifc_event_info *event) | ^~~~~~~~~~~~~~~~~~ >> drivers/scsi/huawei/hifc/.tmp_hifc_lld.o: warning: objtool: missing symbol for section .init.text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 11543/23811] drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_vlan.o: warning: objtool: missing symbol for section .text
by kernel test robot 01 Oct '24

01 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: ed046b8a9bc5f5836ece3a3efa29c54f0fc904e7 [11543/23811] net: hns3: rename hns3_cae's files and remove send_cmdq config: x86_64-buildonly-randconfig-005-20240929 (https://download.01.org/0day-ci/archive/20241001/202410011150.agWF1W8a-lkp@…) compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241001/202410011150.agWF1W8a-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/202410011150.agWF1W8a-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_vlan.o: warning: objtool: missing symbol for section .text -- >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qinfo.o: warning: objtool: missing symbol for section .text -- drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:20:5: warning: no previous prototype for function 'hclge_test_send_generic_cmd' [-Wmissing-prototypes] 20 | int hclge_test_send_generic_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:20:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 20 | int hclge_test_send_generic_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:62:5: warning: no previous prototype for function 'hclge_test_send_allocate_cmd' [-Wmissing-prototypes] 62 | int hclge_test_send_allocate_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:62:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 62 | int hclge_test_send_allocate_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:100:5: warning: no previous prototype for function 'hclge_test_send_key_cfg_cmd' [-Wmissing-prototypes] 100 | int hclge_test_send_key_cfg_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:100:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 100 | int hclge_test_send_key_cfg_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:153:5: warning: no previous prototype for function 'hclge_test_send_tcam_op_cmd' [-Wmissing-prototypes] 153 | int hclge_test_send_tcam_op_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:153:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 153 | int hclge_test_send_tcam_op_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:224:5: warning: no previous prototype for function 'hclge_test_send_ad_op_cmd' [-Wmissing-prototypes] 224 | int hclge_test_send_ad_op_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:224:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 224 | int hclge_test_send_ad_op_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:267:5: warning: no previous prototype for function 'hclge_test_send_cnt_op_cmd' [-Wmissing-prototypes] 267 | int hclge_test_send_cnt_op_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.c:267:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 267 | int hclge_test_send_cnt_op_cmd(struct hclge_dev *hdev, u8 *buf_in, | ^ | static 6 warnings generated. >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_fd.o: warning: objtool: missing symbol for section .text -- >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_hilink_param.o: warning: objtool: missing symbol for section .text -- drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_stat.c:105:5: warning: no previous prototype for function 'hns3_read_stat_mode_cfg' [-Wmissing-prototypes] 105 | int hns3_read_stat_mode_cfg(struct hns3_nic_priv *nic_dev, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_stat.c:105:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 105 | int hns3_read_stat_mode_cfg(struct hns3_nic_priv *nic_dev, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_stat.c:154:5: warning: no previous prototype for function 'hns3_set_stat_mode_cfg' [-Wmissing-prototypes] 154 | int hns3_set_stat_mode_cfg(struct hns3_nic_priv *nic_dev, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_stat.c:154:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 154 | int hns3_set_stat_mode_cfg(struct hns3_nic_priv *nic_dev, | ^ | static 2 warnings generated. >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_stat.o: warning: objtool: missing symbol for section .text -- | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:139:5: warning: no previous prototype for function 'hns3_test_tm_pri_weight_set' [-Wmissing-prototypes] 139 | int hns3_test_tm_pri_weight_set(struct hclge_dev *hdev, u8 pri_id, u8 dwrr) | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:139:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 139 | int hns3_test_tm_pri_weight_set(struct hclge_dev *hdev, u8 pri_id, u8 dwrr) | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:152:5: warning: no previous prototype for function 'hns3_test_tm_pri_weight_get' [-Wmissing-prototypes] 152 | int hns3_test_tm_pri_weight_get(struct hclge_dev *hdev, u8 pri_id, u8 *dwrr) | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:152:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 152 | int hns3_test_tm_pri_weight_get(struct hclge_dev *hdev, u8 pri_id, u8 *dwrr) | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:168:5: warning: no previous prototype for function 'hns3_test_tm_pri_pg_bitmap_set' [-Wmissing-prototypes] 168 | int hns3_test_tm_pri_pg_bitmap_set(struct hclge_dev *hdev, u8 pg_id, u8 bitmap) | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:168:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 168 | int hns3_test_tm_pri_pg_bitmap_set(struct hclge_dev *hdev, u8 pg_id, u8 bitmap) | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:181:5: warning: no previous prototype for function 'hns3_test_tm_pri_pg_bitmap_get' [-Wmissing-prototypes] 181 | int hns3_test_tm_pri_pg_bitmap_get(struct hclge_dev *hdev, u8 pg_id, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:181:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 181 | int hns3_test_tm_pri_pg_bitmap_get(struct hclge_dev *hdev, u8 pg_id, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:200:5: warning: no previous prototype for function 'hns3_test_tm_qs_bp_bitmap_set' [-Wmissing-prototypes] 200 | int hns3_test_tm_qs_bp_bitmap_set(struct hclge_dev *hdev, u8 tc, u8 gp_id, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:200:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 200 | int hns3_test_tm_qs_bp_bitmap_set(struct hclge_dev *hdev, u8 tc, u8 gp_id, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:217:5: warning: no previous prototype for function 'hns3_test_tm_qs_bp_bitmap_get' [-Wmissing-prototypes] 217 | int hns3_test_tm_qs_bp_bitmap_get(struct hclge_dev *hdev, u8 tc, u8 gp_id, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:217:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 217 | int hns3_test_tm_qs_bp_bitmap_get(struct hclge_dev *hdev, u8 tc, u8 gp_id, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:237:5: warning: no previous prototype for function 'hns3_test_tm_pri_shapping_set' [-Wmissing-prototypes] 237 | int hns3_test_tm_pri_shapping_set(struct hclge_dev *hdev, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:237:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 237 | int hns3_test_tm_pri_shapping_set(struct hclge_dev *hdev, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:255:5: warning: no previous prototype for function 'hns3_test_tm_pri_shapping_get' [-Wmissing-prototypes] 255 | int hns3_test_tm_pri_shapping_get(struct hclge_dev *hdev, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:255:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 255 | int hns3_test_tm_pri_shapping_get(struct hclge_dev *hdev, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:275:5: warning: no previous prototype for function 'hns3_test_tm_pg_weight_set' [-Wmissing-prototypes] 275 | int hns3_test_tm_pg_weight_set(struct hclge_dev *hdev, u8 pg_id, u8 dwrr) | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:275:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 275 | int hns3_test_tm_pg_weight_set(struct hclge_dev *hdev, u8 pg_id, u8 dwrr) | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:288:5: warning: no previous prototype for function 'hns3_test_tm_pg_weight_get' [-Wmissing-prototypes] 288 | int hns3_test_tm_pg_weight_get(struct hclge_dev *hdev, u8 pg_id, u8 *dwrr) | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:288:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 288 | int hns3_test_tm_pg_weight_get(struct hclge_dev *hdev, u8 pg_id, u8 *dwrr) | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:304:5: warning: no previous prototype for function 'hns3_test_tm_pg_shapping_set' [-Wmissing-prototypes] 304 | int hns3_test_tm_pg_shapping_set(struct hclge_dev *hdev, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:304:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 304 | int hns3_test_tm_pg_shapping_set(struct hclge_dev *hdev, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:322:5: warning: no previous prototype for function 'hns3_test_tm_pg_shapping_get' [-Wmissing-prototypes] 322 | int hns3_test_tm_pg_shapping_get(struct hclge_dev *hdev, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:322:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 322 | int hns3_test_tm_pg_shapping_get(struct hclge_dev *hdev, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:343:5: warning: no previous prototype for function 'hns3_test_tm_port_shapping_set' [-Wmissing-prototypes] 343 | int hns3_test_tm_port_shapping_set(struct hclge_dev *hdev, u32 shaper) | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:343:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 343 | int hns3_test_tm_port_shapping_set(struct hclge_dev *hdev, u32 shaper) | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:357:5: warning: no previous prototype for function 'hns3_test_tm_port_shapping_get' [-Wmissing-prototypes] 357 | int hns3_test_tm_port_shapping_get(struct hclge_dev *hdev, u32 *shaper) | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.c:357:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 357 | int hns3_test_tm_port_shapping_get(struct hclge_dev *hdev, u32 *shaper) | ^ | static 20 warnings generated. >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_tm.o: warning: objtool: missing symbol for section .text -- drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_promisc.c:6:5: warning: no previous prototype for function 'hns3_read_promisc_mode_cfg' [-Wmissing-prototypes] 6 | int hns3_read_promisc_mode_cfg(struct hns3_nic_priv *nic_dev, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_promisc.c:6:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 6 | int hns3_read_promisc_mode_cfg(struct hns3_nic_priv *nic_dev, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_promisc.c:44:5: warning: no previous prototype for function 'hns3_set_promisc_mode_cfg' [-Wmissing-prototypes] 44 | int hns3_set_promisc_mode_cfg(struct hns3_nic_priv *nic_dev, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_promisc.c:44:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 44 | int hns3_set_promisc_mode_cfg(struct hns3_nic_priv *nic_dev, | ^ | static 2 warnings generated. >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_promisc.o: warning: objtool: missing symbol for section .text -- >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_dfx.o: warning: objtool: missing symbol for section .text -- >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_irq.o: warning: objtool: missing symbol for section .text -- drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qos.c:9:19: warning: no previous prototype for function 'get_val_hdev' [-Wmissing-prototypes] 9 | struct hclge_dev *get_val_hdev(struct hns3_nic_priv *net_priv) | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qos.c:9:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 9 | struct hclge_dev *get_val_hdev(struct hns3_nic_priv *net_priv) | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qos.c:19:5: warning: no previous prototype for function 'hns3_cmd_rx_priv_wl_config' [-Wmissing-prototypes] 19 | int hns3_cmd_rx_priv_wl_config(struct hclge_dev *hdev, u16 tc, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qos.c:19:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 19 | int hns3_cmd_rx_priv_wl_config(struct hclge_dev *hdev, u16 tc, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qos.c:89:5: warning: no previous prototype for function 'hns3_cmd_common_thrd_config' [-Wmissing-prototypes] 89 | int hns3_cmd_common_thrd_config(struct hclge_dev *hdev, u16 tc, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qos.c:89:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 89 | int hns3_cmd_common_thrd_config(struct hclge_dev *hdev, u16 tc, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qos.c:161:5: warning: no previous prototype for function 'hns3_cmd_common_wl_config' [-Wmissing-prototypes] 161 | int hns3_cmd_common_wl_config(struct hclge_dev *hdev, u32 high, u32 low, u32 en) | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qos.c:161:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 161 | int hns3_cmd_common_wl_config(struct hclge_dev *hdev, u32 high, u32 low, u32 en) | ^ | static 4 warnings generated. >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qos.o: warning: objtool: missing symbol for section .text -- drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qres.c:6:5: warning: no previous prototype for function 'hns3_get_qres_rx_value' [-Wmissing-prototypes] 6 | int hns3_get_qres_rx_value(struct hns3_nic_priv *net_priv, int ring_id, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qres.c:6:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 6 | int hns3_get_qres_rx_value(struct hns3_nic_priv *net_priv, int ring_id, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qres.c:54:5: warning: no previous prototype for function 'hns3_get_qres_tx_value' [-Wmissing-prototypes] 54 | int hns3_get_qres_tx_value(struct hns3_nic_priv *net_priv, int ring_id, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qres.c:54:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 54 | int hns3_get_qres_tx_value(struct hns3_nic_priv *net_priv, int ring_id, | ^ | static drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qres.c:100:6: warning: no previous prototype for function 'fill_queue_info' [-Wmissing-prototypes] 100 | void fill_queue_info(struct hns3_nic_priv *net_priv, | ^ drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qres.c:100:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 100 | void fill_queue_info(struct hns3_nic_priv *net_priv, | ^ | static 3 warnings generated. >> drivers/net/ethernet/hisilicon/hns3/hns3_cae/hns3_cae_qres.o: warning: objtool: missing symbol for section .text .. -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 20444/23811] arch/arm64/kernel/cpufeature.c:1287:9: error: 'a32_elf_hwcap2' undeclared; did you mean 'elf_hwcap'?
by kernel test robot 01 Oct '24

01 Oct '24
Hi James, FYI, the error/warning still remains. tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 6dfc76f160cb5e8bf25cb85d4763cdc3144bfda8 [20444/23811] arm64: errata: Remove AES hwcap for COMPAT tasks config: arm64-randconfig-002-20240930 (https://download.01.org/0day-ci/archive/20241001/202410011231.Vgh2PQm5-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241001/202410011231.Vgh2PQm5-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/202410011231.Vgh2PQm5-lkp@intel.com/ All errors (new ones prefixed by >>): arch/arm64/kernel/cpufeature.c: In function 'elf_hwcap_fixup': >> arch/arm64/kernel/cpufeature.c:1287:9: error: 'a32_elf_hwcap2' undeclared (first use in this function); did you mean 'elf_hwcap'? 1287 | a32_elf_hwcap2 &= ~COMPAT_HWCAP2_AES; | ^~~~~~~~~~~~~~ | elf_hwcap arch/arm64/kernel/cpufeature.c:1287:9: note: each undeclared identifier is reported only once for each function it appears in vim +1287 arch/arm64/kernel/cpufeature.c 1282 1283 static void elf_hwcap_fixup(void) 1284 { 1285 #ifdef CONFIG_ARM64_ERRATUM_1742098 1286 if (cpus_have_const_cap(ARM64_WORKAROUND_1742098)) > 1287 a32_elf_hwcap2 &= ~COMPAT_HWCAP2_AES; 1288 #endif /* ARM64_ERRATUM_1742098 */ 1289 } 1290 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-5.10 29994/30000] kernel/sched/core.c:9822:6: warning: no previous prototype for function 'sched_setsteal'
by kernel test robot 01 Oct '24

01 Oct '24
tree: https://gitee.com/openeuler/kernel.git OLK-5.10 head: 084a6771cfb3ef307b750af8b7c35a07a725fc4c commit: b7772972a0a76efac27078392f3f706914fe2af7 [29994/30000] sched/core: Add cpu.steal_task in cgroup v1 cpu subsystem config: x86_64-allyesconfig (https://download.01.org/0day-ci/archive/20241001/202410010853.HQUsJtSO-lkp@…) compiler: clang version 18.1.8 (https://github.com/llvm/llvm-project 3b5b5c1ec4a3095ab096dd780e84d7ab81f3d7ff) reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241001/202410010853.HQUsJtSO-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/202410010853.HQUsJtSO-lkp@intel.com/ All warnings (new ones prefixed by >>): In file included from kernel/sched/core.c:13: kernel/sched/sched.h:1863:15: warning: cast from 'void (*)(struct rq *)' to 'void (*)(struct callback_head *)' converts to incompatible function type [-Wcast-function-type-strict] 1863 | head->func = (void (*)(struct callback_head *))func; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/sched/core.c:2750:6: warning: no previous prototype for function 'sched_set_stop_task' [-Wmissing-prototypes] 2750 | void sched_set_stop_task(int cpu, struct task_struct *stop) | ^ kernel/sched/core.c:2750:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 2750 | void sched_set_stop_task(int cpu, struct task_struct *stop) | ^ | static kernel/sched/core.c:4126:10: warning: cast from 'void (*)(struct callback_head *)' to 'void (*)(struct rq *)' converts to incompatible function type [-Wcast-function-type-strict] 4126 | func = (void (*)(struct rq *))head->func; | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ kernel/sched/core.c:9598:5: warning: no previous prototype for function 'tg_set_dynamic_affinity_mode' [-Wmissing-prototypes] 9598 | int tg_set_dynamic_affinity_mode(struct task_group *tg, u64 mode) | ^ kernel/sched/core.c:9598:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 9598 | int tg_set_dynamic_affinity_mode(struct task_group *tg, u64 mode) | ^ | static kernel/sched/core.c:9634:5: warning: no previous prototype for function 'tg_set_affinity_period' [-Wmissing-prototypes] 9634 | int tg_set_affinity_period(struct task_group *tg, u64 period_ms) | ^ kernel/sched/core.c:9634:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 9634 | int tg_set_affinity_period(struct task_group *tg, u64 period_ms) | ^ | static kernel/sched/core.c:9648:5: warning: no previous prototype for function 'tg_get_affinity_period' [-Wmissing-prototypes] 9648 | u64 tg_get_affinity_period(struct task_group *tg) | ^ kernel/sched/core.c:9648:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 9648 | u64 tg_get_affinity_period(struct task_group *tg) | ^ | static >> kernel/sched/core.c:9822:6: warning: no previous prototype for function 'sched_setsteal' [-Wmissing-prototypes] 9822 | void sched_setsteal(struct task_struct *tsk, s64 steal_task) | ^ kernel/sched/core.c:9822:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 9822 | void sched_setsteal(struct task_struct *tsk, s64 steal_task) | ^ | static >> kernel/sched/core.c:9854:5: warning: no previous prototype for function 'tg_change_steal' [-Wmissing-prototypes] 9854 | int tg_change_steal(struct task_group *tg, void *data) | ^ kernel/sched/core.c:9854:1: note: declare 'static' if the function is not intended to be used outside of this translation unit 9854 | int tg_change_steal(struct task_group *tg, void *data) | ^ | static 8 warnings generated. vim +/sched_setsteal +9822 kernel/sched/core.c 9821 > 9822 void sched_setsteal(struct task_struct *tsk, s64 steal_task) 9823 { 9824 struct sched_entity *se = &tsk->se; 9825 int queued, running, queue_flags = 9826 DEQUEUE_SAVE | DEQUEUE_MOVE | DEQUEUE_NOCLOCK; 9827 struct rq_flags rf; 9828 struct rq *rq; 9829 9830 if (se->steal_task == steal_task) 9831 return; 9832 9833 rq = task_rq_lock(tsk, &rf); 9834 9835 running = task_current(rq, tsk); 9836 queued = task_on_rq_queued(tsk); 9837 9838 update_rq_clock(rq); 9839 if (queued) 9840 dequeue_task(rq, tsk, queue_flags); 9841 if (running) 9842 put_prev_task(rq, tsk); 9843 9844 se->steal_task = steal_task; 9845 9846 if (queued) 9847 enqueue_task(rq, tsk, queue_flags); 9848 if (running) 9849 set_next_task(rq, tsk); 9850 9851 task_rq_unlock(rq, tsk, &rf); 9852 } 9853 > 9854 int tg_change_steal(struct task_group *tg, void *data) 9855 { 9856 struct css_task_iter it; 9857 struct task_struct *tsk; 9858 s64 steal_task = *(s64 *)data; 9859 struct cgroup_subsys_state *css = &tg->css; 9860 9861 tg->steal_task = steal_task; 9862 9863 css_task_iter_start(css, 0, &it); 9864 while ((tsk = css_task_iter_next(&it))) 9865 sched_setsteal(tsk, steal_task); 9866 css_task_iter_end(&it); 9867 9868 return 0; 9869 } 9870 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-5.10] BUILD REGRESSION 084a6771cfb3ef307b750af8b7c35a07a725fc4c
by kernel test robot 01 Oct '24

01 Oct '24
tree/branch: https://gitee.com/openeuler/kernel.git OLK-5.10 branch HEAD: 084a6771cfb3ef307b750af8b7c35a07a725fc4c !12006 v3 add steal_task for cgroup Error/Warning (recently discovered and may have been fixed): drivers/ub/urma/ubcore/ubcore_dp.c:26:5: warning: no previous prototype for 'ubcore_post_jetty_send_wr' [-Wmissing-prototypes] drivers/ub/urma/ubcore/ubcore_dp.c:26:5: warning: no previous prototype for 'ubcore_rearm_jfc' [-Wmissing-prototypes] drivers/ub/urma/ubcore/ubcore_dp.c:42:5: warning: no previous prototype for 'ubcore_post_jetty_recv_wr' [-Wmissing-prototypes] drivers/ub/urma/ubcore/ubcore_dp.c:58:5: warning: no previous prototype for 'ubcore_post_jfs_wr' [-Wmissing-prototypes] drivers/ub/urma/ubcore/ubcore_dp.c:74:5: warning: no previous prototype for 'ubcore_post_jfr_wr' [-Wmissing-prototypes] drivers/ub/urma/ubcore/ubcore_dp.c:90:5: warning: no previous prototype for 'ubcore_poll_jfc' [-Wmissing-prototypes] drivers/ub/urma/ubcore/ubcore_tp.c:40:17: warning: no previous prototype for 'ubcore_get_mtu' [-Wmissing-prototypes] Unverified Error/Warning (likely false positive, kindly check if interested): drivers/scsi/lpfc/lpfc_debugfs.o: warning: objtool: lpfc_idiag_queacc_read_qe() falls through to next function lpfc_idiag_que_param_check() drivers/scsi/lpfc/lpfc_sli.o: warning: objtool: lpfc_sli4_cq_get() falls through to next function rcu_lock_acquire() drivers/scsi/lpfc/lpfc_sli.o: warning: objtool: lpfc_sli4_eq_get() falls through to next function lpfc_sli4_cq_get() Error/Warning ids grouped by kconfigs: recent_errors |-- arm64-allnoconfig | |-- arch-arm64-kernel-ipi_nmi.c:error:implicit-declaration-of-function-printk_safe_exit | |-- kernel-workqueue.c:error:implicit-declaration-of-function-printk_safe_enter | `-- kernel-workqueue.c:error:implicit-declaration-of-function-printk_safe_exit |-- arm64-randconfig-002-20240930 | |-- arch-arm64-include-asm-archrandom.h:error:unknown-register-name-r0-in-asm | |-- arch-arm64-include-asm-archrandom.h:error:unknown-register-name-r1-in-asm | |-- arch-arm64-include-asm-archrandom.h:error:unknown-register-name-r2-in-asm | |-- arch-arm64-include-asm-archrandom.h:error:unknown-register-name-r3-in-asm | `-- arch-arm64-include-asm-stack_pointer.h:error:register-sp-unsuitable-for-global-register-variables-on-this-target |-- arm64-randconfig-003-20240930 | `-- arch-arm64-include-asm-stack_pointer.h:error:register-sp-unsuitable-for-global-register-variables-on-this-target |-- arm64-randconfig-004-20240928 | |-- drivers-ub-urma-ubcore-ubcore_dp.c:warning:no-previous-prototype-for-ubcore_poll_jfc | |-- drivers-ub-urma-ubcore-ubcore_dp.c:warning:no-previous-prototype-for-ubcore_post_jetty_recv_wr | |-- drivers-ub-urma-ubcore-ubcore_dp.c:warning:no-previous-prototype-for-ubcore_post_jetty_send_wr | |-- drivers-ub-urma-ubcore-ubcore_dp.c:warning:no-previous-prototype-for-ubcore_post_jfr_wr | |-- drivers-ub-urma-ubcore-ubcore_dp.c:warning:no-previous-prototype-for-ubcore_post_jfs_wr | |-- drivers-ub-urma-ubcore-ubcore_dp.c:warning:no-previous-prototype-for-ubcore_rearm_jfc | `-- drivers-ub-urma-ubcore-ubcore_tp.c:warning:no-previous-prototype-for-ubcore_get_mtu |-- arm64-randconfig-004-20240930 | |-- arch-arm64-include-asm-archrandom.h:error:unknown-register-name-r0-in-asm | |-- arch-arm64-include-asm-archrandom.h:error:unknown-register-name-r1-in-asm | |-- arch-arm64-include-asm-archrandom.h:error:unknown-register-name-r2-in-asm | |-- arch-arm64-include-asm-archrandom.h:error:unknown-register-name-r3-in-asm | `-- arch-arm64-include-asm-stack_pointer.h:error:register-sp-unsuitable-for-global-register-variables-on-this-target |-- x86_64-allnoconfig | `-- kernel-workqueue.c:error:implicit-declaration-of-function-printk_safe_enter-Werror-Wimplicit-function-declaration |-- x86_64-allyesconfig | |-- drivers-acpi-numa-hmat.c:warning:no-previous-prototype-for-function-hmat_restore_target | |-- drivers-net-can-spi-mcp251xfd-mcp251xfd-core.c:warning:no-previous-prototype-for-function-mcp251xfd_tx_obj_write_sync | |-- drivers-net-ethernet-hisilicon-hns3-hns3pf-hclge_tm.c:warning:no-previous-prototype-for-function-hclge_mbx_set_vf_multi_tc | |-- drivers-net-ethernet-hisilicon-hns3-hns3pf-hclge_tm.c:warning:no-previous-prototype-for-function-hclge_tm_vf_tc_dwrr_cfg | |-- drivers-net-ethernet-mucse-rnpgbe-rnpgbe_main.c:warning:variable-err-is-used-uninitialized-whenever-if-condition-is-false | |-- drivers-net-ethernet-mucse-rnpgbevf-rnpgbevf_main.c:warning:Excess-function-parameter-direction-description-in-rnpgbevf_set_ring_vector | |-- drivers-net-ethernet-mucse-rnpgbevf-rnpgbevf_main.c:warning:Excess-function-parameter-msix_vector-description-in-rnpgbevf_set_ring_vector | |-- drivers-net-ethernet-mucse-rnpgbevf-rnpgbevf_main.c:warning:Excess-function-parameter-queue-description-in-rnpgbevf_set_ring_vector | |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Excess-function-parameter-direction-description-in-rnpvf_set_ring_vector | |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Excess-function-parameter-msix_vector-description-in-rnpvf_set_ring_vector | |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:Excess-function-parameter-queue-description-in-rnpvf_set_ring_vector | |-- drivers-ub-urma-ubcore-ubcore_ctp.c:warning:comparison-of-address-of-dev-ht-UBCORE_HT_CTP-.head-equal-to-a-null-pointer-is-always-false | |-- drivers-ub-urma-ubcore-ubcore_msg.c:warning:Function-parameter-or-member-ctx-not-described-in-ubcore_update_uvs_eid_ret | |-- drivers-ub-urma-ubcore-ubcore_msg.c:warning:Function-parameter-or-member-dev-not-described-in-ubcore_asyn_send_fe2tpf_msg | |-- drivers-ub-urma-ubcore-ubcore_msg.c:warning:Function-parameter-or-member-req-not-described-in-ubcore_asyn_send_fe2tpf_msg | |-- drivers-ub-urma-ubcore-ubcore_msg.c:warning:no-previous-prototype-for-function-ubcore_asyn_send_fe2tpf_msg | |-- drivers-ub-urma-ubcore-ubcore_netdev.c:warning:no-previous-prototype-for-function-ubcore_fill_port_netdev | |-- drivers-ub-urma-ubcore-ubcore_netdev.c:warning:no-previous-prototype-for-function-ubcore_lookup_sip_info_without_lock | |-- drivers-ub-urma-ubcore-ubcore_netdev.c:warning:no-previous-prototype-for-function-ubcore_new_sip_req_msg | |-- drivers-ub-urma-ubcore-ubcore_netdev.c:warning:no-previous-prototype-for-function-ubcore_update_sip_entry | |-- drivers-ub-urma-ubcore-ubcore_netlink.c:warning:no-previous-prototype-for-function-ubcore_genl_unicast | |-- drivers-ub-urma-ubcore-ubcore_tpg.c:warning:comparison-of-address-of-dev-ht-UBCORE_HT_TP-.head-equal-to-a-null-pointer-is-always-false | |-- drivers-ub-urma-ubcore-ubcore_tpg.c:warning:comparison-of-address-of-dev-ht-UBCORE_HT_TPG-.head-equal-to-a-null-pointer-is-always-false | |-- drivers-ub-urma-ubcore-ubcore_tpg.c:warning:no-previous-prototype-for-function-ubcore_tpg_kref_get | |-- drivers-ub-urma-ubcore-ubcore_umem.c:warning:no-previous-prototype-for-function-ubcore_umem_find_best_page_size | |-- drivers-ub-urma-ubcore-ubcore_utp.c:warning:comparison-of-address-of-dev-ht-UBCORE_HT_UTP-.head-equal-to-a-null-pointer-is-always-false | |-- drivers-ub-urma-uburma-uburma_mmap.c:warning:no-previous-prototype-for-function-uburma_get_umap_ops | |-- drivers-ub-urma-uburma-uburma_mmap.c:warning:no-previous-prototype-for-function-uburma_umap_priv_init | |-- drivers-ub-urma-uburma-uburma_mmap.c:warning:no-previous-prototype-for-function-uburma_unmap_vma_pages | `-- ld.lld:error:duplicate-symbol:debug |-- x86_64-buildonly-randconfig-004-20240930 | `-- arch-x86-kernel-paravirt.c:warning:control-reaches-end-of-non-void-function |-- x86_64-buildonly-randconfig-005-20240930 | `-- kernel-workqueue.c:error:implicit-declaration-of-function-printk_safe_enter-Werror-Wimplicit-function-declaration |-- x86_64-kexec | |-- arch-x86-kvm-vmx-vmx.o:warning:objtool:fix_rmode_seg:unreachable-instruction | `-- drivers-acpi-numa-hmat.c:warning:no-previous-prototype-for-function-hmat_restore_target |-- x86_64-randconfig-015-20240930 | |-- drivers-scsi-lpfc-lpfc_debugfs.o:warning:objtool:lpfc_idiag_queacc_read_qe-falls-through-to-next-function-lpfc_idiag_que_param_check() | |-- drivers-scsi-lpfc-lpfc_sli.o:warning:objtool:lpfc_sli4_cq_get-falls-through-to-next-function-rcu_lock_acquire() | `-- drivers-scsi-lpfc-lpfc_sli.o:warning:objtool:lpfc_sli4_eq_get-falls-through-to-next-function-lpfc_sli4_cq_get() |-- x86_64-randconfig-161-20240930 | `-- fs-cifs-file.c-cifs_write_from_iter()-error:uninitialized-symbol-pagevec-. |-- x86_64-rhel-8.3 | `-- drivers-acpi-numa-hmat.c:warning:no-previous-prototype-for-hmat_restore_target |-- x86_64-rhel-8.3-func | `-- drivers-acpi-numa-hmat.c:warning:no-previous-prototype-for-hmat_restore_target |-- x86_64-rhel-8.3-kselftests | `-- drivers-acpi-numa-hmat.c:warning:no-previous-prototype-for-hmat_restore_target `-- x86_64-rhel-8.3-rust `-- drivers-acpi-numa-hmat.c:warning:no-previous-prototype-for-function-hmat_restore_target elapsed time: 737m configs tested: 27 configs skipped: 128 tested configs: arm64 allmodconfig clang-20 arm64 allnoconfig gcc-14.1.0 arm64 randconfig-001-20240930 clang-20 arm64 randconfig-002-20240930 clang-15 arm64 randconfig-003-20240930 clang-20 arm64 randconfig-004-20240930 clang-15 x86_64 allnoconfig clang-18 x86_64 allyesconfig clang-18 x86_64 buildonly-randconfig-001-20240930 gcc-12 x86_64 buildonly-randconfig-002-20240930 clang-18 x86_64 buildonly-randconfig-003-20240930 gcc-12 x86_64 buildonly-randconfig-004-20240930 gcc-12 x86_64 buildonly-randconfig-005-20240930 clang-18 x86_64 buildonly-randconfig-006-20240930 gcc-12 x86_64 defconfig gcc-11 x86_64 kexec clang-18 x86_64 randconfig-001-20240930 gcc-12 x86_64 randconfig-002-20240930 clang-18 x86_64 randconfig-003-20240930 clang-18 x86_64 randconfig-004-20240930 clang-18 x86_64 randconfig-005-20240930 gcc-12 x86_64 randconfig-006-20240930 clang-18 x86_64 randconfig-011-20240930 clang-18 x86_64 randconfig-012-20240930 gcc-11 x86_64 randconfig-013-20240930 gcc-11 x86_64 rhel-8.3 gcc-12 x86_64 rhel-8.3-rust clang-18 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6] BUILD REGRESSION 1f027a60c742f6dbcec2037df296e8c0f9edd80b
by kernel test robot 01 Oct '24

01 Oct '24
tree/branch: https://gitee.com/openeuler/kernel.git OLK-6.6 branch HEAD: 1f027a60c742f6dbcec2037df296e8c0f9edd80b !11985 Fix CVE-2024-46845 Error/Warning ids grouped by kconfigs: recent_errors |-- arm64-allmodconfig | `-- drivers-iommu-arm-arm-smmu-v3-arm-s-smmu-v3.c:warning:no-previous-prototype-for-function-virtcca_smmu_gerror_handler |-- arm64-randconfig-001-20240930 | `-- kernel-sched-psi.c:error:function-definition-is-not-allowed-here |-- arm64-randconfig-002-20240930 | |-- drivers-iommu-arm-arm-smmu-v3-arm-smmu-v3.c:error:use-of-undeclared-identifier-pci_bus_type | |-- drivers-ptp-ptp_hisi.c:warning:unused-variable-hisi_ptp_acpi_match | |-- kernel-cgroup-cgroup.c:error:use-of-undeclared-identifier-cgroup_psi_stat_show | |-- mm-share_pool.c:error:call-to-undeclared-function-huge_ptep_get-ISO-C99-and-later-do-not-support-implicit-function-declarations-Werror-Wimplicit-function-declaration | `-- mm-share_pool.c:error:initializing-pte_t-with-an-expression-of-incompatible-type-int |-- arm64-randconfig-004-20240930 | `-- drivers-ptp-ptp_hisi.c:warning:unused-variable-hisi_ptp_acpi_match |-- loongarch-allmodconfig | |-- loongson3-acpi-cpufreq.c:(.text):undefined-reference-to-acpi_processor_register_performance | `-- loongson3-acpi-cpufreq.c:(.text):undefined-reference-to-acpi_processor_unregister_performance |-- loongarch-randconfig-001-20240930 | |-- drivers-net-ethernet-mucse-rnp-rnp_main.c:warning:unused-variable-hw | |-- drivers-net-ethernet-mucse-rnp-rnp_sriov.c:error:expected-identifier-or-(-before-return | |-- drivers-net-ethernet-mucse-rnp-rnp_sriov.c:error:expected-identifier-or-(-before-token | |-- drivers-net-ethernet-mucse-rnp-rnp_sriov.c:warning:check_ari_mode-defined-but-not-used | |-- drivers-net-ethernet-mucse-rnp-rnp_sriov.c:warning:no-return-statement-in-function-returning-non-void | |-- drivers-net-ethernet-mucse-rnp-rnp_sriov.c:warning:variable-err-set-but-not-used | |-- drivers-net-ethernet-mucse-rnpgbe-rnpgbe_sriov.c:warning:check_ari_mode-defined-but-not-used | |-- drivers-net-ethernet-mucse-rnpgbevf-rnpgbevf_main.c:warning:no-previous-prototype-for-rnpgbevf_alloc_rx_buffers | |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_main.c:warning:unused-variable-pfvfnum_reg | |-- drivers-net-ethernet-mucse-rnpvf-rnpvf_regs.h:error:called-object-is-not-a-function-or-function-pointer | |-- kernel-sched-core.c:warning:format-llu-expects-argument-of-type-long-long-unsigned-int-but-argument-has-type-int | `-- kernel-sched-fair.c:error:hundred_thousand-undeclared-here-(not-in-a-function) |-- x86_64-allyesconfig | |-- drivers-crypto-ccp-hygon-csv-dev.c:warning:no-previous-prototype-for-function-vpsp_do_cmd | |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-Directly-convert-the-gpa-address-into-hpa-and-forward-it-to-PSP | |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-copy-data-in-gpa-to-host-memory-and-send-it-to-psp-for-processing. | `-- drivers-crypto-ccp-hygon-vpsp.c:warning:This-comment-starts-with-but-isn-t-a-kernel-doc-comment.-Refer-Documentation-doc-guide-kernel-doc.rst |-- x86_64-buildonly-randconfig-001-20241001 | `-- kernel-sched-psi.c:error:function-definition-is-not-allowed-here |-- x86_64-buildonly-randconfig-002-20241001 | |-- drivers-crypto-ccp-hygon-csv-dev.c:warning:no-previous-prototype-for-function-vpsp_do_cmd | |-- drivers-crypto-ccp-hygon-hct.c:error:no-member-named-numa_node-in-struct-device | |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-Directly-convert-the-gpa-address-into-hpa-and-forward-it-to-PSP | |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-copy-data-in-gpa-to-host-memory-and-send-it-to-psp-for-processing. | `-- drivers-crypto-ccp-hygon-vpsp.c:warning:This-comment-starts-with-but-isn-t-a-kernel-doc-comment.-Refer-Documentation-doc-guide-kernel-doc.rst |-- x86_64-buildonly-randconfig-005-20241001 | `-- drivers-crypto-ccp-hygon-hct.c:error:no-member-named-numa_node-in-struct-device |-- x86_64-randconfig-072-20241001 | `-- include-linux-psp-hygon.h:error:conflicting-types-for-vpsp_try_do_cmd-have-int(int-phys_addr_t-struct-vpsp_ret-)-aka-int(int-long-long-unsigned-int-struct-vpsp_ret-) |-- x86_64-randconfig-073-20241001 | `-- drivers-crypto-ccp-hygon-hct.c:error:struct-device-has-no-member-named-numa_node |-- x86_64-rhel-8.3 | |-- drivers-crypto-ccp-hygon-csv-dev.c:warning:no-previous-prototype-for-vpsp_do_cmd | |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-Directly-convert-the-gpa-address-into-hpa-and-forward-it-to-PSP | |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-copy-data-in-gpa-to-host-memory-and-send-it-to-psp-for-processing. | `-- drivers-crypto-ccp-hygon-vpsp.c:warning:This-comment-starts-with-but-isn-t-a-kernel-doc-comment.-Refer-Documentation-doc-guide-kernel-doc.rst |-- x86_64-rhel-8.3-func | |-- drivers-crypto-ccp-hygon-csv-dev.c:warning:no-previous-prototype-for-vpsp_do_cmd | |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-Directly-convert-the-gpa-address-into-hpa-and-forward-it-to-PSP | |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-copy-data-in-gpa-to-host-memory-and-send-it-to-psp-for-processing. | `-- drivers-crypto-ccp-hygon-vpsp.c:warning:This-comment-starts-with-but-isn-t-a-kernel-doc-comment.-Refer-Documentation-doc-guide-kernel-doc.rst |-- x86_64-rhel-8.3-kselftests | |-- drivers-crypto-ccp-hygon-csv-dev.c:warning:no-previous-prototype-for-vpsp_do_cmd | |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-Directly-convert-the-gpa-address-into-hpa-and-forward-it-to-PSP | |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-copy-data-in-gpa-to-host-memory-and-send-it-to-psp-for-processing. | `-- drivers-crypto-ccp-hygon-vpsp.c:warning:This-comment-starts-with-but-isn-t-a-kernel-doc-comment.-Refer-Documentation-doc-guide-kernel-doc.rst `-- x86_64-rhel-8.3-rust |-- drivers-crypto-ccp-hygon-csv-dev.c:warning:no-previous-prototype-for-function-vpsp_do_cmd |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-Directly-convert-the-gpa-address-into-hpa-and-forward-it-to-PSP |-- drivers-crypto-ccp-hygon-vpsp.c:warning:Cannot-understand-brief-copy-data-in-gpa-to-host-memory-and-send-it-to-psp-for-processing. `-- drivers-crypto-ccp-hygon-vpsp.c:warning:This-comment-starts-with-but-isn-t-a-kernel-doc-comment.-Refer-Documentation-doc-guide-kernel-doc.rst elapsed time: 724m configs tested: 39 configs skipped: 121 tested configs: arm64 allmodconfig clang-20 arm64 allnoconfig gcc-14.1.0 arm64 randconfig-001-20240930 clang-20 arm64 randconfig-002-20240930 clang-15 arm64 randconfig-003-20240930 clang-20 arm64 randconfig-004-20240930 clang-15 loongarch allmodconfig gcc-14.1.0 loongarch allnoconfig gcc-14.1.0 loongarch randconfig-001-20240930 gcc-14.1.0 loongarch randconfig-002-20240930 gcc-14.1.0 x86_64 alldefconfig gcc-12 x86_64 allnoconfig clang-18 x86_64 allyesconfig clang-18 x86_64 buildonly-randconfig-001-20241001 clang-18 x86_64 buildonly-randconfig-002-20241001 clang-18 x86_64 buildonly-randconfig-003-20241001 clang-18 x86_64 buildonly-randconfig-004-20241001 gcc-12 x86_64 buildonly-randconfig-005-20241001 clang-18 x86_64 buildonly-randconfig-006-20241001 clang-18 x86_64 defconfig gcc-11 x86_64 kexec clang-18 x86_64 randconfig-001-20241001 clang-18 x86_64 randconfig-002-20241001 clang-18 x86_64 randconfig-003-20241001 gcc-11 x86_64 randconfig-004-20241001 clang-18 x86_64 randconfig-005-20241001 gcc-12 x86_64 randconfig-006-20241001 clang-18 x86_64 randconfig-011-20241001 clang-18 x86_64 randconfig-012-20241001 clang-18 x86_64 randconfig-013-20241001 gcc-12 x86_64 randconfig-014-20241001 gcc-12 x86_64 randconfig-015-20241001 clang-18 x86_64 randconfig-016-20241001 clang-18 x86_64 randconfig-071-20241001 clang-18 x86_64 randconfig-072-20241001 gcc-12 x86_64 randconfig-073-20241001 gcc-12 x86_64 randconfig-075-20241001 clang-18 x86_64 rhel-8.3 gcc-12 x86_64 rhel-8.3-rust clang-18 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 5053/23811] drivers/platform/x86/.tmp_intel_atomisp2_pm.o: warning: objtool: missing symbol for section .init.text
by kernel test robot 01 Oct '24

01 Oct '24
tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 1073f9d006321689fb82bdac7b7af58e8617f128 [5053/23811] platform/x86: Add Intel AtomISP2 dummy / power-management driver config: x86_64-buildonly-randconfig-004-20240923 (https://download.01.org/0day-ci/archive/20241001/202410010410.oqbogdcw-lkp@…) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241001/202410010410.oqbogdcw-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/202410010410.oqbogdcw-lkp@intel.com/ All warnings (new ones prefixed by >>): In file included from drivers/platform/x86/intel_atomisp2_pm.c:15: include/linux/module.h:140:14: warning: 'cleanup_module' specifies less restrictive attribute than its target 'isp_pci_driver_exit': 'cold' [-Wmissing-attributes] 140 | void cleanup_module(void) __attribute__((alias(#exitfn))); | ^~~~~~~~~~~~~~ include/linux/device.h:1637:1: note: in expansion of macro 'module_exit' 1637 | module_exit(__driver##_exit); | ^~~~~~~~~~~ include/linux/pci.h:1335:9: note: in expansion of macro 'module_driver' 1335 | module_driver(__pci_driver, pci_register_driver, pci_unregister_driver) | ^~~~~~~~~~~~~ drivers/platform/x86/intel_atomisp2_pm.c:115:1: note: in expansion of macro 'module_pci_driver' 115 | module_pci_driver(isp_pci_driver); | ^~~~~~~~~~~~~~~~~ In file included from include/linux/pci.h:32, from drivers/platform/x86/intel_atomisp2_pm.c:17: drivers/platform/x86/intel_atomisp2_pm.c:115:19: note: 'cleanup_module' target declared here 115 | module_pci_driver(isp_pci_driver); | ^~~~~~~~~~~~~~ include/linux/device.h:1633:20: note: in definition of macro 'module_driver' 1633 | static void __exit __driver##_exit(void) \ | ^~~~~~~~ drivers/platform/x86/intel_atomisp2_pm.c:115:1: note: in expansion of macro 'module_pci_driver' 115 | module_pci_driver(isp_pci_driver); | ^~~~~~~~~~~~~~~~~ include/linux/module.h:134:13: warning: 'init_module' specifies less restrictive attribute than its target 'isp_pci_driver_init': 'cold' [-Wmissing-attributes] 134 | int init_module(void) __attribute__((alias(#initfn))); | ^~~~~~~~~~~ include/linux/device.h:1632:1: note: in expansion of macro 'module_init' 1632 | module_init(__driver##_init); \ | ^~~~~~~~~~~ include/linux/pci.h:1335:9: note: in expansion of macro 'module_driver' 1335 | module_driver(__pci_driver, pci_register_driver, pci_unregister_driver) | ^~~~~~~~~~~~~ drivers/platform/x86/intel_atomisp2_pm.c:115:1: note: in expansion of macro 'module_pci_driver' 115 | module_pci_driver(isp_pci_driver); | ^~~~~~~~~~~~~~~~~ drivers/platform/x86/intel_atomisp2_pm.c:115:19: note: 'init_module' target declared here 115 | module_pci_driver(isp_pci_driver); | ^~~~~~~~~~~~~~ include/linux/device.h:1628:19: note: in definition of macro 'module_driver' 1628 | static int __init __driver##_init(void) \ | ^~~~~~~~ drivers/platform/x86/intel_atomisp2_pm.c:115:1: note: in expansion of macro 'module_pci_driver' 115 | module_pci_driver(isp_pci_driver); | ^~~~~~~~~~~~~~~~~ >> drivers/platform/x86/.tmp_intel_atomisp2_pm.o: warning: objtool: missing symbol for section .init.text -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS 16561/23811] mm/pin_mem.c:844:63: error: lvalue required as unary '&' operand
by kernel test robot 30 Sep '24

30 Sep '24
Hi Jingxian, FYI, the error/warning still remains. tree: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS head: 5c63bd0fa5e86474d30ecd06d67f2393de081434 commit: 1a378b87531ea80e7847bf0105adedff28a73080 [16561/23811] mm: add pin memory method for checkpoint add restore config: arm64-randconfig-004-20240930 (https://download.01.org/0day-ci/archive/20240930/202409302301.ZKaIRM0E-lkp@…) compiler: aarch64-linux-gcc (GCC) 14.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240930/202409302301.ZKaIRM0E-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/202409302301.ZKaIRM0E-lkp@intel.com/ All errors (new ones prefixed by >>): mm/pin_mem.c:171:6: warning: no previous prototype for 'reserve_page_from_buddy' [-Wmissing-prototypes] 171 | void reserve_page_from_buddy(unsigned long nr_pages, struct page *page) | ^~~~~~~~~~~~~~~~~~~~~~~ mm/pin_mem.c:254:6: warning: no previous prototype for 'free_user_map_pages' [-Wmissing-prototypes] 254 | void free_user_map_pages(unsigned int pid_index, unsigned int entry_index, unsigned int page_index) | ^~~~~~~~~~~~~~~~~~~ mm/pin_mem.c:311:6: warning: no previous prototype for 'check_redirect_end_valid' [-Wmissing-prototypes] 311 | bool check_redirect_end_valid(struct redirect_info *redirect_start, | ^~~~~~~~~~~~~~~~~~~~~~~~ mm/pin_mem.c:392:5: warning: no previous prototype for 'calculate_pin_mem_digest' [-Wmissing-prototypes] 392 | int calculate_pin_mem_digest(struct pin_mem_dump_info *pmdi, char *digest) | ^~~~~~~~~~~~~~~~~~~~~~~~ mm/pin_mem.c:481:5: warning: no previous prototype for 'collect_pmd_huge_pages' [-Wmissing-prototypes] 481 | int collect_pmd_huge_pages(struct task_struct *task, | ^~~~~~~~~~~~~~~~~~~~~~ mm/pin_mem.c:544:5: warning: no previous prototype for 'collect_normal_pages' [-Wmissing-prototypes] 544 | int collect_normal_pages(struct task_struct *task, | ^~~~~~~~~~~~~~~~~~~~ mm/pin_mem.c: In function 'collect_normal_pages': mm/pin_mem.c:549:26: warning: variable 'nr_pages' set but not used [-Wunused-but-set-variable] 549 | unsigned long i, nr_pages; | ^~~~~~~~ mm/pin_mem.c: At top level: mm/pin_mem.c:610:6: warning: no previous prototype for 'free_pin_pages' [-Wmissing-prototypes] 610 | void free_pin_pages(struct page_map_entry *pme) | ^~~~~~~~~~~~~~ mm/pin_mem.c:770:12: warning: no previous prototype for 'remap_normal_pages' [-Wmissing-prototypes] 770 | vm_fault_t remap_normal_pages(struct mm_struct *mm, struct vm_area_struct *vma, | ^~~~~~~~~~~~~~~~~~ mm/pin_mem.c: In function 'get_hugepage_gfpmask': >> mm/pin_mem.c:844:63: error: lvalue required as unary '&' operand 844 | if (test_bit(TRANSPARENT_HUGEPAGE_DEFRAG_DIRECT_FLAG, &transparent_hugepage_flags)) | ^ mm/pin_mem.c:846:63: error: lvalue required as unary '&' operand 846 | if (test_bit(TRANSPARENT_HUGEPAGE_DEFRAG_KSWAPD_FLAG, &transparent_hugepage_flags)) | ^ mm/pin_mem.c:848:71: error: lvalue required as unary '&' operand 848 | if (test_bit(TRANSPARENT_HUGEPAGE_DEFRAG_KSWAPD_OR_MADV_FLAG, &transparent_hugepage_flags)) | ^ mm/pin_mem.c:851:65: error: lvalue required as unary '&' operand 851 | if (test_bit(TRANSPARENT_HUGEPAGE_DEFRAG_REQ_MADV_FLAG, &transparent_hugepage_flags)) | ^ mm/pin_mem.c: At top level: mm/pin_mem.c:857:12: warning: no previous prototype for 'remap_huge_pmd_pages' [-Wmissing-prototypes] 857 | vm_fault_t remap_huge_pmd_pages(struct mm_struct *mm, struct vm_area_struct *vma, | ^~~~~~~~~~~~~~~~~~~~ vim +844 mm/pin_mem.c 839 840 static inline gfp_t get_hugepage_gfpmask(struct vm_area_struct *vma) 841 { 842 const bool vma_madvised = !!(vma->vm_flags & VM_HUGEPAGE); 843 > 844 if (test_bit(TRANSPARENT_HUGEPAGE_DEFRAG_DIRECT_FLAG, &transparent_hugepage_flags)) 845 return GFP_TRANSHUGE | (vma_madvised ? 0 : __GFP_NORETRY); 846 if (test_bit(TRANSPARENT_HUGEPAGE_DEFRAG_KSWAPD_FLAG, &transparent_hugepage_flags)) 847 return GFP_TRANSHUGE_LIGHT | __GFP_KSWAPD_RECLAIM; 848 if (test_bit(TRANSPARENT_HUGEPAGE_DEFRAG_KSWAPD_OR_MADV_FLAG, &transparent_hugepage_flags)) 849 return GFP_TRANSHUGE_LIGHT | (vma_madvised ? __GFP_DIRECT_RECLAIM : 850 __GFP_KSWAPD_RECLAIM); 851 if (test_bit(TRANSPARENT_HUGEPAGE_DEFRAG_REQ_MADV_FLAG, &transparent_hugepage_flags)) 852 return GFP_TRANSHUGE_LIGHT | (vma_madvised ? __GFP_DIRECT_RECLAIM : 853 0); 854 return GFP_TRANSHUGE_LIGHT; 855 } 856 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:openEuler-1.0-LTS] BUILD REGRESSION 5c63bd0fa5e86474d30ecd06d67f2393de081434
by kernel test robot 30 Sep '24

30 Sep '24
tree/branch: https://gitee.com/openeuler/kernel.git openEuler-1.0-LTS branch HEAD: 5c63bd0fa5e86474d30ecd06d67f2393de081434 !11918 dhugetlb: make spin_lock irq save Error/Warning ids grouped by kconfigs: recent_errors |-- arm64-allmodconfig | |-- block-blk-io-hierarchy-iodump.c:warning:no-previous-prototype-for-__bio_stage_hierarchy_start | `-- include-linux-thread_info.h:warning:b-may-be-used-uninitialized |-- arm64-allnoconfig | `-- kernel-sched-core.c:error:implicit-declaration-of-function-init_auto_affinity |-- arm64-randconfig-002-20240930 | |-- arch-arm64-mm-init.c:error:mem_sleep_current-undeclared-(first-use-in-this-function) | |-- arch-arm64-mm-init.c:error:pmu_nmi_enable-undeclared-(first-use-in-this-function) | |-- drivers-clocksource-arm_arch_timer.c:error:hisi_161010101_read_cntvct_el0-undeclared-(first-use-in-this-function) | |-- drivers-misc-uacce-uacce.c:error:implicit-declaration-of-function-module_refcount | |-- include-linux-kern_levels.h:warning:format-lx-expects-argument-of-type-long-unsigned-int-but-argument-has-type-const-long-unsigned-int | |-- include-linux-kern_levels.h:warning:format-p-expects-a-matching-void-argument | |-- include-linux-kern_levels.h:warning:format-p-expects-argument-of-type-void-but-argument-has-type-int | |-- mm-share_pool.c:error:HUGETLB_ALLOC_BUDDY-undeclared-(first-use-in-this-function) | |-- mm-share_pool.c:error:HUGETLB_ALLOC_NONE-undeclared-(first-use-in-this-function) | |-- mm-share_pool.c:error:implicit-declaration-of-function-huge_add_to_page_cache | |-- mm-share_pool.c:error:implicit-declaration-of-function-huge_pte_none | |-- mm-share_pool.c:error:implicit-declaration-of-function-huge_ptep_get | |-- mm-share_pool.c:error:implicit-declaration-of-function-hugetlb_alloc_hugepage | |-- mm-share_pool.c:error:implicit-declaration-of-function-hugetlb_count_add | |-- mm-share_pool.c:error:implicit-declaration-of-function-set_huge_pte_at | `-- mm-share_pool.c:error:invalid-initializer |-- arm64-randconfig-003-20240930 | |-- arch-arm64-mm-init.c:error:mem_sleep_current-undeclared-(first-use-in-this-function) | `-- arch-arm64-mm-init.c:error:pmu_nmi_enable-undeclared-(first-use-in-this-function) |-- arm64-randconfig-004-20240930 | |-- arch-arm64-mm-init.c:error:mem_sleep_current-undeclared-(first-use-in-this-function) | |-- drivers-nvme-host-core.c:error:compat_uptr_t-undeclared-(first-use-in-this-function) | |-- drivers-nvme-host-core.c:error:expected-before-ptrval | `-- mm-pin_mem.c:error:lvalue-required-as-unary-operand |-- x86_64-allnoconfig | `-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa-Werror-Wimplicit-function-declaration |-- x86_64-allyesconfig | |-- block-blk-io-hierarchy-iodump.c:warning:no-previous-prototype-for-function-__bio_stage_hierarchy_start | `-- drivers-net-ethernet-stmicro-stmmac-dwmac-phytium.c:error:incompatible-pointer-to-integer-conversion-returning-void-from-a-function-with-result-type-int |-- x86_64-buildonly-randconfig-001-20240930 | `-- kernel-sched-core.c:error:implicit-declaration-of-function-init_auto_affinity |-- x86_64-buildonly-randconfig-002-20240930 | `-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa-Werror-Wimplicit-function-declaration |-- x86_64-buildonly-randconfig-004-20240930 | |-- drivers-misc-uacce-uacce.c:error:implicit-declaration-of-function-module_refcount | |-- drivers-pci-hotplug-pciehp_core.o:warning:objtool:missing-symbol-for-section-.init.text | `-- kernel-sched-core.c:error:implicit-declaration-of-function-init_auto_affinity |-- x86_64-buildonly-randconfig-005-20240930 | |-- arch-x86-power-.tmp_cpu.o:warning:objtool:missing-symbol-for-section-.exit.text | `-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa-Werror-Wimplicit-function-declaration |-- x86_64-buildonly-randconfig-006-20240930 | |-- fs-gfs2-bmap.c:warning:lblock-may-be-used-uninitialized | `-- net-ax25-ax25_dev.o:warning:objtool:missing-symbol-for-section-.exit.text |-- x86_64-kexec | `-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa-Werror-Wimplicit-function-declaration |-- x86_64-randconfig-001-20240930 | `-- kernel-sched-core.c:error:implicit-declaration-of-function-init_auto_affinity |-- x86_64-randconfig-006-20240930 | `-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa-Werror-Wimplicit-function-declaration |-- x86_64-randconfig-011-20240930 | `-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa-Werror-Wimplicit-function-declaration |-- x86_64-randconfig-016-20240930 | `-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa-Werror-Wimplicit-function-declaration `-- x86_64-randconfig-075-20240930 `-- mm-memory.c:error:implicit-declaration-of-function-hugetlb_insert_hugepage_pte_by_pa-Werror-Wimplicit-function-declaration elapsed time: 724m configs tested: 36 configs skipped: 128 tested configs: arm64 allmodconfig gcc-14.1.0 arm64 allnoconfig gcc-14.1.0 arm64 randconfig-001-20240930 gcc-14.1.0 arm64 randconfig-002-20240930 gcc-14.1.0 arm64 randconfig-003-20240930 gcc-14.1.0 arm64 randconfig-004-20240930 gcc-14.1.0 x86_64 allnoconfig clang-18 x86_64 allyesconfig clang-18 x86_64 buildonly-randconfig-001-20240930 gcc-12 x86_64 buildonly-randconfig-002-20240930 clang-18 x86_64 buildonly-randconfig-003-20240930 gcc-12 x86_64 buildonly-randconfig-004-20240930 gcc-12 x86_64 buildonly-randconfig-005-20240930 clang-18 x86_64 buildonly-randconfig-006-20240930 gcc-12 x86_64 defconfig gcc-11 x86_64 kexec clang-18 x86_64 randconfig-001-20240930 gcc-12 x86_64 randconfig-002-20240930 clang-18 x86_64 randconfig-003-20240930 clang-18 x86_64 randconfig-004-20240930 clang-18 x86_64 randconfig-005-20240930 gcc-12 x86_64 randconfig-006-20240930 clang-18 x86_64 randconfig-011-20240930 clang-18 x86_64 randconfig-012-20240930 gcc-11 x86_64 randconfig-013-20240930 gcc-11 x86_64 randconfig-014-20240930 gcc-12 x86_64 randconfig-015-20240930 clang-18 x86_64 randconfig-016-20240930 clang-18 x86_64 randconfig-071-20240930 clang-18 x86_64 randconfig-072-20240930 gcc-12 x86_64 randconfig-073-20240930 clang-18 x86_64 randconfig-074-20240930 gcc-12 x86_64 randconfig-075-20240930 clang-18 x86_64 randconfig-076-20240930 gcc-12 x86_64 rhel-8.3 gcc-12 x86_64 rhel-8.3-rust clang-18 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[openeuler:OLK-6.6 7330/14264] drivers/net/ethernet/mucse/rnpgbe/rnpgbe_sriov.c:301:13: warning: 'check_ari_mode' defined but not used
by kernel test robot 30 Sep '24

30 Sep '24
tree: https://gitee.com/openeuler/kernel.git OLK-6.6 head: c594039dbf93789c67e3d7fe031bada7b7fc8aae commit: f27f159f8a8867f846422bb8f1e0f01ff1803bf0 [7330/14264] RNPGBE: NET: Fix wanrings config: loongarch-randconfig-001-20240930 (https://download.01.org/0day-ci/archive/20240930/202409301900.jvcSphIC-lkp@…) compiler: loongarch64-linux-gcc (GCC) 14.1.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240930/202409301900.jvcSphIC-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/202409301900.jvcSphIC-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/net/ethernet/mucse/rnpgbe/rnpgbe_sriov.c:301:13: warning: 'check_ari_mode' defined but not used [-Wunused-function] 301 | static bool check_ari_mode(struct pci_dev *dev) | ^~~~~~~~~~~~~~ vim +/check_ari_mode +301 drivers/net/ethernet/mucse/rnpgbe/rnpgbe_sriov.c 300 > 301 static bool check_ari_mode(struct pci_dev *dev) 302 { 303 struct pci_bus *bus = dev->bus; 304 305 return bus->self && bus->self->ari_enabled; 306 } 307 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki
1 0
0 0
[PATCH openEuler-1.0-LTS] rtmutex: Drop rt_mutex::wait_lock before scheduling
by Xiongfeng Wang 30 Sep '24

30 Sep '24
From: Roland Xu <mu001999(a)outlook.com> stable inclusion from stable-v4.19.322 commit 432efdbe7da5ecfcbc0c2180cfdbab1441752a38 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9M4 CVE: CVE-2024-46829 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id… -------------------------------- commit d33d26036a0274b472299d7dcdaa5fb34329f91b upstream. rt_mutex_handle_deadlock() is called with rt_mutex::wait_lock held. In the good case it returns with the lock held and in the deadlock case it emits a warning and goes into an endless scheduling loop with the lock held, which triggers the 'scheduling in atomic' warning. Unlock rt_mutex::wait_lock in the dead lock case before issuing the warning and dropping into the schedule for ever loop. [ tglx: Moved unlock before the WARN(), removed the pointless comment, massaged changelog, added Fixes tag ] Fixes: 3d5c9340d194 ("rtmutex: Handle deadlock detection smarter") Signed-off-by: Roland Xu <mu001999(a)outlook.com> Signed-off-by: Thomas Gleixner <tglx(a)linutronix.de> Cc: stable(a)vger.kernel.org Link: https://lore.kernel.org/all/ME0P300MB063599BEF0743B8FA339C2CECC802@ME0P300M… Signed-off-by: Greg Kroah-Hartman <gregkh(a)linuxfoundation.org> Signed-off-by: Xiongfeng Wang <wangxiongfeng2(a)huawei.com> --- kernel/locking/rtmutex.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/kernel/locking/rtmutex.c b/kernel/locking/rtmutex.c index 861e14ce1956..dffa14dee033 100644 --- a/kernel/locking/rtmutex.c +++ b/kernel/locking/rtmutex.c @@ -1241,6 +1241,7 @@ __rt_mutex_slowlock(struct rt_mutex *lock, int state, } static void rt_mutex_handle_deadlock(int res, int detect_deadlock, + struct rt_mutex *lock, struct rt_mutex_waiter *w) { /* @@ -1250,6 +1251,7 @@ static void rt_mutex_handle_deadlock(int res, int detect_deadlock, if (res != -EDEADLOCK || detect_deadlock) return; + raw_spin_unlock_irq(&lock->wait_lock); /* * Yell lowdly and stop the task right here. */ @@ -1305,7 +1307,7 @@ rt_mutex_slowlock(struct rt_mutex *lock, int state, if (unlikely(ret)) { __set_current_state(TASK_RUNNING); remove_waiter(lock, &waiter); - rt_mutex_handle_deadlock(ret, chwalk, &waiter); + rt_mutex_handle_deadlock(ret, chwalk, lock, &waiter); } /* -- 2.20.1
2 1
0 0
  • ← Newer
  • 1
  • ...
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • ...
  • 465
  • Older →

HyperKitty Powered by HyperKitty