Repository navigation
Conversation
homa_tx_skb_alloc chose SKB_GSO_TCPV4 vs. SKB_GSO_TCPV6 from the socket family, but an IPv6 socket also sends IPv4 packets to IPv4 peers (e.g. replies to IPv4 clients). Those packets were marked TCPV6, which tcp4_gso_segment rejects when TCP hijacking is on and GSO is done in software. Use the peer address instead, as homa_route_xmit does.
* ./unit exited 0 even when tests failed: main() dropped test_harness_run()'s return value, so make test never failed. * --ipv4 had no effect on the first test in a run (mock_ipv6 was only set from mock_ipv6_default in the cleanup after each test), so running a single test with --ipv4 actually tested IPv6. * homa_rpc_get_info__basics assumed an IPv6 socket; call mock_set_ipv6 like other IPv6-only tests.
Every push and pull request builds homa.ko and the programs in util, then runs the unit tests with both IPv6 and IPv4 as the default family, against a Linux 6.17.8 tree prepared from kernel.org with defconfig plus the options the unit tests' mocks assume.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR adds basic CI: on every push and pull request, build homa.ko and util/, then run the unit tests with and without
--ipv4.To get the tests running in CI, we also fix some existing problems in HomaModule:
./unitalways exited 0, even when tests failed--ipv4was ignored by the first test in a run--ipv4(one test bug, one real GSO type bug)This PR includes three commits:
--ipv4./unitreturns the test result--ipv4also applies to the first testmake modules_prepare--ipv4Our Actions runs: https://github.com/breakertt/HomaModule/actions
Notes:
LINUX_VERSIONin.github/workflows/ci.ymlneeds to change with itFuture plans: