lkml.org 
[lkml]   [2008]   [Apr]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Disk geometry from /sys
Hi,

Francis Moreau wrote:
> Hi Seewer,
>
> On Mon, Apr 14, 2008 at 2:57 PM, Seewer Philippe <philippe.seewer@bfh.ch> wrote:
>> As you've problably seen from the other answers, disk geometry is (except
>> for a few older devices) unneeded inside the Linux kernel.
>
> Yes but I'm doing userspace stuff and that's the reason I was asking for the
> sysfs thing.
>
>> I'd say thats the
>> reason why there's no sysfs export and I'd further guess disk geometry is an
>> artifact most would like to get rid of (or pushed into userspace).
>>
>
> Well, I looked at sfdisk(8) and parted(8) source code and they all need the
> geometry description. If I understood correctly the reason why is that it
> 'prefers' to align partition sizes/starts on a cylinder boundary because some
> bootloaders probably use CHS addressing, but I'm really not sure.
Yes indeed, mainly in the (w)intel world though.

>
>> Anyway, if you really need it, try the patch below. Should apply cleanly to
>> version 2.6.23.1 and gives you a geometry/ directory for each block device
>> providing the getgeo function. It adds a setgeo counterpart for some
>> subsystems as well, allowing 'echo something > ...' so please be careful.
>>
>
> Thanks but I probably won't use it. Using sfdisk, for example, is a
> more portable
> way to get the geometry from a script.

Correct. Though be really careful which geometry you are requesting:

root@local:/# sfdisk -g /dev/sda
/dev/sda: 7296 cylinders, 255 heads, 63 sectors/track
root@local:/# sfdisk -G /dev/sda
/dev/sda: 116280 cylinders, 16 heads, 63 sectors/track

The first one is the kernels idea of a disks geometry which is probably
as often correct as it's just plain wrong, versus the second one which
tries to guess a disks geometry by looking at the current partition
table. Which might be just as wrong since its only necessary for bios
and/or bootloader. Really depends on what you need.

Cheers
Philippe



\
 
 \ /
  Last update: 2008-04-16 09:53    [W:0.127 / U:0.732 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site