Re: [PATCH v6] can, tty: can327 CAN/ldisc driver for ELM327 based OBD-II adapters

From: Vincent Mailhol
Date: Fri May 13 2022 - 08:15:09 EST


On Fri 13 May 2022 at 20:52, Marc Kleine-Budde <mkl@xxxxxxxxxxxxxx> wrote:
> On 13.05.2022 11:38:31, Vincent Mailhol wrote:
> > > +
> > > + /* We shouldn't get here after a hardware fault:
> > > + * can_bus_off() calls netif_carrier_off()
> > > + */
> > > + WARN_ON_ONCE(elm->uart_side_failure);
> > > +
> > > + if (!elm->tty ||
> > > + elm->uart_side_failure ||
> > > + elm->can.ctrlmode & CAN_CTRLMODE_LISTENONLY) {
> >
> > Can the xmit function get called when CAN_CTRLMODE_LISTENONLY is on?
>
> I think yes. You can skip the whole CAN stack by injecting CAN frames in
> the kernel via the packet socket. Maybe we should add a check to
> can_dropped_invalid_skb().

Ack. Most of the drivers do not check for it (my doesn't). So better
to put it in can_dropped_invalid_skb().
I can do the patch for this.

And also noted for your previous comment on lockdep_assert_held().
@Max: please ignore this particular remark.