On Mon, Jan 25, 2021 at 02:41:38PM -0500, Prarit Bhargava wrote: > There are two situations where driver load messages are helpful. > > 1) Some drivers silently load on devices and debugging driver or system > failures in these cases is difficult. While some drivers (networking > for example) may not completely initialize when the PCI driver probe() function > has returned, it is still useful to have some idea of driver completion. Sorry, probably it is me, but I don't understand this use case. Are you adding global to whole kernel command line boot argument to debug what and when? During boot: If device success, you will see it in /sys/bus/pci/[drivers|devices]/*. If device fails, you should get an error from that device (fix the device to return an error), or something immediately won't work and you won't see it in sysfs. During run: We have many other solutions to get debug prints during run, for example tracing, which is possible to toggle dynamically. Right now, my laptop will print 34 prints on boot and endless amount during day-to-day usage. ➜ kernel git:(rdma-next) ✗ lspci |wc -l 34 > > 2) Storage and Network device vendors have relatively short lives for > some of their hardware. Some devices may continue to function but are > problematic due to out-of-date firmware or other issues. Maintaining > a database of the hardware is out-of-the-question in the kernel as it would > require constant updating. Outputting a message in the log would allow > different OSes to determine if the problem hardware was truly supported or not. And rely on some dmesg output as a true source of supported/not supported and making this ABI which needs knob in command line. ? > > Add optional driver load messages from the PCI core that indicates which > driver was loaded, on which slot, and on which device. Why don't you add simple pr_debug(..) without any knob? You will be able to enable/disable it through dynamic prints facility. Thanks