All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jacob Keller <jacob.e.keller@intel.com>
To: Marc Kleine-Budde <mkl@pengutronix.de>, <netdev@vger.kernel.org>
Cc: <davem@davemloft.net>, <kuba@kernel.org>,
	<linux-can@vger.kernel.org>, <kernel@pengutronix.de>,
	Antonios Salios <antonios@mwa.re>,
	Vincent Mailhol <mailhol.vincent@wanadoo.fr>,
	Markus Schneider-Pargmann <msp@baylibre.com>
Subject: Re: [PATCH net 1/6] can: m_can: m_can_class_allocate_dev(): initialize spin lock on device probe
Date: Tue, 6 May 2025 11:25:35 -0700	[thread overview]
Message-ID: <538c7191-dcaf-481c-8f33-03fd048bc99c@intel.com> (raw)
In-Reply-To: <20250506135939.652543-2-mkl@pengutronix.de>



On 5/6/2025 6:56 AM, Marc Kleine-Budde wrote:
> From: Antonios Salios <antonios@mwa.re>
> 
> The spin lock tx_handling_spinlock in struct m_can_classdev is not
> being initialized. This leads the following spinlock bad magic
> complaint from the kernel, eg. when trying to send CAN frames with
> cansend from can-utils:
> 
> | BUG: spinlock bad magic on CPU#0, cansend/95
> |  lock: 0xff60000002ec1010, .magic: 00000000, .owner: <none>/-1, .owner_cpu: 0
> | CPU: 0 UID: 0 PID: 95 Comm: cansend Not tainted 6.15.0-rc3-00032-ga79be02bba5c #5 NONE
> | Hardware name: MachineWare SIM-V (DT)
> | Call Trace:
> | [<ffffffff800133e0>] dump_backtrace+0x1c/0x24
> | [<ffffffff800022f2>] show_stack+0x28/0x34
> | [<ffffffff8000de3e>] dump_stack_lvl+0x4a/0x68
> | [<ffffffff8000de70>] dump_stack+0x14/0x1c
> | [<ffffffff80003134>] spin_dump+0x62/0x6e
> | [<ffffffff800883ba>] do_raw_spin_lock+0xd0/0x142
> | [<ffffffff807a6fcc>] _raw_spin_lock_irqsave+0x20/0x2c
> | [<ffffffff80536dba>] m_can_start_xmit+0x90/0x34a
> | [<ffffffff806148b0>] dev_hard_start_xmit+0xa6/0xee
> | [<ffffffff8065b730>] sch_direct_xmit+0x114/0x292
> | [<ffffffff80614e2a>] __dev_queue_xmit+0x3b0/0xaa8
> | [<ffffffff8073b8fa>] can_send+0xc6/0x242
> | [<ffffffff8073d1c0>] raw_sendmsg+0x1a8/0x36c
> | [<ffffffff805ebf06>] sock_write_iter+0x9a/0xee
> | [<ffffffff801d06ea>] vfs_write+0x184/0x3a6
> | [<ffffffff801d0a88>] ksys_write+0xa0/0xc0
> | [<ffffffff801d0abc>] __riscv_sys_write+0x14/0x1c
> | [<ffffffff8079ebf8>] do_trap_ecall_u+0x168/0x212
> | [<ffffffff807a830a>] handle_exception+0x146/0x152
> 
> Initializing the spin lock in m_can_class_allocate_dev solves that
> problem.
> 
> Fixes: 1fa80e23c150 ("can: m_can: Introduce a tx_fifo_in_flight counter")
> Signed-off-by: Antonios Salios <antonios@mwa.re>
> Reviewed-by: Vincent Mailhol <mailhol.vincent@wanadoo.fr>
> Link: https://patch.msgid.link/20250425111744.37604-2-antonios@mwa.re
> Reviewed-by: Markus Schneider-Pargmann <msp@baylibre.com>
> Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
> ---

Reviewed-by: Jacob Keller <jacob.e.keller@intel.com>

  reply	other threads:[~2025-05-06 18:25 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-05-06 13:56 [PATCH net 0/6] pull-request: can 2025-05-06 Marc Kleine-Budde
2025-05-06 13:56 ` [PATCH net 1/6] can: m_can: m_can_class_allocate_dev(): initialize spin lock on device probe Marc Kleine-Budde
2025-05-06 18:25   ` Jacob Keller [this message]
2025-05-07  2:10   ` patchwork-bot+netdevbpf
2025-05-06 13:56 ` [PATCH net 2/6] can: mcp251xfd: fix TDC setting for low data bit rates Marc Kleine-Budde
2025-05-06 18:27   ` Jacob Keller
2025-05-06 13:56 ` [PATCH net 3/6] can: mcp251xfd: mcp251xfd_remove(): fix order of unregistration calls Marc Kleine-Budde
2025-05-06 18:28   ` Jacob Keller
2025-05-06 13:56 ` [PATCH net 4/6] can: rockchip_canfd: rkcanfd_remove(): " Marc Kleine-Budde
2025-05-06 18:29   ` Jacob Keller
2025-05-06 13:56 ` [PATCH net 5/6] can: mcan: m_can_class_unregister(): " Marc Kleine-Budde
2025-05-06 18:29   ` Jacob Keller
2025-05-06 13:56 ` [PATCH net 6/6] can: gw: fix RCU/BH usage in cgw_create_job() Marc Kleine-Budde
2025-05-06 18:31   ` Jacob Keller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=538c7191-dcaf-481c-8f33-03fd048bc99c@intel.com \
    --to=jacob.e.keller@intel.com \
    --cc=antonios@mwa.re \
    --cc=davem@davemloft.net \
    --cc=kernel@pengutronix.de \
    --cc=kuba@kernel.org \
    --cc=linux-can@vger.kernel.org \
    --cc=mailhol.vincent@wanadoo.fr \
    --cc=mkl@pengutronix.de \
    --cc=msp@baylibre.com \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.