DPDK patches and discussions
 help / color / mirror / Atom feed
From: bugzilla@dpdk.org
To: dev@dpdk.org
Subject: [dpdk-dev] [Bug 647] bnxt: ptpclient example doesn't work and produces internal error message
Date: Thu, 04 Mar 2021 17:38:04 +0000	[thread overview]
Message-ID: <bug-647-3@http.bugs.dpdk.org/> (raw)

https://bugs.dpdk.org/show_bug.cgi?id=647

            Bug ID: 647
           Summary: bnxt: ptpclient example doesn't work and produces
                    internal error message
           Product: DPDK
           Version: 20.11
          Hardware: x86
                OS: FreeBSD
            Status: UNCONFIRMED
          Severity: normal
          Priority: Normal
         Component: ethdev
          Assignee: dev@dpdk.org
          Reporter: brian90013@gmail.com
  Target Milestone: ---

Hello,

I am evaluating the Broadcom P2100G NIC using the bnxt driver. I am currently
using DPDK 20.11. Today I attempted to test the IEEE1588/PTP capability of the
driver using both testpmd and the ptpclient example that ships with DPDK. I
connected the Broadcom card to a different 100G NIC running the ptpd2 server in
Ethernet mode.

First, I tried ptpclient. I see valid Master clocks (from the remote NIC) but
the Slave clock looks like it was never set. It's showing a time around 1000s
and top reports an uptime of 15min (15min = 900s). Also, in each output cycle I
see an error message from bnxt_hwrm_port_ts_query().


Master Clock id: 00:07:43:ff:fe:59:21:a0
T2 - Slave  Clock.  997s 2634438ns
T1 - Master Clock.  1614874570s 183027000ns 
T3 - Slave  Clock.  997s 14579369ns
T4 - Master Clock.  1614874570s 194978000ns 
Delta between master and slave clocks:1614873573180395596ns


Comparison between Linux kernel Time and PTP:
Current PTP Time: Wed Aug 10 20:52:37 2489 819922870 ns
Current SYS Time: Thu Mar  4 11:16:10 2021 195072 ns
Delta between PTP and Linux Kernel time:-3664277886084680101ns
[Ctrl+C to quit]
bnxt_hwrm_port_ts_query(): error 1:0:00000000:0000


I checked the master code branch and applied the one PTP-related commit I saw
(d3376cdc).

I also tried running testpmd in ieee1588 mode. It shows SYNC messages coming in
and bnxt timestamps around 5370s.


dpdk-testpmd -- -i
EAL: Sysctl reports 64 cpus
EAL: Detected 64 lcore(s)
EAL: Detected 1 NUMA nodes
EAL: Multi-process socket /tmp/dpdk/rte/mp_socket
EAL: Selected IOVA mode 'PA'
EAL: Contigmem driver has 4 buffers, each of size 1GB
EAL: Mapped memory segment 0 @ 0x1040000000: physaddr:0x240000000, len
1073741824
EAL: Mapped memory segment 1 @ 0x1080000000: physaddr:0x280000000, len
1073741824
EAL: Mapped memory segment 2 @ 0x10c0000000: physaddr:0x2c0000000, len
1073741824
EAL: Mapped memory segment 3 @ 0x1100000000: physaddr:0x300000000, len
1073741824
EAL: Probe PCI driver: net_bnxt (14e4:1750) device: 0000:48:00.0 (socket 0)
Interactive-mode selected
testpmd: create a new mbuf pool <mb_pool_0>: n=651456, size=2176, socket=0
testpmd: preferred mempool ops selected: ring_mp_mc

Warning! port-topology=paired and odd forward ports number, the last port will
pair with itself.

Configuring Port 0 (socket 0)

Port 0: link state change event
Port 0: BC:97:E1:DA:38:40
Checking link statuses...
Done
testpmd> set fwd ieee1588
Set ieee1588 packet forwarding mode
testpmd> start
ieee1588 packet forwarding - ports=1 - cores=1 - streams=1 - NUMA support
enabled, MP allocation mode: native
Logical Core 1 (socket 0) forwards packets on 1 streams:
  RX P=0/Q=0 (socket 0) -> TX P=0/Q=0 (socket 0) peer=02:00:00:00:00:00

  ieee1588 packet forwarding packets/burst=32
  nb forwarding cores=1 - nb forwarding ports=1
  port 0: RX queue number: 1 Tx queue number: 1
    Rx offloads=0x0 Tx offloads=0x10000
    RX queue: 0
      RX desc=512 - RX free threshold=64
      RX threshold registers: pthresh=0 hthresh=0  wthresh=0
      RX Offloads=0x0
    TX queue: 0
      TX desc=512 - TX free threshold=64
      TX threshold registers: pthresh=0 hthresh=0  wthresh=0
      TX offloads=0x10000 - TX RS bit threshold=0
testpmd> Port 0 IEEE1588 PTP V2 SYNC Message filtered by hardware
Port 0 RX timestamp value 5376 s 953074162 ns
Port 0 TX timestamp value 5376 s 953115795 ns validated after 0 micro-seconds
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0x8 (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0x8 (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0xb (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 IEEE1588 PTP V2 SYNC Message filtered by hardware
Port 0 RX timestamp value 5378 s 60314832 ns
Port 0 TX timestamp value 5378 s 60341959 ns validated after 0 micro-seconds
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0x8 (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 IEEE1588 PTP V2 SYNC Message filtered by hardware
Port 0 RX timestamp value 5378 s 952731069 ns
Port 0 TX timestamp value 5378 s 952761442 ns validated after 0 micro-seconds
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0x8 (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0x8 (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0x8 (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0xb (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 IEEE1588 PTP V2 SYNC Message filtered by hardware
Port 0 RX timestamp value 5380 s 138997133 ns
Port 0 TX timestamp value 5380 s 139026602 ns validated after 0 micro-seconds
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0x8 (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 IEEE1588 PTP V2 SYNC Message filtered by hardware
Port 0 RX timestamp value 5380 s 953180791 ns
Port 0 TX timestamp value 5380 s 953209128 ns validated after 0 micro-seconds
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0x8 (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0x8 (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0x8 (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0xb (expected
0x0 - PTP_SYNC_MESSAGE)
Port 0 IEEE1588 PTP V2 SYNC Message filtered by hardware
Port 0 RX timestamp value 5382 s 57787425 ns
Port 0 TX timestamp value 5382 s 57815073 ns validated after 0 micro-seconds
Port 0 Received PTP V2 Ethernet frame with unexpected message ID 0x8 (expected
0x0 - PTP_SYNC_MESSAGE)


I have used both ptpclient and testpmd successfully with other NICs so I
believe this is an issue with bnxt. Has it been used for PTP traffic or is
there some initialization missing? Thank you for your help.

-- 
You are receiving this mail because:
You are the assignee for the bug.

                 reply	other threads:[~2021-03-04 17:38 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

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=bug-647-3@http.bugs.dpdk.org/ \
    --to=bugzilla@dpdk.org \
    --cc=dev@dpdk.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).