]> err.no Git - util-linux/commit
partx: convert hard sector size to 512-byte sectors
authorKarel Zak <kzak@redhat.com>
Thu, 26 Feb 2009 13:23:06 +0000 (14:23 +0100)
committerKarel Zak <kzak@redhat.com>
Thu, 26 Feb 2009 14:58:28 +0000 (15:58 +0100)
commit176303e08d7f1a7ab1211e0b4f3292d2a4648a07
treed68047ad453f7ed555f1ce19d2a4484d617f2d9b
parentfa39bf0f12268a7fe2ad02494a1351bac4d64a66
partx: convert hard sector size to 512-byte sectors

The msdos PT depends on a sector size (BLKSSZGET), but partx(8) counts
internally with 512-byte sectors only. The dos.c has to convert start
and size to 512-byte sectors.

sysfs (kernel uses 512-byte sectors only):

  # cat /sys/block/sdb/sdb1/{start,size}
  256
  16128

(note that 16128 * 512 = 8257536; 8Mb)

old version:

  # partx /dev/sdb
  1:        32-     2047 (     2016 sectors,      1 MB)
                                                  ^^^^
start, end and sectors are correct, but in 4KiB sectors
The size in MB is completely wrong.

new version:

  # partx -l /dev/sdb
  1:       256-    16383 (    16128 sectors,      8 MB)

start, end and sectors are converted to 512-byte sectors. The size in
MB is correct now.

Note that this change is important, because "partx -a" counts the size
of a new partition in 512-byte sectors for all PT formats (sun, gpt, ...).

Signed-off-by: Karel Zak <kzak@redhat.com>
partx/Makefile.am
partx/dos.c
partx/partx.8