Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3

2007-06-16 Thread Sanjoy Mahajan
Krzysztof Halasa <[EMAIL PROTECTED]> writes:
> > So, by making the COPYING contain the v2 text, is the author
> > specifying a particular version?  If yes, then the sec. 9 provision
> > would be meaningless, since there would be no way to not specify a
> > version number.
> 
> Of course the "published under terms of GPL." would do.

It would do, if you could stop there and say no more.  But:

  You may copy and distribute verbatim copies of the Program's source
  code as you receive it, in any medium, provided that you...give any
  other recipients of the Program a copy of this License along with the
  Program.  [GPLv2, section 1]

So you have to give recipients the license text from a particular
version of the GPL.  To make that the only version unde which the work
is licensed, you have to add something like "Licensed under the
GPLv2".  Otherwise sec. 9 says that you offer the work under any
version of the GPL, and the licensee can take his or her pick -- even
using v1 (!).

-Sanjoy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3

2007-06-16 Thread Sanjoy Mahajan
Krzysztof Halasa [EMAIL PROTECTED] writes:
  So, by making the COPYING contain the v2 text, is the author
  specifying a particular version?  If yes, then the sec. 9 provision
  would be meaningless, since there would be no way to not specify a
  version number.
 
 Of course the published under terms of GPL. would do.

It would do, if you could stop there and say no more.  But:

  You may copy and distribute verbatim copies of the Program's source
  code as you receive it, in any medium, provided that you...give any
  other recipients of the Program a copy of this License along with the
  Program.  [GPLv2, section 1]

So you have to give recipients the license text from a particular
version of the GPL.  To make that the only version unde which the work
is licensed, you have to add something like Licensed under the
GPLv2.  Otherwise sec. 9 says that you offer the work under any
version of the GPL, and the licensee can take his or her pick -- even
using v1 (!).

-Sanjoy
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3

2007-06-15 Thread Sanjoy Mahajan
>> "version 2 or higher"

> That phrase exists outside the license

That's true.  But sec. 9 of the GPLv2 says:

  If the Program does not specify a version number of this License, you
  may choose any version ever published by the Free Software Foundation.

So, by making the COPYING contain the v2 text, is the author
specifying a particular version?  If yes, then the sec. 9 provision
would be meaningless, since there would be no way to not specify a
version number.  

My understanding is that courts would presume that a license term has
a meaning, if it has a plausible reading.  And there such a reading:
that to specify a version, there needs to be (e.g. in the source
files) a statement like, "This file [or work] is licensed under the
GNU GPLv2."

Corrections, flames, etc. are welcome.

-Sanjoy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: Dual-Licensing Linux Kernel with GPL V2 and GPL V3

2007-06-15 Thread Sanjoy Mahajan
 version 2 or higher

 That phrase exists outside the license

That's true.  But sec. 9 of the GPLv2 says:

  If the Program does not specify a version number of this License, you
  may choose any version ever published by the Free Software Foundation.

So, by making the COPYING contain the v2 text, is the author
specifying a particular version?  If yes, then the sec. 9 provision
would be meaningless, since there would be no way to not specify a
version number.  

My understanding is that courts would presume that a license term has
a meaning, if it has a plausible reading.  And there such a reading:
that to specify a version, there needs to be (e.g. in the source
files) a statement like, This file [or work] is licensed under the
GNU GPLv2.

Corrections, flames, etc. are welcome.

-Sanjoy
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [ck] Re: [PATCH][RSDL-mm 0/7] RSDL cpu scheduler for 2.6.21-rc3-mm2

2007-03-13 Thread Sanjoy Mahajan
> a previous discussion that said 4 was the default...I don't see
> why. nice uses +10 by default on all linux distro...So I suspect
> that if Mike just used "nice lame" instead of "nice +5 lame", he
> would have got what he wanted.

tcsh, and probably csh, has a builtin 'nice' with default +4.  So

  tcsh% nice ps -l

will show a process with nice +4.  If you tell it not to use the builtin,

  tcsh% \nice ps -l

then it uses /usr/bin/nice and you get +10.  bash doesn't have a nice
builtin, so it always uses /usr/bin/nice and you get +10 by default.

-Sanjoy

`Not all those who wander are lost.' (J.R.R. Tolkien)
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [ck] Re: [PATCH][RSDL-mm 0/7] RSDL cpu scheduler for 2.6.21-rc3-mm2

2007-03-13 Thread Sanjoy Mahajan
 a previous discussion that said 4 was the default...I don't see
 why. nice uses +10 by default on all linux distro...So I suspect
 that if Mike just used nice lame instead of nice +5 lame, he
 would have got what he wanted.

tcsh, and probably csh, has a builtin 'nice' with default +4.  So

  tcsh% nice ps -l

will show a process with nice +4.  If you tell it not to use the builtin,

  tcsh% \nice ps -l

then it uses /usr/bin/nice and you get +10.  bash doesn't have a nice
builtin, so it always uses /usr/bin/nice and you get +10 by default.

-Sanjoy

`Not all those who wander are lost.' (J.R.R. Tolkien)
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: GPL only modules

2006-12-19 Thread Sanjoy Mahajan
>> [GPL acknowledging fair-use rights]

> Pure noise, a license can't take them away in any case.

A bare license probably cannot take them away, since you haven't
agreed to anything.  But (1) that may not be true in all legal
systems, and (2) a contract-based license can take it away (e.g. an
NDA).  So the GPL's clarification is worthwhile.  For the same reason,
I'm guessing, the Creative Commons licenses have (also in section 2,
at least in v2.5):

   2. Fair Use Rights. Nothing in this license is intended to reduce,
   limit, or restrict any rights arising from fair use, first sale or
   other limitations on the exclusive rights of the copyright owner
   under copyright law or other applicable laws.

-Sanjoy

`Never underestimate the evil of which men of power are capable.'
 --Bertrand Russell, _War Crimes in Vietnam_, chapter 1.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: GPL only modules

2006-12-19 Thread Sanjoy Mahajan
Linus Torvalds wrote:
> That said, I think they are still pushing the "you don't have any
> rights unless we give you additional rights explicitly" angle a bit
> too hard.

>From section 2 (GPLv3, draft 2):

 This License acknowledges your rights of "fair use" or other
 equivalent, as provided by copyright law. 

By choosing 'acknowledges' as the verb, the licensee says explicitly
that fair-use rights are already yours, not that they are being given
to you.

-Sanjoy

`Never underestimate the evil of which men of power are capable.'
 --Bertrand Russell, _War Crimes in Vietnam_, chapter 1.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: GPL only modules

2006-12-19 Thread Sanjoy Mahajan
Linus Torvalds wrote:
 That said, I think they are still pushing the you don't have any
 rights unless we give you additional rights explicitly angle a bit
 too hard.

From section 2 (GPLv3, draft 2):

 This License acknowledges your rights of fair use or other
 equivalent, as provided by copyright law. 

By choosing 'acknowledges' as the verb, the licensee says explicitly
that fair-use rights are already yours, not that they are being given
to you.

-Sanjoy

