Messages in this thread | | | Date | Wed, 26 Mar 2008 20:52:57 -0700 | From | Greg KH <> | Subject | Re: What to do about the 2TB limit on HDIO_GETGEO ? |
| |
On Wed, Mar 26, 2008 at 12:30:40PM +0100, Bodo Eggert wrote: > Greg KH <gregkh@suse.de> wrote: > > On Tue, Mar 25, 2008 at 04:05:32PM -0700, H. Peter Anvin wrote: > > >>> How does this have anything to do with boot times? Do you really have a > >>> foolish shell script that iteratorates over every single disk in the > >>> sysfs tree for every disk? What does it do that for? > >> > >> Any time you want to get the sysfs information for a filesystem which is > >> already mounted, that's what you're forced to do. > >> > >>> I thought we were talking about 2TB disks here, with a proposed new > >>> ioctl, not foolishness of boot scripts... > >> > >> I pointed out that having a way to map device numbers to sysfs directories > >> would have the same effect, *and* would be usable for other purposes. I'd > >> rather see that than a new ioctl, and another, and another... > > > > Again, a simple udev rule will give you that today if you really want > > it... > > So e.g. lilo should depend on sysfs and *a*special*configuration* of udev, > while the admin MUST NOT use mknod'ed device files nor manually create > symlinks pointing to them, and not use relative path names? > That's plain stupid.
If sysfs is stupid, then use an ioctl, have I objected to that?
> > And I think 'udevinfo' can be used to retrieve this information as well. > > $ udevinfo /dev/hda > missing option > $ udevinfo /dev/hda --help > Usage: udevinfo OPTIONS > --query=<type> query database for the specified value: > name name of device node > symlink pointing to node > path sysfs device path > env the device related imported environment > all all values > > --path=<devpath> sysfs device path used for query or chain > --name=<name> node or symlink name used for query > > --root prepend to query result or print udev_root > --attribute-walk print all SYSFS_attributes along the device chain > --export-db export the content of the udev database > --help print this text > $ udevinfo --name=/dev/hda > missing option > $ udevinfo --name=/dev/hda --query=all > P: /block/hda > N: hda > S: disk/by-id/ata-Maxtor_2F040L0_F1748ZQE > S: disk/by-path/pci-0000:00:0f.0-ide-0:0 > E: DEVTYPE=disk > E: ID_TYPE=disk > E: ID_MODEL=Maxtor_2F040L0 > E: ID_SERIAL=F1748ZQE > E: ID_REVISION=VAM51JJ0 > E: ID_BUS=ata > E: ID_PATH=pci-0000:00:0f.0-ide-0:0 > > > As you can see, it gives no major:minor information. But it is in the DB:
That should be easy to add, no one has ever asked for this information from udevinfo before. If it's needed, it can be provided.
> $ cd /dev/.udev/db > $ grep -l hda * 2>/dev/null > \x2fblock\x2fhda > \x2fblock\x2fhda\x2fhda1 > $ cat "\x2fblock\x2fhda" > N:hda > S:disk/by-id/ata-Maxtor_2F040L0_F1748ZQE > S:disk/by-path/pci-0000:00:0f.0-ide-0:0 > M:3:0 > E:DEVTYPE=disk > E:ID_TYPE=disk > E:ID_MODEL=Maxtor_2F040L0 > E:ID_SERIAL=F1748ZQE > E:ID_REVISION=VAM51JJ0 > E:ID_BUS=ata > E:ID_PATH=pci-0000:00:0f.0-ide-0:0 > > What a great tool - for making linux look bad.
Your constructive criticism is greatly appreciated, please continue.
| |