Uploaded image for project: 'vpp'
  1. vpp
  2. VPP-1492

Session Unit Test crash on ARM Ubuntu 1804

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: High High
    • 19.01
    • 19.01
    • None
    • None
    • Linux fdio-cavium4 4.15.0-38-generic #41-Ubuntu SMP Wed Oct 10 10:59:31 UTC 2018 aarch64 aarch64 aarch64 GNU/Linux
      NAME="Ubuntu"
      VERSION="18.04.1 LTS (Bionic Beaver)"
      gcc version 7.3.0 (Ubuntu/Linaro 7.3.0-27ubuntu1~18.04)

      Session Unit Tests result in crash:
      ==============================================================================
      Session Unit Tests Case
      ==============================================================================
      02:22:49,744 Child test runner process unresponsive and core-file exists in test temporary directory (last test running was `Session Unit Tests' in `/tmp/vpp-unittest-TestSessionUnitTests-X7zgLf')!
      02:22:49,749 Creating a link to the failed test: /tmp/vpp-failed-unittests/vpp-unittest-TestSessionUnitTests-X7zgLf-FAILED -> vpp-unittest-TestSessionUnitTests-X7zgLf
      02:22:49,750 Core-file exists in test temporary directory: /tmp/vpp-unittest-TestSessionUnitTests-X7zgLf/core!
      02:22:49,786 Copying api_post_mortem.65481 to /tmp/vpp-unittest-TestSessionUnitTests-X7zgLf
      VPP core detected in /tmp/vpp-unittest-TestSessionUnitTests-X7zgLf. Last test running was 'Session Unit Tests' (test_session.TestSessionUnitTests.test_session)

      The problem is with VPP trying to access inaccessible memory:
      (gdb)
      #10 0x0000ffff50726cf0 in stream_session_is_valid (si=0,
      thread_index=210 '\322')
      at /home/jlinkes/vpp/src/vnet/session/session.h:324
      324 s = pool_elt_at_index (session_manager_main.wrk[thread_index].sessions, si);
      (gdb) p session_manager_main.wrk[thread_index].sessions
      $1 = (stream_session_t *) 0x0
      (gdb) p session_manager_main.wrk[thread_index].sessions[0]
      Cannot access memory at address 0x0

      I tried this multiple times and sometimes the address is 0x0 and sometimes it's 0x1313131313131313. It's 100% reproducible.

      This patch introduced this failure: https://gerrit.fd.io/r/#/c/15733/

        1. console_and_gdb_0x0.txt
          27 kB
        2. console_and_gdb.txt
          25 kB
        3. console_and_gdb2.txt
          37 kB
        4. TestSessionUnitTests.tgz
          2 kB
        5. vpp_output.txt
          8 kB

            florin.coras Florin Coras
            juraj.linkes Juraj Linkeš
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated:
              Resolved: