file2alias - incorrect? aliases for USB

From: Andrey Borzenkov
Date: Sun Nov 09 2003 - 14:11:55 EST


file2aliases puts in alias device ID high and low numbers directly from match
specifications. E.g. for this match table entry:

usb-storage 0x000f 0x04e6 0x0006 0x0100 0x0205 ...

it generates alias

alias usb:v04E6p0006dl0100dh0205dc*dsc*dp*ic*isc*ip* usb_storage

unfortunately real device attribute does not include high and low - rather it
has single device ID (as part of PRODUCT) that should be contained in these
bounds:

length += snprintf (scratch, buffer_size - length, "PRODUCT=%x/%x/%x",
usb_dev->descriptor.idVendor,
usb_dev->descriptor.idProduct,
usb_dev->descriptor.bcdDevice);

or bcdDevice file in sysfs.

This makes those aliases rather useless for the purpose of matching reported
device. It may take the same route as PCI and reject all device ID table
entries that have High != Low but there are quite a few of them available.

I am rather confused because I do not see how this condition (low <= bcdDevice
<= high) can be expressed using simple glob pattern (unless we are going to
take glob library from Zsh :)

thank you

-andrey


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/