`Never underestimate the evil of which men of power are capable.'
 --Bertrand Russell, _War Crimes in Vietnam_, chapter 1.
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: GPL only modules

2006-12-19 Thread Sanjoy Mahajan
 [GPL acknowledging fair-use rights]

 Pure noise, a license can't take them away in any case.

A bare license probably cannot take them away, since you haven't
agreed to anything.  But (1) that may not be true in all legal
systems, and (2) a contract-based license can take it away (e.g. an
NDA).  So the GPL's clarification is worthwhile.  For the same reason,
I'm guessing, the Creative Commons licenses have (also in section 2,
at least in v2.5):

   2. Fair Use Rights. Nothing in this license is intended to reduce,
   limit, or restrict any rights arising from fair use, first sale or
   other limitations on the exclusive rights of the copyright owner
   under copyright law or other applicable laws.

-Sanjoy

`Never underestimate the evil of which men of power are capable.'
 --Bertrand Russell, _War Crimes in Vietnam_, chapter 1.
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: rc6 keeps hanging and blanking displays where rc4-mm1 works fine.

2005-08-15 Thread Sanjoy Mahajan
>> Is there any way to make git tell exactly where between rc4 and rc5
>> each kernel is, so I can name the bzimages accordingly?
>
> You'd have to use the raw commit names, since these things don't have any 
> symbolic names. You can get that by just doing
> 
>   cat .git/HEAD

Also, don't name the local version something like
2.6.13-rc6:e63b6d5ac1e17d0d9e5112bd9c0e5f17199b23da otherwise LILO
complains.  For example, this bit in lilo.conf

image=/boot/vmlinuz-2.6.12:b5e43913cfe95a18ad8929585a0bb58e46cf3390
label=bisect1

produces when you run lilo:

  :BIOS syntax is no longer supported. Please use a DISK section
  Fatal: Not a number: "b5e43913cfe95a18ad8929585a0bb58e46cf3390"

So in my kernel tree used for bisections, 'localversion' contains

-b5e43913cfe95a18ad8929585a0bb58e46cf3390

I don't fully understand when git (doing the checkout that is implict
in git bisect) will overwrite or not overwrite local files, or when it
will create files not in a previous version, or delete files not in a
current version.  So, to be sure I'm getting a clean compile from
exactly the source files I want (probably overkill), I use 'git
bisect' to get the SHA1 id's, and then do:

#!/bin/bash
sha1=`cat .git/HEAD`
dest="/usr/src/bisect/$sha1"
cg-export $dest $sha1
cp dot-config-to-test $dest/.config
cd $dest
echo "-$sha1" > localversion
# accept defaults for all new config options:
yes "" | make oldconfig
make -j 4 >& compile.log &
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: rc6 keeps hanging and blanking displays where rc4-mm1 works fine.

2005-08-15 Thread Sanjoy Mahajan
 Is there any way to make git tell exactly where between rc4 and rc5
 each kernel is, so I can name the bzimages accordingly?

 You'd have to use the raw commit names, since these things don't have any 
 symbolic names. You can get that by just doing
 
   cat .git/HEAD

Also, don't name the local version something like
2.6.13-rc6:e63b6d5ac1e17d0d9e5112bd9c0e5f17199b23da otherwise LILO
complains.  For example, this bit in lilo.conf

image=/boot/vmlinuz-2.6.12:b5e43913cfe95a18ad8929585a0bb58e46cf3390
label=bisect1

produces when you run lilo:

  :BIOS syntax is no longer supported. Please use a DISK section
  Fatal: Not a number: b5e43913cfe95a18ad8929585a0bb58e46cf3390

So in my kernel tree used for bisections, 'localversion' contains

-b5e43913cfe95a18ad8929585a0bb58e46cf3390

I don't fully understand when git (doing the checkout that is implict
in git bisect) will overwrite or not overwrite local files, or when it
will create files not in a previous version, or delete files not in a
current version.  So, to be sure I'm getting a clean compile from
exactly the source files I want (probably overkill), I use 'git
bisect' to get the SHA1 id's, and then do:

#!/bin/bash
sha1=`cat .git/HEAD`
dest=/usr/src/bisect/$sha1
cg-export $dest $sha1
cp dot-config-to-test $dest/.config
cd $dest
echo -$sha1  localversion
# accept defaults for all new config options:
yes  | make oldconfig
make -j 4  compile.log 
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: revert yenta free_irq on suspend

2005-08-01 Thread Sanjoy Mahajan
> slow and steady progress

The oscillations are indeed discouraging.  For S3 sleep/wake on my TP
600X:

2.6.11.4: works well (the console was hosed with jittering text, but
  X restores fine), which hugely improved using my laptop.
2.6.12.3: ditto

But:

2.6.13-rc3  : goes to sleep but hangs when waking up
  -rc3-mm2  : same
  -rc3-mm3  : same
  -rc4-git3 : same

With those 2.6.13 variants, once it has hung, the power switch will
turn it off, but to turn it on I first have to unplug the power and
remove both batteries.

On the good side, swsusp seems to be improving with later kernel
versions.  No luck with 2.6.11.4; reasonable luck with 2.6.12.3; and
good results with 2.6.13*.

-Sanjoy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: revert yenta free_irq on suspend

2005-08-01 Thread Sanjoy Mahajan
 slow and steady progress

The oscillations are indeed discouraging.  For S3 sleep/wake on my TP
600X:

2.6.11.4: works well (the console was hosed with jittering text, but
  X restores fine), which hugely improved using my laptop.
2.6.12.3: ditto

But:

2.6.13-rc3  : goes to sleep but hangs when waking up
  -rc3-mm2  : same
  -rc3-mm3  : same
  -rc4-git3 : same

With those 2.6.13 variants, once it has hung, the power switch will
turn it off, but to turn it on I first have to unplug the power and
remove both batteries.

On the good side, swsusp seems to be improving with later kernel
versions.  No luck with 2.6.11.4; reasonable luck with 2.6.12.3; and
good results with 2.6.13*.

-Sanjoy
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


sigwait() breaks when straced

2005-07-30 Thread Sanjoy Mahajan
Pavel Machek wrote:
> If you think it is a linux bug, can you produce small test case doing
> just the sigwait, and post it on l-k with big title "sigwait() breaks
> when straced, and on suspend"?

Here it is.  I haven't tested the sigwait()+suspend lately, since
suspend isn't working with any kernel except 2.6.11.4 and I'm chasing
down other acpi errors in 2.6.13-*.  But here's a test case for how
sigwait() breaks when straced (see C file below).  It is with 2.6.13-rc4
on a Thinkpad 600X (Pentium III), Debian 'testing', libc
2.3.2.

  $ gcc waiting.c -o waiting -lpthread
  $ ./waiting
  Sigwaiting...[strace my pid, which is 3359]
  [in another shell I run 'strace -p 3359', and get:]
  sigwait() returned 4, errno=0, sig=77

In the strace window, I get 

  $ strace -p 3359
  Process 3359 attached - interrupt to quit
  write(2, "sigwait() returned 4, errno=0, s"..., 39) = 39
  exit_group(4)   = ?
  Process 3359 detached

According to the man entry for sigwait:

   The !sigwait! function never returns an error.

so the return value should not be 4 (or the docs are not right).

Here's waiting.c:

#include 
#include 
#include 
#include 

sigset_t mask;

int main () {
  int ret, id;
  int sig = 77; /* easy to see if it gets changed */

  id = getpid();
  sigemptyset();
  fprintf (stderr, "Sigwaiting...[strace my pid, which is %d]\n", id);
  ret = sigwait(, );
  fprintf (stderr,
   "sigwait() returned %d, errno=%d, sig=%d\n",
   ret, errno, sig);
  return ret;
}


-Sanjoy

