-
Notifications
You must be signed in to change notification settings - Fork 14
Make TCP interfaces compatible. #3
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
base: master
Are you sure you want to change the base?
Conversation
It can surely silence the compiler complaint. But it may not work with multiple vCPU threads at one node. Do you boot GiantVM successfully? |
No. Although I am not sure if I am booting the system correctly. I currently have only two nodes, with one VCPU per node.
As it can be seen, both machines connect. However, the Qemus do not make any further progress. Everything freezes. Runing dmesg on another terminal, I get this output related to kvm. On the master machine:
On the remote machine:
|
I don't know what's going wrong for your code. But you need to make sure the commands work well for vanilla QEMU-KVM (without -local-cpu). There's a variable kvm_dsm_debug_verbose in dsm.c which enables more log. And I can share you with my script:
|
Hi, |
You can deploy GiantVM on the same machine with different port numbers (hard-coded) or different machines. |
Can you show me how to hard-code different port numbers? |
Okay. I think I figured it out. The ports are hard-coded in QEMU's code (ports 40000 and 40001). I have setup both ports to same ip address (127.0.0.1 == localhost) and run the two QEMUs. I am getting the following error:
|
What do you mean by 'setup both ports to the same ip addr'? The error message is generated after the failure of |
Sorry for the bad phrasing... By that I mean I have set NODE0_IP and NODE1_IP to the same value:
Qemu code will then automatically assign diffrent ports for each qemu: |
I guess it's caused by busy ports. E.g., previous QEMU doesn't exit normally. |
Good news, I am able to boot GiantVM (with both Qemus on the same machine). The "io-router problem was due to a misconfiguration of my shell script. However, now I am hitting a bug further in the execution. There are two kernel Oops produced by the kernel. The full log is as follow:
|
It looks like the guest OS has executed quite a few code successfully. The assertion failure at |
This is a proposed patch to get the TCP working. It simply redefines the "struct tx_add" to "extent_t":