Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rebased and re-implemented USBIP configs #3983

Merged
merged 1 commit into from
Feb 18, 2024
Merged

Conversation

beriberikix
Copy link
Contributor

Old PR autoclosed so created a new one. amd64 built but arm64 is still having issues.

Fixes #609

@deitch
Copy link
Collaborator

deitch commented Feb 15, 2024

I can try it locally. But why are there so many changes in aarch64? I would have thought just the USBIP-related ones?

@beriberikix
Copy link
Contributor Author

I was wondering that too - I followed the exact same steps as I did for x86_64 except I ran make ARCH=arm64 defconfig before make ARCH=arm64 menuconfig per the docs. Let me see if that's the source (wouldn't explain why.)

@beriberikix
Copy link
Contributor Author

So I switched back to master on my local machine and ran:

make kconfig
docker run --rm -ti -v $(pwd):/src linuxkit/kconfig
make ARCH=arm64 defconfig
cp .config /src/config-6.6.x-aarch64

I'd expect no changes but it introduced most of what we're seeing. Maybe something changed in /linux/arch/arm64/configs/defconfig before the last time the config was built?

@deitch
Copy link
Collaborator

deitch commented Feb 16, 2024

I can confirm that amd64 on your branch is fine, and arm64 is fine on master (so is amd64, but that isn't the subject of our discussion).

@deitch
Copy link
Collaborator

deitch commented Feb 16, 2024

I can confirm that a change similar to x86_64 works. Here is my diff on the aarch64 file (working with USBIP vs master). If you apply this to the master and commit it here instead of yours, we should be able to push it all out and run it.

diff --git a/kernel/config-6.6.x-aarch64 b/kernel/config-6.6.x-aarch64
index 947af3a06..d6561cc4a 100644
--- a/kernel/config-6.6.x-aarch64
+++ b/kernel/config-6.6.x-aarch64
@@ -3709,7 +3709,12 @@ CONFIG_USB_STORAGE=m
 #
 # CONFIG_USB_MDC800 is not set
 # CONFIG_USB_MICROTEK is not set
-# CONFIG_USBIP_CORE is not set
+CONFIG_USBIP_CORE=m
+CONFIG_USBIP_VHCI_HCD=m
+CONFIG_USBIP_VHCI_HC_PORTS=8
+CONFIG_USBIP_VHCI_NR_HCS=1
+# CONFIG_USBIP_HOST is not set
+# CONFIG_USBIP_DEBUG is not set

 #
 # USB dual-mode controller drivers

@beriberikix
Copy link
Contributor Author

Okay! I also wanted to make sure that USB/IP doesn't enable any transitive dependencies, so I verified that against main. Now with the manual changes I still can't build when I run make build ARCH=arm64 on my branch or master. Any ideas?

@deitch
Copy link
Collaborator

deitch commented Feb 18, 2024

I suspect that has more to do with an error in cross-compilation. They work fine on master when I build directly on those architectures. I will try your branch on there.

Switch this from draft to ready?

@deitch
Copy link
Collaborator

deitch commented Feb 18, 2024

Successfully built and pushed out. Mark this as ready and we can run CI.

@beriberikix beriberikix marked this pull request as ready for review February 18, 2024 13:06
Signed-off-by: Jonathan Beri <jberi@golioth.io>

Revert to master

Signed-off-by: Jonathan Beri <jberi@golioth.io>

Modify USBIP modules by hand

Signed-off-by: Jonathan Beri <jberi@golioth.io>
@beriberikix
Copy link
Contributor Author

Ready and squashed!

@deitch
Copy link
Collaborator

deitch commented Feb 18, 2024

CI running, let it rip!

@deitch deitch merged commit 4cdfd5f into linuxkit:master Feb 18, 2024
22 checks passed
@deitch
Copy link
Collaborator

deitch commented Feb 18, 2024

Thanks for the patience as we worked this out. I pushed out the images, so download it and check that it all works as you expect?

@beriberikix
Copy link
Contributor Author

Verified with QEMU! Planning on testing in Virtualization Framework next, but QEMU is enough to prove it's there.

Thank you for shepherding this through!

@deitch
Copy link
Collaborator

deitch commented Feb 19, 2024

Great! One of these lifetimes, we will get the kernel process part of the CI build. All packages used to be like that, so there s hope.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

remote usb
2 participants