`A society of sheep must in time beget a government of wolves.'
   - Bertrand de Jouvenal
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


sigwait() breaks when straced

2005-07-30 Thread Sanjoy Mahajan
Pavel Machek wrote:
 If you think it is a linux bug, can you produce small test case doing
 just the sigwait, and post it on l-k with big title sigwait() breaks
 when straced, and on suspend?

Here it is.  I haven't tested the sigwait()+suspend lately, since
suspend isn't working with any kernel except 2.6.11.4 and I'm chasing
down other acpi errors in 2.6.13-*.  But here's a test case for how
sigwait() breaks when straced (see C file below).  It is with 2.6.13-rc4
on a Thinkpad 600X (Pentium III), Debian 'testing', libc
2.3.2.

  $ gcc waiting.c -o waiting -lpthread
  $ ./waiting
  Sigwaiting...[strace my pid, which is 3359]
  [in another shell I run 'strace -p 3359', and get:]
  sigwait() returned 4, errno=0, sig=77

In the strace window, I get 

  $ strace -p 3359
  Process 3359 attached - interrupt to quit
  write(2, sigwait() returned 4, errno=0, s..., 39) = 39
  exit_group(4)   = ?
  Process 3359 detached

According to the man entry for sigwait:

   The !sigwait! function never returns an error.

so the return value should not be 4 (or the docs are not right).

Here's waiting.c:

#include stdio.h
#include pthread.h
#include signal.h
#include errno.h

sigset_t mask;

int main () {
  int ret, id;
  int sig = 77; /* easy to see if it gets changed */

  id = getpid();
  sigemptyset(mask);
  fprintf (stderr, Sigwaiting...[strace my pid, which is %d]\n, id);
  ret = sigwait(mask, sig);
  fprintf (stderr,
   sigwait() returned %d, errno=%d, sig=%d\n,
   ret, errno, sig);
  return ret;
}


-Sanjoy

`A society of sheep must in time beget a government of wolves.'
   - Bertrand de Jouvenal
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


S3 and sigwait (was Re: 2.6.13-rc3: swsusp works (TP 600X))

2005-07-29 Thread Sanjoy Mahajan
>> One other glitch is that pdnsd (a nameserver caching daemon) has crashed
>> when the system wakes up from swsusp.  It also happens when waking up
>> from S3, which was working with 2.6.11.4 although not with 2.6.13-rc3.
>> Many people have said mysql also does not suspend well.  Is their use of
>> a named pipe or socket causing the problem?

> No idea, strace?

The upshot of stracing is in tthe Debian BTS 
#319572.  Paul Rombouts, an author of pdnsd, reproduced the strace
crash and found the problem:

> Apparently strace causes sigwait to return EINTR, which is
> inconsistent with the documentation I could find on sigwait.

Which is true.  The sigwait man entry (Debian 'etch') says:
   The !sigwait! function never returns an error.

His patch (available in the BTS and included below) fixed the problem
of strace or S3 sleep crashing pdnsd.

Shouldn't sleeping and suspension be invisible to user-space processes
such as pdnsd?  Drivers and other kernel code need rewriting so that
devices and buses are not abandoned in a weird state, but going to
sleep should just pull the rug out from under the entire user space.
Then no user space process would need rewriting to survive a
sleep/wake, as long as the deep-freeze were cold enough.  Or is there
a subtlety with threads that I'm missing?

With APM, maybe such transparency was more possible since going to bed
was arranged by the firmware rather than by the OS, and the firmware
would pull out the rug from under the entire user and kernel space
(after maybe a bit of kernel prep).

-Sanjoy

--- src/main.c~ 2005-07-08 20:13:14.0 +0200
+++ src/main.c  2005-07-29 16:16:12.0 +0200
@@ -659,11 +659,20 @@
pthread_sigmask(SIG_BLOCK,_msk,NULL);
waiting=1;
 #endif
