* [PATCH] Shut off pci_find_device warnings when the deprecated pci functions are enabled.
@ 2009-07-24 9:41 Andi Kleen
2009-07-28 16:55 ` Jesse Barnes
0 siblings, 1 reply; 5+ messages in thread
From: Andi Kleen @ 2009-07-24 9:41 UTC (permalink / raw)
To: jbarnes, linux-kernel
Shut off pci_find_device warnings when the deprecated pci functions are enabled.
Shut off the long standing
linux/drivers/pci/search.c:144: warning: 'pci_find_device' is deprecated (declared at linux/drivers/pci/search.c:136)
linux/drivers/pci/search.c:144: warning: 'pci_find_device' is deprecated (declared at linux/drivers/pci/search.c:136)
warnings that appear on every build when CONFIG_PCI_LEGACY is enabled.
gcc warns for the use in EXPORT_SYMBOL
I moved these to a separate file and disabled the warning in the Makefile for that file.
Signed-off-by: Andi Kleen <ak@linux.intel.com>
---
drivers/pci/Makefile | 3 +++
drivers/pci/legacy.c | 34 ++++++++++++++++++++++++++++++++++
drivers/pci/search.c | 31 -------------------------------
3 files changed, 37 insertions(+), 31 deletions(-)
Index: linux-2.6.31-rc3-ak/drivers/pci/Makefile
===================================================================
--- linux-2.6.31-rc3-ak.orig/drivers/pci/Makefile
+++ linux-2.6.31-rc3-ak/drivers/pci/Makefile
@@ -8,6 +8,9 @@ obj-y += access.o bus.o probe.o remove.
obj-$(CONFIG_PROC_FS) += proc.o
obj-$(CONFIG_SYSFS) += slot.o
+obj-$(CONFIG_PCI_LEGACY) += legacy.o
+CFLAGS_legacy.o += -Wno-deprecated-declarations
+
# Build PCI Express stuff if needed
obj-$(CONFIG_PCIEPORTBUS) += pcie/
Index: linux-2.6.31-rc3-ak/drivers/pci/legacy.c
===================================================================
--- /dev/null
+++ linux-2.6.31-rc3-ak/drivers/pci/legacy.c
@@ -0,0 +1,34 @@
+#include <linux/init.h>
+#include <linux/pci.h>
+#include <linux/module.h>
+#include <linux/interrupt.h>
+#include "pci.h"
+
+/**
+ * pci_find_device - begin or continue searching for a PCI device by vendor/device id
+ * @vendor: PCI vendor id to match, or %PCI_ANY_ID to match all vendor ids
+ * @device: PCI device id to match, or %PCI_ANY_ID to match all device ids
+ * @from: Previous PCI device found in search, or %NULL for new search.
+ *
+ * Iterates through the list of known PCI devices. If a PCI device is found
+ * with a matching @vendor and @device, a pointer to its device structure is
+ * returned. Otherwise, %NULL is returned.
+ * A new search is initiated by passing %NULL as the @from argument.
+ * Otherwise if @from is not %NULL, searches continue from next device
+ * on the global list.
+ *
+ * NOTE: Do not use this function any more; use pci_get_device() instead, as
+ * the PCI device returned by this function can disappear at any moment in
+ * time.
+ */
+struct pci_dev *pci_find_device(unsigned int vendor, unsigned int device,
+ struct pci_dev *from)
+{
+ struct pci_dev *pdev;
+
+ pci_dev_get(from);
+ pdev = pci_get_subsys(vendor, device, PCI_ANY_ID, PCI_ANY_ID, from);
+ pci_dev_put(pdev);
+ return pdev;
+}
+EXPORT_SYMBOL(pci_find_device);
Index: linux-2.6.31-rc3-ak/drivers/pci/search.c
===================================================================
--- linux-2.6.31-rc3-ak.orig/drivers/pci/search.c
+++ linux-2.6.31-rc3-ak/drivers/pci/search.c
@@ -113,37 +113,6 @@ pci_find_next_bus(const struct pci_bus *
return b;
}
-#ifdef CONFIG_PCI_LEGACY
-/**
- * pci_find_device - begin or continue searching for a PCI device by vendor/device id
- * @vendor: PCI vendor id to match, or %PCI_ANY_ID to match all vendor ids
- * @device: PCI device id to match, or %PCI_ANY_ID to match all device ids
- * @from: Previous PCI device found in search, or %NULL for new search.
- *
- * Iterates through the list of known PCI devices. If a PCI device is found
- * with a matching @vendor and @device, a pointer to its device structure is
- * returned. Otherwise, %NULL is returned.
- * A new search is initiated by passing %NULL as the @from argument.
- * Otherwise if @from is not %NULL, searches continue from next device
- * on the global list.
- *
- * NOTE: Do not use this function any more; use pci_get_device() instead, as
- * the PCI device returned by this function can disappear at any moment in
- * time.
- */
-struct pci_dev *pci_find_device(unsigned int vendor, unsigned int device,
- struct pci_dev *from)
-{
- struct pci_dev *pdev;
-
- pci_dev_get(from);
- pdev = pci_get_subsys(vendor, device, PCI_ANY_ID, PCI_ANY_ID, from);
- pci_dev_put(pdev);
- return pdev;
-}
-EXPORT_SYMBOL(pci_find_device);
-#endif /* CONFIG_PCI_LEGACY */
-
/**
* pci_get_slot - locate PCI device for a given PCI slot
* @bus: PCI bus on which desired PCI device resides
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] Shut off pci_find_device warnings when the deprecated pci functions are enabled.
2009-07-24 9:41 [PATCH] Shut off pci_find_device warnings when the deprecated pci functions are enabled Andi Kleen
@ 2009-07-28 16:55 ` Jesse Barnes
2009-07-29 0:16 ` Alex Chiang
0 siblings, 1 reply; 5+ messages in thread
From: Jesse Barnes @ 2009-07-28 16:55 UTC (permalink / raw)
To: Andi Kleen; +Cc: linux-kernel
On Fri, 24 Jul 2009 11:41:15 +0200
Andi Kleen <andi@firstfloor.org> wrote:
> Shut off pci_find_device warnings when the deprecated pci functions
> are enabled.
>
> Shut off the long standing
>
> linux/drivers/pci/search.c:144: warning: 'pci_find_device' is
> deprecated (declared at linux/drivers/pci/search.c:136)
> linux/drivers/pci/search.c:144: warning: 'pci_find_device' is
> deprecated (declared at linux/drivers/pci/search.c:136)
>
> warnings that appear on every build when CONFIG_PCI_LEGACY is enabled.
>
> gcc warns for the use in EXPORT_SYMBOL
>
> I moved these to a separate file and disabled the warning in the
> Makefile for that file.
>
> Signed-off-by: Andi Kleen <ak@linux.intel.com>
Applied to linux-next, thanks.
--
Jesse Barnes, Intel Open Source Technology Center
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] Shut off pci_find_device warnings when the deprecated pci functions are enabled.
2009-07-28 16:55 ` Jesse Barnes
@ 2009-07-29 0:16 ` Alex Chiang
2009-07-29 0:28 ` Andi Kleen
0 siblings, 1 reply; 5+ messages in thread
From: Alex Chiang @ 2009-07-29 0:16 UTC (permalink / raw)
To: Jesse Barnes; +Cc: Andi Kleen, linux-kernel, kernel-janitors, kernelnewbies
* Jesse Barnes <jesse.barnes@intel.com>:
> On Fri, 24 Jul 2009 11:41:15 +0200
> Andi Kleen <andi@firstfloor.org> wrote:
>
> > Shut off pci_find_device warnings when the deprecated pci functions
> > are enabled.
> >
> > Shut off the long standing
> >
> > linux/drivers/pci/search.c:144: warning: 'pci_find_device' is
> > deprecated (declared at linux/drivers/pci/search.c:136)
> > linux/drivers/pci/search.c:144: warning: 'pci_find_device' is
> > deprecated (declared at linux/drivers/pci/search.c:136)
> >
> > warnings that appear on every build when CONFIG_PCI_LEGACY is enabled.
> >
> > gcc warns for the use in EXPORT_SYMBOL
> >
> > I moved these to a separate file and disabled the warning in the
> > Makefile for that file.
> >
> > Signed-off-by: Andi Kleen <ak@linux.intel.com>
>
> Applied to linux-next, thanks.
Maybe it's too late now, but I thought those warnings were
supposed to motivate people to convert old, buggy drivers to get
off the deprecated interface.
That's what finally motivated me to get rid of pci_find_slot()
earlier...
By the way, this would also be a perfect kernelnewbies/kernel
janitor cleanup, as it would require actually digging into
drivers and making real, substantial changes as opposed to
whitespace/checkpatch/typo patches.
Just a thought.
/ac
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] Shut off pci_find_device warnings when the deprecated pci functions are enabled.
2009-07-29 0:16 ` Alex Chiang
@ 2009-07-29 0:28 ` Andi Kleen
2009-07-29 0:32 ` Alex Chiang
0 siblings, 1 reply; 5+ messages in thread
From: Andi Kleen @ 2009-07-29 0:28 UTC (permalink / raw)
To: Alex Chiang
Cc: Jesse Barnes, Andi Kleen, linux-kernel, kernel-janitors,
kernelnewbies
> Maybe it's too late now, but I thought those warnings were
> supposed to motivate people to convert old, buggy drivers to get
> off the deprecated interface.
Yes they are, but this warning instance was not for a old driver,
but for the EXPORT_SYMBOL defining the legacy function.
If any driver uses it it'll still warn.
-Andi
--
ak@linux.intel.com -- Speaking for myself only.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] Shut off pci_find_device warnings when the deprecated pci functions are enabled.
2009-07-29 0:28 ` Andi Kleen
@ 2009-07-29 0:32 ` Alex Chiang
0 siblings, 0 replies; 5+ messages in thread
From: Alex Chiang @ 2009-07-29 0:32 UTC (permalink / raw)
To: Andi Kleen; +Cc: Jesse Barnes, linux-kernel, kernel-janitors, kernelnewbies
* Andi Kleen <andi@firstfloor.org>:
> > Maybe it's too late now, but I thought those warnings were
> > supposed to motivate people to convert old, buggy drivers to get
> > off the deprecated interface.
>
> Yes they are, but this warning instance was not for a old driver,
> but for the EXPORT_SYMBOL defining the legacy function.
>
> If any driver uses it it'll still warn.
Ok, I've been corrected. :)
I still think it would be a good learning project for someone to
audit the tree and see if they can eliminate the usages of
pci_find_device().
Thanks,
/ac
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2009-07-29 0:32 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-07-24 9:41 [PATCH] Shut off pci_find_device warnings when the deprecated pci functions are enabled Andi Kleen
2009-07-28 16:55 ` Jesse Barnes
2009-07-29 0:16 ` Alex Chiang
2009-07-29 0:28 ` Andi Kleen
2009-07-29 0:32 ` Alex Chiang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox