<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">Hi Adam,<br>
      <br>
      I have no good ideas on the problem with LLDP packets. I've tried
      various things in attempt to repeat the problem without any luck.
      Since these packet come from Peer/Tester (based on source MAC
      information), I think it would make sense to check ethtool priv
      flags while tests run running to see FW LLDP status. May be it is
      enabled and testing do not notice it (theoretically configuration
      is synced and checked to match after each test, so it should not
      be a problem). I think it would be useful to double-check on all
      interfaces of the NIC.<br>
      <br>
      Do you have any progress with run on ARM DUTs? Does it work?<br>
      <br>
      Please, let me know if you need any help and if something is
      blocking it to be moved forward and used on regular basis.<br>
      <br>
      Andrew. <br>
      <br>
      On 11/20/23 20:18, Andrew Rybchenko wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:276e8fb3-b185-4434-aca5-4629c5ff8ad1@oktetlabs.ru">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <div class="moz-cite-prefix">Hi Adam,<br>
        <br>
        On 11/16/23 23:03, Adam Hassick wrote:<br>
      </div>
      <blockquote type="cite"
cite="mid:CAC-YWqjqOoRc51ksTGh3+yYHGYfBQWSmrs4E-ES4etDVKS3jyg@mail.gmail.com">
        <meta http-equiv="content-type"
          content="text/html; charset=UTF-8">
        <div dir="ltr">
          <div>Hi Andrew,<br>
            <br>
          </div>
          <blockquote class="gmail_quote"
style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">If
            you use copy of dpdk-ethdev-ts has
            398e272495143884274f5a53c6fe0cc16df41052, you don't need to
            pass --trc-tag=<span>pci-8086-1572 any more since
              corresponding changeset updates expectations to have the
              same for </span><span>pci-8086-1583.</span></blockquote>
          <div><br>
          </div>
          <div>I'll try this for the next run.<br>
            <br>
            <blockquote class="gmail_quote"
style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Sorry,
              but I've failed to find what's wrong there.</blockquote>
            <div><br>
            </div>
            <div>That if statement works if using the traditional
              single-bracket conditional, or it needs to be rewritten as
              "[[ -z "${test_log}" ]] || [[ ! -r "${test_log}" ]]". The
              latter is the change I made, but both work.<br>
            </div>
          </div>
        </div>
      </blockquote>
      <br>
      Thanks a lot. Hopefully fixed.<br>
      <br>
      <blockquote type="cite"
cite="mid:CAC-YWqjqOoRc51ksTGh3+yYHGYfBQWSmrs4E-ES4etDVKS3jyg@mail.gmail.com">
        <div dir="ltr">
          <div>
            <div><br>
              <blockquote class="gmail_quote"
style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">As
                far as I can see LLDP packets spoil testing results:<br>
                <a
href="https://ts-factory.io/bublik/v2/log/362398?focusId=362760&mode=treeAndinfoAndlog&experimental=true&lineNumber=1_63"
                  target="_blank" moz-do-not-send="true">https://ts-factory.io/bublik/v2/log/362398?focusId=362760&mode=treeAndinfoAndlog&experimental=true&lineNumber=1_63</a><br>
                <br>
                As far as I can see main prologue disables FW LLDP on
                Tester<br>
                <a
href="https://ts-factory.io/bublik/v2/log/362398?focusId=362400&mode=treeAndinfoAndlog&experimental=true&lineNumber=1_80"
                  target="_blank" moz-do-not-send="true">https://ts-factory.io/bublik/v2/log/362398?focusId=362400&mode=treeAndinfoAndlog&experimental=true&lineNumber=1_80</a><br>
                but I guess it could be still enabled on DUT side and
                DPDK do not provide means to disable it as far as I
                know. I vaguely remember that Intel provides FW
                configuration tools which can do it.<br>
                It is interesting since DPDK gets unexpected LLDP
                packets but may be packets sent by FW go via loopback
                and visible to PF as well.<br>
                Other possible source of LLDP packet is a switch if NICs
                are connected via switch. If so, LLDP should be disabled
                on corresponding switch ports.<br>
                <br>
                As far as I can see fixing the problem should make
                results much closer. However, I already see some
                differences in behaviour which should be simply fixed in
                TRC. For example, X710 gets 9 packets less than
                configuration number of Rx descriptors, but XL710 gets
                10 packets less.</blockquote>
              <div><br>
              </div>
              <div>I have the "disable-fw-lldp" private flag set on both
                of the XL710 ports on the DUT machine. Very strange how
                there are still LLDP packets appearing in there.<br>
              </div>
            </div>
          </div>
        </div>
      </blockquote>
      <br>
      Me too. Corresponding packet has source MAC from Peer/Tester
      machine NIC.<br>
      It is really strange since prologue disabled LLDP there as well.
      I'll try to play with it locally more, but have no good ideas in
      fact.<br>
      <br>
      <blockquote type="cite"
