From: Oliver Hartkopp <socketcan@hartkopp.net>
To: Eric Dumazet <eric.dumazet@gmail.com>,
Dong Aisheng <b29396@freescale.com>
Cc: linux-can@vger.kernel.org, mkl@pengutronix.de, wg@grandegger.com,
varkabhadram@gmail.com, netdev@vger.kernel.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH V3 1/3] can: add can_is_canfd_skb() API
Date: Wed, 05 Nov 2014 18:33:09 +0100 [thread overview]
Message-ID: <545A5F55.7050307@hartkopp.net> (raw)
In-Reply-To: <1415204533.13896.7.camel@edumazet-glaptop2.roam.corp.google.com>
On 05.11.2014 17:22, Eric Dumazet wrote:
> On Wed, 2014-11-05 at 21:16 +0800, Dong Aisheng wrote:
>
> This looks a bit strange to assume that skb->len == magical_value is CAN
> FD. A comment would be nice.
>
Yes. Due to exactly two types of struct can(fd)_frame which can be contained
in a skb the skbs are distinguished by the length which can be either CAN_MTU
or CANFD_MTU.
>> +static inline int can_is_canfd_skb(struct sk_buff *skb)
>
> static inline bool can_is_canfd_skb(const struct sk_buff *skb)
>
ok.
>> +{
What about:
/* the CAN specific type of skb is identified by its data length */
>> + return skb->len == CANFD_MTU;
>> +}
>> +
>> /* get data length from can_dlc with sanitized can_dlc */
>> u8 can_dlc2len(u8 can_dlc);
Regards,
Oliver
WARNING: multiple messages have this Message-ID (diff)
From: socketcan@hartkopp.net (Oliver Hartkopp)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH V3 1/3] can: add can_is_canfd_skb() API
Date: Wed, 05 Nov 2014 18:33:09 +0100 [thread overview]
Message-ID: <545A5F55.7050307@hartkopp.net> (raw)
In-Reply-To: <1415204533.13896.7.camel@edumazet-glaptop2.roam.corp.google.com>
On 05.11.2014 17:22, Eric Dumazet wrote:
> On Wed, 2014-11-05 at 21:16 +0800, Dong Aisheng wrote:
>
> This looks a bit strange to assume that skb->len == magical_value is CAN
> FD. A comment would be nice.
>
Yes. Due to exactly two types of struct can(fd)_frame which can be contained
in a skb the skbs are distinguished by the length which can be either CAN_MTU
or CANFD_MTU.
>> +static inline int can_is_canfd_skb(struct sk_buff *skb)
>
> static inline bool can_is_canfd_skb(const struct sk_buff *skb)
>
ok.
>> +{
What about:
/* the CAN specific type of skb is identified by its data length */
>> + return skb->len == CANFD_MTU;
>> +}
>> +
>> /* get data length from can_dlc with sanitized can_dlc */
>> u8 can_dlc2len(u8 can_dlc);
Regards,
Oliver
next prev parent reply other threads:[~2014-11-05 17:33 UTC|newest]
Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-05 13:16 [PATCH V3 1/3] can: add can_is_canfd_skb() API Dong Aisheng
2014-11-05 13:16 ` Dong Aisheng
2014-11-05 13:16 ` Dong Aisheng
2014-11-05 13:16 ` [PATCH V3 2/3] can: m_can: update to support CAN FD features Dong Aisheng
2014-11-05 13:16 ` Dong Aisheng
2014-11-05 13:16 ` Dong Aisheng
2014-11-05 14:31 ` Marc Kleine-Budde
2014-11-05 14:31 ` Marc Kleine-Budde
2014-11-05 14:42 ` Oliver Hartkopp
2014-11-05 14:42 ` Oliver Hartkopp
2014-11-05 13:16 ` [PATCH V3 3/3] can: m_can: workaround for transmit data less than 4 bytes Dong Aisheng
2014-11-05 13:16 ` Dong Aisheng
2014-11-05 13:16 ` Dong Aisheng
2014-11-05 14:29 ` Marc Kleine-Budde
2014-11-05 14:29 ` Marc Kleine-Budde
2014-11-05 18:15 ` M_CAN message RAM initialization AppNote - was: " Oliver Hartkopp
2014-11-05 18:15 ` Oliver Hartkopp
2014-11-06 1:57 ` Dong Aisheng
2014-11-06 1:57 ` Dong Aisheng
2014-11-06 1:57 ` Dong Aisheng
2014-11-06 7:04 ` Oliver Hartkopp
2014-11-06 7:04 ` Oliver Hartkopp
2014-11-06 8:09 ` Dong Aisheng
2014-11-06 8:09 ` Dong Aisheng
2014-11-06 8:09 ` Dong Aisheng
2014-11-06 12:33 ` Oliver Hartkopp
2014-11-06 12:33 ` Oliver Hartkopp
2014-11-06 12:47 ` Marc Kleine-Budde
2014-11-06 12:47 ` Marc Kleine-Budde
2014-11-07 8:40 ` Dong Aisheng
2014-11-07 8:40 ` Dong Aisheng
2014-11-07 8:40 ` Dong Aisheng
[not found] ` <545BA039.7080108@hartkopp.net>
2014-11-07 8:15 ` Dong Aisheng
2015-02-05 19:04 ` new M_CAN IP rev 3.2.x documentation available - was: Re: M_CAN message RAM initialization AppNote Oliver Hartkopp
2014-11-07 8:34 ` M_CAN message RAM initialization AppNote - was: Re: [PATCH V3 3/3] can: m_can: workaround for transmit data less than 4 bytes Dong Aisheng
2014-11-07 8:34 ` Dong Aisheng
2014-11-07 8:34 ` Dong Aisheng
2014-11-06 9:00 ` Marc Kleine-Budde
2014-11-06 9:00 ` Marc Kleine-Budde
2014-11-05 16:22 ` [PATCH V3 1/3] can: add can_is_canfd_skb() API Eric Dumazet
2014-11-05 16:22 ` Eric Dumazet
2014-11-05 17:33 ` Oliver Hartkopp [this message]
2014-11-05 17:33 ` Oliver Hartkopp
2014-11-06 1:52 ` Dong Aisheng
2014-11-06 1:52 ` Dong Aisheng
2014-11-06 1:52 ` Dong Aisheng
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=545A5F55.7050307@hartkopp.net \
--to=socketcan@hartkopp.net \
--cc=b29396@freescale.com \
--cc=eric.dumazet@gmail.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-can@vger.kernel.org \
--cc=mkl@pengutronix.de \
--cc=netdev@vger.kernel.org \
--cc=varkabhadram@gmail.com \
--cc=wg@grandegger.com \
/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.