-   sigwait(_msk,);
-   DEBUG_MSG("Signal %i caught.\n",sig);
+   {
+   int err;
+   while ((err=sigwait(_msk,))) {
+   if(err!=EINTR) {
+   log_warn("sigwait failed: %s",strerror(err));
+   sig=0;
+   break;
+   }
+   }
+   }
+   if(sig) DEBUG_MSG("Signal %i caught.\n",sig);
write_disk_cache();
destroy_cache();
-   log_warn("Caught signal %i. Exiting.",sig);
+   if(sig) log_warn("Caught signal %i. Exiting.",sig);
if (sig==SIGSEGV || sig==SIGILL || sig==SIGBUS)
crash_msg("This is a fatal signal probably triggered by a 
bug.");
if (ping_isocket!=-1)

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [ACPI] RE: Followup on 2.6.13-rc3 ACPI processor C-state regression

2005-07-29 Thread Sanjoy Mahajan
>Len, Kevin confirms that the below patch fixes the above regression for
>him.  Should we merge it now?

It also works for me.  Well, I'm not 100% sure it was that patch, but
2.6.13-rc3 on my TP 600X has the C2/C3 regression:

   ACPI: CPU0 (power states: C1[C1])

And 2.6.13-rc3-mm2, which includes that patch, works fine:

   ACPI: CPU0 (power states: C1[C1] C2[C2] C3[C3])

-Sanjoy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [ACPI] RE: Followup on 2.6.13-rc3 ACPI processor C-state regression

2005-07-29 Thread Sanjoy Mahajan
Len, Kevin confirms that the below patch fixes the above regression for
him.  Should we merge it now?

It also works for me.  Well, I'm not 100% sure it was that patch, but
2.6.13-rc3 on my TP 600X has the C2/C3 regression:

   ACPI: CPU0 (power states: C1[C1])

And 2.6.13-rc3-mm2, which includes that patch, works fine:

   ACPI: CPU0 (power states: C1[C1] C2[C2] C3[C3])

-Sanjoy
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


S3 and sigwait (was Re: 2.6.13-rc3: swsusp works (TP 600X))

2005-07-29 Thread Sanjoy Mahajan
 One other glitch is that pdnsd (a nameserver caching daemon) has crashed
 when the system wakes up from swsusp.  It also happens when waking up
 from S3, which was working with 2.6.11.4 although not with 2.6.13-rc3.
 Many people have said mysql also does not suspend well.  Is their use of
 a named pipe or socket causing the problem?

 No idea, strace?

The upshot of stracing is in tthe Debian BTS bugs.debian.org
#319572.  Paul Rombouts, an author of pdnsd, reproduced the strace
crash and found the problem:

 Apparently strace causes sigwait to return EINTR, which is
 inconsistent with the documentation I could find on sigwait.

Which is true.  The sigwait man entry (Debian 'etch') says:
   The !sigwait! function never returns an error.

His patch (available in the BTS and included below) fixed the problem
of strace or S3 sleep crashing pdnsd.

Shouldn't sleeping and suspension be invisible to user-space processes
such as pdnsd?  Drivers and other kernel code need rewriting so that
devices and buses are not abandoned in a weird state, but going to
sleep should just pull the rug out from under the entire user space.
Then no user space process would need rewriting to survive a
sleep/wake, as long as the deep-freeze were cold enough.  Or is there
a subtlety with threads that I'm missing?

With APM, maybe such transparency was more possible since going to bed
was arranged by the firmware rather than by the OS, and the firmware
would pull out the rug from under the entire user and kernel space
(after maybe a bit of kernel prep).

-Sanjoy

--- src/main.c~ 2005-07-08 20:13:14.0 +0200
+++ src/main.c  2005-07-29 16:16:12.0 +0200
@@ -659,11 +659,20 @@
pthread_sigmask(SIG_BLOCK,sigs_msk,NULL);
waiting=1;
 #endif
-   sigwait(sigs_msk,sig);
-   DEBUG_MSG(Signal %i caught.\n,sig);
+   {
+   int err;
+   while ((err=sigwait(sigs_msk,sig))) {
+   if(err!=EINTR) {
+   log_warn(sigwait failed: %s,strerror(err));
+   sig=0;
+   break;
+   }
+   }
+   }
+   if(sig) DEBUG_MSG(Signal %i caught.\n,sig);
write_disk_cache();
destroy_cache();
-   log_warn(Caught signal %i. Exiting.,sig);
+   if(sig) log_warn(Caught signal %i. Exiting.,sig);
if (sig==SIGSEGV || sig==SIGILL || sig==SIGBUS)
crash_msg(This is a fatal signal probably triggered by a 
bug.);
if (ping_isocket!=-1)

-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: 2.6.13-rc3: swsusp works (TP 600X)

2005-07-28 Thread Sanjoy Mahajan
> Perhaps the patch from Daniel Ritz to free the yenta IRQ on suspend
> (attached) will help?

Alas, when I went to apply it, patch said it was already there, and
sure enough 2.6.13-rc3-mm2 does have it.

One approach is to find out why PCMCIA cannot remove the socket power
when using cardctl eject (assuming that the error is related to the
swsusp failing).  The error is puzzling because physically ejecting
the card doesn't produce the message.  I'll try to chase that one
down, and welcome any hints on where to look or what debugging to turn
on.  I've looked in drivers/pcmcia/cs.c, which is where the error is
printed, but no enlightenment dawned, and will try setting pcmcia
debugging.

-Sanjoy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: 2.6.13-rc3: swsusp works (TP 600X)

2005-07-28 Thread Sanjoy Mahajan
> So, in short, problem is that if you leave prism54 card in, even
> with module removed, swsusp hangs, right?

Right, in some circumstances.  To narrow them down I spent many hours
rebooting into combinations of runlevels and loaded modules.  It is
reproducible even in single-user mode.  The various permutations, all
from booting single user with almost no modules loaded (cmdline:
idebus=66 apm=off acpi=force pci=noacpi single)

  card: prism54 card/xircom Ethernet+modem card/no card
  cardctl eject: done before the hibernate/ not done before the hibernate

The one combination that always breaks is to have the prism54 card in,
then do 'cardctl eject', which always produces:

[4295438.17] PCMCIA: socket e233c02c: *** DANGER *** unable to
   remove socket power

If I then use a simple hibernate script (basically just unload
prism54, then echo disk > /sys/power/state), swsusp doesn't write the
pages.  These are the only modules loaded before the swsusp begins:

pcmcia 34276  0 
crc32   3808  1 pcmcia
intel_agp  20188  1 
firmware_class  7936  1 pcmcia
yenta_socket   23244  3 
rsrc_nonstatic 11776  1 yenta_socket
pcmcia_core39508  3 pcmcia,yenta_socket,rsrc_nonstatic
agpgart29800  1 intel_agp

If I don't do 'cardctl eject', or do 'cardctl eject' and 'cardctl
insert', then run the hibernate script (which unloads prism54), it
hibernates fine.

With no card in the slot, all is well.

With the xircom card in the slot, hibernation works fine if I don't do
'cardctl eject' first.  If I do 'cardctl eject' that produces the same
DANGER message as with the prism54 card.  But hibernation still works,
although it seems a bit suspect: As it is hibernating, messages appear
about it enabling eth0.

Here's the lspci for the xircom card:

:06:00.0 Ethernet controller: Xircom Cardbus Ethernet 10/100 (rev 03)
:06:00.1 Serial controller: Xircom Cardbus Ethernet + 56k Modem
   (rev 03) (prog-if 02 [16550])

And lspci -vv for the prism54:

:06:00.0 Network controller: Intersil Corporation Intersil ISL3890
[Prism GT/Prism Duette] (rev 01)
   Subsystem: Intersil Corporation: Unknown device 
   Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV+ VGASnoop-
   ParErr- Stepping- SERR- FastB2B-
   Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium
   >TAbort- SERR- [nosave pfn
0x3b2]<3>[4296242.039000] irq 9: nobody cared (try booting with the
"irqpoll" option)
[4296242.039000]  [] __report_bad_irq+0x2a/0xa0
[4296242.039000]  [] handle_IRQ_event+0x30/0x70
[4296242.039000]  [] note_interrupt+0x80/0xf0
[4296242.039000]  [] __do_IRQ+0x134/0x140
[4296242.039000]  [] do_IRQ+0x23/0x40
[4296242.039000]  [] common_interrupt+0x1a/0x20
[4296242.039000]  [] __do_softirq+0x43/0xb0
[4296242.039000]  [] do_softirq+0x2d/0x30
[4296242.039000]  [] irq_exit+0x37/0x40
[4296242.039000]  [] do_IRQ+0x28/0x40
[4296242.039000]  [] common_interrupt+0x1a/0x20
[4296242.039000]  [] swsusp_suspend+0x50/0xc0
[4296242.039000]  [] pm_suspend_disk+0x61/0xd0
[4296242.039000]  [] enter_state+0xa6/0xb0
[4296242.039000]  [] state_store+0x92/0x9e
[4296242.039000]  [] subsys_attr_store+0x3d/0x50
[4296242.039000]  [] flush_write_buffer+0x3e/0x50
[4296242.039000]  [] sysfs_write_file+0x54/0x80
[4296242.039000]  [] vfs_write+0xb6/0x180
[4296242.039000]  [] sys_write+0x51/0x80
[4296242.039000]  [] syscall_call+0x7/0xb
[4296242.039000] handlers:
[4296242.039000] [] (acpi_irq+0x0/0x16)
[4296242.039000] Disabling IRQ #9

The lspci -vv has this, so somebody should care about irq 9!

:00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 03)
 Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV-
 VGASnoop- ParErr- Stepping- SERR- FastB2B-
 Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium
 >TAbort- SERR-  Perhaps the patch from Daniel Ritz to free the yenta IRQ on suspend
> (attached) will help?

I will try that next.

-Sanjoy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: 2.6.13-rc3: swsusp works (TP 600X)

2005-07-28 Thread Sanjoy Mahajan
>>If I don't eject the pcmcia card (usually a prism54 wireless card),
>>swsusp begins the process of hibernation, but never gets to the
>>writing pages part.

> Well, it really may be the firmware loading. Add some printks to
> confirm it, then fix it.

I did more tests, this time with 2.6.13-rc3-mm2 (machine is a TP 600X),
and I don't think the problem is related to firmware loading.  If I
first physically eject the card (an Intersil wireless card), swsusp
prints

PM: Writing image
PCI: Found IRQ 11 for device .
PCI: Sharing IRQ 11 with ...
PCI: Sharing IRQ 11 with ...
PCI: Found IRQ 11 for device .

then it writes pages to swap and all is well.  Well, almost 100%; the
one glitch is that sometimes X comes back blank and I have to
ctrl-alt-F7 to bring back the display; or X comes back with the keyboard
acting strange ( shifts the display left by a few hundred
pixels), and again ctrl-alt-F7 fixes it.  This is with XFree86
4.3.0.dfsg.1-14, and maybe after I upgrade (?) to the xorg server, that
glitch will go away.  Anyway, it's easy to work around.

But, if I leave the card in and prepare the hibernation with

ifdown eth0
cardctl eject
modprobe -r prism54

(so eject the module for and stop all uses of the card), then swsusp
prints the PCI messages above, but hangs before writing the pages to
swap.  I'm using a hibernate.sh script (included below) for those steps.
It does a few others like stopping the hotplug system.

