All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rongqing Li <rongqing.li@windriver.com>
To: Eric Sandeen <sandeen@redhat.com>
Cc: <linux-btrfs@vger.kernel.org>
Subject: Re: [PATCH] btrfs-progs: Add dependencies explicitly to fix a parallel build issue
Date: Mon, 23 Sep 2013 15:17:07 +0800	[thread overview]
Message-ID: <523FEAF3.1090607@windriver.com> (raw)
In-Reply-To: <52390704.3010902@redhat.com>



On 09/18/2013 09:51 AM, Eric Sandeen wrote:
> On 9/17/13 8:11 PM, rongqing.li@windriver.com wrote:
>> From: Roy Li <rongqing.li@windriver.com>
>>
>> The dependencies of "all: version.h" or other similar ones can not
>> fix the parallel build failure, only reduce the times; In fact,
>> many *.o files require version.h file.
>>
>> 	#grep '#include "version.h"' ./ -r
>> 	./btrfs-corrupt-block.c:#include "version.h"
>> 	./btrfs.c:#include "version.h"
>> 	./btrfs-image.c:#include "version.h"
>> 	./cmds-filesystem.c:#include "version.h"
>> 	./btrfs-show-super.c:#include "version.h"
>> 	./btrfs-select-super.c:#include "version.h"
>> 	./cmds-restore.c:#include "version.h"
>> 	./btrfs-find-root.c:#include "version.h"
>> 	./mkfs.c:#include "version.h"
>> 	./btrfs-zero-log.c:#include "version.h"
>> 	./btrfs-defrag.c:#include "version.h"
>> 	./cmds-chunk.c:#include "version.h"
>> 	./btrfstune.c:#include "version.h"
>> 	./btrfs-calc-size.c:#include "version.h"
>> 	./btrfs-map-logical.c:#include "version.h"
>> 	./cmds-check.c:#include "version.h"
>> 	./btrfs-debug-tree.c:#include "version.h"
>>
>> Signed-off-by: Roy Li <rongqing.li@windriver.com>
>> ---
>>   Sorry, The patch [btrfs-progs: fix parallel build] sent by me on Sep 3
>> can not fix the build failure, when build enough times on a 16 core cpu,
>> the build failure happens again, so I refix it again.
>>
>>
>>   Makefile |    6 ++++++
>>   1 file changed, 6 insertions(+)
>>
>> diff --git a/Makefile b/Makefile
>> index c43cb68..a7c259c 100644
>> --- a/Makefile
>> +++ b/Makefile
>> @@ -81,6 +81,12 @@ endif
>>   	@echo "    [CC]     $@"
>>   	$(Q)$(CC) $(DEPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c $<
>>
>> +btrfs-corrupt-block.o btrfs.o btrfs-image.o cmds-filesystem.o:version.h
>> +btrfs-show-super.o btrfs-select-super.o cmds-restore.o:version.h
>> +btrfs-find-root.o mkfs.o btrfs-zero-log.o btrfs-defrag.o cmds-chunk.o:version.h
>> +btrfstune.o btrfs-calc-size.o btrfs-map-logical.o cmds-check.o:version.h
>> +btrfs-debug-tree.o:version.h
>> +
>>   %.static.o: %.c
>>   	@echo "    [CC]     $@"
>>   	$(Q)$(CC) $(DEPFLAGS) $(AM_CFLAGS) $(STATIC_CFLAGS) -c $< -o $@
>>
>
> I think this can be done more cleanly, I'll send a patch.
>
> -Eric
>
>

If this one is not cleanly, how is the below one


 From a56ac083a789605904507b602d9ebf196ae6746d Mon Sep 17 00:00:00 2001
From: Roy Li <rongqing.li@windriver.com>
Date: Mon, 23 Sep 2013 09:53:30 +0800
Subject: [PATCH] btrfs-progs: Add dependencies explicitly to fix a parallel
  build issue

The dependencies of "all: version.h" or other similar ones can not
fix the parallel build failure, only reduce the times; In fact,
many *.o files require version.h file.

	#grep '#include "version.h"' ./ -r
	./btrfs-corrupt-block.c:#include "version.h"
	./btrfs.c:#include "version.h"
	./btrfs-image.c:#include "version.h"
	./cmds-filesystem.c:#include "version.h"
	./btrfs-show-super.c:#include "version.h"
	./btrfs-select-super.c:#include "version.h"
	./cmds-restore.c:#include "version.h"
	./btrfs-find-root.c:#include "version.h"
	./mkfs.c:#include "version.h"
	./btrfs-zero-log.c:#include "version.h"
	./btrfs-defrag.c:#include "version.h"
	./cmds-chunk.c:#include "version.h"
	./btrfstune.c:#include "version.h"
	./btrfs-calc-size.c:#include "version.h"
	./btrfs-map-logical.c:#include "version.h"
	./cmds-check.c:#include "version.h"
	./btrfs-debug-tree.c:#include "version.h"

Signed-off-by: Roy Li <rongqing.li@windriver.com>
---
  Makefile |    2 ++
  1 file changed, 2 insertions(+)

diff --git a/Makefile b/Makefile
index c43cb68..901ffa2 100644
--- a/Makefile
+++ b/Makefile
@@ -81,6 +81,8 @@ endif
  	@echo "    [CC]     $@"
  	$(Q)$(CC) $(DEPFLAGS) $(AM_CFLAGS) $(CFLAGS) -c $<

+%.o: version.h
+
  %.static.o: %.c
  	@echo "    [CC]     $@"
  	$(Q)$(CC) $(DEPFLAGS) $(AM_CFLAGS) $(STATIC_CFLAGS) -c $< -o $@
-- 
1.7.10.4




-- 
Best Reagrds,
Roy | RongQing Li

  parent reply	other threads:[~2013-09-23  7:17 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-18  1:11 [PATCH] btrfs-progs: Add dependencies explicitly to fix a parallel build issue rongqing.li
2013-09-18  1:51 ` Eric Sandeen
2013-09-18  1:55   ` Rongqing Li
2013-09-23  7:17   ` Rongqing Li [this message]
2013-09-18  1:56 ` [PATCH] btrfs-progs: Add version.h dependency to fix parallel builds Eric Sandeen
2013-09-18  2:26   ` Eric Sandeen
2013-09-18  6:39     ` Rongqing Li
2013-09-18 14:51 ` [PATCH] btrfs-progs: Add dependencies explicitly to fix a parallel build issue David Sterba
2013-09-22  1:06   ` Rongqing Li
2013-09-23 12:26     ` David Sterba

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=523FEAF3.1090607@windriver.com \
    --to=rongqing.li@windriver.com \
    --cc=linux-btrfs@vger.kernel.org \
    --cc=sandeen@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.