diff options
author | Oliver Hartkopp <socketcan@hartkopp.net> | 2023-01-31 11:56:13 +0100 |
---|---|---|
committer | Marc Kleine-Budde <mkl@pengutronix.de> | 2023-02-02 10:33:26 +0100 |
commit | 3793301cbaa4a62d83e21f685307da7671f812ab (patch) | |
tree | b0837a3a546533c1e6e5cd80812ae82f9e43a5ba /fs/netfs/io.c | |
parent | d0553680f94c49bbe0e39eb50d033ba563b4212d (diff) | |
download | linux-stable-3793301cbaa4a62d83e21f685307da7671f812ab.tar.gz linux-stable-3793301cbaa4a62d83e21f685307da7671f812ab.tar.bz2 linux-stable-3793301cbaa4a62d83e21f685307da7671f812ab.zip |
can: raw: fix CAN FD frame transmissions over CAN XL devices
A CAN XL device is always capable to process CAN FD frames. The former
check when sending CAN FD frames relied on the existence of a CAN FD
device and did not check for a CAN XL device that would be correct
too.
With this patch the CAN FD feature is enabled automatically when CAN
XL is switched on - and CAN FD cannot be switch off while CAN XL is
enabled.
This precondition also leads to a clean up and reduction of checks in
the hot path in raw_rcv() and raw_sendmsg(). Some conditions are
reordered to handle simple checks first.
changes since v1: https://lore.kernel.org/all/20230131091012.50553-1-socketcan@hartkopp.net
- fixed typo: devive -> device
changes since v2: https://lore.kernel.org/all/20230131091824.51026-1-socketcan@hartkopp.net/
- reorder checks in if statements to handle simple checks first
Fixes: 626332696d75 ("can: raw: add CAN XL support")
Signed-off-by: Oliver Hartkopp <socketcan@hartkopp.net>
Link: https://lore.kernel.org/all/20230131105613.55228-1-socketcan@hartkopp.net
Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
Diffstat (limited to 'fs/netfs/io.c')
0 files changed, 0 insertions, 0 deletions