Bug 2189292 - sctp: backports from upstream
Summary: sctp: backports from upstream
Keywords:
Status: VERIFIED
Alias: None
Product: Red Hat Enterprise Linux 9
Classification: Red Hat
Component: kernel
Version: 9.2
Hardware: All
OS: Linux
high
high
Target Milestone: rc
: 9.3
Assignee: Xin Long
QA Contact: ying xu
Jaroslav Klech
URL:
Whiteboard:
: 2212172 (view as bug list)
Depends On:
Blocks: CVE-2023-1074 2212174
TreeView+ depends on / blocked
 
Reported: 2023-04-24 16:41 UTC by Xin Long
Modified: 2023-08-03 16:06 UTC (History)
5 users (show)

Fixed In Version: kernel-5.14.0-316.el9
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Bug
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Gitlab redhat/centos-stream/src/kernel centos-stream-9 merge_requests 2417 0 None opened sctp: backports from upstream 2023-04-24 23:00:12 UTC
Red Hat Issue Tracker RHELPLAN-155569 0 None None None 2023-04-24 16:43:13 UTC

Comment 7 ying xu 2023-05-18 08:34:34 UTC
tested on version:
5.14.0-303.2417_847101554.el9.x86_64

1.test sctp_diag
# cat hasslog
State Recv-Q Send-Q Local Address:Port Peer Address:PortProcess
State    Recv-Q Send-Q        Local Address:Port          Peer Address:Port         Process                         
LISTEN   0      5               192.168.0.1:commplex-link      0.0.0.0:*            
	 locals:192.168.0.1 v4mapped:1
`- ESTAB 0      0      192.168.0.1%ha_veth0:commplex-link  192.168.0.2:commplex-link
	 locals:192.168.0.1 peers:192.168.0.2 tag:d9b5bb3e state:ESTAB rwnd:106492 instrms:10 outstrms:10 maxburst:4 maxseg:1452 prwnd:106496 ptag:7c3f886d pcapable:106 psack:2
State    Recv-Q Send-Q        Local Address:Port          Peer Address:Port         Process                         
LISTEN   0      5               192.168.0.1:commplex-link      0.0.0.0:*            
	 locals:192.168.0.1 v4mapped:1
`- ESTAB 0      0      192.168.0.1%ha_veth0:commplex-link  192.168.0.2:commplex-link
	 locals:192.168.0.1 peers:192.168.0.2 tag:322ff716 state:ESTAB rwnd:106492 instrms:10 outstrms:10 maxburst:4 maxseg:1452 prwnd:106496 ptag:6644daf4 pcapable:98 psack:2
there is no difference .

2.test vrf
Testing For SCTP VRF:
TEST 01: nobind, connect from client 1, l3mdev_accept=1, Y [PASS]
TEST 02: nobind, connect from client 2, l3mdev_accept=1, N [PASS]
TEST 03: nobind, connect from client 1, l3mdev_accept=0, N [PASS]
TEST 04: nobind, connect from client 2, l3mdev_accept=0, N [PASS]
TEST 05: bind veth2 in server, connect from client 1, N [PASS]
TEST 06: bind veth1 in server, connect from client 1, Y [PASS]
TEST 07: bind vrf-1 in server, connect from client 1, Y [PASS]
TEST 08: bind vrf-2 in server, connect from client 1, N [PASS]
TEST 09: bind vrf-2 in server, connect from client 2, Y [PASS]
TEST 10: bind vrf-1 in server, connect from client 2, N [PASS]
TEST 11: bind vrf-1 & 2 in server, connect from client 1 & 2, Y [PASS]
TEST 12: bind vrf-2 & 1 in server, connect from client 1 & 2, N [PASS]
***v4 Tests Done***
TEST 01: nobind, connect from client 1, l3mdev_accept=1, Y [PASS]
TEST 02: nobind, connect from client 2, l3mdev_accept=1, N [PASS]
TEST 03: nobind, connect from client 1, l3mdev_accept=0, N [PASS]
TEST 04: nobind, connect from client 2, l3mdev_accept=0, N [PASS]
TEST 05: bind veth2 in server, connect from client 1, N [PASS]
TEST 06: bind veth1 in server, connect from client 1, Y [PASS]
TEST 07: bind vrf-1 in server, connect from client 1, Y [PASS]
TEST 08: bind vrf-2 in server, connect from client 1, N [PASS]
TEST 09: bind vrf-2 in server, connect from client 2, Y [PASS]
TEST 10: bind vrf-1 in server, connect from client 2, N [PASS]
TEST 11: bind vrf-1 & 2 in server, connect from client 1 & 2, Y [PASS]
TEST 12: bind vrf-2 & 1 in server, connect from client 1 & 2, N [PASS]
***v6 Tests Done***

3. test scheduler:
start parse_arguments
Notification: SCTP_ASSOC_CHANGE(SHUTDOWN_COMPLETE)
		(assoc_change: state=3, error=0, instr=0 outstr=0)
	recvmsg(sk=3) set_num_ostreams - 'Set ostreams :65535' Success!
enable_msg_intl - 'Enable SCTP_INTERLEAVING_SUPPORTED' Success!
Notification: SCTP_ASSOC_CHANGE(COMMUNICATION_UP)
		(assoc_change: state=0, error=0, instr=65535 outstr=10)
	recvmsg(sk=3) Data 5000 bytes. First 10 bytes: 012345678
	recvmsg(sk=3) set_get_stream_sch - 'Set SCTP_SS_FCFS' Success!
