Message ID | 1581671785-25125-1-git-send-email-qiwuchen55@gmail.com |
---|---|
State | Accepted |
Delegated to: | David Miller |
Headers | show |
Series | drivers/ide: convert to list_for_each_entry_safe() | expand |
From: qiwuchen55@gmail.com Date: Fri, 14 Feb 2020 17:16:25 +0800 > From: chenqiwu <chenqiwu@xiaomi.com> > > Use list_for_each_entry_safe() instead of list_for_each_safe() > to simplify the code. > > Signed-off-by: chenqiwu <chenqiwu@xiaomi.com> Applied, thank you.
On Fri, Feb 14, 2020 at 05:16:25PM +0800, qiwuchen55@gmail.com wrote: > From: chenqiwu <chenqiwu@xiaomi.com> > > Use list_for_each_entry_safe() instead of list_for_each_safe() > to simplify the code. > > Signed-off-by: chenqiwu <chenqiwu@xiaomi.com> > --- > drivers/ide/ide-scan-pci.c | 8 +++----- > 1 file changed, 3 insertions(+), 5 deletions(-) > > diff --git a/drivers/ide/ide-scan-pci.c b/drivers/ide/ide-scan-pci.c > index acf8748..383f0d8 100644 > --- a/drivers/ide/ide-scan-pci.c > +++ b/drivers/ide/ide-scan-pci.c > @@ -89,8 +89,7 @@ static int __init ide_scan_pcidev(struct pci_dev *dev) > static int __init ide_scan_pcibus(void) > { > struct pci_dev *dev = NULL; > - struct pci_driver *d; > - struct list_head *l, *n; > + struct pci_driver *d, *tmp; > > pre_init = 0; > for_each_pci_dev(dev) > @@ -101,9 +100,8 @@ static int __init ide_scan_pcibus(void) > * are post init. > */ > > - list_for_each_safe(l, n, &ide_pci_drivers) { > - list_del(l); > - d = list_entry(l, struct pci_driver, node); > + list_for_each_entry_safe(d, tmp, &ide_pci_drivers, node) { > + list_del(d->node); Just in case this wasn't reported yet. drivers/ide/ide-scan-pci.c: In function 'ide_scan_pcibus': drivers/ide/ide-scan-pci.c:104:13: error: incompatible type for argument 1 of 'list_del' 104 | list_del(d->node); | ~^~~~~~ | | | struct list_head In file included from include/linux/module.h:12, from drivers/ide/ide-scan-pci.c:12: include/linux/list.h:144:47: note: expected 'struct list_head *' but argument is of type 'struct list_head' 144 | static inline void list_del(struct list_head *entry) Guenter
diff --git a/drivers/ide/ide-scan-pci.c b/drivers/ide/ide-scan-pci.c index acf8748..383f0d8 100644 --- a/drivers/ide/ide-scan-pci.c +++ b/drivers/ide/ide-scan-pci.c @@ -89,8 +89,7 @@ static int __init ide_scan_pcidev(struct pci_dev *dev) static int __init ide_scan_pcibus(void) { struct pci_dev *dev = NULL; - struct pci_driver *d; - struct list_head *l, *n; + struct pci_driver *d, *tmp; pre_init = 0; for_each_pci_dev(dev) @@ -101,9 +100,8 @@ static int __init ide_scan_pcibus(void) * are post init. */ - list_for_each_safe(l, n, &ide_pci_drivers) { - list_del(l); - d = list_entry(l, struct pci_driver, node); + list_for_each_entry_safe(d, tmp, &ide_pci_drivers, node) { + list_del(d->node); if (__pci_register_driver(d, d->driver.owner, d->driver.mod_name)) printk(KERN_ERR "%s: failed to register %s driver\n",