On Wed, Nov 03, 2021 at 09:21:35PM -0500, Eric Sandeen wrote: > Move kernel stubs out of libxfs/xfs_shared.h, which is kernel > libxfs code and should not have userspace shims in it. > > Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx> > --- > > diff --git a/include/libxfs.h b/include/libxfs.h > index 24424d0e..64b44af8 100644 > --- a/include/libxfs.h > +++ b/include/libxfs.h > @@ -11,6 +11,7 @@ > #include "platform_defs.h" > #include "xfs.h" > +#include "stubs.h" > #include "list.h" > #include "hlist.h" > #include "cache.h" > diff --git a/include/stubs.h b/include/stubs.h > new file mode 100644 > index 00000000..41eaa0c4 > --- /dev/null > +++ b/include/stubs.h > @@ -0,0 +1,28 @@ > +// SPDX-License-Identifier: GPL-2.0 This needs a C-style (not C++-style) comment for SPDX compliance. (I still don't get why the committee who came up with SPDX required C++ style comments for C code...) > + Needs a copyright statement too. > +/* > + * Stub out unimplemented and unneeded kernel structures etc > + */ > +#ifndef STUBS_H > +#define STUBS_H > + > +struct rb_root { > +}; > + > +#define RB_ROOT (struct rb_root) { } Space after 'T' and before '('. --D > + > +typedef struct wait_queue_head { > +} wait_queue_head_t; > + > +#define init_waitqueue_head(wqh) do { } while(0) > + > +struct rhashtable { > +}; > + > +struct delayed_work { > +}; > + > +#define INIT_DELAYED_WORK(work, func) do { } while(0) > +#define cancel_delayed_work_sync(work) do { } while(0) > + > +#endif > diff --git a/libxfs/libxfs_priv.h b/libxfs/libxfs_priv.h > index 15bae1ff..32271c66 100644 > --- a/libxfs/libxfs_priv.h > +++ b/libxfs/libxfs_priv.h > @@ -41,6 +41,7 @@ > #include "platform_defs.h" > #include "xfs.h" > +#include "stubs.h" > #include "list.h" > #include "hlist.h" > #include "cache.h" > diff --git a/libxfs/xfs_shared.h b/libxfs/xfs_shared.h > index bafee48c..25c4cab5 100644 > --- a/libxfs/xfs_shared.h > +++ b/libxfs/xfs_shared.h > @@ -180,24 +180,4 @@ struct xfs_ino_geometry { > }; > -/* Faked up kernel bits */ > -struct rb_root { > -}; > - > -#define RB_ROOT (struct rb_root) { } > - > -typedef struct wait_queue_head { > -} wait_queue_head_t; > - > -#define init_waitqueue_head(wqh) do { } while(0) > - > -struct rhashtable { > -}; > - > -struct delayed_work { > -}; > - > -#define INIT_DELAYED_WORK(work, func) do { } while(0) > -#define cancel_delayed_work_sync(work) do { } while(0) > - > #endif /* __XFS_SHARED_H__ */ >