multipath-tcp / mptcp

⚠️⚠️⚠️ Deprecated 🚫 Out-of-tree Linux Kernel implementation of MultiPath TCP. 👉 Use https://github.com/multipath-tcp/mptcp_net-next repo instead ⚠️⚠️⚠️
https://github.com/multipath-tcp/mptcp_net-next
Other
890 stars 336 forks source link

Kernel Panic #484

Closed rezapoorzare1 closed 2 years ago

rezapoorzare1 commented 2 years ago

Hello

I hope you are doing well.

I have downloaded mptcp. installed it, then compiled the kernel, and right now I have the kernel "linux-image-4.19.234.mptcp 20220311125841-1 amd64 Linux kernel, version 4.19.234.mptcp". However, when I am trying to boot to the kernel, I encounter this error "Kernel Panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)".

I have tried everything. but it is still the same. Could you please help me with this case?

Thanks a lot

matttbe commented 2 years ago

Hello,

On which Linux distribution did you install it? I suspect you are on a recent version which is compressing the initramfs in a format that is not supported by the v4.19 kernel.

I know that on Ubuntu, they "recently" switched to COMPRESS=zstd which is only supported by recent kernels.

Reboot on a different kernel, then try:

sudo sed -i "s/^COMPRESS=.*/COMPRESS=lz4/" /etc/initramfs-tools/initramfs.conf
sudo update-initramfs -u

and reboot to the v4.19 kernel.

rezapoorzare1 commented 2 years ago

Thanks a lot for you response

Yes, I am in ubuntu 22.04. When I reboot the system the kernel is in the list but the kernel panic happens. To which one do I switch that supports? ubuntu 20 or 18?

Thanks a lot

matttbe commented 2 years ago

Did you try the steps I mentioned?

Reboot on a different kernel (>= 5.15), then try:

sudo sed -i "s/^COMPRESS=.*/COMPRESS=lz4/" /etc/initramfs-tools/initramfs.conf
sudo update-initramfs -u

and reboot to the v4.19 kernel.

rezapoorzare1 commented 2 years ago

yes, and the error is still the same: end kernel panic not syncing vfs unable to mount root fs on unknown-block

I am in kernel "5.15.0-27-generic".

rezapoorzare1 commented 2 years ago

the outcome for the second command is:

update-initramfs: Generating /boot/initrd.img-5.15.0-27-generic No lz4 in /usr/bin:/sbin:/bin, using gzip

matttbe commented 2 years ago

You probably need to install lz4 package and re-launch the previous commands.

If you still have the issue, you can try:

sudo sed -i "s/^COMPRESS=.*/COMPRESS=gzip/" /etc/initramfs-tools/initramfs.conf
sudo update-initramfs -u
rezapoorzare1 commented 2 years ago

It is still the same.

When I enable the secure boot I encounter the following error: "loading ramdisk bad shim signature you need to load the kernel first"

When I disable the secure boot I encounter the kernel panic error.

rezapoorzare1 commented 2 years ago

the issue was because of Ubuntu 22.04 existence. I installed Ubuntu 20.04 and know I am in the kernel. However, a single problem exists:

The command "sudo dmesg | grep MPTCP" returns: [ 1.093670] MPTCP tokens hash table entries: 65536 (order: 7, 524288 bytes, linear) [ 1.093770] MPTCP request tokens hash table entries: 65536 (order: 7, 524288 bytes, linear) [ 1.093885] MPTCP: Unstable branch

"sysctl net.mptcp.mptcp_enabled| returns: net.mptcp.mptcp_enabled = 1

"sysctl -w net.mptcp.mptcp_path_manager=fullmesh" returns: net.mptcp.mptcp_path_manager = fullmesh

I downloaded scripts in https://multipath-tcp.org/pmwiki.php/Users/ConfigureRouting and made them executable by "chmod a+x ".

So, everything looks good, but when I connect to "http://amiusingmptcp.de/". it says no. Where can I look for the problem?

Thanks

rezapoorzare1 commented 2 years ago

I get my IPs by DHCP for both ethernet and WiFi, can it be the problem?

Thanks

matttbe commented 2 years ago

[ 1.093885] MPTCP: Unstable branch

That's strange. How did you install the new kernel?

So, everything looks good, but when I connect to "http://amiusingmptcp.de/". it says no. Where can I look for the problem?

It is possible a middlebox somewhere between you and the server is blocking MPTCP. Most of the time, it is due to a wrong configuration somewhere, either on your side or on the operator' side. You can use tcpdump to see if MPTCP packets are going out but if yes, you will a tool like tracebox to identify where MPTCP options are stripped, see: https://multipath-tcp.org/pmwiki.php/Users/Tools (at the end)

rezapoorzare1 commented 2 years ago

It is a little modifed one, tomorrow I will test the pure code from your website.

You are absolutely right, I have checked the protocol in another network and "http://amiusingmptcp.de/" returning "Yes".

I will find the middleboxes blocking the protocol.

Thank you so much for your time, patience, and detailed answers

matttbe commented 2 years ago

You are welcome. I suggest to close this ticket.

If you need help for tracebox, do not hesitate to look at older ticket mentioning it. When you find where the issue comes from, please contact the person in charge of this middlebox: it is certainly misconfigured, MPTCP is used by million of devices in the world, that's no longer an experimental protocol ;-)

sanjitbarik commented 1 year ago

I installed Ubuntu 20.04 and know I am in the kernel.There is problem : The command "sudo dmesg | grep MPTCP" returns: [ 0.372344] MPTCP: Stable release v0.95.2 sysctl net.mptcp.mptcp_enabled| returns: net.mptcp.mptcp_enabled = 1

"sysctl -w net.mptcp.mptcp_path_manager=fullmesh" returns: net.mptcp.mptcp_path_manager = fullmesh sysctl net.ipv4.tcp_congestion_control it returns cubic everything looks good, but when I connect to "http://amiusingmptcp.de/". it says no. Please give me solution thanks.