summaryrefslogtreecommitdiffstats
path: root/drivers/misc
diff options
context:
space:
mode:
authorIan Abbott <abbotti@mev.co.uk>2024-01-19 13:20:17 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2024-01-30 16:19:32 -0800
commit1c9a697bc9b2f77bf6b9efef63d49a72580990e9 (patch)
tree3b68e9558c88997276bc0791e03ff0c4e50e89e0 /drivers/misc
parent41bccc98fb7931d63d03f326a746ac4d429c1dd3 (diff)
downloadlinux-1c9a697bc9b2f77bf6b9efef63d49a72580990e9.tar.gz
linux-1c9a697bc9b2f77bf6b9efef63d49a72580990e9.tar.bz2
linux-1c9a697bc9b2f77bf6b9efef63d49a72580990e9.zip
misc: hpilo: fix inconsistent device numbers
Each iLO device is allocated `max_ccb` minor device numbers (one for each channel). When `ilo_probe()` calls `device_create()` in a loop, the minor device numbers passed to `device_create()` start at 0. For consistency with the call to `cdev_add()`, and for consistency with the calls to `device_destroy()` from `ilo_remove()`, the minor device numbers passed to `device_create()` should start at the value in the variable `start`. Fix it. This is a logical bug rather than an actual bug, because the number of supported devices is `MAX_ILO_DEV` which is defined as `1`. Signed-off-by: Ian Abbott <abbotti@mev.co.uk> Link: https://lore.kernel.org/r/20240119132032.106053-2-abbotti@mev.co.uk Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/misc')
-rw-r--r--drivers/misc/hpilo.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/misc/hpilo.c b/drivers/misc/hpilo.c
index f1b74d3f8958..3428a0bd5550 100644
--- a/drivers/misc/hpilo.c
+++ b/drivers/misc/hpilo.c
@@ -842,7 +842,7 @@ static int ilo_probe(struct pci_dev *pdev,
for (minor = 0 ; minor < max_ccb; minor++) {
struct device *dev;
dev = device_create(&ilo_class, &pdev->dev,
- MKDEV(ilo_major, minor), NULL,
+ MKDEV(ilo_major, start + minor), NULL,
"hpilo!d%dccb%d", devnum, minor);
if (IS_ERR(dev))
dev_err(&pdev->dev, "Could not create files\n");