Please CC me on any responses as I'm not subscribed to lkml. A while back I posted (https://lkml.org/lkml/2009/10/1/334) a patch to tag *_device_id tables into sections so that one could easily extract an inventory a linux kernel binary to determine what hardware it supports. Since that time, I have pursued another solution, namely kdrvscan. kdrvscan is a small command line program which fingerprints the symbols listed in System.map. This program has the advantage of not requiring any change to the kernel binary. However, it also commits the cardinal sin of importing kernel headers into user space. The source code is attached along with a simple Makefile that works on my system. Before I go much further in cleaning it up I'm wondering, does this approach make sense? Could a utility like this be included upstream? Nathaniel