← Back to team overview

canonical-ubuntu-qa team mailing list archive

[Bug 2110303] Re: plucky ubuntu_ltp_syscalls:setsockopt10 failure due to removed tls socket disconnect feature

 

Seeing the same issue in jammy because of:

commit a5d406787c899f1ce72855213d63838bff9eb3b5
Author: Jakub Kicinski <kuba@xxxxxxxxxx>
Date:   Fri Apr 4 11:03:33 2025 -0700

    net: tls: explicitly disallow disconnect
    
    BugLink: https://bugs.launchpad.net/bugs/2111606
    
    [ Upstream commit 5071a1e606b30c0c11278d3c6620cd6a24724cf6 ]
    
    syzbot discovered that it can disconnect a TLS socket and then
    run into all sort of unexpected corner cases. I have a vague
    recollection of Eric pointing this out to us a long time ago.
    Supporting disconnect is really hard, for one thing if offload
    is enabled we'd need to wait for all packets to be _acked_.
    Disconnect is not commonly used, disallow it.
    
    The immediate problem syzbot run into is the warning in the strp,
    but that's just the easiest bug to trigger:
    
      WARNING: CPU: 0 PID: 5834 at net/tls/tls_strp.c:486 tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486
      RIP: 0010:tls_strp_msg_load+0x72e/0xa80 net/tls/tls_strp.c:486
      Call Trace:
       <TASK>
       tls_rx_rec_wait+0x280/0xa60 net/tls/tls_sw.c:1363
       tls_sw_recvmsg+0x85c/0x1c30 net/tls/tls_sw.c:2043
       inet6_recvmsg+0x2c9/0x730 net/ipv6/af_inet6.c:678
       sock_recvmsg_nosec net/socket.c:1023 [inline]
       sock_recvmsg+0x109/0x280 net/socket.c:1045
       __sys_recvfrom+0x202/0x380 net/socket.c:2237

-- 
You received this bug notification because you are a member of Canonical
Platform QA Team, which is subscribed to ubuntu-kernel-tests.
https://bugs.launchpad.net/bugs/2110303

Title:
  plucky ubuntu_ltp_syscalls:setsockopt10 failure due to removed tls
  socket disconnect feature

Status in ubuntu-kernel-tests:
  New

