Messages in this thread | | | Date | Wed, 18 Sep 2019 14:45:07 -0700 | From | Ira Weiny <> | Subject | Re: [PATCH] libnvdimm/nfit_test: Fix acpi_handle redefinition |
| |
On Tue, Sep 17, 2019 at 09:21:49PM -0700, Nathan Chancellor wrote: > After commit 62974fc389b3 ("libnvdimm: Enable unit test infrastructure > compile checks"), clang warns: > > In file included from > ../drivers/nvdimm/../../tools/testing/nvdimm/test/iomap.c:15: > ../drivers/nvdimm/../../tools/testing/nvdimm/test/nfit_test.h:206:15: > warning: redefinition of typedef 'acpi_handle' is a C11 feature > [-Wtypedef-redefinition] > typedef void *acpi_handle; > ^ > ../include/acpi/actypes.h:424:15: note: previous definition is here > typedef void *acpi_handle; /* Actually a ptr to a NS Node */ > ^ > 1 warning generated. > > The include chain: > > iomap.c -> > linux/acpi.h -> > acpi/acpi.h -> > acpi/actypes.h > nfit_test.h > > Avoid this by including linux/acpi.h in nfit_test.h, which allows us to > remove both the typedef and the forward declaration of acpi_object. > > Link: https://github.com/ClangBuiltLinux/linux/issues/660 > Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Reviewed-by: Ira Weiny <ira.weiny@intel.com>
> --- > > I know that every maintainer has their own thing with the number of > includes in each header file; this issue can be solved in a various > number of ways, I went with the smallest diff stat. Please solve it in a > different way if you see fit :) > > tools/testing/nvdimm/test/nfit_test.h | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/tools/testing/nvdimm/test/nfit_test.h b/tools/testing/nvdimm/test/nfit_test.h > index 448d686da8b1..0bf5640f1f07 100644 > --- a/tools/testing/nvdimm/test/nfit_test.h > +++ b/tools/testing/nvdimm/test/nfit_test.h > @@ -4,6 +4,7 @@ > */ > #ifndef __NFIT_TEST_H__ > #define __NFIT_TEST_H__ > +#include <linux/acpi.h> > #include <linux/list.h> > #include <linux/uuid.h> > #include <linux/ioport.h> > @@ -202,9 +203,6 @@ struct nd_intel_lss { > __u32 status; > } __packed; > > -union acpi_object; > -typedef void *acpi_handle; > - > typedef struct nfit_test_resource *(*nfit_test_lookup_fn)(resource_size_t); > typedef union acpi_object *(*nfit_test_evaluate_dsm_fn)(acpi_handle handle, > const guid_t *guid, u64 rev, u64 func, > -- > 2.23.0 >
| |