LKML Archive on lore.kernel.org
help / color / mirror / Atom feed
From: Jean Delvare <khali@linux-fr.org>
To: "Robert P. J. Day" <rpjday@crashcourse.ca>
Cc: Julia Lawall <julia@diku.dk>,
	i2c@lm-sensors.org, linux-kernel@vger.kernel.org,
	kernel-janitors@vger.kernel.org
Subject: Re: [PATCH 1/4] drivers/i2c: Drop redundant includes of  moduleparam.h
Date: Thu, 15 Nov 2007 13:19:15 +0100	[thread overview]
Message-ID: <20071115131915.0eb34c98@hyperion.delvare> (raw)
In-Reply-To: <alpine.LFD.0.9999.0711140416160.4673@localhost.localdomain>

Hi all,

On Wed, 14 Nov 2007 04:21:51 -0500 (EST), Robert P. J. Day wrote:
> On Wed, 14 Nov 2007, Julia Lawall wrote:
> 
> > > > From: Julia Lawall <julia@diku.dk>
> > > >
> > > > Drop #include <linux/moduleparam.h> in files that also include #include
> > > > <linux/module.h>.  module.h includes moduleparam.h already.
> > >
> > > i'm not convinced that's a good idea.  while module.h does
> > > currently (and unfortunately) include moduleparam.h, there may
> > > come a day when those header files are refactored to actually make
> > > sense, at which point all those missing moduleparam.h inclusions
> > > will cause all sorts of bad things to happen.

I share Robert's point of view here. Relying on header files including
each other is usually not a good idea, as build then breaks when the
headers are cleaned up or reorganized.

> > They were removed from the drivers/media files in August:
> > 9c12224a607a4b22ab86784e3394b52810b9507c
> > Perhaps they should be put back there then?
> 
> i went down this road before a few months back, checking on how many
> source files were unnecessarily including moduleparam.h, and the
> result was literally *hundreds*.  i took a shot at cleaning that up,
> and even factoring the non-parameter-related content out of that file,
> but the change would have been hugely disruptive.
> 
> as it is now, since module.h includes moduleparam.h, there is (as you
> can see) no reason whatever for *anyone* to include moduleparam.h.
> at least right now.
> 
> but if anyone ever aspires to tidy up this chaos, then all you'd end
> up doing is putting all those includes back in.  so unless there's a
> long-term goal here, it would seem safest to just leave things the way
> they are.  but that's someone else's decision, not mine.  i'm just
> reporting on how quickly things got unpleasant when *i* tried to do
> something with this once upon a time.

If there's a fundamental reason why module.h has to include
moduleparam.h, then both headers should be merged in a single file. If
not, then both header files should be clearly split and drivers should
include each of them as needed. Either way, header files must be fixed
first, and drivers adjusted in consequence. So, I'm not taking this
patch, sorry.

-- 
Jean Delvare

  reply	other threads:[~2007-11-15 12:19 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-11-13 21:32 Julia Lawall
2007-11-13 21:34 ` Robert P. J. Day
2007-11-14  6:09   ` Julia Lawall
2007-11-14  9:21     ` Robert P. J. Day
2007-11-15 12:19       ` Jean Delvare [this message]
2007-11-15 12:42         ` Robert P. J. Day

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=20071115131915.0eb34c98@hyperion.delvare \
    --to=khali@linux-fr.org \
    --cc=i2c@lm-sensors.org \
    --cc=julia@diku.dk \
    --cc=kernel-janitors@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rpjday@crashcourse.ca \
    --subject='Re: [PATCH 1/4] drivers/i2c: Drop redundant includes of  moduleparam.h' \
    /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

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).