On Mon, Jun 18, 2018 at 09:47:48PM -0700, Christoph Hellwig wrote: > On Tue, Jun 19, 2018 at 02:05:23PM +1000, NeilBrown wrote: > > From: NeilBrown <neilb@xxxxxxxx> > > Date: Tue, 19 Jun 2018 13:59:16 +1000 > > Subject: [PATCH] kbuild/xfs: example modobj-m conversion > > > > This is a demonstration patch to show how > > xfs can be changed to make use of the proposed modobj-m= > > functionality, should the xfs developers want that. > > Well, IFF we go with this new functionality I think everyone should > be using it instead of the current hacks. > > So text like the above should be in the series cover letter, and this > patch should have an actual description.. > > I see no argument against these changes, but I've also added the XFS > list. Yes, please send the entire series to the xfs list in the future. It looks like a reasonable reorganization of makefile goop. :) (Will dig for the rest of the series on lkml tomorrow I guess.) > > > > Signed-off-by: NeilBrown <neilb@xxxxxxxx> > > --- > > fs/xfs/Makefile | 78 ++------------------------------------------------ > > fs/xfs/libxfs/Makefile | 43 ++++++++++++++++++++++++++++ > > fs/xfs/scrub/Makefile | 29 +++++++++++++++++++ > > 3 files changed, 74 insertions(+), 76 deletions(-) > > create mode 100644 fs/xfs/libxfs/Makefile > > create mode 100644 fs/xfs/scrub/Makefile > > > > diff --git a/fs/xfs/Makefile b/fs/xfs/Makefile > > index 2f3f75a7f180..0ba854045fe9 100644 > > --- a/fs/xfs/Makefile > > +++ b/fs/xfs/Makefile > > @@ -15,47 +15,7 @@ obj-$(CONFIG_XFS_FS) += xfs.o > > xfs-y += xfs_trace.o > > > > # build the libxfs code first > > -xfs-y += $(addprefix libxfs/, \ > > - xfs_ag.o \ > > - xfs_alloc.o \ > > - xfs_alloc_btree.o \ > > - xfs_attr.o \ > > - xfs_attr_leaf.o \ > > - xfs_attr_remote.o \ > > - xfs_bit.o \ > > - xfs_bmap.o \ > > - xfs_bmap_btree.o \ > > - xfs_btree.o \ > > - xfs_da_btree.o \ > > - xfs_da_format.o \ > > - xfs_defer.o \ > > - xfs_dir2.o \ > > - xfs_dir2_block.o \ > > - xfs_dir2_data.o \ > > - xfs_dir2_leaf.o \ > > - xfs_dir2_node.o \ > > - xfs_dir2_sf.o \ > > - xfs_dquot_buf.o \ > > - xfs_ialloc.o \ > > - xfs_ialloc_btree.o \ > > - xfs_iext_tree.o \ > > - xfs_inode_fork.o \ > > - xfs_inode_buf.o \ > > - xfs_log_rlimit.o \ > > - xfs_ag_resv.o \ > > - xfs_rmap.o \ > > - xfs_rmap_btree.o \ > > - xfs_refcount.o \ > > - xfs_refcount_btree.o \ > > - xfs_sb.o \ > > - xfs_symlink_remote.o \ > > - xfs_trans_resv.o \ > > - xfs_types.o \ > > - ) > > -# xfs_rtbitmap is shared with libxfs > > -xfs-$(CONFIG_XFS_RT) += $(addprefix libxfs/, \ > > - xfs_rtbitmap.o \ > > - ) > > +xfs-y += libxfs/ > > > > # highlevel code > > xfs-y += xfs_aops.o \ > > @@ -127,38 +87,4 @@ xfs-$(CONFIG_SYSCTL) += xfs_sysctl.o > > xfs-$(CONFIG_COMPAT) += xfs_ioctl32.o > > xfs-$(CONFIG_EXPORTFS_BLOCK_OPS) += xfs_pnfs.o > > > > -# online scrub/repair > > -ifeq ($(CONFIG_XFS_ONLINE_SCRUB),y) > > - > > -# Tracepoints like to blow up, so build that before everything else > > - > > -xfs-y += $(addprefix scrub/, \ > > - trace.o \ > > - agheader.o \ > > - alloc.o \ > > - attr.o \ > > - bmap.o \ > > - btree.o \ > > - common.o \ > > - dabtree.o \ > > - dir.o \ > > - ialloc.o \ > > - inode.o \ > > - parent.o \ > > - refcount.o \ > > - rmap.o \ > > - scrub.o \ > > - symlink.o \ > > - ) > > - > > -xfs-$(CONFIG_XFS_RT) += scrub/rtbitmap.o > > -xfs-$(CONFIG_XFS_QUOTA) += scrub/quota.o > > - > > -# online repair > > -ifeq ($(CONFIG_XFS_ONLINE_REPAIR),y) > > -xfs-y += $(addprefix scrub/, \ > > - agheader_repair.o \ > > - repair.o \ > > - ) > > -endif > > -endif > > +xfs-$(CONFIG_XFS_ONLINE_SCRUB) += scrub/ > > diff --git a/fs/xfs/libxfs/Makefile b/fs/xfs/libxfs/Makefile > > new file mode 100644 > > index 000000000000..9b90c289bdda > > --- /dev/null > > +++ b/fs/xfs/libxfs/Makefile > > @@ -0,0 +1,43 @@ > > +# SPDX-License-Identifier: GPL-2.0 > > + > > +ccflags-y += -I$(src)/.. > > + > > +# xfs_rtbitmap is shared with libxfs > > +xobj-$(CONFIG_XFS_RT) += xfs_rtbitmap.o > > + > > +modobj-$(CONFIG_XFS_FS) += xfs_ag.o \ > > + xfs_alloc.o \ > > + xfs_alloc_btree.o \ > > + xfs_attr.o \ > > + xfs_attr_leaf.o \ > > + xfs_attr_remote.o \ > > + xfs_bit.o \ > > + xfs_bmap.o \ > > + xfs_bmap_btree.o \ > > + xfs_btree.o \ > > + xfs_da_btree.o \ > > + xfs_da_format.o \ > > + xfs_defer.o \ > > + xfs_dir2.o \ > > + xfs_dir2_block.o \ > > + xfs_dir2_data.o \ > > + xfs_dir2_leaf.o \ > > + xfs_dir2_node.o \ > > + xfs_dir2_sf.o \ > > + xfs_dquot_buf.o \ > > + xfs_ialloc.o \ > > + xfs_ialloc_btree.o \ > > + xfs_iext_tree.o \ > > + xfs_inode_fork.o \ > > + xfs_inode_buf.o \ > > + xfs_log_rlimit.o \ > > + xfs_ag_resv.o \ > > + xfs_rmap.o \ > > + xfs_rmap_btree.o \ > > + xfs_refcount.o \ > > + xfs_refcount_btree.o \ > > + xfs_sb.o \ > > + xfs_symlink_remote.o \ > > + xfs_trans_resv.o \ > > + xfs_types.o \ > > + $(xobj-y) > > diff --git a/fs/xfs/scrub/Makefile b/fs/xfs/scrub/Makefile > > new file mode 100644 > > index 000000000000..f91818a0e6ee > > --- /dev/null > > +++ b/fs/xfs/scrub/Makefile > > @@ -0,0 +1,29 @@ > > +# SPDX-License-Identifier: GPL-2.0 > > + > > +# Tracepoints like to blow up, so build that before everything else This comment ought to stay with trace.o below because that's what it applies to. --D > > + > > +ccflags-y += -I$(src)/.. > > +ccflags-y += -I$(src)/../libxfs > > + > > +xobj-$(CONFIG_XFS_RT) += rtbitmap.o > > +xobj-$(CONFIG_XFS_QUOTA) += quota.o > > +xobj-$(CONFIG_XFS_ONLINE_REPAIR)+= agheader_repair.o \ > > + repair.o > > + > > +modobj-$(CONFIG_XFS_FS) += trace.o \ > > + agheader.o \ > > + alloc.o \ > > + attr.o \ > > + bmap.o \ > > + btree.o \ > > + common.o \ > > + dabtree.o \ > > + dir.o \ > > + ialloc.o \ > > + inode.o \ > > + parent.o \ > > + refcount.o \ > > + rmap.o \ > > + scrub.o \ > > + symlink.o \ > > + $(xobj-y) > > -- > > 2.14.0.rc0.dirty > > > > > ---end quoted text--- > -- > To unsubscribe from this list: send the line "unsubscribe linux-xfs" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-kbuild" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html