After 'cardctl eject' and removing the module, there's no evidence of
the hardware available to the kernel, as far as I can tell.  lspci
doesn't show it, for example.  So the system is not loading firmware
during the hibernate attempt, and I'm not sure what step is hanging.

[Should this report go to acpi-devel and/or the ACPI or kernel bugzilla,
or is that more for S1/S3 rather than for hibernation?]

Here is lspci with the card inserted:

  :00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge 
(rev 03)
  :00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge 
(rev 03)
  :00:02.0 CardBus bridge: Texas Instruments PCI1450 (rev 03)
  :00:02.1 CardBus bridge: Texas Instruments PCI1450 (rev 03)
  :00:03.0 Communication controller: Agere Systems (former Lucent 
Microelectronics) WinModem 56k (rev 01)
  :00:06.0 Multimedia audio controller: Cirrus Logic CS 4614/22/24 
[CrystalClear SoundFusion Audio Accelerator] (rev 01)
  :00:07.0 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02)
  :00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01)
  :00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 01)
  :00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 03)
  :01:00.0 VGA compatible controller: Neomagic Corporation NM2360 
[MagicMedia 256ZX]
  :06:00.0 Network controller: Intersil Corporation Intersil ISL3890 [Prism 
GT/Prism Duette] (rev 01)

Here's the lspci -v for just the card:

  :06:00.0 Network controller: Intersil Corporation Intersil ISL3890 [Prism 
GT/Prism Duette] (rev 01)
  Subsystem: Intersil Corporation: Unknown device 
  Flags: bus master, medium devsel, latency 80, IRQ 11
  Memory at 2480 (32-bit, non-prefetchable) [size=8K]
  Capabilities: [dc] Power Management version 1

And lspci -vv for just the card:

  :06:00.0 Network controller: Intersil Corporation Intersil ISL3890 [Prism 
GT/Prism Duette] (rev 01)
  Subsystem: Intersil Corporation: Unknown device 
  Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- 
Stepping- SERR- FastB2B-
  Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- 
SERR-  /sys/power/state
hwclock --hctosys
logger -t hibernate.sh Returning from hibernation
for s in $to_start ; do
  /etc/init.d/$s start
done



-Sanjoy

