-
Notifications
You must be signed in to change notification settings - Fork 1
codetag: Avoid unused alloc_tags sections/symbols #64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: modules-next_base
Are you sure you want to change the base?
Conversation
Upstream branch: 085c5e3 |
96f6e22
to
7c2b408
Compare
7c2b408
to
2996654
Compare
Upstream branch: 897c0b4 |
4958372
to
2109de9
Compare
2996654
to
d4037eb
Compare
Upstream branch: b464e57 |
2109de9
to
3f6714c
Compare
d4037eb
to
39f16b8
Compare
39f16b8
to
d6fb02c
Compare
Upstream branch: a0b018a |
3f6714c
to
bf57d64
Compare
d6fb02c
to
b788ac1
Compare
Upstream branch: a0b018a |
With CONFIG_MEM_ALLOC_PROFILING=n, vmlinux and all modules unnecessarily contain the symbols __start_alloc_tags and __stop_alloc_tags, which define an empty range. In the case of modules, the presence of these symbols also forces the linker to create an empty .codetag.alloc_tags section. Update codetag.lds.h to make the data conditional on CONFIG_MEM_ALLOC_PROFILING. Signed-off-by: Petr Pavlu <[email protected]> Reviewed-by: Kent Overstreet <[email protected]> Reviewed-by: Suren Baghdasaryan <[email protected]>
bf57d64
to
b78d155
Compare
b788ac1
to
e04c78d
Compare
cbdca0b
to
6a1a12c
Compare
Upstream branch: a0b018a Pull request is NOT updated. Failed to apply https://patchwork.kernel.org/project/linux-modules/list/?series=973440
conflict:
|
6a1a12c
to
7c2b408
Compare
6381fa5
to
aaa7ece
Compare
aaa7ece
to
b4d1c4e
Compare
b4d1c4e
to
61dc34e
Compare
1df8185
to
9aab33d
Compare
9aab33d
to
99d099e
Compare
99d099e
to
3aed49d
Compare
When igc_led_setup() fails, igc_probe() fails and triggers kernel panic in free_netdev() since unregister_netdev() is not called. [1] This behavior can be tested using fault-injection framework, especially the failslab feature. [2] Since LED support is not mandatory, treat LED setup failures as non-fatal and continue probe with a warning message, consequently avoiding the kernel panic. [1] kernel BUG at net/core/dev.c:12047! Oops: invalid opcode: 0000 [#1] SMP NOPTI CPU: 0 UID: 0 PID: 937 Comm: repro-igc-led-e Not tainted 6.17.0-rc4-enjuk-tnguy-00865-gc4940196ab02 #64 PREEMPT(voluntary) Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.16.3-debian-1.16.3-2 04/01/2014 RIP: 0010:free_netdev+0x278/0x2b0 [...] Call Trace: <TASK> igc_probe+0x370/0x910 local_pci_probe+0x3a/0x80 pci_device_probe+0xd1/0x200 [...] [2] #!/bin/bash -ex FAILSLAB_PATH=/sys/kernel/debug/failslab/ DEVICE=0000:00:05.0 START_ADDR=$(grep " igc_led_setup" /proc/kallsyms \ | awk '{printf("0x%s", $1)}') END_ADDR=$(printf "0x%x" $((START_ADDR + 0x100))) echo $START_ADDR > $FAILSLAB_PATH/require-start echo $END_ADDR > $FAILSLAB_PATH/require-end echo 1 > $FAILSLAB_PATH/times echo 100 > $FAILSLAB_PATH/probability echo N > $FAILSLAB_PATH/ignore-gfp-wait echo $DEVICE > /sys/bus/pci/drivers/igc/bind Fixes: ea57870 ("igc: Add support for LEDs on i225/i226") Signed-off-by: Kohei Enju <[email protected]> Reviewed-by: Paul Menzel <[email protected]> Reviewed-by: Aleksandr Loktionov <[email protected]> Reviewed-by: Vitaly Lifshits <[email protected]> Reviewed-by: Kurt Kanzenbach <[email protected]> Tested-by: Mor Bar-Gabay <[email protected]> Signed-off-by: Tony Nguyen <[email protected]>
Pull request for series with
subject: codetag: Avoid unused alloc_tags sections/symbols
version: 1
url: https://patchwork.kernel.org/project/linux-modules/list/?series=943567