Gateworks / nrc7292

Linux driver for Newracom NRC7292 802.11ah
GNU General Public License v2.0
7 stars 2 forks source link

Crash is seen in nrc_wim_event_handler, during driver load while using pooling mode with SX-NEWAH (nrc7292 mpcie) module #2

Open govindsi opened 1 year ago

govindsi commented 1 year ago

Crash is seen in nrc_wim_event_handler, during driver load. modprobe nrc fw_name=nrc7292_cspi.bin bd_name=nrc7292_bd.dat spi_bus_num=$BUSNO spi_polling_interval=5 hifspeed=30000000

Driver base: https://github.com/Gateworks/nrc7292/commit/528fc2595766583b468269d378848a619c4bd6a8

As per objdump, crash point is

00000000000077a8 : nrc_wim_event_handler():

00000000000077d8 <.L240>: drivers/staging/nrc/wim.c:644 (discriminator 3) 77d8: 00092703 lw a4,0(s2) 77dc: 4619 li a2,6 77de: 02c70463 beq a4,a2,7806 <.L241> 77de: R_RISCV_BRANCH .L241

    if ((!atomic_read(**&nw->d_deauth.delayed_deauth**) && !vif) || 
              vif->type == NL80211_IFTYPE_MONITOR) {
            return 0;                                                                                       
    }                                              

