From: Oliver Hartkopp <socketcan@hartkopp.net>
To: "Ira W. Snyder" <iws@ovro.caltech.edu>
Cc: linux-can@vger.kernel.org
Subject: Re: [PATCH 0/3] can: janz-ican3: fix support for CAN_RAW_RECV_OWN_MSGS
Date: Mon, 09 Jul 2012 23:05:33 +0200 [thread overview]
Message-ID: <4FFB479D.7070000@hartkopp.net> (raw)
In-Reply-To: <1341863790-5645-1-git-send-email-iws@ovro.caltech.edu>
Hello Ira,
looks good to me in general ...
Let's wait for other comments though.
Does it work without problems?
On 09.07.2012 21:56, Ira W. Snyder wrote:
> From: "Ira W. Snyder" <iws@ovro.caltech.edu>
>
> This is another different approach to fixing the Janz ICAN3 support for
> CAN_RAW_RECV_OWN_MSGS.
>
> The can_put_echo_skb() function is changed to always keep all packets
> until can_get_echo_skb() is called. Previously, it would drop packets if
> they were not needed to be looped back. This makes it possible for the
> new function can_cmp_echo_skb() to work with hardware-assisted loopback
> support on the Janz ICAN3, which does not have TX-complete interrupts of
> any kind.
>
> Since we are now storing packets even in the non-loopback case, there is
> some extra memory overhead, to store the extra packets between the calls
> to can_put_echo_skb() and can_get_echo_skb().
>
> After this patch series is applied, the SocketCAN tst-rcv-own-msgs test
> passes.
>
> Performance is rougly 15% less than using the previously posted patch:
> [PATCH ALTERNATE VERSION 1/1] can: janz-ican3: fix support for CAN_RAW_RECV_OWN_MSGS
>
> This performance drop is due to the extra overhead of receiving the echo
> packets from the card itself. This involves one extra interrupt for each
> packet sent, and the associated overhead of running ican3_napi() for
> each packet sent.
>
If it works without problems you might try to use 2 or 3 echo_skbs for testing
to ensure the Janz card gets lined with outgoing traffic without waiting for
each single sent frame.
I assume this would make the implementation slightly complexer but may solve
the performance drop on the wire.
> Ira W. Snyder (3):
> can: make the echo stack keep packet information longer
> can: add can_cmp_echo_skb() for echo skb comparison
> can: janz-ican3: fix support for CAN_RAW_RECV_OWN_MSGS
>
> drivers/net/can/dev.c | 75 ++++++++++++++++++++++++++++++-----------
> drivers/net/can/janz-ican3.c | 56 +++++++++++++++++--------------
> include/linux/can/dev.h | 2 +
> 3 files changed, 87 insertions(+), 46 deletions(-)
>
next prev parent reply other threads:[~2012-07-09 21:05 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-09 19:56 [PATCH 0/3] can: janz-ican3: fix support for CAN_RAW_RECV_OWN_MSGS Ira W. Snyder
2012-07-09 19:56 ` [PATCH 1/3] can: make the echo stack keep packet information longer Ira W. Snyder
2012-07-09 21:09 ` Oliver Hartkopp
2012-07-09 19:56 ` [PATCH 2/3] can: add can_cmp_echo_skb() for echo skb comparison Ira W. Snyder
2012-07-09 19:56 ` [PATCH 3/3] can: janz-ican3: fix support for CAN_RAW_RECV_OWN_MSGS Ira W. Snyder
2012-07-09 20:57 ` Oliver Hartkopp
2012-07-09 21:16 ` Ira W. Snyder
2012-07-10 6:40 ` Wolfgang Grandegger
2012-07-09 21:05 ` Oliver Hartkopp [this message]
2012-07-09 21:29 ` [PATCH 0/3] " Ira W. Snyder
2012-07-10 6:09 ` Wolfgang Grandegger
2012-07-10 6:59 ` Wolfgang Grandegger
2012-07-10 15:22 ` Ira W. Snyder
2012-07-10 19:19 ` Oliver Hartkopp
2012-07-10 20:34 ` Wolfgang Grandegger
-- strict thread matches above, loose matches on Subject: below --
2012-07-12 16:15 Ira W. Snyder
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=4FFB479D.7070000@hartkopp.net \
--to=socketcan@hartkopp.net \
--cc=iws@ovro.caltech.edu \
--cc=linux-can@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).