On Sun, Nov 12, 2023 at 03:08:40PM +0800, shiqiang.deng wrote: > In lib/test_ida.c, we found that IDA_BUG_ON > uses the ida_dump() function. When __ Kernel__ is not defined, > a missing-prototypes error will occur during compilation. > Fix it now. I'm confused. What were you doing to get this error? > Signed-off-by: shiqiang.deng <shiqiang.deng213@xxxxxxxxx> > --- > include/linux/idr.h | 4 ++++ > lib/idr.c | 2 +- > 2 files changed, 5 insertions(+), 1 deletion(-) > > diff --git a/include/linux/idr.h b/include/linux/idr.h > index a0dce14090a9..e091efdc0cf7 100644 > --- a/include/linux/idr.h > +++ b/include/linux/idr.h > @@ -109,6 +109,10 @@ static inline void idr_set_cursor(struct idr *idr, unsigned int val) > #define idr_unlock_irqrestore(idr, flags) \ > xa_unlock_irqrestore(&(idr)->idr_rt, flags) > > +#ifndef __KERNEL__ > +void ida_dump(struct ida *ida); > +#endif > + > void idr_preload(gfp_t gfp_mask); > > int idr_alloc(struct idr *, void *ptr, int start, int end, gfp_t); > diff --git a/lib/idr.c b/lib/idr.c > index 13f2758c2377..66d0c6e30588 100644 > --- a/lib/idr.c > +++ b/lib/idr.c > @@ -589,7 +589,7 @@ static void ida_dump_entry(void *entry, unsigned long index) > } > } > > -static void ida_dump(struct ida *ida) > +void ida_dump(struct ida *ida) > { > struct xarray *xa = &ida->xa; > pr_debug("ida: %p node %p free %d\n", ida, xa->xa_head, > -- > 2.30.0 >