cite="mid:CAC-YWqjqOoRc51ksTGh3+yYHGYfBQWSmrs4E-ES4etDVKS3jyg@mail.gmail.com">
        <div dir="ltr">
          <div>
            <div>
              <div>These systems are not connected to any switch, so
                maybe a service on the DUT itself is sending them. I'm
                not sure how that could be happening though, because I
                don't have the LLDP daemon installed on either system.<br>
                <br>
                <blockquote class="gmail_quote"
style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Also
                  I see that performance tests are not run because of
                  failed prologue:<br>
                  <a
href="https://ts-factory.io/bublik/v2/log/362398?focusId=369564&mode=treeAndinfoAndlog&experimental=true"
                    target="_blank" moz-do-not-send="true">https://ts-factory.io/bublik/v2/log/362398?focusId=369564&mode=treeAndinfoAndlog&experimental=true</a><br>
                  I'll investigate it, but I guess the source of
                  difference is that we always run tests on single
                  interface. Just add -p0 (--cfg=<span>iol-dts-xl710-p0</span>)
                  to your configuration name. You don't need to change
                  ts-rigs for it since the suffix is handled by generic
                  code. It simply comments the second instance and
                  forces take the first interface only into account.
                  Initially it was introduced to run independent tests
                  on different ports to be able to share configuration,
                  but I guess right now it has limitations for some
                  packages like representors which require entire NIC.</blockquote>
                <div><br>
                </div>
                <div>I can try that and will see if it works. <br>
                </div>
              </div>
            </div>
          </div>
        </div>
      </blockquote>
      <br>
      This problem is fixed in fresh TE and dpdk-ethdev-ts published on
      GitHub.<br>
      <br>
      Regards,<br>
      Andrew.<br>
      <br>
      <blockquote type="cite"
cite="mid:CAC-YWqjqOoRc51ksTGh3+yYHGYfBQWSmrs4E-ES4etDVKS3jyg@mail.gmail.com">
        <div dir="ltr">
          <div>
            <div>
              <div>
                <div><br>
                </div>
                <div>Thanks,<br>
                </div>
                <div>Adam<br>
                </div>
              </div>
            </div>
          </div>
        </div>
        <br>
        <div class="gmail_quote">
          <div dir="ltr" class="gmail_attr">On Wed, Nov 8, 2023 at
            2:20 AM Andrew Rybchenko <<a
              href="mailto:andrew.rybchenko@oktetlabs.ru"
              target="_blank" moz-do-not-send="true"
              class="moz-txt-link-freetext">andrew.rybchenko@oktetlabs.ru</a>>
            wrote:<br>
          </div>
          <blockquote class="gmail_quote"
