Re: PCI/USB Vendor and model from database

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



El día 29 de diciembre de 2010 01:18, Scott James Remnant
<scott@xxxxxxxxxxxx> escribió:
> 2010/12/28 Lennart Poettering <lennart@xxxxxxxxxxxxxx>:
>> On Tue, 28.12.10 14:14, José Félix Ontañón (felixonta@xxxxxxxxx) wrote:
>>
>>> Hi, everybody!
>>>
>>> Maybe this is kinda silly question but, I wonder why isn't
>>> "ID_VENDOR_FROM_DATABASE / ID_MODEL_FROM_DATABASE"-like properties
>>> imported by default using the pretty /lib/udev/usb-db and
>>> /lib/udev/pci-db commands for every founded pci/usb device?
>>>
>>> I mean, by adding this simple rules:
>>>
>>> SUBSYSTEMS=="usb", IMPORT{program}="usb-db %p"
>>> SUBSYSTEMS=="pci", IMPORT{program}="pci-db %p"
>>>
>>> I think this properties are very useful for apps that discover
>>> hardware through udev, so they will not have to reinvent the wheel by
>>> finding vendor/product names by themselves. Don't you think?
>>
>> The database lookup is a linear search. As long as we invoke it only for
>> a small subset of devices that doesn't really matter much. But if we
>> start to look it up for every device we should probably spend the time
>> to improve the db lookup first.
>>
>> It's simply a question of efficiency.
>>
> One thing that might be interesting is if we could do the lookup at
> the point of query, then store the answer back in the db for others to
> use later.
>
> That way we're efficient if nobody cares, and lose that efficiency
> when they do (but only for the devices they query), and subsequently
> efficient because the answer is cached.
>
> This veers a bit dangerously towards having apps that link with
> libudev process rules though?
>
> Scott
>

First thing coming to my mind: there's not enough pci/usb devices
present on the system for increasing the computational cost
significantly. Querying the vendor/model names will be performed only
one time, at udev running, and then only one time on "add" action for
this subsystems. Am i wrong?

Anyway, taking care about the efficiency, the Scott solutions sounds
good to me but implies development on udev directly. I'm writing some
apps using udev so, in the meantime, will be really nice if some more
questions could be answered:

Is it acceptable to add the mentioned udev rule for a system
application using udev? I mean, i.e. udisk add some rules for
importing some props. And for a desktop app? Is it acceptable too?

I think it's quite comfortable, for me as desktop app coder, to
delegate on udev the vendor/model name querying, more if we think udev
provides the cool pci-db and usb-db commands.

Cheers!

-- 
http://fontanon.org
--
To unsubscribe from this list: send the line "unsubscribe linux-hotplug" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Kernel]     [Linux DVB]     [Asterisk Internet PBX]     [DCCP]     [Netdev]     [X.org]     [Util Linux NG]     [Fedora Women]     [ALSA Devel]     [Linux USB]

  Powered by Linux