pr_*() funkce jsou stejné jako plain printk() , ale s KERN_xxx úroveň protokolu již zahrnuta.
dev_*() funkce jsou stejné jako odpovídající pr_*() funkcí, ale také vytisknout identifikační informace o struct device .
Pokud se vaše zpráva týká nějakého zařízení (což je normální případ v ovladačích), měli byste použít dev_*() .Například v ovladači USB:
struct usb_device *usb_dev;
dev_info(&usb_dev->dev, "hello\n");
struct usb_interface *usb_intf;
dev_info(&usb_intf->dev, "hello\n");
nebo v ovladači PCI:
struct pci_dev *pci;
dev_info(&pci->dev, "hello\n");
dev_* funkce jsou podobné pr_* , ale také vytisknout některé informace o zařízení (struct device ), jim předán jako první argument. Tyto informace mohou pomoci filtrovat systémový protokol pro zprávy, které patří konkrétnímu zařízení.
Můžete tedy použít dev_* funkce namísto pr_* kdykoli je zpráva použitelná pro konkrétní zařízení (a máte její destriptor).