[core-for-CI PATCH] Revert "igc: fix a log entry using uninitialized netdev"
Jani Nikula
jani.nikula at intel.com
Tue May 28 07:46:14 UTC 2024
This reverts commit 86167183a17e03ec77198897975e9fdfbd53cb0b.
The commit moved igc_ptp_init() which initializes spinlocks after
igt_reset() which ends up using the adapter->ptp_tx_lock. Lockdep isn't
happy:
<3>[ 10.648947] INFO: trying to register non-static key.
<3>[ 10.648950] The code is fine but needs lockdep annotation, or maybe
<3>[ 10.648951] you didn't initialize this object before use?
<3>[ 10.648952] turning off the locking correctness validator.
<4>[ 10.648954] CPU: 2 PID: 313 Comm: systemd-udevd Not tainted 6.9.0-next-20240513-next-20240513-g6ba6c795dc73+ #1
<4>[ 10.648958] Hardware name: Intel Corporation Arrow Lake Client Platform/MTL-S UDIMM 2DPC EVCRB, BIOS MTLSFWI1.R00.3473.D80.2311222130 11/22/2023
<4>[ 10.648960] Call Trace:
<4>[ 10.648962] <TASK>
<4>[ 10.648964] dump_stack_lvl+0x82/0xd0
<4>[ 10.648971] register_lock_class+0x795/0x7e0
<4>[ 10.648978] ? __free_object+0xa1/0x340
<4>[ 10.648983] ? lockdep_hardirqs_on+0xc1/0x140
<4>[ 10.648990] __lock_acquire+0x75/0x2260
<4>[ 10.648993] ? __switch_to+0x123/0x600
<4>[ 10.648997] ? _raw_spin_unlock_irqrestore+0x58/0x70
<4>[ 10.649002] lock_acquire+0xd9/0x2f0
<4>[ 10.649006] ? igc_ptp_clear_tx_tstamp+0x28/0x60 [igc]
<4>[ 10.649027] _raw_spin_lock_irqsave+0x3d/0x60
<4>[ 10.649030] ? igc_ptp_clear_tx_tstamp+0x28/0x60 [igc]
<4>[ 10.649038] igc_ptp_clear_tx_tstamp+0x28/0x60 [igc]
<4>[ 10.649048] igc_ptp_set_timestamp_mode.isra.0+0x20b/0x230 [igc]
<4>[ 10.649056] igc_ptp_reset+0x31/0x180 [igc]
<4>[ 10.649066] igc_reset+0xb4/0x100 [igc]
<4>[ 10.649079] igc_probe+0x797/0x8e0 [igc]
<4>[ 10.649091] pci_device_probe+0x95/0x120
<4>[ 10.649095] really_probe+0xd9/0x370
<4>[ 10.649099] ? __pfx___driver_attach+0x10/0x10
<4>[ 10.649101] __driver_probe_device+0x73/0x150
<4>[ 10.649103] driver_probe_device+0x19/0xa0
<4>[ 10.649105] __driver_attach+0xb6/0x180
<4>[ 10.649107] ? __pfx___driver_attach+0x10/0x10
<4>[ 10.649109] bus_for_each_dev+0x77/0xd0
<4>[ 10.649114] bus_add_driver+0x110/0x240
<4>[ 10.649117] driver_register+0x5b/0x110
<4>[ 10.649120] ? __pfx_igc_init_module+0x10/0x10 [igc]
<4>[ 10.649130] do_one_initcall+0x5c/0x2b0
<4>[ 10.649134] ? kmalloc_trace_noprof+0x22f/0x290
<4>[ 10.649141] ? do_init_module+0x1e/0x210
<4>[ 10.669989] do_init_module+0x5f/0x210
<4>[ 10.669993] load_module+0x1d44/0x1fc0
<4>[ 10.670001] ? init_module_from_file+0x86/0xd0
<4>[ 10.670004] init_module_from_file+0x86/0xd0
<4>[ 10.670009] idempotent_init_module+0x17c/0x230
<4>[ 10.670015] __x64_sys_finit_module+0x56/0xb0
<4>[ 10.670019] do_syscall_64+0x69/0x140
<4>[ 10.670023] entry_SYSCALL_64_after_hwframe+0x76/0x7e
<4>[ 10.670027] RIP: 0033:0x7f6d2704595d
<4>[ 10.670030] Code: 00 c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48
8b 0d 03 35 0d 00 f7 d8 64 89 01 48
<4>[ 10.670032] RSP: 002b:00007ffc72aad018 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
<4>[ 10.670036] RAX: ffffffffffffffda RBX: 000055d3f0e69690 RCX: 00007f6d2704595d
<4>[ 10.670038] RDX: 0000000000000000 RSI: 00007f6d26f25ded RDI: 0000000000000010
<4>[ 10.670039] RBP: 0000000000020000 R08: 0000000000000000 R09: 0000000000000000
<4>[ 10.670041] R10: 0000000000000010 R11: 0000000000000246 R12: 00007f6d26f25ded
<4>[ 10.670042] R13: 0000000000000000 R14: 000055d3f0c64d20 R15: 000055d3f0e69690
<4>[ 10.670046] </TASK>
<6>[ 10.672046] pps pps0: new PPS source ptp0
References: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/11198
References: https://lore.kernel.org/r/87o78rmkhu.fsf@intel.com
Signed-off-by: Jani Nikula <jani.nikula at intel.com>
---
drivers/net/ethernet/intel/igc/igc_main.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/net/ethernet/intel/igc/igc_main.c b/drivers/net/ethernet/intel/igc/igc_main.c
index 12f004f46082..ace2fbfd87d6 100644
--- a/drivers/net/ethernet/intel/igc/igc_main.c
+++ b/drivers/net/ethernet/intel/igc/igc_main.c
@@ -7028,6 +7028,8 @@ static int igc_probe(struct pci_dev *pdev,
device_set_wakeup_enable(&adapter->pdev->dev,
adapter->flags & IGC_FLAG_WOL_SUPPORTED);
+ igc_ptp_init(adapter);
+
igc_tsn_clear_schedule(adapter);
/* reset the hardware with the new settings */
@@ -7049,9 +7051,6 @@ static int igc_probe(struct pci_dev *pdev,
/* Check if Media Autosense is enabled */
adapter->ei = *ei;
- /* do hw tstamp init after resetting */
- igc_ptp_init(adapter);
-
/* print pcie link status and MAC address */
pcie_print_link_status(pdev);
netdev_info(netdev, "MAC: %pM\n", netdev->dev_addr);
--
2.39.2
More information about the Intel-gfx
mailing list