From: Greg Banks <gnb@alphalink.com.au>
To: Peter Samuelson <peter@cadcamlab.org>
Cc: Kai Germaschewski <kai@tp1.ruhr-uni-bochum.de>,
linux-kernel@vger.kernel.org, kbuild-devel@lists.sourceforge.net
Subject: Re: [kbuild-devel] Re: [patch] config language dep_* enhancements
Date: Tue, 13 Aug 2002 13:23:19 +1000 [thread overview]
Message-ID: <3D587BA7.1D640926@alphalink.com.au> (raw)
In-Reply-To: 20020812154721.GA761@cadcamlab.org
Peter Samuelson wrote:
>
> >
> > [...]CONFIG_BLK_DEV_IDESCSI[...]
> >
> That one example is more than enough to convince me *not* to try
> changing the "ignore empty deps" rule for 2.4. 2.5 is a different
> matter, though..
Ah, good.
> This is like the Stanford checker stuff. These are bugs. You have
> the means to find them automatically, but not the time or desire to
> fix them.
Actually I have got the desire to fix them, what I lack is the ability
to get patches into the kernel that are too non-trivial to go through Rusty.
> Post a list and perhaps others will pitch in. Something
> like
>
> drivers/ide/Config.in:17: In dep_tristate CONFIG_BLK_DEV_IDESCSI:
> drivers/ide/Config.in:17: CONFIG_SCSI not defined for i386, ppc, ...
Ok, but perhaps it's not clear how many problems there are. The full
log file from a gcml2 run on 2.5.29 is 573 KiB. Here's a summary:
977 missing-experimental-tag
113 spurious-experimental-tag
145 variant-experimental-tag
30 inconsistent-experimental-tag
13 missing-obsolete-tag
41 spurious-obsolete-tag
25 variant-obsolete-tag
5 spurious-dependencies
187 nonliteral-define
28 unset-statement (ignore these)
25 different-banner
61 different-parent
36 overlapping-definitions
1 primitive-in-root
310 undeclared-symbol
73 forward-compared-to-n
287 forward-reference
1093 forward-dependancy
1 symbol-like-literal
103 constant-symbol-dependency
8 different-compound-type
3562 total
These numbers are aggregates over 17 arches, so you need to divide by
a number between 1 and 17. Also some of these have been fixed in 2.5.30.
I can post the full list if people want, but it would be a bit overwhelming.
> In this case the fix would be to move CONFIG_BLK_DEV_IDESCSI to the
> SCSI subsystem, where in my opinion it belonged anyway.
Ok then.
> This would break down if there are any actual cycles - things which
> can't logically be moved to a place after the definitions of the
> facilities on which they depend.
I'm not able to detect anything like that.
> That we have to worry about this at all is an artifact of using a
> procedural langauge, rather than a declarative language like Prolog or
> CML2.
Actually config language isn't really procedural, pseudo-procedural would
be more like it.
> I *really* don't want to go *there*, though. (:
Yep.
> > And "" != "n" in other contexts, like if [];then statements.
>
> That is true. But that should not affect the dep_* logic, should it?
Correct, I'm just pointing out that using orthogonality arguments with
the config language is not going to get you anywhere useful.
> The point here is that people who aren't hip-deep in config language
> code don't think about them being separate. Ergo bugs.
Agreed.
> I've been thinking hard about a new sort of 'if' statement that
> doesn't look like a test command.
Interesting, I'd like to hear more.
My favourite idea is a different form of choice which worked more
like a menu, so you could intersperse conditionals with the choice
items. This would help with the several places in CML1 were the
same choice is mostly-duplicated in different conditionals, e.g.
'Kernel page size' in arch/ia64/config.in. ESR worked out a sensible
set of semantics for how this should work.
> (Yes, it's my mission to eventually
> get rid of the '$'s in config language. I think it can be done,
> piecemeal, over a long period of time.
Sounds good to me.
> This is if we don't end up
> adopting a whole new language like CML2 or Roman's stuff.)
Or a new parser & frontends for the existing language.
I'm not convinced that a complete new language will ever succeed after
the CML2 debacle, machine translated or not. This is why I gave up the
idea of automatically converting CML1 to CML2.
Greg.
--
the price of civilisation today is a courageous willingness to prevail,
with force, if necessary, against whatever vicious and uncomprehending
enemies try to strike it down. - Roger Sandall, The Age, 28Sep2001.
next prev parent reply other threads:[~2002-08-13 3:19 UTC|newest]
Thread overview: 110+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <200208062329.g76NTqP30962@devserv.devel.redhat.com.suse.lists.linux.kernel>
2002-08-07 10:01 ` Linux 2.4.20-pre1 Andi Kleen
2002-08-07 11:50 ` Alan Cox
2002-08-07 10:41 ` 64bit clean drivers was " Andi Kleen
2002-08-07 12:16 ` Alan Cox
2002-08-07 11:04 ` Andi Kleen
2002-08-07 11:10 ` Alan Cox
2002-08-07 11:18 ` Andi Kleen
2002-08-07 11:51 ` Alan Cox
2002-08-07 11:56 ` Andi Kleen
2002-08-07 13:26 ` Alan Cox
2002-08-07 16:28 ` Jeff Garzik
2002-08-08 15:14 ` Peter Samuelson
2002-08-08 16:49 ` Kai Germaschewski
2002-08-08 16:47 ` Peter Samuelson
2002-08-09 4:15 ` [patch] config language dep_* enhancements Peter Samuelson
2002-08-09 14:43 ` [kbuild-devel] " Greg Banks
2002-08-09 15:38 ` Andreas Schwab
2002-08-12 10:38 ` Greg Banks
2002-08-09 16:10 ` Peter Samuelson
2002-08-12 11:04 ` Greg Banks
2002-08-12 14:46 ` Kai Germaschewski
2002-08-12 19:45 ` Roman Zippel
2002-08-12 21:40 ` [kbuild-devel] " Tom Rini
2002-08-12 22:13 ` Roman Zippel
2002-08-12 22:15 ` Tom Rini
2002-08-12 22:32 ` Roman Zippel
2002-08-12 22:47 ` Tom Rini
2002-08-12 23:17 ` Roman Zippel
2002-08-12 23:32 ` Tom Rini
2002-08-13 3:35 ` Greg Banks
2002-08-13 0:03 ` Peter Samuelson
2002-08-13 7:54 ` Roman Zippel
2002-08-13 3:33 ` Greg Banks
2002-08-13 9:32 ` Roman Zippel
2002-08-13 10:32 ` [kbuild-devel] " Greg Banks
[not found] ` <3D587483.1C459694@alphalink.com.au>
2002-08-13 3:39 ` Peter Samuelson
2002-08-13 4:31 ` Greg Banks
2002-08-13 14:00 ` [kbuild-devel] " Greg Banks
2002-08-13 15:53 ` Peter Samuelson
2002-08-13 18:48 ` Kai Germaschewski
2002-08-14 1:13 ` Greg Banks
2002-08-14 3:28 ` Peter Samuelson
2002-08-14 4:35 ` [patch] kernel config 3/N - move sound into drivers/media Peter Samuelson
2002-08-14 5:08 ` Kai Germaschewski
2002-08-14 5:49 ` Peter Samuelson
2002-08-14 10:56 ` [kbuild-devel] " Arnd Bergmann
2002-08-14 12:20 ` S390 vs S390x, was " Christoph Hellwig
2002-08-14 17:21 ` Arnd Bergmann
2002-08-14 18:16 ` Christoph Hellwig
2002-08-14 21:18 ` Arnd Bergmann
2002-08-14 19:22 ` Christoph Hellwig
2002-08-14 22:52 ` Arnd Bergmann
2002-08-14 6:14 ` Greg Banks
2002-08-14 6:31 ` Greg Banks
2002-08-14 8:16 ` Russell King
2002-08-14 6:01 ` [kbuild-devel] Re: [patch] config language dep_* enhancements Greg Banks
2002-08-14 8:18 ` Russell King
2002-08-14 14:22 ` Peter Samuelson
2002-08-15 1:28 ` Greg Banks
2002-08-15 2:33 ` Peter Samuelson
2002-08-15 3:27 ` Greg Banks
2002-08-13 18:43 ` Kai Germaschewski
2002-08-13 20:48 ` Peter Samuelson
2002-08-14 1:27 ` Greg Banks
2002-08-14 1:42 ` Peter Samuelson
2002-08-14 2:27 ` Greg Banks
2002-08-14 2:57 ` Peter Samuelson
2002-08-14 4:39 ` Kai Germaschewski
2002-08-14 5:35 ` Greg Banks
2002-08-14 11:40 ` Roman Zippel
2002-08-15 1:52 ` [kbuild-devel] " Greg Banks
2002-08-15 3:30 ` John Alvord
2002-08-16 2:24 ` Peter Samuelson
2002-08-15 9:46 ` Roman Zippel
2002-08-15 14:43 ` Kai Germaschewski
2002-08-15 20:12 ` Roman Zippel
2002-08-16 2:08 ` Greg Banks
2002-08-16 10:54 ` Roman Zippel
2002-08-19 9:27 ` Greg Banks
2002-08-19 10:20 ` Roman Zippel
2002-08-20 14:10 ` Greg Banks
2002-08-20 17:51 ` Roman Zippel
2002-08-19 20:30 ` Sam Ravnborg
2002-08-20 14:28 ` David Woodhouse
2002-08-23 15:18 ` Kai Germaschewski
2002-08-23 23:03 ` Roman Zippel
2002-08-24 12:43 ` Greg Banks
2002-08-14 1:19 ` Greg Banks
2002-08-12 15:47 ` Peter Samuelson
2002-08-13 3:23 ` Greg Banks [this message]
2002-08-13 16:04 ` Sam Ravnborg
2002-08-13 16:20 ` [kbuild-devel] " Peter Samuelson
2002-08-14 0:22 ` Greg Banks
2002-08-14 20:14 ` Get rid of shell based Config.in parsers? Sam Ravnborg
2002-08-14 22:21 ` [kbuild-devel] " Peter Samuelson
2002-08-15 17:51 ` Linus Torvalds
2002-08-08 23:57 ` 64bit clean drivers was Re: Linux 2.4.20-pre1 Thunder from the hill
2002-08-08 19:23 ` Roman Zippel
2002-08-08 20:03 ` Andi Kleen
2002-08-08 20:19 ` Roman Zippel
2002-08-08 17:42 ` Peter Samuelson
2002-08-09 10:21 ` Roman Zippel
2002-08-09 11:47 ` Peter Samuelson
2002-08-09 12:07 ` Russell King
2002-08-09 12:49 ` Peter Samuelson
2002-08-09 14:53 ` [kbuild-devel] " Greg Banks
2002-08-09 22:37 ` Thunder from the hill
2002-08-08 20:37 ` Andi Kleen
2002-08-08 20:51 ` Roman Zippel
2002-08-07 17:31 ` Thunder from the hill
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=3D587BA7.1D640926@alphalink.com.au \
--to=gnb@alphalink.com.au \
--cc=kai@tp1.ruhr-uni-bochum.de \
--cc=kbuild-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=peter@cadcamlab.org \
/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.