`A society of sheep must in time beget a government of wolves.'
   - Bertrand de Jouvenal
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [ACPI] Re: system freezes for 0.2 to 0.5 seconds when reading /proc/acpi/thermal_zone/THRM/temperature

2005-07-28 Thread Sanjoy Mahajan
I get the same short freezes with

  cat /proc/acpi/battery/*/{state,info}

and also with the 'acpi' command-line tool.  I'm about to try the the
suggested kernel profiling with -mm3 and will report the results.

Meanwhile:

>>> readprofile -r
>> do i have to activate something special during kernel configuration?
>Set CONFIG_PROFILING=y

That confuses me.  For readprofile support,
Documentation/basic_profiling.txt says

  Add "profile=2" to the kernel command line.

For Oprofile support it says:

  Configure with CONFIG_PROFILING=y and CONFIG_OPROFILE=y

The two together suggest that CONFIG_PROFILING shouldn't be needed for
readprofile.

-Sanjoy
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [ACPI] Re: system freezes for 0.2 to 0.5 seconds when reading /proc/acpi/thermal_zone/THRM/temperature

2005-07-28 Thread Sanjoy Mahajan
I get the same short freezes with

  cat /proc/acpi/battery/*/{state,info}

and also with the 'acpi' command-line tool.  I'm about to try the the
suggested kernel profiling with -mm3 and will report the results.

Meanwhile:

 readprofile -r
 do i have to activate something special during kernel configuration?
Set CONFIG_PROFILING=y

That confuses me.  For readprofile support,
Documentation/basic_profiling.txt says

  Add profile=2 to the kernel command line.

For Oprofile support it says:

  Configure with CONFIG_PROFILING=y and CONFIG_OPROFILE=y

The two together suggest that CONFIG_PROFILING shouldn't be needed for
readprofile.

-Sanjoy
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: 2.6.13-rc3: swsusp works (TP 600X)

2005-07-28 Thread Sanjoy Mahajan
If I don't eject the pcmcia card (usually a prism54 wireless card),
swsusp begins the process of hibernation, but never gets to the
writing pages part.

 Well, it really may be the firmware loading. Add some printks to
 confirm it, then fix it.

I did more tests, this time with 2.6.13-rc3-mm2 (machine is a TP 600X),
and I don't think the problem is related to firmware loading.  If I
first physically eject the card (an Intersil wireless card), swsusp
prints

PM: Writing image
PCI: Found IRQ 11 for device .
PCI: Sharing IRQ 11 with ...
PCI: Sharing IRQ 11 with ...
PCI: Found IRQ 11 for device .

then it writes pages to swap and all is well.  Well, almost 100%; the
one glitch is that sometimes X comes back blank and I have to
ctrl-alt-F7 to bring back the display; or X comes back with the keyboard
acting strange (ENTER shifts the display left by a few hundred
pixels), and again ctrl-alt-F7 fixes it.  This is with XFree86
4.3.0.dfsg.1-14, and maybe after I upgrade (?) to the xorg server, that
glitch will go away.  Anyway, it's easy to work around.

But, if I leave the card in and prepare the hibernation with

ifdown eth0
cardctl eject
modprobe -r prism54

(so eject the module for and stop all uses of the card), then swsusp
prints the PCI messages above, but hangs before writing the pages to
swap.  I'm using a hibernate.sh script (included below) for those steps.
It does a few others like stopping the hotplug system.

After 'cardctl eject' and removing the module, there's no evidence of
the hardware available to the kernel, as far as I can tell.  lspci
doesn't show it, for example.  So the system is not loading firmware
during the hibernate attempt, and I'm not sure what step is hanging.

[Should this report go to acpi-devel and/or the ACPI or kernel bugzilla,
or is that more for S1/S3 rather than for hibernation?]

Here is lspci with the card inserted:

  :00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge 
(rev 03)
  :00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge 
(rev 03)
  :00:02.0 CardBus bridge: Texas Instruments PCI1450 (rev 03)
  :00:02.1 CardBus bridge: Texas Instruments PCI1450 (rev 03)
  :00:03.0 Communication controller: Agere Systems (former Lucent 
Microelectronics) WinModem 56k (rev 01)
  :00:06.0 Multimedia audio controller: Cirrus Logic CS 4614/22/24 
[CrystalClear SoundFusion Audio Accelerator] (rev 01)
  :00:07.0 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02)
  :00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01)
  :00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 01)
  :00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 03)
  :01:00.0 VGA compatible controller: Neomagic Corporation NM2360 
[MagicMedia 256ZX]
  :06:00.0 Network controller: Intersil Corporation Intersil ISL3890 [Prism 
GT/Prism Duette] (rev 01)

Here's the lspci -v for just the card:

  :06:00.0 Network controller: Intersil Corporation Intersil ISL3890 [Prism 
GT/Prism Duette] (rev 01)
  Subsystem: Intersil Corporation: Unknown device 
  Flags: bus master, medium devsel, latency 80, IRQ 11
  Memory at 2480 (32-bit, non-prefetchable) [size=8K]
  Capabilities: [dc] Power Management version 1

And lspci -vv for just the card:

  :06:00.0 Network controller: Intersil Corporation Intersil ISL3890 [Prism 
GT/Prism Duette] (rev 01)
  Subsystem: Intersil Corporation: Unknown device 
  Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr- 
Stepping- SERR- FastB2B-
  Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium TAbort- 
TAbort- MAbort- SERR- PERR-
  Latency: 80 (2500ns min, 7000ns max), Cache Line Size: 0x08 (32 bytes)
  Interrupt: pin A routed to IRQ 11
  Region 0: Memory at 2480 (32-bit, non-prefetchable) [size=8K]
  Capabilities: [dc] Power Management version 1
  Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA 
PME(D0+,D1+,D2+,D3hot+,D3cold+)
  Status: D0 PME-Enable- DSel=0 DScale=0 PME-


Here is the list of modules present just before the (working and
non-working) hibernation (for debugging, the hibernate.sh script does
'lsmod |logger' before hibernating):

  ip_conntrack_ftp
  snd_mixer_oss
  ipv6
  pcmcia
  crc32
  parport_pc
  lp
  parport
  thermal
  fan
  button
  processor
  ac
  battery
  ipt_state
  ipt_LOG
  iptable_filter
  iptable_nat
  ip_conntrack
  ip_tables
  8250
  serial_core
  intel_agp
  firmware_class
  snd_cs46xx
  snd_rawmidi
  snd_seq_device
  snd_ac97_codec
  snd_pcm
  snd_timer
  snd
  soundcore
  snd_page_alloc
  yenta_socket
  rsrc_nonstatic
  pcmcia_core
  agpgart
  speedstep_lib

I don't think any of those modules intrinsically are a problem, since
swsusp works with all of them (as long as the Intersil card is not
inserted).  And here is the hibernate.sh script:


#!/bin/bash

# suspend to disk 

Re: 2.6.13-rc3: swsusp works (TP 600X)

2005-07-28 Thread Sanjoy Mahajan
 So, in short, problem is that if you leave prism54 card in, even
 with module removed, swsusp hangs, right?

Right, in some circumstances.  To narrow them down I spent many hours
rebooting into combinations of runlevels and loaded modules.  It is
reproducible even in single-user mode.  The various permutations, all
from booting single user with almost no modules loaded (cmdline:
idebus=66 apm=off acpi=force pci=noacpi single)

  card: prism54 card/xircom Ethernet+modem card/no card
  cardctl eject: done before the hibernate/ not done before the hibernate

The one combination that always breaks is to have the prism54 card in,
then do 'cardctl eject', which always produces:

[4295438.17] PCMCIA: socket e233c02c: *** DANGER *** unable to
   remove socket power

If I then use a simple hibernate script (basically just unload
prism54, then echo disk  /sys/power/state), swsusp doesn't write the
pages.  These are the only modules loaded before the swsusp begins:

pcmcia 34276  0 
crc32   3808  1 pcmcia
intel_agp  20188  1 
firmware_class  7936  1 pcmcia
yenta_socket   23244  3 
rsrc_nonstatic 11776  1 yenta_socket
pcmcia_core39508  3 pcmcia,yenta_socket,rsrc_nonstatic
agpgart29800  1 intel_agp

If I don't do 'cardctl eject', or do 'cardctl eject' and 'cardctl
insert', then run the hibernate script (which unloads prism54), it
hibernates fine.

With no card in the slot, all is well.

With the xircom card in the slot, hibernation works fine if I don't do
'cardctl eject' first.  If I do 'cardctl eject' that produces the same
DANGER message as with the prism54 card.  But hibernation still works,
although it seems a bit suspect: As it is hibernating, messages appear
about it enabling eth0.

Here's the lspci for the xircom card:

:06:00.0 Ethernet controller: Xircom Cardbus Ethernet 10/100 (rev 03)
:06:00.1 Serial controller: Xircom Cardbus Ethernet + 56k Modem
   (rev 03) (prog-if 02 [16550])

And lspci -vv for the prism54:

:06:00.0 Network controller: Intersil Corporation Intersil ISL3890
[Prism GT/Prism Duette] (rev 01)
   Subsystem: Intersil Corporation: Unknown device 
   Control: I/O- Mem+ BusMaster- SpecCycle- MemWINV+ VGASnoop-
   ParErr- Stepping- SERR- FastB2B-
   Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium
   TAbort- TAbort- MAbort- SERR- PERR-
   Interrupt: pin A routed to IRQ 11
   Region 0: Memory at 2480 (32-bit, non-prefetchable)
   [size=8K]
   Capabilities: [dc] Power Management version 1
 Flags: PMEClk- DSI- D1+ D2+ AuxCurrent=0mA
 PME(D0+,D1+,D2+,D3hot+,D3cold+)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-

I also noticed the familiar 'irq 9: nobody cared' messages in the
dmesg log, which may be related to the problems above:

[4296190.977000] suspend: (pages needed: 5792 + 512 free: 141637)
[4296190.977000] alloc_pagedir(): nr_pages = 5792
[4296190.977000] create_pbe_list(): initialized 5792 PBEs
[4296190.977000] copy_data_pages(): pages to copy: 5792
[4296190.977000] [nosave pfn 0x3b1]7[nosave pfn
0x3b2]3[4296242.039000] irq 9: nobody cared (try booting with the
irqpoll option)
[4296242.039000]  [c013e22a] __report_bad_irq+0x2a/0xa0
[4296242.039000]  [c013da10] handle_IRQ_event+0x30/0x70
[4296242.039000]  [c013e340] note_interrupt+0x80/0xf0
[4296242.039000]  [c013db84] __do_IRQ+0x134/0x140
[4296242.039000]  [c0104c83] do_IRQ+0x23/0x40
[4296242.039000]  [c01033e2] common_interrupt+0x1a/0x20
[4296242.039000]  [c01208e3] __do_softirq+0x43/0xb0
[4296242.039000]  [c012097d] do_softirq+0x2d/0x30
[4296242.039000]  [c0120a57] irq_exit+0x37/0x40
[4296242.039000]  [c0104c88] do_IRQ+0x28/0x40
[4296242.039000]  [c01033e2] common_interrupt+0x1a/0x20
[4296242.039000]  [c013ba00] swsusp_suspend+0x50/0xc0
[4296242.039000]  [c013c7a1] pm_suspend_disk+0x61/0xd0
[4296242.039000]  [c013a226] enter_state+0xa6/0xb0
[4296242.039000]  [c013a362] state_store+0x92/0x9e
[4296242.039000]  [c0199fdd] subsys_attr_store+0x3d/0x50
[4296242.039000]  [c019a28e] flush_write_buffer+0x3e/0x50
[4296242.039000]  [c019a2f4] sysfs_write_file+0x54/0x80
[4296242.039000]  [c0160026] vfs_write+0xb6/0x180
[4296242.039000]  [c01601c1] sys_write+0x51/0x80
[4296242.039000]  [c0103225] syscall_call+0x7/0xb
[4296242.039000] handlers:
[4296242.039000] [c01f0789] (acpi_irq+0x0/0x16)
[4296242.039000] Disabling IRQ #9

The lspci -vv has this, so somebody should care about irq 9!

:00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 03)
 Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV-
 VGASnoop- ParErr- Stepping- SERR- FastB2B-
 Status: Cap- 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium
 TAbort- TAbort- MAbort- SERR- PERR-
 Interrupt: pin ? routed to IRQ 9

 Perhaps the patch from Daniel Ritz to free the yenta IRQ on suspend
 (attached) will help?

I will 

Re: 2.6.13-rc3: swsusp works (TP 600X)

2005-07-28 Thread Sanjoy Mahajan
 Perhaps the patch from Daniel Ritz to free the yenta IRQ on suspend
 (attached) will help?

Alas, when I went to apply it, patch said it was already there, and
sure enough 2.6.13-rc3-mm2 does have it.

One approach is to find out why PCMCIA cannot remove the socket power
when using cardctl eject (assuming that the error is related to the
swsusp failing).  The error is puzzling because physically ejecting
the card doesn't produce the message.  I'll try to chase that one
down, and welcome any hints on where to look or what debugging to turn
on.  I've looked in drivers/pcmcia/cs.c, which is where the error is
printed, but no enlightenment dawned, and will try setting pcmcia
debugging.

-Sanjoy
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


2.6.13-rc3: swsusp works (TP 600X)

2005-07-22 Thread Sanjoy Mahajan
swsusp now mostly works on my TP 600X.  If I don't eject the pcmcia card
(usually a prism54 wireless card), swsusp begins the process of
hibernation, but never gets to the writing pages part.  The eth0 somehow
tries to reload the firmware (as if it's been woken up), and then
everything hangs.  If I eject the card and (for safety) stop
/etc/init.d/pcmcia, then swsusp writes out the memory to swap, and
waking up works fine.  Thanks for all the improvements!

Is there debugging I can do in order to help get the pcmcia system
hibernating automagically?

One other glitch is that pdnsd (a nameserver caching daemon) has crashed
when the system wakes up from swsusp.  It also happens when waking up
from S3, which was working with 2.6.11.4 although not with 2.6.13-rc3.
Many people have said mysql also does not suspend well.  Is their use of
a named pipe or socket causing the problem?

System: TP 600X, 2.6.13-rc3 vanilla kernel, fixed DSDT that I used to
get S3 working with 2.6.11.4 (see
 for the DSDT),
booted with 
  idebus=66 apm=off acpi=force pci=noacpi acpi_sleep=s3_bios

-Sanjoy

`A society of sheep must in time beget a government of wolves.'
   - Bertrand de Jouvenal
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: 2.6.13-rc3 dma_timer_expiry

