From: Martin Habets <habetsm.xilinx@gmail.com>
To: "Íñigo Huguet" <ihuguet@redhat.com>
Cc: ecree.xilinx@gmail.com, davem@davemloft.net, edumazet@google.com,
kuba@kernel.org, pabeni@redhat.com, richardcochran@gmail.com,
netdev@vger.kernel.org, Yalin Li <yalli@redhat.com>
Subject: Re: [PATCH net-next v4 0/4] sfc: support unicast PTP
Date: Wed, 22 Feb 2023 09:24:11 +0000 [thread overview]
Message-ID: <Y/XfO8xhwxn30NMM@gmail.com> (raw)
In-Reply-To: <20230221125217.20775-1-ihuguet@redhat.com>
On Tue, Feb 21, 2023 at 01:52:13PM +0100, Íñigo Huguet wrote:
> Unicast PTP was not working with sfc NICs.
>
> The reason was that these NICs don't timestamp all incoming packets,
> but instead they only timestamp packets of the queues that are selected
> for that. Currently, only one RX queue is configured for timestamp: the
> RX queue of the PTP channel. The packets that are put in the PTP RX
> queue are selected according to firmware filters configured from the
> driver.
>
> Multicast PTP was already working because the needed filters are known
> in advance, so they're inserted when PTP is enabled. This patches
> add the ability to dynamically add filters for unicast addresses,
> extracted from the TX PTP-event packets.
>
> Since we don't know in advance how many filters we'll need, some info
> about the filters need to be saved. This will allow to check if a filter
> already exists or if a filter is too old and should be removed.
>
> Note that the previous point is unnecessary for multicast filters, but
> I've opted to change how they're handled to match the new unicast's
> filters to avoid having duplicate insert/remove_filters functions,
> once for each type of filter.
>
> Tested: With ptp4l, all combinations of IPv4/IPv6, master/slave and
> unicast/multicast
>
> Reported-by: Yalin Li <yalli@redhat.com>
> Signed-off-by: Íñigo Huguet <ihuguet@redhat.com>
When you repost after net-next is open again please add my
Acked-by: Martin Habets <habetsm.xilinx@gmail.com>
Thanks!
>
> v2:
> - fixed missing IS_ERR
> - added doc of missing fields in efx_ptp_rxfilter
> v3:
> - dropped pointless static inline in source file
> - removed the now unused PTP_RXFILTERS_LEN
> - follow reverse xmas tree convention in xmit_skb_mc
> - pass expiry as argument to the insert_filter functions and keep returning an
> integer error code from them, and not pointers, as suggested by Martin
> - moved the unicast filters expiration check to the end of the worker function
> to avoid increasing TX latency, as suggested by Martin
> - added check to avoid inserting unicast filters when doing multicast PTP
> v4:
> - fixed filter leak, catched by Edward
>
> Íñigo Huguet (4):
> sfc: store PTP filters in a list
> sfc: allow insertion of filters for unicast PTP
> sfc: support unicast PTP
> sfc: remove expired unicast PTP filters
>
> drivers/net/ethernet/sfc/ptp.c | 272 +++++++++++++++++++++++++++------
> 1 file changed, 223 insertions(+), 49 deletions(-)
>
> --
> 2.34.3
prev parent reply other threads:[~2023-02-22 9:24 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-21 12:52 [PATCH net-next v4 0/4] sfc: support unicast PTP Íñigo Huguet
2023-02-21 12:52 ` [PATCH net-next v4 1/4] sfc: store PTP filters in a list Íñigo Huguet
2023-02-21 12:52 ` [PATCH net-next v4 2/4] sfc: allow insertion of filters for unicast PTP Íñigo Huguet
2023-02-21 12:52 ` [PATCH net-next v4 3/4] sfc: support " Íñigo Huguet
2023-02-22 14:20 ` Vadim Fedorenko
2023-02-22 14:41 ` Íñigo Huguet
2023-02-22 16:52 ` Richard Cochran
2023-02-23 13:08 ` Íñigo Huguet
2023-02-24 9:01 ` Martin Habets
2023-02-24 15:43 ` Richard Cochran
2023-02-24 15:58 ` Richard Cochran
2023-02-21 12:52 ` [PATCH net-next v4 4/4] sfc: remove expired unicast PTP filters Íñigo Huguet
2023-02-21 16:25 ` [PATCH net-next v4 0/4] sfc: support unicast PTP Jakub Kicinski
2023-02-22 9:24 ` Martin Habets [this message]
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=Y/XfO8xhwxn30NMM@gmail.com \
--to=habetsm.xilinx@gmail.com \
--cc=davem@davemloft.net \
--cc=ecree.xilinx@gmail.com \
--cc=edumazet@google.com \
--cc=ihuguet@redhat.com \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=richardcochran@gmail.com \
--cc=yalli@redhat.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.