Hi,
Can it really be that one cannot edit a config file and run make
oldconfig anymore? I'm used to editing an entry in .config and running
oldconfig to fix things up, now it just reenables the option. That's
clearly a major regression.
--
Jens Axboe
Jens Axboe wrote:
>Hi,
>
>Can it really be that one cannot edit a config file and run make
>oldconfig anymore? I'm used to editing an entry in .config and running
>oldconfig to fix things up, now it just reenables the option. That's
>clearly a major regression.
>
>
It works fine for me :)
I don't think I could survive without the tried and true "vi .config ;
make oldconfig" kernel configurator :)
On Tue, Nov 05 2002, Arjan van de Ven wrote:
> On Tue, 2002-11-05 at 18:14, Jens Axboe wrote:
>
> > axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> > 641:CONFIG_NFSD_V4=y
> > axboe@burns:[.]linux-2.5-deadline-rbtree $ vi .config
> > axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> > 641:CONFIG_NFSD_V4=n
>
> =n never worked...
You're wrong, it's always worked. I've never used anything but that.
> # CONFIG_NFSD_V4 is not set
Come on, you really expect me to type the whole damn thing? That's
silly.
--
Jens Axboe
On Tue, Nov 05 2002, Jeff Garzik wrote:
> Jens Axboe wrote:
>
> >
> >
> >Hmmm:
> >
> >axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> >641:CONFIG_NFSD_V4=y
> >axboe@burns:[.]linux-2.5-deadline-rbtree $ vi .config
> >axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> >641:CONFIG_NFSD_V4=n
> >
>
> '=n' is wrong, that should be "# CONFIG_NFSD_V4 is not set" still...
Why is that wrong? It worked before.
> or, just delete it. that's what I do :) the configurator will
> re-prompt for it, and I hit 'n'
I don't want a prompt for y/n, I just set it to no!
> yeah, nfsd build is still broken here too :)
:-)
--
Jens Axboe
Jens Axboe wrote:
>
>
>Hmmm:
>
>axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
>641:CONFIG_NFSD_V4=y
>axboe@burns:[.]linux-2.5-deadline-rbtree $ vi .config
>axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
>641:CONFIG_NFSD_V4=n
>
'=n' is wrong, that should be "# CONFIG_NFSD_V4 is not set" still...
or, just delete it. that's what I do :) the configurator will
re-prompt for it, and I hit 'n'
yeah, nfsd build is still broken here too :)
On Tue, Nov 05 2002, Dave Jones wrote:
> On Tue, Nov 05, 2002 at 12:08:33PM -0500, Jeff Garzik wrote:
>
> > >Can it really be that one cannot edit a config file and run make
> > >oldconfig anymore? I'm used to editing an entry in .config and running
> > >oldconfig to fix things up, now it just reenables the option. That's
> > >clearly a major regression.
> > >
> > It works fine for me :)
> > I don't think I could survive without the tried and true "vi .config ;
> > make oldconfig" kernel configurator :)
>
> Here it seems to work fine if I delete a line completely, but
> if I change
> CONFIG_FOO=y
> to
> #CONFIG_FOO=y
Yeah that works. It will ask me about CONFIG_FOO when I run make
oldconfig, though.
I still think it's a regression, and a very annoying one too.
--
Jens Axboe
On Tue, Nov 05 2002, Jens Axboe wrote:
> On Tue, Nov 05 2002, Arjan van de Ven wrote:
> > On Tue, 2002-11-05 at 18:14, Jens Axboe wrote:
> >
> > > axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> > > 641:CONFIG_NFSD_V4=y
> > > axboe@burns:[.]linux-2.5-deadline-rbtree $ vi .config
> > > axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> > > 641:CONFIG_NFSD_V4=n
> >
> > =n never worked...
>
> You're wrong, it's always worked. I've never used anything but that.
2.5.44:
axboe@burns:[.]/kernel/iosched/linux-2.5 $ grep NFSD_V4 < .config
750:CONFIG_NFSD_V4=y
axboe@burns:[.]/kernel/iosched/linux-2.5 $ vi .config
axboe@burns:[.]/kernel/iosched/linux-2.5 $ grep NFSD_V4 < .config
750:CONFIG_NFSD_V4=n
axboe@burns:[.]/kernel/iosched/linux-2.5 $ grep NFSD_V4 < .config
750:# CONFIG_NFSD_V4 is not set
Bingo, perfect.
--
Jens Axboe
On Tue, 2002-11-05 at 18:14, Jens Axboe wrote:
> axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> 641:CONFIG_NFSD_V4=y
> axboe@burns:[.]linux-2.5-deadline-rbtree $ vi .config
> axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> 641:CONFIG_NFSD_V4=n
=n never worked...
# CONFIG_NFSD_V4 is not set
Dave Jones wrote:
>On Tue, Nov 05, 2002 at 12:08:33PM -0500, Jeff Garzik wrote:
>
> > >Can it really be that one cannot edit a config file and run make
> > >oldconfig anymore? I'm used to editing an entry in .config and running
> > >oldconfig to fix things up, now it just reenables the option. That's
> > >clearly a major regression.
> > >
> > It works fine for me :)
> > I don't think I could survive without the tried and true "vi .config ;
> > make oldconfig" kernel configurator :)
>
>Here it seems to work fine if I delete a line completely, but
>if I change
>CONFIG_FOO=y
>to
>#CONFIG_FOO=y
>
>it regenerates .config without the #
>This used to work fine. I guess the new parser
>is a little more strict..
>
>
well, consider too that '# blah blah' was never really a
completely-free-to-use namespace, it was considered special due to the
shell-based parsing that needed to occur. '# CONFIG_FOO is not set' is
the classic example of using the '#' space...
Jeff
On Tue, Nov 05, 2002 at 12:08:33PM -0500, Jeff Garzik wrote:
> >Can it really be that one cannot edit a config file and run make
> >oldconfig anymore? I'm used to editing an entry in .config and running
> >oldconfig to fix things up, now it just reenables the option. That's
> >clearly a major regression.
> >
> It works fine for me :)
> I don't think I could survive without the tried and true "vi .config ;
> make oldconfig" kernel configurator :)
Here it seems to work fine if I delete a line completely, but
if I change
CONFIG_FOO=y
to
#CONFIG_FOO=y
it regenerates .config without the #
This used to work fine. I guess the new parser
is a little more strict..
Dave
--
| Dave Jones. http://www.codemonkey.org.uk
On Tue, Nov 05 2002, Jeff Garzik wrote:
> Jens Axboe wrote:
>
> >Hi,
> >
> >Can it really be that one cannot edit a config file and run make
> >oldconfig anymore? I'm used to editing an entry in .config and running
> >oldconfig to fix things up, now it just reenables the option. That's
> >clearly a major regression.
> >
> >
>
>
> It works fine for me :)
>
> I don't think I could survive without the tried and true "vi .config ;
Well me neither!
> make oldconfig" kernel configurator :)
Hmmm:
axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
641:CONFIG_NFSD_V4=y
axboe@burns:[.]linux-2.5-deadline-rbtree $ vi .config
axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
641:CONFIG_NFSD_V4=n
axboe@burns:[.]linux-2.5-deadline-rbtree $ make oldconfig
axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
641:CONFIG_NFSD_V4=y
--
Jens Axboe
On Tue, 5 Nov 2002, Jens Axboe wrote:
| > make oldconfig" kernel configurator :)
|
| Hmmm:
|
| axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
| 641:CONFIG_NFSD_V4=y
| axboe@burns:[.]linux-2.5-deadline-rbtree $ vi .config
| axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
| 641:CONFIG_NFSD_V4=n
| axboe@burns:[.]linux-2.5-deadline-rbtree $ make oldconfig
| axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
| 641:CONFIG_NFSD_V4=y
Yes, I saw this behavior last night also (on different options).
--
~Randy
On Tue, Nov 05 2002, Alan Cox wrote:
> On Tue, 2002-11-05 at 17:26, Jens Axboe wrote:
> > You're wrong, it's always worked. I've never used anything but that.
> >
> > > # CONFIG_NFSD_V4 is not set
> >
> > Come on, you really expect me to type the whole damn thing? That's
> > silly.
>
> So write a sed script to turn n into "is not set" or submit a change to
> cover it. Its luck =n ever did what you expected though.
5 years of luck isn't bad, I ought to start gambling.
I'll write the script, just a damn shame that this feature is gone now.
.config editing is less powerful now.
--
Jens Axboe
On Tue, 2002-11-05 at 17:26, Jens Axboe wrote:
> You're wrong, it's always worked. I've never used anything but that.
>
> > # CONFIG_NFSD_V4 is not set
>
> Come on, you really expect me to type the whole damn thing? That's
> silly.
So write a sed script to turn n into "is not set" or submit a change to
cover it. Its luck =n ever did what you expected though.
On Tue, Nov 05, 2002 at 06:21:10PM +0100, Jens Axboe wrote:
> > '=n' is wrong, that should be "# CONFIG_NFSD_V4 is not set" still...
>
> Why is that wrong? It worked before.
I've run into kernels where '=n' didn't work. The old-skool
canonical answer was "# CONFIG_FOO is not set", and that worked reliably
in <2.5
Joel
--
print STDOUT q
Just another Perl hacker,
unless $spring
- Larry Wall
Joel Becker
Senior Member of Technical Staff
Oracle Corporation
E-mail: [email protected]
Phone: (650) 506-8127
On Tue, Nov 05 2002, Joel Becker wrote:
> On Tue, Nov 05, 2002 at 06:21:10PM +0100, Jens Axboe wrote:
> > > '=n' is wrong, that should be "# CONFIG_NFSD_V4 is not set" still...
> >
> > Why is that wrong? It worked before.
>
> I've run into kernels where '=n' didn't work. The old-skool
Never ever had a problem with it, and I've compiled pretty much every
single kernel in the last handful of kernel cycles.
> canonical answer was "# CONFIG_FOO is not set", and that worked reliably
> in <2.5
Less handy, though.
--
Jens Axboe
On Tue, Nov 05 2002, Petr Baudis wrote:
> Hello,
>
> this patch (against 2.5.46) enabled recognition of 'n' tristate/boolean
> symbol value in the .config file. This allows more convenient manual
> editing of the .config file. Please apply.
Indeed, thank you very much! Confirmed to work here. Roman, can you pass
on this change?
--
Jens Axboe
Dear diary, on Tue, Nov 05, 2002 at 08:30:04PM CET, I got a letter,
where Sam Ravnborg <[email protected]> told me, that...
> On Tue, Nov 05, 2002 at 07:14:31PM +0100, Jens Axboe wrote:
> > I'll write the script, just a damn shame that this feature is gone now.
> > .config editing is less powerful now.
> The following patch should make most garbage, such as =n, result in
> # CONFIG_FOO is not set
> without any user confirmation.
I don't think this is actually a good idea. We break forward compatibility with
this (possibly, in future we will want to add something like "yes" or you don't
know what..), and then you will still get "no" for no obvious reason - asking
is much saner approach here, IMHO. If we didn't understand it, assuming 'no' is
not a safe way, I believe.
--
Petr "Pasky" Baudis
.
This host is a black hole at HTTP wavelengths. GETs go in, and nothing
comes out, not even Hawking radiation.
-- Graaagh the Mighty on rec.games.roguelike.angband
.
Public PGP key && geekcode && homepage: http://pasky.ji.cz/~pasky/
Hello,
this patch (against 2.5.46) enabled recognition of 'n' tristate/boolean
symbol value in the .config file. This allows more convenient manual editing of
the .config file. Please apply.
confdata.c | 11 +++++++----
1 files changed, 7 insertions(+), 4 deletions(-)
Kind regards,
Petr Baudis
--- linux/scripts/kconfig/confdata.c Fri Nov 1 22:22:07 2002
+++ linux+pasky/scripts/kconfig/confdata.c Tue Nov 5 19:54:12 2002
@@ -1,6 +1,9 @@
/*
* Copyright (C) 2002 Roman Zippel <[email protected]>
* Released under the terms of the GNU GPL v2.0.
+ *
+ * Allow 'n' as a symbol value.
+ * 2002-11-05 Petr Baudis <[email protected]>
*/
#include <ctype.h>
@@ -146,13 +149,13 @@
break;
}
switch (sym->type) {
- case S_BOOLEAN:
- sym->def = symbol_yes.curr;
- sym->flags &= ~SYMBOL_NEW;
- break;
case S_TRISTATE:
if (p[0] == 'm')
sym->def = symbol_mod.curr;
+ else
+ case S_BOOLEAN:
+ if (p[0] == 'n')
+ sym->def = symbol_no.curr;
else
sym->def = symbol_yes.curr;
sym->flags &= ~SYMBOL_NEW;
On Tue, Nov 05, 2002 at 07:14:31PM +0100, Jens Axboe wrote:
> I'll write the script, just a damn shame that this feature is gone now.
> .config editing is less powerful now.
The following patch should make most garbage, such as =n, result in
# CONFIG_FOO is not set
without any user confirmation.
Roman - the code uses "//" for comments. Thats not usual kernel style.
Sam
===== confdata.c 1.1 vs edited =====
--- 1.1/scripts/kconfig/confdata.c Wed Oct 30 02:16:44 2002
+++ edited/confdata.c Tue Nov 5 20:25:59 2002
@@ -147,14 +147,28 @@
}
switch (sym->type) {
case S_BOOLEAN:
- sym->def = symbol_yes.curr;
- sym->flags &= ~SYMBOL_NEW;
+ if (p[0] == 'y') {
+ sym->def = symbol_yes.curr;
+ sym->flags &= ~SYMBOL_NEW;
+ }
+ else
+ {
+ sym->def = symbol_no.curr;
+ sym->flags &= ~SYMBOL_NEW;
+ continue;
+ }
break;
case S_TRISTATE:
if (p[0] == 'm')
sym->def = symbol_mod.curr;
- else
+ else if (p[0] == 'y')
sym->def = symbol_yes.curr;
+ else
+ {
+ sym->def = symbol_no.curr;
+ sym->flags &= ~SYMBOL_NEW;
+ continue;
+ }
sym->flags &= ~SYMBOL_NEW;
break;
case S_STRING:
> I'll write the script, just a damn shame that this feature is gone now.
> .config editing is less powerful now.
Well, the script is easy...
cat << DONE >> .vimrc
:map - :s/=y$/ is not set/
:s/^/# /
DONE
Needs even less work than before now...
--8<-------------------------------------------------------------------------
main(){char*s="O_>>^PQAHBbPQAHBbPOOH^^PAAHBJPAAHBbPA_H>BB";int i,j,k=1,l,m,n;
for(j=0;j<7;j++)for(l=0;m=l-6+j,i=m/6,n=j*6+i,k=1<<m%6,l<41-j;l++)
putchar(l<6-j?' ':l==40-j?'\n':k&&s[n]&k?'*':' ');}
On Tue, Nov 05, 2002 at 08:42:29PM +0100, Petr Baudis wrote:
> > The following patch should make most garbage, such as =n, result in
> > # CONFIG_FOO is not set
> > without any user confirmation.
>
> I don't think this is actually a good idea. We break forward compatibility with
> this (possibly, in future we will want to add something like "yes" or you don't
> know what..), and then you will still get "no" for no obvious reason - asking
> is much saner approach here, IMHO. If we didn't understand it, assuming 'no' is
> not a safe way, I believe.
What actually happens is that any non-recognized value is assumed to be 'n'.
So if 'yes' is recognised, then fine.
And with the simple parser used today "CONFIG_FOO=yes" would be recognised
as yes, because it checks only the 'y'.
I did not look that close on the patch you sent, but I think they
have the same functionality.
If this wasn't after feature freeze I would have liked to see the
hidden .config file to be replaced by for example Kconfigdata or
similar.
So many times I have seen people being asked to backup there
configuration, which is located in a hidden file.
If people should keep their fingers away from it - then we should note
that in the top of the file. As we do in the rest of the kernel.
And then we could have invented a better syntax, that was not
dictated by bash or similar.
Something to propose in the 2.7 timeframe.
Sam
Hi,
On Tue, 5 Nov 2002, Jens Axboe wrote:
> > >axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> > >641:CONFIG_NFSD_V4=y
> > >axboe@burns:[.]linux-2.5-deadline-rbtree $ vi .config
> > >axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> > >641:CONFIG_NFSD_V4=n
> > >
> >
> > '=n' is wrong, that should be "# CONFIG_NFSD_V4 is not set" still...
>
> Why is that wrong? It worked before.
It was not documented and I only implemented that was documented. :)
It's of course no problem to change that.
bye, Roman
On Wed, Nov 06 2002, Roman Zippel wrote:
> Hi,
>
> On Tue, 5 Nov 2002, Jens Axboe wrote:
>
> > > >axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> > > >641:CONFIG_NFSD_V4=y
> > > >axboe@burns:[.]linux-2.5-deadline-rbtree $ vi .config
> > > >axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 < .config
> > > >641:CONFIG_NFSD_V4=n
> > > >
> > >
> > > '=n' is wrong, that should be "# CONFIG_NFSD_V4 is not set" still...
> >
> > Why is that wrong? It worked before.
>
> It was not documented and I only implemented that was documented. :)
> It's of course no problem to change that.
Thanks, patch from Petr is perfect :-)
--
Jens Axboe
On Tuesday 05 November 2002 17:26, Jens Axboe wrote:
> On Tue, Nov 05 2002, Arjan van de Ven wrote:
> > On Tue, 2002-11-05 at 18:14, Jens Axboe wrote:
> > > axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 <
> > > .config 641:CONFIG_NFSD_V4=y
> > > axboe@burns:[.]linux-2.5-deadline-rbtree $ vi .config
> > > axboe@burns:[.]linux-2.5-deadline-rbtree $ grep CONFIG_NFSD_V4 <
> > > .config 641:CONFIG_NFSD_V4=n
> >
> > =n never worked...
>
> You're wrong, it's always worked. I've never used anything but that.
>
> > # CONFIG_NFSD_V4 is not set
>
> Come on, you really expect me to type the whole damn thing? That's
> silly.
Some of the #ifdef cases simply test whether the config option is defined.
(Lots of #ifdef CONFIG_DEBUG_BLAH type stuff.) Setting them to no counts as
defining them, so it thinks it's a y. (I remember cml2 hit that way back...)
Obviously, CONFIG_NFSD_V4 is not one of them...
Rob
--
http://penguicon.sf.net - Terry Pratchett, Eric Raymond, Pete Abrams, Illiad,
CmdrTaco, liquid nitrogen ice cream, and caffienated jello. Well why not?