<html>
    <head>
      <base href="https://bugs.dpdk.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8" class="bz_new_table">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_UNCONFIRMED "
   title="UNCONFIRMED - igc: hardware timestamp is always zero with RTE_ETH_RX_OFFLOAD_TIMESTAMP"
   href="https://bugs.dpdk.org/show_bug.cgi?id=1602">1602</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>igc: hardware timestamp is always zero with RTE_ETH_RX_OFFLOAD_TIMESTAMP
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>DPDK
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>23.11
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>x86
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>UNCONFIRMED
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>Normal
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>ethdev
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>dev&#64;dpdk.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>rpf&#64;mail.ustc.edu.cn
          </td>
        </tr>

        <tr>
          <th>Target Milestone</th>
          <td>---
          </td>
        </tr></table>
      <p>
        <div class="bz_comment_block">
          <pre class="bz_comment_text">Created <span class=""><a href="attachment.cgi?id=298&amp;action=diff" name="attach_298" title="Patch for rxtx_callbacks example to show hardware timestamp">attachment 298</a> <a href="attachment.cgi?id=298&amp;action=edit" title="Patch for rxtx_callbacks example to show hardware timestamp">[details]</a></span>
Patch for rxtx_callbacks example to show hardware timestamp

I tried to use RTE_ETH_RX_OFFLOAD_TIMESTAMP with timestamp dynfield to get a
hardware timestamp on every packet. But it is always zero despite 
RTE_ETH_RX_OFFLOAD_TIMESTAMP is supported for igc and enabled.

I encountered this problem in my own project. But this problem could be
reproduced with PktGen-DPDK and the rxtx_callbacks example.

My setup contains two ports (02:00.0 and 03:00.0) connected together on the
same machine:

I am generating traffic with pktgen-dpdk on port 02:00.0:

sudo env LD_LIBRARY_PATH=/opt/dpdk24/lib ./usr/local/bin/pktgen  -l 0,1 -n 4 -b
03:00.0 --file-prefix pktgen -- -P -m &quot;[1].0&quot; -s 0:traces/small_flows.pcap 

And receiving them on port 03:00.0:

sudo ./examples/dpdk-rxtx_callbacks -c 2 -n 3 -b 02:00.0  -- -t

The rxtx_callbacks examples is modified with the attached patch to show hw ts
in rx callbacks.

But for all the timestamps I get are zeros.

I am using uio_pci_generic with Intel Corporation Ethernet Controller I226-V
(rev 04).

I am aware that there's some problem with hardware timestamp for igc and has
applied this patch to my dpdk installation:
<a href="https://lore.kernel.org/dpdk-dev/00f78eba-8eff-4c67-8ecf-3bef5f25b9f6&#64;allegro-packets.com/#t">https://lore.kernel.org/dpdk-dev/00f78eba-8eff-4c67-8ecf-3bef5f25b9f6&#64;allegro-packets.com/#t</a>

Please kindly ask if more information is needed to debug it. Thanks!
          </pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the assignee for the bug.</li>
      </ul>
      <div itemscope itemtype="http://schema.org/EmailMessage">
        <div itemprop="action" itemscope itemtype="http://schema.org/ViewAction">
          
          <link itemprop="url" href="https://bugs.dpdk.org/show_bug.cgi?id=1602">
          <meta itemprop="name" content="View bug">
        </div>
        <meta itemprop="description" content="Bugzilla bug update notification">
      </div>
    </body>
</html>