style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
            <div>
              <div>Hi Adam,<br>
                <br>
                On 11/7/23 23:30, Adam Hassick wrote:<br>
              </div>
              <blockquote type="cite">
                <div dir="ltr">
                  <div>
                    <div>
                      <div>
                        <div>
                          <div>Hi Andrew,<br>
                            <br>
                          </div>
                          The runner machine was missing a dependency
                          for one of the scripts, "pixz". After
                          installing that, it appears to have worked. I
                          can see the results listed on the ts-factory
                          Bublik instance.<br>
                        </div>
                      </div>
                    </div>
                  </div>
                </div>
              </blockquote>
              <br>
              If you use copy of dpdk-ethdev-ts has
              398e272495143884274f5a53c6fe0cc16df41052, you don't need
              to pass --trc-tag=<span>pci-8086-1572 any more since
                corresponding changeset updates expectations to have the
                same for </span><span>pci-8086-1583.</span><br>
              <br>
              <blockquote type="cite">
                <div dir="ltr">
                  <div>
                    <div>
                      <div>In the latest revision of ts-rigs, there
                        appears to be a syntax error at line 42 within
                        the script located at
                        "ts-rigs/scripts/publish_logs/prj/ts-factory/publish",
                        within the if condition. I fixed it locally to
                        get it to run.<br>
                      </div>
                    </div>
                  </div>
                </div>
              </blockquote>
              <br>
              Sorry, but I've failed to find what's wrong there.<br>
              <br>
              <blockquote type="cite">
                <div dir="ltr">
                  <div>
                    <div>Taking a quick look at a comparison against
                      your most recent X710 run, it looks like we're NOK
                      on around ~400 more test cases. By percentage of
                      tests, we're 1% off, however, it looks like whole
                      subsets of the test suite that contain low numbers
                      of tests are failing. I wonder if this is due to
                      differences between the Intel X710 and XL710 or
                      issues in our dev testbed.<br>
                    </div>
                  </div>
                </div>
              </blockquote>
              <br>
              As far as I can see LLDP packets spoil testing results:<br>
              <a
href="https://ts-factory.io/bublik/v2/log/362398?focusId=362760&mode=treeAndinfoAndlog&experimental=true&lineNumber=1_63"
                target="_blank" moz-do-not-send="true">https://ts-factory.io/bublik/v2/log/362398?focusId=362760&mode=treeAndinfoAndlog&experimental=true&lineNumber=1_63</a><br>
              <br>
              As far as I can see main prologue disables FW LLDP on
              Tester<br>
              <a
href="https://ts-factory.io/bublik/v2/log/362398?focusId=362400&mode=treeAndinfoAndlog&experimental=true&lineNumber=1_80"
                target="_blank" moz-do-not-send="true">https://ts-factory.io/bublik/v2/log/362398?focusId=362400&mode=treeAndinfoAndlog&experimental=true&lineNumber=1_80</a><br>
              but I guess it could be still enabled on DUT side and DPDK
              do not provide means to disable it as far as I know. I
              vaguely remember that Intel provides FW configuration
              tools which can do it.<br>
              It is interesting since DPDK gets unexpected LLDP packets
              but may be packets sent by FW go via loopback and visible
              to PF as well.<br>
              Other possible source of LLDP packet is a switch if NICs
              are connected via switch. If so, LLDP should be disabled
              on corresponding switch ports.<br>
              <br>
              As far as I can see fixing the problem should make results
              much closer. However, I already see some differences in
              behaviour which should be simply fixed in TRC. For
              example, X710 gets 9 packets less than configuration
              number of Rx descriptors, but XL710 gets 10 packets less.<br>
              <br>
              Also I see that performance tests are not run because of
              failed prologue:<br>
              <a
href="https://ts-factory.io/bublik/v2/log/362398?focusId=369564&mode=treeAndinfoAndlog&experimental=true"
                target="_blank" moz-do-not-send="true">https://ts-factory.io/bublik/v2/log/362398?focusId=369564&mode=treeAndinfoAndlog&experimental=true</a><br>
              I'll investigate it, but I guess the source of difference
              is that we always run tests on single interface. Just add
              -p0 (--cfg=<span>iol-dts-xl710-p0</span>) to your
              configuration name. You don't need to change ts-rigs for
              it since the suffix is handled by generic code. It simply
              comments the second instance and forces take the first
              interface only into account. Initially it was introduced
              to run independent tests on different ports to be able to
              share configuration, but I guess right now it has
              limitations for some packages like representors which
              require entire NIC.<br>
              <br>
              Regards,<br>
              Andrew.<br>
              <br>
              <blockquote type="cite">
                <div dir="ltr">
                  <div>Thanks,<br>
                  </div>
                  <div>Adam</div>
                </div>
              </blockquote>
              <br>
              (dropped history, to keep mail size small) </div>
          </blockquote>
        </div>
      </blockquote>
      <br>
    </blockquote>
    <br>
  </body>
</html>