set_get_stream_sch - 'Set SCTP_SS_PRIO' Success!
set_get_stream_sch - 'Set SCTP_SS_RR' Success!
set_get_stream_sch - 'Set SCTP_SS_FC' Success!
set_get_stream_sch - 'Set SCTP_SS_WFQ' Success!
test SCTP_CURRENT_ASOC begin!
set_get_stream_sch - 'Set SCTP_SS_FCFS' Success!
set_get_stream_sch - 'Set SCTP_SS_PRIO' Success!
set_get_stream_sch - 'Set SCTP_SS_RR' Success!
set_get_stream_sch - 'Set SCTP_SS_FC' Success!
set_get_stream_sch - 'Set SCTP_SS_WFQ' Success!
set SCTP_CURRENT_ASSOC done!
test SCTP_ALL_ASOC begin!
set_get_stream_sch - 'Set SCTP_SS_FCFS' Success!
set_get_stream_sch - 'Set SCTP_SS_PRIO' Success!
set_get_stream_sch - 'Set SCTP_SS_RR' Success!
set_get_stream_sch - 'Set SCTP_SS_FC' Success!
set_get_stream_sch - 'Set SCTP_SS_WFQ' Success!
set SCTP_ALL_ASSOC done!



set tested.

Comment 8 ying xu 2023-05-19 07:57:24 UTC
since it has't moved to next step ,delay to ITM14

Comment 13 ying xu 2023-05-24 08:02:04 UTC
verified on version:
kernel-5.14.0-316.el9

run the regression test:
https://beaker.engineering.redhat.com/jobs/7878146
https://beaker.engineering.redhat.com/jobs/7881092

Testing For SCTP VRF:
TEST 01: nobind, connect from client 1, l3mdev_accept=1, Y [PASS]
TEST 02: nobind, connect from client 2, l3mdev_accept=1, N [PASS]
TEST 03: nobind, connect from client 1, l3mdev_accept=0, N [PASS]
TEST 04: nobind, connect from client 2, l3mdev_accept=0, N [PASS]
TEST 05: bind veth2 in server, connect from client 1, N [PASS]
TEST 06: bind veth1 in server, connect from client 1, Y [PASS]
TEST 07: bind vrf-1 in server, connect from client 1, Y [PASS]
TEST 08: bind vrf-2 in server, connect from client 1, N [PASS]
TEST 09: bind vrf-2 in server, connect from client 2, Y [PASS]
TEST 10: bind vrf-1 in server, connect from client 2, N [PASS]
TEST 11: bind vrf-1 & 2 in server, connect from client 1 & 2, Y [PASS]
TEST 12: bind vrf-2 & 1 in server, connect from client 1 & 2, N [PASS]
***v4 Tests Done***
TEST 01: nobind, connect from client 1, l3mdev_accept=1, Y [PASS]
TEST 02: nobind, connect from client 2, l3mdev_accept=1, N [PASS]
TEST 03: nobind, connect from client 1, l3mdev_accept=0, N [PASS]
TEST 04: nobind, connect from client 2, l3mdev_accept=0, N [PASS]
TEST 05: bind veth2 in server, connect from client 1, N [PASS]
TEST 06: bind veth1 in server, connect from client 1, Y [PASS]
TEST 07: bind vrf-1 in server, connect from client 1, Y [PASS]
TEST 08: bind vrf-2 in server, connect from client 1, N [PASS]
TEST 09: bind vrf-2 in server, connect from client 2, Y [PASS]
TEST 10: bind vrf-1 in server, connect from client 2, N [PASS]
TEST 11: bind vrf-1 & 2 in server, connect from client 1 & 2, Y [PASS]
TEST 12: bind vrf-2 & 1 in server, connect from client 1 & 2, N [PASS]
***v6 Tests Done***


set_get_stream_sch - 'Set SCTP_SS_PRIO' Success!
set_get_stream_sch - 'Set SCTP_SS_RR' Success!
set_get_stream_sch - 'Set SCTP_SS_FC' Success!
set_get_stream_sch - 'Set SCTP_SS_WFQ' Success!
test SCTP_CURRENT_ASOC begin!
set_get_stream_sch - 'Set SCTP_SS_FCFS' Success!
set_get_stream_sch - 'Set SCTP_SS_PRIO' Success!
set_get_stream_sch - 'Set SCTP_SS_RR' Success!
set_get_stream_sch - 'Set SCTP_SS_FC' Success!
set_get_stream_sch - 'Set SCTP_SS_WFQ' Success!
set SCTP_CURRENT_ASSOC done!
test SCTP_ALL_ASOC begin!
set_get_stream_sch - 'Set SCTP_SS_FCFS' Success!
set_get_stream_sch - 'Set SCTP_SS_PRIO' Success!
set_get_stream_sch - 'Set SCTP_SS_RR' Success!
set_get_stream_sch - 'Set SCTP_SS_FC' Success!
set_get_stream_sch - 'Set SCTP_SS_WFQ' Success!
set SCTP_ALL_ASSOC done!

Comment 14 Xin Long 2023-06-07 21:47:03 UTC
*** Bug 2212172 has been marked as a duplicate of this bug. ***


Note You need to log in before you can comment on or make changes to this bug.