|
Bugzilla – Full Text Bug Listing |
| Summary: | python-eventlet tests fail with kernel 6.6 | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE Tumbleweed | Reporter: | Jiri Slaby <jslaby> |
| Component: | Kernel | Assignee: | Jiri Slaby <jslaby> |
| Status: | RESOLVED UPSTREAM | QA Contact: | E-mail List <qa-bugs> |
| Severity: | Normal | ||
| Priority: | P5 - None | CC: | dmueller, mkubecek, p.drouand |
| Version: | Current | Flags: | jslaby:
needinfo?
(p.drouand) jslaby: needinfo? (dmueller) |
| Target Milestone: | --- | ||
| Hardware: | Other | ||
| OS: | Other | ||
| See Also: | https://github.com/eventlet/eventlet/issues/821 | ||
| Whiteboard: | |||
| Found By: | --- | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
| Attachments: |
BAD strace -rT -e trace=network,/epoll
GOOD strace -rT -e trace=network,/epoll |
||
|
Description
Jiri Slaby
2023-11-03 09:44:50 UTC
Created attachment 870622 [details]
GOOD strace -rT -e trace=network,/epoll
Upstream report: https://lore.kernel.org/all/738bb6a1-4e99-4113-9345-48eea11e2108@kernel.org/ Eric says: Retracting TCP windows has always been problematic. If we really want to be very gentle, this could add more logic, shorter timer events for pathological cases like that, I am not sure this is really worth it, especially if dealing with one million TCP sockets in this state. How about my suggestion to set SO_SNDBUF and SO_RCVBUF before listen() and connect()? Would that be an acceptable solution or does the test depend on setting the buffer sizes this late? This seems to go the way the test is broken: It seems the test had some expectations. Setting a small (1 byte) RCVBUF/SNDBUF, and yet expecting to send 46080 bytes fast enough was not reasonable. It might have relied on the fact that tcp sendmsg() can cook large GSO packets, even if sk->sk_sndbuf is small. With tight memory settings, it is possible TCP has to resort on RTO timers (200ms by default) to recover from dropped packets. (In reply to Michal Kubeček from comment #3) > How about my suggestion to set SO_SNDBUF and SO_RCVBUF before listen() and > connect()? Would that be an acceptable solution or does the test depend on > setting the buffer sizes this late? And this ^^ For the record, actual value of SO_SNDBUF is 4608, as seen in the strace output. I would assume SO_RCVBUF will also be something like that. How can I help with the needinfo to me? Not clear to me. I think we should have this conversation with eventlet upstream? I can disable the test if it is turning out to be problematic I think we (I picked you likely beacuse of maintainership of the pkd) can do not much about it: https://github.com/eventlet/eventlet/issues/821 |