parted/always_print_geom.diff

29 lines
1.3 KiB
Diff

Index: parted/parted.c
===================================================================
--- parted/parted.c.orig 2010-07-08 13:29:24.000000000 +0200
+++ parted/parted.c 2010-07-08 13:29:28.000000000 +0200
@@ -1437,8 +1437,22 @@ do_print (PedDevice** dev)
wchar_t* table_rendered;
disk = ped_disk_new (*dev);
- if (!disk)
+ if (!disk) {
+ printf (_("Sector size (logical/physical): %lldB/%lldB\n"),
+ (*dev)->sector_size, (*dev)->phys_sector_size);
+ if (ped_unit_get_default () == PED_UNIT_CHS ||
+ ped_unit_get_default () == PED_UNIT_CYLINDER) {
+ PedCHSGeometry* chs = &(*dev)->bios_geom;
+ char* cyl_size = ped_unit_format_custom (*dev,
+ chs->heads * chs->sectors,
+ PED_UNIT_KILOBYTE);
+ printf (_("BIOS cylinder,head,sector geometry: %d,%d,%d. "
+ "Each cylinder is %s.\n"),
+ chs->cylinders, chs->heads, chs->sectors, cyl_size);
+ free (cyl_size);
+ }
goto error;
+ }
if (ped_disk_is_flag_available(disk, PED_DISK_CYLINDER_ALIGNMENT))
if (!ped_disk_set_flag(disk, PED_DISK_CYLINDER_ALIGNMENT,