2005-07-22 Thread Sanjoy Mahajan
>From my previous message on this subject:

> With 2.6.13-rc3 I now get these errors (2.6.11.4 was fine) on my TP
> 600X (Debian 'etch' system):
> 
> localhost kernel: hda: dma_timer_expiry: dma status == 0x21
> localhost kernel: hda: DMA timeout error

> localhost kernel: hda: dma timeout error: status=0x58 { DriveReady
> SeekComplete DataRequest }

I just narrowed the problem to an interaction with the tpctl tools.

If I turn off /etc/init.d/tpctl (turn its sysV symlinks into K* links),
I get no DMA errors.  I can then reproduce the errors by
   /etc/init.d/tpctl start
(which runs tpctl and loads the smapi and thinkpad modules), as long as
I am in runlevel 2 or higher.  If I'm in runlevel 1, I get no errors.

I'm using Debian's tpctl package (4.17-1).  With kernel 2.6.13-rc3, I'm
using the thinkpad modules from Debian's thinkpad-source (5.8-4)
package.  With 2.6.11.4 I use the 5.8-3 package for the source, but it's
almost the same as 5.8-4.

-Sanjoy

`A society of sheep must in time beget a government of wolves.'
   - Bertrand de Jouvenal
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: 2.6.13-rc3 dma_timer_expiry

2005-07-22 Thread Sanjoy Mahajan
From my previous message on this subject:

 With 2.6.13-rc3 I now get these errors (2.6.11.4 was fine) on my TP
 600X (Debian 'etch' system):
 
 localhost kernel: hda: dma_timer_expiry: dma status == 0x21
 localhost kernel: hda: DMA timeout error

 localhost kernel: hda: dma timeout error: status=0x58 { DriveReady
 SeekComplete DataRequest }

I just narrowed the problem to an interaction with the tpctl tools.

If I turn off /etc/init.d/tpctl (turn its sysV symlinks into K* links),
I get no DMA errors.  I can then reproduce the errors by
   /etc/init.d/tpctl start
(which runs tpctl and loads the smapi and thinkpad modules), as long as
I am in runlevel 2 or higher.  If I'm in runlevel 1, I get no errors.

I'm using Debian's tpctl package (4.17-1).  With kernel 2.6.13-rc3, I'm
using the thinkpad modules from Debian's thinkpad-source (5.8-4)
package.  With 2.6.11.4 I use the 5.8-3 package for the source, but it's
almost the same as 5.8-4.

-Sanjoy

`A society of sheep must in time beget a government of wolves.'
   - Bertrand de Jouvenal
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


2.6.13-rc3: swsusp works (TP 600X)