Bug description:
  Following test suites fail for plucky 6.14.0-17.17 due to upstream removing disconnect feature for tls sockets:
   - ubuntu_ltp_syscalls:setsockopt10
   - ubuntu_ltp_cve:cve-2023-0461

  
  This commit is what causes the failure:
  commit ff3cd959c368566ebc08d0602c347b6bd02d036d
  net: tls: explicitly disallow disconnect

  [ Upstream commit 5071a1e606b30c0c11278d3c6620cd6a24724cf6 ]

  syzbot discovered that it can disconnect a TLS socket and then
  run into all sort of unexpected corner cases. I have a vague
  recollection of Eric pointing this out to us a long time ago.
  Supporting disconnect is really hard, for one thing if offload
  is enabled we'd need to wait for all packets to be _acked_.
  Disconnect is not commonly used, disallow it.

  So, the following failure is not a regression:

  INFO | START ubuntu_ltp_syscalls.setsockopt10 ubuntu_ltp_syscalls.setsockopt10 timeout=900 timestamp=1746144508 localtime=May 02 00:08:28
  DEBUG| Persistent state client._record_indent now set to 2
  DEBUG| Persistent state client.unexpected_reboot now set to ('ubuntu_ltp_syscalls.setsockopt10', 'ubuntu_ltp_syscalls.setsockopt10')
  DEBUG| Waiting for pid 177815 for 900 seconds
  WARNI| System python is too old, crash handling disabled
  ERROR| [stderr] -------------------------------------------
  ERROR| [stderr] INFO: runltp script is deprecated, try kirk
  ERROR| [stderr] https://github.com/linux-test-project/kirk
  ERROR| [stderr] -------------------------------------------
  DEBUG| [stdout] Checking for required user/group ids
  DEBUG| [stdout]
  DEBUG| [stdout] 'root' user id and group found.
  DEBUG| [stdout] 'nobody' user id and group found.
  DEBUG| [stdout] 'bin' user id and group found.
  DEBUG| [stdout] 'daemon' user id and group found.
  DEBUG| [stdout] Users group found.
  DEBUG| [stdout] Sys group found.
  DEBUG| [stdout] Required users/groups exist.
  DEBUG| [stdout] no big block device was specified on commandline.
  DEBUG| [stdout] Tests which require a big block device are disabled.
  DEBUG| [stdout] You can specify it with option -z
  DEBUG| [stdout] INFO: Test start time: Fri May 2 00:08:28 UTC 2025
  DEBUG| [stdout] COMMAND: /opt/ltp/bin/ltp-pan -q -e -S -a 177822 -n 177822 -f /tmp/ltp-gEEcqvZS9t/alltests -l /dev/null -C /dev/null -T /dev/null
  DEBUG| [stdout] LOG File: /dev/null
  DEBUG| [stdout] FAILED COMMAND File: /dev/null
  DEBUG| [stdout] TCONF COMMAND File: /dev/null
  DEBUG| [stdout] Running tests.......
  DEBUG| [stdout] tst_kconfig.c:88: TINFO: Parsing kernel config '/lib/modules/6.14.0-17-generic/build/.config'
  DEBUG| [stdout] tst_tmpdir.c:316: TINFO: Using /tmp/ltp-gEEcqvZS9t/LTP_setNokHC3 as tmpdir (tmpfs filesystem)
  DEBUG| [stdout] tst_test.c:1900: TINFO: LTP version: 20240930
  DEBUG| [stdout] tst_test.c:1904: TINFO: Tested kernel: 6.14.0-17-generic #17-Ubuntu SMP PREEMPT_DYNAMIC Thu May 1 11:39:26 UTC 2025 x86_64
  DEBUG| [stdout] tst_kconfig.c:88: TINFO: Parsing kernel config '/lib/modules/6.14.0-17-generic/build/.config'
  DEBUG| [stdout] tst_kconfig.c:667: TINFO: CONFIG_LATENCYTOP kernel option detected which might slow the execution
  DEBUG| [stdout] tst_test.c:1722: TINFO: Overall timeout per run is 0h 02m 00s
  DEBUG| [stdout] setsockopt10.c:100: TINFO: child: Listen for tcp1 connection
  DEBUG| [stdout] setsockopt10.c:137: TINFO: parent: Connect for tcp0 connection
  DEBUG| [stdout] setsockopt10.c:149: TINFO: parent: Disconnect by setting unspec address
  DEBUG| [stdout] setsockopt10.c:150: TBROK: connect(3, sock_ntop: unknown AF_xxx: 0, len: 16, 16) failed: EOPNOTSUPP (95)
  DEBUG| [stdout] tst_test.c:1785: TINFO: Killed the leftover descendant processes
  DEBUG| [stdout]
  DEBUG| [stdout] HINT: You _MAY_ be missing kernel fixes:
  DEBUG| [stdout]
  DEBUG| [stdout] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=2c02d41d71f90
  DEBUG| [stdout]
  DEBUG| [stdout] HINT: You _MAY_ be vulnerable to CVE(s):
  DEBUG| [stdout]
  DEBUG| [stdout] https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-0461
  DEBUG| [stdout]
  DEBUG| [stdout] Summary:
  DEBUG| [stdout] passed 0
  DEBUG| [stdout] failed 0
  DEBUG| [stdout] broken 1
  DEBUG| [stdout] skipped 0
  DEBUG| [stdout] warnings 0
  DEBUG| [stdout] INFO: ltp-pan reported some tests FAIL
  DEBUG| [stdout] LTP Version: 20240930
  DEBUG| [stdout] INFO: Test end time: Fri May 2 00:08:28 UTC 2025
  ERROR| [stderr] -------------------------------------------
  ERROR| [stderr] INFO: runltp script is deprecated, try kirk
  ERROR| [stderr] https://github.com/linux-test-project/kirk

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu-kernel-tests/+bug/2110303/+subscriptions



References