[ 109.625440] Oops [#1] [ 109.627730] Modules linked in: nrc(C) pac193x industrialio [ 109.633265] CPU: 3 PID: 48 Comm: kworker/3:1 Tainted: G C 5.15.92-hardened1 #1 [ 109.641809] Hardware name: Microchip PolarFire-SoC Icicle Kit (DT) [ 109.648001] Workqueue: events spi_poll_periodic [nrc] [ 109.663824] epc : nrc_wim_event_handler+0x30/0x122 [nrc] [ 109.677617] ra : nrc_wim_rx+0x20/0x3e [nrc] [ 109.690837] epc : ffffffff016887d8 ra : ffffffff01688a00 sp : ffffffd0141a3d10 [ 109.698076] gp : ffffffff814e7848 tp : ffffffefa262a1c0 t0 : ffffffefa2be1ce0 [ 109.705311] t1 : 00000000000000c0 t2 : 0000000000000000 s0 : ffffffd0141a3d30 [ 109.712541] s1 : ffffffefb39d9d40 a0 : ffffffefb39d9d40 a1 : ffffffefaf974400 [ 109.719773] a2 : ffffffff01696c30 a3 : ffffffff912e6e08 a4 : ffffffefb39d9d50 [ 109.727011] a5 : ffffffefa2be1c48 a6 : 0000000000000001 a7 : 0000000000000004 [ 109.734242] s2 : 0000000000000000 s3 : ffffffefb39d9d40 s4 : 0000000000000000 [ 109.741472] s5 : ffffffefa4615800 s6 : ffffffefa46158f8 s7 : ffffffe002678c05 [ 109.748711] s8 : ffffffefa21a777c s9 : ffffffff80a0f3f0 s10: ffffffff80a0f3f0 [ 109.755940] s11: ffffffefa21a7708 t3 : 0000000000ff0000 t4 : 000000a200000000 [ 109.763172] t5 : 000000ff00000000 t6 : 0000000000000002 [ 109.768493] status: 0000000200000120 badaddr: 0000000000000000 cause: 000000000000000d [ 109.776423] [] nrc_wim_rx+0x20/0x3e [nrc] [ 109.792804] [] hif_receive_skb+0x74/0x146 [nrc] [ 109.807377] [] spi_update_status+0x27e/0x2ae [nrc] [ 109.822547] [] spi_poll_periodic+0x18/0x5a [nrc] [ 109.836225] [] process_one_work+0x18c/0x2e6 [ 109.842003] [] worker_thread+0x138/0x3ea [ 109.847509] [] kthread+0xda/0xf0 [ 109.852326] [] ret_from_exception+0x0/0xc [ 109.858125] ---[ end trace cdc2cbb232abc2fd ]--- [ 109.862810] Kernel panic - not syncing: Fatal exception [ 109.868058] SMP: stopping secondary CPUs [ 109.872039] ---[ end Kernel panic - not syncing: Fatal exception ]---

Is there any known issue in rx path synchronization while using polling mode?

Gateworks commented 1 year ago

Greetings,

Please send any support questions to @.*** Please send an email there explaining what board(s) you are using and what configuration and steps are needed to show the issue.

The nrc7292 driver is created and maintained by newracom in their git repo here https://github.com/newracom/nrc7292_sw_pkg. You may have better luck with their latest release which we have not had time to adapt into our software BSP yet.

Best regards

Tim

On Tue, Jul 11, 2023 at 7:13 AM Govind Singh @.***> wrote:

Crash is seen in nrc_wim_event_handler, during driver load. modprobe nrc fw_name=nrc7292_cspi.bin bd_name=nrc7292_bd.dat spi_bus_num=$BUSNO spi_polling_interval=5 hifspeed=30000000

Driver base: 528fc25 https://github.com/Gateworks/nrc7292/commit/528fc2595766583b468269d378848a619c4bd6a8

As per objdump, crash point is

00000000000077a8 : nrc_wim_event_handler():

00000000000077d8 <.L240>: /usr/src/output/br_hardened/output_riscv_salukipicm/build/linux-tc-saluki-5.15-sec/drivers/staging/nrc/wim.c:644 (discriminator 3) 77d8: 00092703 lw a4,0(s2) 77dc: 4619 li a2,6 77de: 02c70463 beq a4,a2,7806 <.L241> 77de: R_RISCV_BRANCH .L241

if ((!atomic_read(**&nw->d_deauth.delayed_deauth**) && !vif) ||
          vif->type == NL80211_IFTYPE_MONITOR) {
        return 0;
}

[ 109.625440] Oops [#1 https://github.com/Gateworks/nrc7292/issues/1] [ 109.627730] Modules linked in: nrc(C) pac193x industrialio [ 109.633265] CPU: 3 PID: 48 Comm: kworker/3:1 Tainted: G C 5.15.92-hardened1 #1 https://github.com/Gateworks/nrc7292/issues/1 [ 109.641809] Hardware name: Microchip PolarFire-SoC Icicle Kit (DT) [ 109.648001] Workqueue: events spi_poll_periodic [nrc] [ 109.663824] epc : nrc_wim_event_handler+0x30/0x122 [nrc] [ 109.677617] ra : nrc_wim_rx+0x20/0x3e [nrc] [ 109.690837] epc : ffffffff016887d8 ra : ffffffff01688a00 sp : ffffffd0141a3d10 [ 109.698076] gp : ffffffff814e7848 tp : ffffffefa262a1c0 t0 : ffffffefa2be1ce0 [ 109.705311] t1 : 00000000000000c0 t2 : 0000000000000000 s0 : ffffffd0141a3d30 [ 109.712541] s1 : ffffffefb39d9d40 a0 : ffffffefb39d9d40 a1 : ffffffefaf974400 [ 109.719773] a2 : ffffffff01696c30 a3 : ffffffff912e6e08 a4 : ffffffefb39d9d50 [ 109.727011] a5 : ffffffefa2be1c48 a6 : 0000000000000001 a7 : 0000000000000004 [ 109.734242] s2 : 0000000000000000 s3 : ffffffefb39d9d40 s4 : 0000000000000000 [ 109.741472] s5 : ffffffefa4615800 s6 : ffffffefa46158f8 s7 : ffffffe002678c05 [ 109.748711] s8 : ffffffefa21a777c s9 : ffffffff80a0f3f0 s10: ffffffff80a0f3f0 [ 109.755940] s11: ffffffefa21a7708 t3 : 0000000000ff0000 t4 : 000000a200000000 [ 109.763172] t5 : 000000ff00000000 t6 : 0000000000000002 [ 109.768493] status: 0000000200000120 badaddr: 0000000000000000 cause: 000000000000000d [ 109.776423] [] nrc_wim_rx+0x20/0x3e [nrc] [ 109.792804] [] hif_receive_skb+0x74/0x146 [nrc] [ 109.807377] [] spi_update_status+0x27e/0x2ae [nrc] [ 109.822547] [] spi_poll_periodic+0x18/0x5a [nrc] [ 109.836225] [] process_one_work+0x18c/0x2e6 [ 109.842003] [] worker_thread+0x138/0x3ea [ 109.847509] [] kthread+0xda/0xf0 [ 109.852326] [] ret_from_exception+0x0/0xc [ 109.858125] ---[ end trace cdc2cbb232abc2fd ]--- [ 109.862810] Kernel panic - not syncing: Fatal exception [ 109.868058] SMP: stopping secondary CPUs [ 109.872039] ---[ end Kernel panic - not syncing: Fatal exception ]---

Is there any known issue in rx path synchronization while using pooling mode?

— Reply to this email directly, view it on GitHub https://github.com/Gateworks/nrc7292/issues/2, or unsubscribe https://github.com/notifications/unsubscribe-auth/ABAJETHS2PVCKMEIOPKGFK3XPVNPVANCNFSM6AAAAAA2GCPK7Y . You are receiving this because you are subscribed to this thread.Message ID: @.***>