2005-07-22 Thread Sanjoy Mahajan
swsusp now mostly works on my TP 600X.  If I don't eject the pcmcia card
(usually a prism54 wireless card), swsusp begins the process of
hibernation, but never gets to the writing pages part.  The eth0 somehow
tries to reload the firmware (as if it's been woken up), and then
everything hangs.  If I eject the card and (for safety) stop
/etc/init.d/pcmcia, then swsusp writes out the memory to swap, and
waking up works fine.  Thanks for all the improvements!

Is there debugging I can do in order to help get the pcmcia system
hibernating automagically?

One other glitch is that pdnsd (a nameserver caching daemon) has crashed
when the system wakes up from swsusp.  It also happens when waking up
from S3, which was working with 2.6.11.4 although not with 2.6.13-rc3.
Many people have said mysql also does not suspend well.  Is their use of
a named pipe or socket causing the problem?

System: TP 600X, 2.6.13-rc3 vanilla kernel, fixed DSDT that I used to
get S3 working with 2.6.11.4 (see
http://bugme.osdl.org/show_bug.cgi?id=4926 for the DSDT),
booted with 
  idebus=66 apm=off acpi=force pci=noacpi acpi_sleep=s3_bios

-Sanjoy

`A society of sheep must in time beget a government of wolves.'
   - Bertrand de Jouvenal
-
To unsubscribe from this list: send the line unsubscribe linux-kernel in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


2.6.13-rc3 dma_timer_expiry

2005-07-20 Thread Sanjoy Mahajan
I just changed kernels from 2.6.11.4 to 2.6.13-rc3 and upon boot I now
see these errors on the console and in the syslog:

localhost kernel: hda: dma_timer_expiry: dma status == 0x21
localhost kernel: hda: DMA timeout error
localhost kernel: hda: dma timeout error: status=0x58 { DriveReady SeekComplete 
DataRequest }
localhost kernel: ide: failed opcode was: unknown

The errors appeared shortly before X started up (so pretty late in the
boot sequence).  With 2.6.11.4 the drive had been working perfectly (no
errors at all), and is working fine now that I rebooted with 2.6.11.4.
DMA is turned on with 2.6.11.4, according to hdparm:

/dev/hda:
 multcount= 16 (on)
 IO_support   =  0 (default 16-bit)
 unmaskirq=  0 (off)
 using_dma=  1 (on)
 keepsettings =  0 (off)
 readonly =  0 (off)
 readahead= 256 (on)
 geometry = 65535/16/63, sectors = 78140160, start = 0

The system is a Thinkpad 600X laptop (Pentium III) with a 40GB
IBM/Hitachi TravelStar 40GNX drive.  Here's the disk info as recognized
on boot:

  localhost kernel: hda: IC25N040ATCS05-0, ATA DISK drive

Anything I can do to debug it?  Or is it just a simple setting that I
missed?

2.6.13-rc3 kernel config included below.  The lilo append was:
  idebus=66 apm=off acpi=force pci=noacpi acpi_sleep=s3_bios

-Sanjoy

`A society of sheep must in time beget a government of wolves.'
   - Bertrand de Jouvenal

#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.13-rc3-200507201
# Wed Jul 20 11:14:11 2005
#
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
# CONFIG_CLEAN_COMPILE is not set
CONFIG_BROKEN=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32

#
# General setup
#
CONFIG_LOCALVERSION=""
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
# CONFIG_POSIX_MQUEUE is not set
CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
CONFIG_SYSCTL=y
# CONFIG_AUDIT is not set
CONFIG_HOTPLUG=y
CONFIG_KOBJECT_UEVENT=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
# CONFIG_EMBEDDED is not set
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SHMEM=y
CONFIG_CC_ALIGN_FUNCTIONS=0
CONFIG_CC_ALIGN_LABELS=0
CONFIG_CC_ALIGN_LOOPS=0
CONFIG_CC_ALIGN_JUMPS=0
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0

#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
CONFIG_OBSOLETE_MODPARM=y
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_KMOD=y

#
# Processor type and features
#
CONFIG_X86_PC=y
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
CONFIG_MPENTIUMIII=y
# CONFIG_MPENTIUMM is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MEFFICEON is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MGEODEGX1 is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_X86_GENERIC is not set
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=5
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_HPET_TIMER=y
# CONFIG_HPET_EMULATE_RTC is not set
# CONFIG_SMP is not set
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
CONFIG_PREEMPT=y
CONFIG_PREEMPT_BKL=y
# CONFIG_X86_UP_APIC is not set
CONFIG_X86_TSC=y
CONFIG_X86_MCE=y
# CONFIG_X86_MCE_NONFATAL is not set
# CONFIG_TOSHIBA is not set
# CONFIG_I8K is not set
# CONFIG_X86_REBOOTFIXUPS is not set
CONFIG_MICROCODE=m
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m

#
# Firmware Drivers
#
# CONFIG_EDD is not set
CONFIG_NOHIGHMEM=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
# CONFIG_EFI is not set
CONFIG_HAVE_DEC_LOCK=y
# CONFIG_REGPARM is not set
CONFIG_SECCOMP=y
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
CONFIG_HZ_1000=y
CONFIG_HZ=1000
CONFIG_PHYSICAL_START=0x10
# CONFIG_KEXEC is not set

#
# Power management options (ACPI, APM)
#
CONFIG_PM=y
CONFIG_PM_DEBUG=y

2.6.13-rc3 dma_timer_expiry

2005-07-20 Thread Sanjoy Mahajan
I just changed kernels from 2.6.11.4 to 2.6.13-rc3 and upon boot I now
see these errors on the console and in the syslog:

localhost kernel: hda: dma_timer_expiry: dma status == 0x21
localhost kernel: hda: DMA timeout error
localhost kernel: hda: dma timeout error: status=0x58 { DriveReady SeekComplete 
DataRequest }
localhost kernel: ide: failed opcode was: unknown

The errors appeared shortly before X started up (so pretty late in the
boot sequence).  With 2.6.11.4 the drive had been working perfectly (no
errors at all), and is working fine now that I rebooted with 2.6.11.4.
DMA is turned on with 2.6.11.4, according to hdparm:

/dev/hda:
 multcount= 16 (on)
 IO_support   =  0 (default 16-bit)
 unmaskirq=  0 (off)
 using_dma=  1 (on)
 keepsettings =  0 (off)
 readonly =  0 (off)
 readahead= 256 (on)
 geometry = 65535/16/63, sectors = 78140160, start = 0

The system is a Thinkpad 600X laptop (Pentium III) with a 40GB
IBM/Hitachi TravelStar 40GNX drive.  Here's the disk info as recognized
on boot:

  localhost kernel: hda: IC25N040ATCS05-0, ATA DISK drive

Anything I can do to debug it?  Or is it just a simple setting that I
missed?

2.6.13-rc3 kernel config included below.  The lilo append was:
  idebus=66 apm=off acpi=force pci=noacpi acpi_sleep=s3_bios

-Sanjoy

`A society of sheep must in time beget a government of wolves.'
   - Bertrand de Jouvenal

#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.13-rc3-200507201
# Wed Jul 20 11:14:11 2005
#
CONFIG_X86=y
CONFIG_MMU=y
CONFIG_UID16=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_GENERIC_IOMAP=y

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
# CONFIG_CLEAN_COMPILE is not set
CONFIG_BROKEN=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32

#
# General setup
#
CONFIG_LOCALVERSION=
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
# CONFIG_POSIX_MQUEUE is not set
CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
CONFIG_SYSCTL=y
# CONFIG_AUDIT is not set
CONFIG_HOTPLUG=y
CONFIG_KOBJECT_UEVENT=y
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
# CONFIG_EMBEDDED is not set
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
# CONFIG_KALLSYMS_EXTRA_PASS is not set
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SHMEM=y
CONFIG_CC_ALIGN_FUNCTIONS=0
CONFIG_CC_ALIGN_LABELS=0
CONFIG_CC_ALIGN_LOOPS=0
CONFIG_CC_ALIGN_JUMPS=0
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0

#
# Loadable module support
#
CONFIG_MODULES=y
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
CONFIG_OBSOLETE_MODPARM=y
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_KMOD=y

#
# Processor type and features
#
CONFIG_X86_PC=y
# CONFIG_X86_ELAN is not set
# CONFIG_X86_VOYAGER is not set
# CONFIG_X86_NUMAQ is not set
# CONFIG_X86_SUMMIT is not set
# CONFIG_X86_BIGSMP is not set
# CONFIG_X86_VISWS is not set
# CONFIG_X86_GENERICARCH is not set
# CONFIG_X86_ES7000 is not set
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
CONFIG_MPENTIUMIII=y
# CONFIG_MPENTIUMM is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
# CONFIG_MK8 is not set
# CONFIG_MCRUSOE is not set
# CONFIG_MEFFICEON is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP2 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MGEODEGX1 is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_X86_GENERIC is not set
CONFIG_X86_CMPXCHG=y
CONFIG_X86_XADD=y
CONFIG_X86_L1_CACHE_SHIFT=5
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INVLPG=y
CONFIG_X86_BSWAP=y
CONFIG_X86_POPAD_OK=y
CONFIG_X86_GOOD_APIC=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_HPET_TIMER=y
# CONFIG_HPET_EMULATE_RTC is not set
# CONFIG_SMP is not set
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not set
CONFIG_PREEMPT=y
CONFIG_PREEMPT_BKL=y
# CONFIG_X86_UP_APIC is not set
CONFIG_X86_TSC=y
CONFIG_X86_MCE=y
# CONFIG_X86_MCE_NONFATAL is not set
# CONFIG_TOSHIBA is not set
# CONFIG_I8K is not set
# CONFIG_X86_REBOOTFIXUPS is not set
CONFIG_MICROCODE=m
CONFIG_X86_MSR=m
CONFIG_X86_CPUID=m

#
# Firmware Drivers
#
# CONFIG_EDD is not set
CONFIG_NOHIGHMEM=y
# CONFIG_HIGHMEM4G is not set
# CONFIG_HIGHMEM64G is not set
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_MATH_EMULATION is not set
CONFIG_MTRR=y
# CONFIG_EFI is not set
CONFIG_HAVE_DEC_LOCK=y
# CONFIG_REGPARM is not set
CONFIG_SECCOMP=y
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
CONFIG_HZ_1000=y
CONFIG_HZ=1000
CONFIG_PHYSICAL_START=0x10
# CONFIG_KEXEC is not set

#
# Power management options (ACPI, APM)
#
CONFIG_PM=y
CONFIG_PM_DEBUG=y