Opened 11 years ago
Last modified 4 years ago
#10208 new bug
Drivesetup creating partition size errors — at Version 5
Reported by: | PieterPanman | Owned by: | bonefish |
---|---|---|---|
Priority: | high | Milestone: | R1 |
Component: | Partitioning Systems | Version: | R1/Development |
Keywords: | Cc: | ||
Blocked By: | Blocking: | ||
Platform: | All |
Description (last modified by )
I've taken hrev46368 (x86_gcc) for a spin and decided to install it into my main machine on a spare drive. It is a ST9320423AS, Seagate Momentus 7200.4 ST9320423AS 320GB 7200 RPM 16MB. I decided to have 2 Haiku partitions for the OS and 1 haiku data partition. Steps:
- boot from USB stick
- Fire up DriveSetup
- Initialize Disk to Intel Partition Map (it was unrecognized for some reason, but I can't remember what OS was on it...)
- Add 3 partitions
- Haiku32 (about 20 GiB, using the slider)
- Haiku64 (about 30 GiB, using the slider)
- HaikuData (the rest of the available space)
- Format Haiku32
- Install haiku to Haiku32 using HaikuInstaller
- Reboot
- Start Haiku from USB stick into boot menu, I can't find Haiku32...
- Back into Haiku (usb stick), the partition sizes are now approximately 3, 4 and 67 GiB!
- Reinstall Haiku unto Haiku32
- Now Haiku32 is visible in my boot menu on the USB stick.
It is almost as if performing these actions in 1 go (initialize, create x3, format, install), it has miscounted the sizes. The actual written partition map sizes after the reboot is pretty much 4x smaller, but before the reboot its idea of the partition map is the originally intended sizes. I'll see if I can gather some useful information
Change History (7)
by , 11 years ago
by , 11 years ago
Attachment: | listdev.txt added |
---|
comment:1 by , 11 years ago
comment:2 by , 11 years ago
Priority: | critical → high |
---|
Could you try to determine whether this is reproducible and which steps are required to do so?
To do so, please clear the MBR (make sure the device is really the correct one)
dd if=/dev/zero of=/dev/disk/ata/3/slave/raw bs=512 count=1
and reboot. Then perform the steps up to (and including) 4, quit DriveSetup, launch it again, and verify that the partition sizes are the ones you specified. Reboot and check them again.
Should everything still look fine, please repeat the whole procedure, this time including step 5.
comment:3 by , 11 years ago
Thanks for the response. Well I cannot reproduce it at the moment with the above steps. I will try again later with some variation, maybe I can find a way to reproduce it.
comment:4 by , 11 years ago
Description: | modified (diff) |
---|
comment:5 by , 4 years ago
Description: | modified (diff) |
---|
This is probably related to https://review.haiku-os.org/c/haiku/+/653
If the disk was initially formatted directly with a filesystem using 2K blocks, it seems that the intel partitionning system will reuse that value instead of the actual disk block size to compute partition sizes.
To confirm:
- Format the whole disk as, for example BFS (without any partition table)
- Reboot
- Then create a partition table and add some partitions
- Reboot again
- Confirm that your partitions have shrunk as a result
Let me know what else might be useful. Maybe it has something to do with the block size? I see the device has 512, but the partition 2048. I have very little experience with partitions, so that might not be relevant.