On Sun, Dec 15, 2013 at 10:18 AM, Martin Mares <mj@xxxxxx> wrote: > Hello Kay, > >> Libpci and its linear search through megabytes of text files for evey >> new query is too inefficient, that we cannot afford to use it during >> early bootup. It was the largest hit left in bootup profiling on >> machines booting userspace in the sub-1-second range on common >> machines. It was probably never meant to provide efficient queries, >> but it's the reason we can never use it during early boot. > > I do not know what you are speaking about -- libpci definitely does > not perform linear scans on pci.ids. It builds a hash table from pci.ids > on the first query and and all subsequent queries are O(1) on average. It does that per process doing that, and that's the problem for how udev works/worked. The binary hwdb is on-disk and can be mmaped, and there is no difference between initialization, first, or subsequent queries. Kay -- To unsubscribe from this list: send the line "unsubscribe linux-pci" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html