Functions pci_iov_sysfs_link() and pci_iov_remove_virtfn() take a Virtual Function (VF) ID as an integer value and then use it to assemble the desired name for the corresponding sysfs attribute (a symbolic link in this case). Internally, both functions use sprintf() to create the desired attribute name, and leverage the "%u" modifier as part of the format string used to do so. However, the VF ID is passed to both functions as a signed integer type variable, which makes the variable type and format string modifier somewhat incompatible. Thus, change the modifier used in the format string to "%d" to better match the variable type. No change to functionality intended. Signed-off-by: Krzysztof Wilczyński <kw@xxxxxxxxx> --- drivers/pci/iov.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/pci/iov.c b/drivers/pci/iov.c index dafdc652fcd0..056bba3b4236 100644 --- a/drivers/pci/iov.c +++ b/drivers/pci/iov.c @@ -140,7 +140,7 @@ int pci_iov_sysfs_link(struct pci_dev *dev, char buf[VIRTFN_ID_LEN]; int rc; - sprintf(buf, "virtfn%u", id); + sprintf(buf, "virtfn%d", id); rc = sysfs_create_link(&dev->dev.kobj, &virtfn->dev.kobj, buf); if (rc) goto failed; @@ -322,7 +322,7 @@ void pci_iov_remove_virtfn(struct pci_dev *dev, int id) if (!virtfn) return; - sprintf(buf, "virtfn%u", id); + sprintf(buf, "virtfn%d", id); sysfs_remove_link(&dev->dev.kobj, buf); /* * pci_stop_dev() could have been called for this virtfn already, -- 2.33.0