From: "Darrick J. Wong" <darrick.wong@oracle.com>
To: Christoph Hellwig <hch@infradead.org>
Cc: NeilBrown <neilb@suse.com>,
Masahiro Yamada <yamada.masahiro@socionext.com>,
Michal Marek <michal.lkml@markovi.net>,
linux-kernel@vger.kernel.org, linux-kbuild@vger.kernel.org,
linux-xfs@vger.kernel.org
Subject: Re: [RFC PATCH 0/5] kbuild: build modules from code in multiple directories.
Date: Mon, 18 Jun 2018 22:03:13 -0700 [thread overview]
Message-ID: <20180619050313.GK8128@magnolia> (raw)
In-Reply-To: <20180619044748.GA18671@infradead.org>
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@suse.com>
> > 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@suse.com>
> > ---
> > 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@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
prev parent reply other threads:[~2018-06-19 5:03 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-18 4:55 [RFC PATCH 0/5] kbuild: build modules from code in multiple directories NeilBrown
2018-06-18 4:55 ` [PATCH 3/5] kbuild: support building of per-directory mod.a NeilBrown
2018-06-19 3:57 ` [PATCH 3/5 - v2] " NeilBrown
2018-06-18 4:55 ` [PATCH 1/5] kbuild: detect directories in components of a module NeilBrown
2018-06-18 4:55 ` [PATCH 4/5] kbuild: disable KBUILD_MODNAME when building for mod.a NeilBrown
2018-06-27 5:52 ` Masahiro Yamada
2018-07-03 22:14 ` NeilBrown
2018-07-04 12:08 ` Masahiro Yamada
2018-07-04 21:54 ` NeilBrown
2018-07-05 9:06 ` Masahiro Yamada
2018-07-05 23:03 ` NeilBrown
2018-06-18 4:55 ` [PATCH 5/5] kbuild: Add documentation for modobj-m NeilBrown
2018-06-18 4:55 ` [PATCH 2/5] kbuild: treat a directory listed in a composite object as foo/mod.a NeilBrown
2018-06-18 9:14 ` kbuild test robot
2018-06-18 22:30 ` NeilBrown
2018-06-18 8:20 ` [RFC PATCH 0/5] kbuild: build modules from code in multiple directories Christoph Hellwig
2018-06-19 4:05 ` NeilBrown
2018-06-19 4:47 ` Christoph Hellwig
2018-06-19 5:03 ` Darrick J. Wong [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180619050313.GK8128@magnolia \
--to=darrick.wong@oracle.com \
--cc=hch@infradead.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-xfs@vger.kernel.org \
--cc=michal.lkml@markovi.net \
--cc=neilb@suse.com \
--cc=yamada.masahiro@socionext.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox