> -----Original Message----- > From: K, Narendra > Sent: Monday, March 07, 2011 3:56 PM > To: Greg KH > Cc: a.beregalov@xxxxxxxxx; linux-next@xxxxxxxxxxxxxxx; > jbarnes@xxxxxxxxxxxxxxxx; linux-pci@xxxxxxxxxxxxxxx; linux- > hotplug@xxxxxxxxxxxxxxx; netdev@xxxxxxxxxxxxxxx; mjg@xxxxxxxxxx; > Domsch, Matt; Rose, Charles; Hargrave, Jordan; Iyer, Shyam; > sfr@xxxxxxxxxxxxxxxx > Subject: Re: [PATCH V4] Export ACPI _DSM provided firmware instance > number and string name to sysfs > > On Tue, Mar 08, 2011 at 01:26:16AM +0530, Greg KH wrote: > > On Mon, Mar 07, 2011 at 11:44:52AM -0800, Narendra_K@xxxxxxxx wrote: > > > --- a/drivers/pci/pci-label.c > > > +++ b/drivers/pci/pci-label.c > > > @@ -29,7 +29,9 @@ > > > #include <linux/nls.h> > > > #include <linux/acpi.h> > > > #include <linux/pci-acpi.h> > > > +#ifdef CONFIG_ACPI > > > #include <acpi/acpi_drivers.h> > > > +#endif > > > > You should never need a #ifdef in a .c file for an include file. If > so, > > something is really wrong. > > I agree. Also, i realized that the include was not required to address > the > reported error. Please find the revised patch here. > > From: Narendra K <narendra_k@xxxxxxxx> > Subject: [PATCH] Fix compilation error when CONFIG_ACPI is unset > > This patch fixes compilation error descibed below introduced by > the commit 6058989bad05b82e78baacce69ec14f27a11b5fd > > drivers/pci/pci-label.c: In function âpci_create_firmware_label_filesâ: > drivers/pci/pci-label.c:366:2: error: implicit declaration of function > âdevice_has_dsmâ > > Signed-off-by: Narendra K <narendra_k@xxxxxxxx> > --- > drivers/pci/pci-label.c | 6 ++++++ > 1 files changed, 6 insertions(+), 0 deletions(-) > > diff --git a/drivers/pci/pci-label.c b/drivers/pci/pci-label.c > index 824e247..8c80138 100644 > --- a/drivers/pci/pci-label.c > +++ b/drivers/pci/pci-label.c > @@ -174,6 +174,12 @@ pci_remove_acpi_index_label_files(struct pci_dev > *pdev) > return -1; > } > > +static inline bool > +device_has_dsm(struct device *dev) > +{ > + return false; > +} > + > #else > > static const char device_label_dsm_uuid[] = { > -- > 1.7.3.1 > > With regards, > Narendra K So this works and fixes the additional build failure. I tested with CONFIG_ACPI set/unset and with "make allmodconfig" Additionally I found that including acpi/apci_drivers.h is not necessary and introduces these warnings.. The below patch fixes the additional warnigs.. In file included from drivers/pci/pci-label.c:32: include/acpi/acpi_drivers.h:103: warning: âstruct acpi_deviceâ declared inside parameter list include/acpi/acpi_drivers.h:103: warning: its scope is only this definition or declaration, which is probably not what you want include/acpi/acpi_drivers.h:107: warning: âstruct acpi_pci_rootâ declared inside parameter list Signed-off-by: Shyam Iyer <shyam_iyer@xxxxxxxx> --- drivers/pci/pci-label.c | 1 - 1 files changed, 0 insertions(+), 1 deletions(-) diff --git a/drivers/pci/pci-label.c b/drivers/pci/pci-label.c index bf4ebee..488b0ce 100644 --- a/drivers/pci/pci-label.c +++ b/drivers/pci/pci-label.c @@ -29,7 +29,6 @@ #include <linux/nls.h> #include <linux/acpi.h> #include <linux/pci-acpi.h> -#include <acpi/acpi_drivers.h> #include <acpi/acpi_bus.h> #include "pci.h" -- 1.7.1 ÿô.nÇ·®+%˱é¥wÿº{.nÇ·¥{±þw±·ø¡Ü}©²ÆzÚj:+v¨þø®w¥þàÞ¨è&¢)ß«a¶Úÿûz¹ÞúÝjÿwèf