Opened 14 years ago
Closed 14 years ago
#7299 closed defect (fixed)
linux nfsroot doesn't work with 3.2.x => Fixed in SVN
Reported by: | bzzz | Owned by: | |
---|---|---|---|
Component: | network/NAT | Version: | VirtualBox 3.2.8 |
Keywords: | Cc: | bzzz@… | |
Guest type: | Linux | Host type: | Mac OS X |
Description
hello,
I've been using vbox for development based on linux kernel. in order to simplify reboot/recovery linux system is installed on the host os (just untar of existing installation into os/x). then I boot linux kernel using embedded tftp mechanism enabled in NAT mode. it's been working just fine with 3.1.x. but I can't use this schema with any 3.2 (including the last one 3.2.8). when linux kernel is trying to access the root over nfs something goes wrong and in linux console I get the following:
Looking up port of RPC 100005/1 on 192.168.56.1 VFS: Mounted root (nfs fiessystem). Freeig unused kernel memory: 288k freed call_verify: XDR representation not a muliple of 4 bytes: 0x5b2 call_verify: XDR representation not a multiple of 4 bytes: 0xbb2 call_verify: XDR rpresentation not a multiple of 4 byes: 0x5b2 call_verify: XDR representation not a multiple of 4 bytes: 0x5b2
so, I have to install 3.1.8 back and then everything works fine again. any idea?
I guess I should try host-only mode, but embedded tftp works only with NAT. so, I'd have to install bunch of software (dns reporting correct tftp server, tftp itself).
thanks, z
Attachments (3)
Change History (27)
comment:1 by , 14 years ago
comment:4 by , 14 years ago
Could you please verify the build VBoxDD.dylib, whether it fixes the issue for you? what have been changed: we've found that size calculation of buffer used for reading from socket is not correct.
PS. Locally I've found your testcase bootable and usable.
by , 14 years ago
Attachment: | Screen shot 2010-09-28 at 10.06.08 AM.png added |
---|
comment:5 by , 14 years ago
I replaced Applications/VirtualBox.app/Contents/MacOS/VBoxDD.dylib, but got another problem. see the attachment.
follow-up: 9 comment:8 by , 14 years ago
OK. so 64bit version didn't load due to:
00:00:01.011 rtldrNativeLoad: dlopen('/Applications/VirtualBox.app/Contents/MacOS/VBoxDD.dylib', RTLD_NOW | RTLD_LOCAL) failed: dlopen(/Applications/VirtualBox.app/Contents/MacOS/VBoxDD.dylib, 6): no suitable image found. Did find: 00:00:01.011 /Applications/VirtualBox.app/Contents/MacOS/VBoxDD.dylib: mach-o, but wrong architecture 0 then I tried 32bit version again: 00:00:00.829 rtldrNativeLoad: dlopen('/Applications/VirtualBox.app/Contents/MacOS/VBoxDD.dylib', RTLD_NOW | RTLD_LOCAL) failed: dlopen(/Applications/VirtualBox.app/Contents/MacOS/VBoxDD.dylib, 6): Library not loaded: /Applications/VirtualBox.app/Contents/MacOS/VBoxREM.dylib 00:00:00.829 Referenced from: /Applications/VirtualBox.app/Contents/MacOS/VBoxDD.dylib 00:00:00.829 Reason: Incompatible library version: VBoxDD.dylib requires version 3.2.10 or later, but VBoxREM.dylib provides version 3.2.8 0
I checked on the site - it's still 3.2.8.
could you provide me with library built for 3.2.8, please?
comment:9 by , 14 years ago
Replying to bzzz:
00:00:00.829 Reason: Incompatible library version: VBoxDD.dylib requires version 3.2.10 or later, but VBoxREM.dylib provides version 3.2.8 0
I checked on the site - it's still 3.2.8.
could you provide me with library built for 3.2.8, please?
Could you please add log for you current VBox installation (with origianal VBoxDD.dylib)? The build of both DSOs I've provided for you were made against Vbox-3.2 branch at r64453 which is pointed in the log attached to defect.
comment:11 by , 14 years ago
Replying to bzzz:
please notice "VBoxDD.dylib requires version 3.2.10"
What is output of otool -LD against downloaded dylib? Here I have
bash-3.2$ otool -LD VBoxDD.dylib VBoxDD.dylib: /Applications/VirtualBox.app/Contents/MacOS/VBoxDD.dylib (compatibility version 3.2.8, current version 3.2.8) /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio (compatibility version 1.0.0, current version 1.0.0) /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit (compatibility version 1.0.0, current version 1.0.0) /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox (compatibility version 1.0.0, current version 1.0.0) /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 152.0.0) /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration (compatibility version 1.0.0, current version 1.0.0) /Applications/VirtualBox.app/Contents/MacOS/VBoxREM.dylib (compatibility version 3.2.8, current version 3.2.8) /Applications/VirtualBox.app/Contents/MacOS/VBoxVMM.dylib (compatibility version 3.2.8, current version 3.2.8) /Applications/VirtualBox.app/Contents/MacOS/VBoxRT.dylib (compatibility version 3.2.8, current version 3.2.8) /Applications/VirtualBox.app/Contents/MacOS/VBoxDDU.dylib (compatibility version 3.2.8, current version 3.2.8) /Applications/VirtualBox.app/Contents/MacOS/VBoxDD2.dylib (compatibility version 3.2.8, current version 3.2.8) /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 123.0.0) /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 44.0.0) /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 550.0.0)
comment:12 by , 14 years ago
[alexey lustre]$ otool -LD ~/Desktop/VBoxDD.dylib.mac32 /Users/alexey/Desktop/VBoxDD.dylib.mac32: /Applications/VirtualBox.app/Contents/MacOS/VBoxDD.dylib (compatibility version 3.2.10, current version 3.2.10) /System/Library/Frameworks/CoreAudio.framework/Versions/A/CoreAudio (compatibility version 1.0.0, current version 1.0.0) /System/Library/Frameworks/AudioUnit.framework/Versions/A/AudioUnit (compatibility version 1.0.0, current version 1.0.0) /System/Library/Frameworks/AudioToolbox.framework/Versions/A/AudioToolbox (compatibility version 1.0.0, current version 1.0.0) /System/Library/Frameworks/IOKit.framework/Versions/A/IOKit (compatibility version 1.0.0, current version 275.0.0) /System/Library/Frameworks/Carbon.framework/Versions/A/Carbon (compatibility version 2.0.0, current version 136.0.0) /System/Library/Frameworks/DiskArbitration.framework/Versions/A/DiskArbitration (compatibility version 1.0.0, current version 1.0.0) /Applications/VirtualBox.app/Contents/MacOS/VBoxREM.dylib (compatibility version 3.2.10, current version 3.2.10) /Applications/VirtualBox.app/Contents/MacOS/VBoxVMM.dylib (compatibility version 3.2.10, current version 3.2.10) /Applications/VirtualBox.app/Contents/MacOS/VBoxRT.dylib (compatibility version 3.2.10, current version 3.2.10) /Applications/VirtualBox.app/Contents/MacOS/VBoxDDU.dylib (compatibility version 3.2.10, current version 3.2.10) /Applications/VirtualBox.app/Contents/MacOS/VBoxDD2.dylib (compatibility version 3.2.10, current version 3.2.10) /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.4.0) /usr/lib/libgcc_s.1.dylib (compatibility version 1.0.0, current version 1.0.0) /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 111.1.4) /System/Library/Frameworks/CoreServices.framework/Versions/A/CoreServices (compatibility version 1.0.0, current version 32.0.0) /System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation (compatibility version 150.0.0, current version 476.19.0)
comment:13 by , 14 years ago
Ah, right 32-bit binary isn't valid, sorry. I'll rebuild it in some minutes.
comment:14 by , 14 years ago
I've rebuilt 32-bits, double checked the version and uploaded on the same place.
follow-up: 16 comment:15 by , 14 years ago
now I'm getting a lot of messages like this:
NFS servee cheating in read reply: count 2229 > recvd 1372 NFS ssrver cheating in read reply: count 1536 > recvd 1372
(from linux kernel in virtual machine)
comment:16 by , 14 years ago
Replying to bzzz:
now I'm getting a lot of messages like this:
NFS servee cheating in read reply: count 2229 > recvd 1372 NFS ssrver cheating in read reply: count 1536 > recvd 1372
Does your TFTP booting finished well?
the reason of this messages is that NAT isn't aware of protocol internals and only what it does is read from socket the buffer it might place in fragment of MTU size. I'll try to fetch everything on the socket choosing the appliable buffer size and then let fragmentation routine split the packet.
comment:17 by , 14 years ago
so, it stopped with "INIT: no more processes left in this runlevel", but it's still some progress compared to vanilla 3.2.8 :)
somehow it works well with vbox 3.1
comment:18 by , 14 years ago
Could you please verify that 4.0.0 b1 fixes issue for you? note that it could not working with e1k because of http://www.virtualbox.org/ticket/4756#comment:3, so it'd be better to try with pcnet adapter.
follow-up: 22 comment:21 by , 14 years ago
great, it works with 4.0.0 b1! the only remaining issue (minor though) is that vmlinuz loading take ~20s, is rate is ~120KB/s, which is kind of slow ... anyway, thanks a lot!
comment:22 by , 14 years ago
Replying to bzzz:
great, it works with 4.0.0 b1! the only remaining issue (minor though) is that vmlinuz loading take ~20s, is rate is ~120KB/s, which is kind of slow ... anyway, thanks a lot!
Thanks for feedback.
comment:23 by , 14 years ago
Summary: | linux nfsroot doesn't work with 3.2.x → linux nfsroot doesn't work with 3.2.x => Fixed in SVN |
---|
comment:24 by , 14 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
Could you please attach log file?