linux-kbuild.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Vineet Gupta <Vineet.Gupta1@synopsys.com>
Cc: Michal Marek <mmarek@suse.cz>, Noam Camus <noamc@ezchip.com>,
	"linux-kbuild@vger.kernel.org" <linux-kbuild@vger.kernel.org>,
	linux-kernel@vger.kernel.org
Subject: Re: Makefile race between jobs
Date: Mon, 10 Dec 2012 10:59:27 +0000	[thread overview]
Message-ID: <201212101059.28161.arnd@arndb.de> (raw)
In-Reply-To: <50C5BB4A.9000403@synopsys.com>

On Monday 10 December 2012, Vineet Gupta wrote:
> 
> On Monday 10 December 2012 04:00 PM, Michal Marek wrote:
> > On 10.12.2012 11:11, Vineet Gupta wrote:
> >> ARC Port caches current task pointer in a register - thus we have a
> >> global asm register definition in current.h
> >> In the past, a customer ran into issue when porting some "really
> >> portable" code to kernel - such that asm/current.h didn't make it into
> >> the build of their module - via normal header includes - strange but
> >> true. Thus forcing current.h via way of -include seemed like a
> >> safe/sensible way.
> > 
> > To me that sounds like either an arc header is using the define but
> > lacking an include of asm/current.h, or the code is lacking asm/current.h.
> > 
> 
> It was latter - customer code was lacking include of asm/current.h
> At any rate, independent of above, since we are dealing with a global
> reg definition, IMHO, forcing the -include for each file built ensures
> the generated code correctness (gcc reg allocator not fiddling with that
> reg) - w/o "assuming" it would.

I'm not convinced that adding the -include to the kernel Makefile
actually helps here: If a third party module is built outside of
the kernel sources, it probably also does not use the kernel Makefile,
and it may not have access to the kernel header files at all.

That aside, can't you just have an arch specific header file that
reservers the register but does not rely on asm-generic/types.h?
That would eliminate the need to serialize the build process.

	Arnd

  reply	other threads:[~2012-12-10 10:59 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-16 13:40 Makefile race between jobs Noam Camus
2012-11-17  4:36 ` Noam Camus
2012-11-29 10:59   ` Noam Camus
2012-12-09 16:14 ` Michal Marek
     [not found]   ` <264C179F799EF24AB26D5319053335E80CC31B9D41@ezexch.ezchip.com>
2012-12-10  9:45     ` Michal Marek
2012-12-10 10:06       ` Noam Camus
2012-12-10 10:11       ` Vineet Gupta
2012-12-10 10:30         ` Michal Marek
2012-12-10 10:36           ` Vineet Gupta
2012-12-10 10:59             ` Arnd Bergmann [this message]
2012-12-10 11:23               ` Vineet Gupta

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=201212101059.28161.arnd@arndb.de \
    --to=arnd@arndb.de \
    --cc=Vineet.Gupta1@synopsys.com \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mmarek@suse.cz \
    --cc=noamc@ezchip.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;
as well as URLs for NNTP newsgroup(s).