All of lore.kernel.org
 help / color / mirror / Atom feed
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

  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.