From: Paul Gortmaker <paul.gortmaker@windriver.com>
To: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
Cc: <tglx@linutronix.de>, <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] irq: don't put module.h into irq.h for tracking irqgen modules.
Date: Tue, 18 Oct 2011 14:44:18 -0400 [thread overview]
Message-ID: <4E9DC902.4000204@windriver.com> (raw)
In-Reply-To: <20111018174353.GB16894@breakpoint.cc>
On 11-10-18 01:43 PM, Sebastian Andrzej Siewior wrote:
> On Fri, Sep 30, 2011 at 09:53:57PM -0400, Paul Gortmaker wrote:
>> Recent commit "irq: Track the owner of irq descriptor" in
>> commit ID b6873807a7143b7 placed module.h into linux/irq.h
>> but we are trying to limit module.h inclusion to just C files
>> that really need it, due to its size and number of children
>> includes. This targets just reversing that include.
>
> Sorry for that. This is for "not to re-compile the whole tree once a tiny
> header file has changes" right?
Correct.
>
>> Add in the basic "struct module" since that is all we really need
>> to ensure things compile. In theory, b687380 should have added the
>> module.h include to the irqdesc.h header as well, but the implicit
>> module.h everywhere presence masked this from showing up. So give
>> it the "struct module" as well.
>>
>> As for the C files, irqdesc.c is only using THIS_MODULE, so it
>> does not need module.h - give it export.h instead. The C file
>
> just tried to compile this ontop of the tip tree and it ended with:
> |kernel/irq/irqdesc.c:12:26: fatal error: linux/export.h: No such file or directory
>
> I guess your tree provides that file.
Correct. You need my tree, or the most recent linux-next tree (which
is better, since we are really interested in how my tree interacts
with all the other pending trees.)
>
>> irq/manage.c is now (as of b687380) using try_module_get and
>> module_put and so it needs module.h (which it already has).
>>
>> Also convert the irq_alloc_descs variants to macros, since all
>> they really do is is call the __irq_alloc_descs primitive.
>> This avoids including export.h and no debug info is lost.
>
> macros, I see. THIS_MODULE is quite simple. What about moving this part from
> module.h which is hidden behind ifdef MODULE and make it avaiable as a separate
> headerfile with no children?
Already done. THIS_MODULE, because of its presence everywhere
in non modular code is also in the export.h file.
Paul.
>
> Sebastian
next prev parent reply other threads:[~2011-10-18 18:44 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-10-01 1:53 [PATCH] irq: don't put module.h into irq.h for tracking irqgen modules Paul Gortmaker
2011-10-18 17:43 ` Sebastian Andrzej Siewior
2011-10-18 18:44 ` Paul Gortmaker [this message]
2011-10-25 21:58 ` Olof Johansson
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=4E9DC902.4000204@windriver.com \
--to=paul.gortmaker@windriver.com \
--cc=linux-kernel@vger.kernel.org \
--cc=sebastian@breakpoint.cc \
--cc=tglx@linutronix.de \
/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.