[haiku-development] Re: "PANIC: could not mount boot device!" booting from Haiku image in MS Virtual PC.
- From: Siarzhuk Zharski <zharik@xxxxxx>
- To: haiku-development@xxxxxxxxxxxxx
- Date: Sun, 20 Jan 2008 14:59:53 +0100
Hi, Axel.
Axel Dörfler wrote:
I tried to figure this problem out by yourself, activated TRACE-ing
in
vfs.cpp and vfs_boot.cpp. But this doesn't help me much. Which module
generate this "bfs: Mount:347: Invalid Argument"? May be you have any
idea about this mounting problem? Of course, I can provide complete
system log if it is required.
That won't contain more info either - as the "bfs:" suggests the
component in question is bfs. And there, you can find the problem in
Volume.cpp, line 347.
If I have the same version of that file that you have, the following
check fails:
if (diskSize < (NumBlocks() << BlockShift()))
RETURN_ERROR(B_BAD_VALUE);
Which means the disk size your VPC converter advertizes is lower than
what BFS has been initialized with.
Oh. Shame on me! You are right - The disk geometry calculation procedure
that was "recommended by Microsoft" in VHD Specification is a bit
inaccurate. It returns CHS combination that is not exactly enough to
store 100 megabytes of data. Note that beside of disk geometry they have
two fields for disk size in theirs VHD footer structure. :-\
Kind Regards,
S.Zharski
- References:
Other related posts:
- » [haiku-development] "PANIC: could not mount boot device!" booting from Haiku image in MS Virtual PC.
- » [haiku-development] Re: "PANIC: could not mount boot device!" booting from Haiku image in MS Virtual PC.
- » [haiku-development] Re: "PANIC: could not mount boot device!" booting from Haiku image in MS Virtual PC.
I tried to figure this problem out by yourself, activated TRACE-ing in vfs.cpp and vfs_boot.cpp. But this doesn't help me much. Which module generate this "bfs: Mount:347: Invalid Argument"? May be you have any idea about this mounting problem? Of course, I can provide complete system log if it is required.
That won't contain more info either - as the "bfs:" suggests the component in question is bfs. And there, you can find the problem in Volume.cpp, line 347. If I have the same version of that file that you have, the following check fails:
if (diskSize < (NumBlocks() << BlockShift()))
RETURN_ERROR(B_BAD_VALUE);
Which means the disk size your VPC converter advertizes is lower than
what BFS has been initialized with.