Linux 2.6.21-rc1
Subsystems (10)
Ok, the merge window for 2.6.21 has closed, and -rc1 is out there.
There's a lot of changes, as is usual for an -rc1 thing, but at least so far it would seem that 2.6.20 has been a good base, and I don't think we have anything *really* scary here.
The most interesting core change may be the dyntick/nohz one, where timer ticks will only happen when needed. It's been brewing for a _loong_ time, but it's in the standard kernel now as an option.
But there's a ton of architecture updates (arm, mips, powerpc, x86, you name it), ACPI updates, and lots of driver work. And just a lot of cleanups.
Have fun,
Linus
Hi,
21 Şub 2007 Çar 06:53 tarihinde, Linus Torvalds şunları yazmıştı:
Quoted 1 line
Ok, the merge window for 2.6.21 has closed, and -rc1 is out there.
CHK include/linux/version.h CHK include/linux/utsrelease.h CHK include/linux/compile.h CC [M] drivers/char/ip2/ip2main.o
In file included from drivers/char/ip2/ip2main.c:285:drivers/char/ip2/i2lib.c: In function `iiSendPendingMail_t':drivers/char/ip2/i2lib.c:83: sorry, unimplemented: inlining failed in call to 'iiSendPendingMail': function body not available drivers/char/ip2/i2lib.c:157: sorry, unimplemented: called from here make[3]: *** [drivers/char/ip2/ip2main.o] Error 1
make[2]: *** [drivers/char/ip2] Error 2
make[1]: *** [drivers/char] Error 2
make: *** [drivers] Error 2
With cleanup changes in commit 40565f1962c5be9b9e285e05af01ab7771534868 compilation fails.
Regards,
- Faik
Faik Uygur napsal(a):
Quoted 1 line
Hi,
Hi.
Quoted 16 lines
21 Şub 2007 Çar 06:53 tarihinde, Linus Torvalds şunları yazmıştı:
Quoted 1 line
Ok, the merge window for 2.6.21 has closed, and -rc1 is out there.
CHK include/linux/version.h CHK include/linux/utsrelease.h CHK include/linux/compile.h CC [M] drivers/char/ip2/ip2main.oIn file included from
drivers/char/ip2/ip2main.c:285:drivers/char/ip2/i2lib.c: In function `iiSendPendingMail_t':drivers/char/ip2/i2lib.c:83: sorry, unimplemented: inlining failed in call to 'iiSendPendingMail': function body not availabledrivers/char/ip2/i2lib.c:157: sorry, unimplemented: called from here
make[3]: *** [drivers/char/ip2/ip2main.o] Error 1
make[2]: *** [drivers/char/ip2] Error 2
make[1]: *** [drivers/char] Error 2
make: *** [drivers] Error 2
Quoted 1 line
With cleanup changes in commit
40565f1962c5be9b9e285e05af01ab7771534868compilation fails.
What compiler?
thanks,
Signature · 4 lines
http://www.fi.muni.cz/~xslaby/ Jiri Slaby faculty of informatics, masaryk university, brno, cz e-mail: jirislaby gmail com, gpg pubkey fingerprint: B674 9967 0407 CE62 ACC8 22A0 32CC 55C3 39D4 7A7E
Jiri Slaby napsal(a):
Quoted 21 lines
Faik Uygur napsal(a):
Quoted 1 line
Hi,
Hi.
Quoted 16 lines
21 Şub 2007 Çar 06:53 tarihinde, Linus Torvalds şunları yazmıştı:
Quoted 1 line
Ok, the merge window for 2.6.21 has closed, and -rc1 is out there.
CHK include/linux/version.h CHK include/linux/utsrelease.h CHK include/linux/compile.h CC [M] drivers/char/ip2/ip2main.oIn file included from
drivers/char/ip2/ip2main.c:285:drivers/char/ip2/i2lib.c: In function `iiSendPendingMail_t':drivers/char/ip2/i2lib.c:83: sorry, unimplemented: inlining failed in call to 'iiSendPendingMail': function body not availabledrivers/char/ip2/i2lib.c:157: sorry, unimplemented: called from here
make[3]: *** [drivers/char/ip2/ip2main.o] Error 1
make[2]: *** [drivers/char/ip2] Error 2
make[1]: *** [drivers/char] Error 2
make: *** [drivers] Error 2
Quoted 3 lines
Quoted 1 line
With cleanup changes in commit
40565f1962c5be9b9e285e05af01ab7771534868compilation fails.What compiler?
Oh, I can reproduce with gcc 3.4. Going to fix it.
thanks,
Signature · 4 lines
http://www.fi.muni.cz/~xslaby/ Jiri Slaby faculty of informatics, masaryk university, brno, cz e-mail: jirislaby gmail com, gpg pubkey fingerprint: B674 9967 0407 CE62 ACC8 22A0 32CC 55C3 39D4 7A7E
Quoted 5 lines · Faik Uygur
CHK include/linux/version.h CHK include/linux/utsrelease.h CHK include/linux/compile.h CC [M] drivers/char/ip2/ip2main.o
Quoted 9 lines
In file included from
drivers/char/ip2/ip2main.c:285:drivers/char/ip2/i2lib.c: In function `iiSendPendingMail_t':drivers/char/ip2/i2lib.c:83: sorry, unimplemented: inlining failed in call to 'iiSendPendingMail': function body not availabledrivers/char/ip2/i2lib.c:157: sorry, unimplemented: called from here make[3]: *** [drivers/char/ip2/ip2main.o] Error 1
make[2]: *** [drivers/char/ip2] Error 2
make[1]: *** [drivers/char] Error 2
make: *** [drivers] Error 2
Yeah, that thing was crud.
Linus
---
commit 5fc7e655a50b0a19229a6b4a8a5e23bfedf700a4
Author: Linus Torvalds <[email protected]> Date: Wed Feb 21 11:18:26 2007 -0800
Fix bogus 'inline' in drivers/char/ip2/i2lib.c
Not only was the function way too big to be inlined in the first place, it was used before it was even defined.
drivers/char/ip2/i2lib.c +2 -2
@@ -80,7 +80,7 @@ static int i2RetryFlushOutput(i2ChanStrPtr);// Not a documented part of the library routines (careful...) but the Diagnostic // i2diag.c finds them useful to help the throughput in certain limited // single-threaded operations. -static inline void iiSendPendingMail (i2eBordStrPtr ); +static void iiSendPendingMail (i2eBordStrPtr );static void serviceOutgoingFifo (i2eBordStrPtr );// Functions defined in ip2.c as part of interrupt handling
@@ -166,7 +166,7 @@ static void iiSendPendingMail_t(unsigned long data)// If any outgoing mail bits are set and there is outgoing mailbox is empty, // send the mail and clear the bits. //****************************************************************************** -static inline void +static void iiSendPendingMail (i2eBordStrPtr pB) {if (pB->i2eOutMailWaiting && (!pB->i2eWaitingForEmptyFifo) )
Quoted 5 lines · Linus Torvalds
But there's a ton of architecture updates (arm, mips, powerpc, x86, you name it), ACPI updates, and lots of driver work. And just a lot of cleanups.
Have fun,
Yup. Fun starts in drivers/net/e1000
e1000 is not working anymore. ifup fails permanentely.
ADDRCONF(NETDEV_UP): eth0: link is not ready
nothing else
bisect identifies:
d2ed16356ff4fb9de23fbc5e5d582ce580390106 is first bad commit commit d2ed16356ff4fb9de23fbc5e5d582ce580390106
Author: Kok, Auke <[email protected]> Date: Fri Feb 16 14:39:26 2007 -0800
e1000: fix shared interrupt warning message
Reverting this patch on top of -rc1 helps as well.
tglx
lspci output:
04:00.0 Ethernet controller: Intel Corporation 82573L Gigabit Ethernet Controller
Subsystem: Intel Corporation Unknown device 30a5
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 218
Region 0: Memory at 90100000 (32-bit, non-prefetchable) [size=128K]
Region 2: I/O ports at 2000 [size=32]
Capabilities: [c8] Power Management version 2
Flags: PMEClk- DSI+ D1- D2- AuxCurrent=0mA PME(D0+,D1-,D2-,D3hot+,D3cold+)
Status: D0 PME-Enable- DSel=0 DScale=1 PME-
Capabilities: [d0] Message Signalled Interrupts: 64bit+ Queue=0/0 Enable+
Address: 00000000fee0100c Data: 414a
Capabilities: [e0] Express Endpoint IRQ 0
Device: Supported: MaxPayload 256 bytes, PhantFunc 0, ExtTag-
Device: Latency L0s <512ns, L1 <64us
Device: AtnBtn- AtnInd- PwrInd-
Device: Errors: Correctable- Non-Fatal- Fatal- Unsupported-
Device: RlxdOrd+ ExtTag- PhantFunc- AuxPwr- NoSnoop+
Device: MaxPayload 128 bytes, MaxReadReq 512 bytes
Link: Supported Speed 2.5Gb/s, Width x1, ASPM unknown, Port 0
Link: Latency L0s <128ns, L1 <64us
Link: ASPM Disabled RCB 64 bytes CommClk+ ExtSynch-
Link: Speed 2.5Gb/s, Width x1
Quoted 7 lines · Thomas Gleixner
Quoted 3 lines · Linus Torvalds
But there's a ton of architecture updates (arm, mips, powerpc, x86, you name it), ACPI updates, and lots of driver work. And just a lot of cleanups.
Have fun,
Yup. Fun starts in
drivers/net/e1000
Quoted 8 lines
e1000 is not working anymore. ifup fails permanentely.
ADDRCONF(NETDEV_UP): eth0: link is not ready
nothing elsebisect identifies:
d2ed16356ff4fb9de23fbc5e5d582ce580390106is first bad commit commitd2ed16356ff4fb9de23fbc5e5d582ce580390106
I think we need to drop this now. The report that says that this *fixes* something might have been on regular interrupts only. I currently suspect that it breaks all MSI interrupts, which would make sense if I look a the code. Very bad indeed.
I'll try to come up with something else or send a patch that reverts it.
Auke
Linus Torvalds
Acked-by Auke KokQuoted 7 lines · Auke
I think we need to drop this now. The report that says that this *fixes* something might have been on regular interrupts only. I currently suspect that it breaks all MSI interrupts, which would make sense if I look a the code. Very bad indeed.
I'll try to come up with something else or send a patch that reverts it.
I'm going to be off-line for a couple of days, so I just reverted it.
Linus
---
commit b5bf28cde894b3bb3bd25c13a7647020562f9ea0
Author: Linus Torvalds <[email protected]> Date: Wed Feb 21 11:21:44 2007 -0800
Revert "e1000: fix shared interrupt warning message"
This reverts commit d2ed16356ff4fb9de23fbc5e5d582ce580390106.
As Thomas Gleixner reports:
"e1000 is not working anymore. ifup fails permanentely.
ADDRCONF(NETDEV_UP): eth0: link is not ready
nothing else"
The broken commit was identified with "git bisect".
Auke Kok says:
"I think we need to drop this now. The report that says that this
*fixes* something might have been on regular interrupts only. I currently suspect that it breaks all MSI interrupts, which would make sense if I look a the code. Very bad indeed."
drivers/net/e1000/e1000_main.c +6 -6
@@ -1417,6 +1417,10 @@ e1000_open(struct net_device *netdev)if ((err =e1000_setup_all_rx_resources (adapter))) goto err_setup_rx; + err =e1000_request_irq (adapter); +if (err) + goto err_req_irq; +e1000_power_up_phy (adapter);if ((err =e1000_up (adapter)))
@@ -1427,10 +1431,6 @@ e1000_open(struct net_device *netdev)e1000_update_mng_vlan (adapter); } - err =e1000_request_irq (adapter); -if (err) - goto err_req_irq; -/* If AMT is enabled, let the firmware know that the network * interface is now open */ if (adapter->hw.mac_type == e1000_82573 &&
@@ -1439,10 +1439,10 @@ e1000_open(struct net_device *netdev)return E1000_SUCCESS ; -err_req_irq: -e1000_down (adapter); err_up:e1000_power_down_phy (adapter); +e1000_free_irq (adapter); +err_req_irq:e1000_free_all_rx_resources (adapter); err_setup_rx:e1000_free_all_tx_resources (adapter);
Quoted 4 lines · On Wed, 21 Feb 2007 11:24:33 -0800 (PST) Linus Torvalds…
Quoted 1 line · Auke
Quoted 8 lines
Quoted 6 lines
I think we need to drop this now. The report that says that this *fixes* something might have been on regular interrupts only. I currently suspect that it breaks all MSI interrupts, which would make sense if I look a the code. Very bad indeed.
I'll try to come up with something else or send a patch that reverts it.
I'm going to be off-line for a couple of days,
And I'll be offline for five or six days.
Quoted 1 line
so I just reverted it.
OK, but this change was needed because the new IRQ-debugging code reliably causes e1000 to explode.
So perhaps until e1000 gets sorted out we should disable the debug code:
lib/Kconfig.debug renamed from lib/Kconfig.debug~a +1 -1
@@ -79,7 +79,7 @@ config DEBUG_KERNEL config DEBUG_SHIRQ bool "Debug shared IRQ handlers" - depends on DEBUG_KERNEL && GENERIC_HARDIRQS + depends on DEBUG_KERNEL && GENERIC_HARDIRQS && BROKEN help Enable this to generate a spurious interrupt as soon as a shared interrupt handler is registered, and just before one is deregistered.
_
request_module: runaway loop modprobe net-pf-1 (is Re: Linux 2.6.21-rc1)
In reply to Linus TorvaldsHello.
In article <[email protected]> (at Tue, 20 Feb 2007 20:53:45 -0800 (PST)), Linus Torvalds <[email protected]> says:
Quoted 3 lines
But there's a ton of architecture updates (arm, mips, powerpc, x86, you name it), ACPI updates, and lots of driver work. And just a lot of cleanups.
I cannot boot 2.6.21-rc1; it falls into OOM-Killer.
Interesting error message I can see is:
request_module: runaway loop modprobe net-pf-1
After bisecting, the commit
Driver core: let request_module() send a /sys/modules/kmod/-uevent
(id c353c3fb0700a3c17ea2b0237710a184232ccd7f) is to blame.
Reverting it fixes the issue to me.
Regards,
--yoshfuji
A message that is not in the archive (sent off-list or not yet received): [email protected]
Re: request_module: runaway loop modprobe net-pf-1 (is Re: Linux 2.6.21-rc1)
Quoted 13 lines · OGAWA Hirofumi
Quoted 11 lines · YOSHIFUJI Hideaki / ?$B5HF#1QL@ <[email protected]> writes:
In article <[email protected]> (at Tue, 20 Feb 2007 20:53:45 -0800 (PST)), Linus Torvalds <[email protected]> says:
Quoted 3 lines
But there's a ton of architecture updates (arm, mips, powerpc, x86, you name it), ACPI updates, and lots of driver work. And just a lot of cleanups.
I cannot boot 2.6.21-rc1; it falls into OOM-Killer.
Interesting error message I can see is:
request_module: runaway loop modprobe net-pf-1
Quoted 8 lines
Quoted 5 lines
After bisecting, the commit
Driver core: letrequest_module()send a/sys/modules/kmod/-uevent
(idc353c3fb0700a3c17ea2b0237710a184232ccd7f) is to blame.Reverting it fixes the issue to me.
/sbin/hotplugneeds some module, butrequest_module()call/sbin/hotplugloop? Hm.. does the patch fix the problem?
How does it loop?
Quoted 1 line
BTW,
mod_request_helperalias of/proc/sys/kernel/modprobeis really needed?
What do you mean?
Quoted 18 lines
Signature · 12 lines
OGAWA Hirofumi <[email protected]> Don't use uevent until udevd or something like other setup done. Signed-off-by: OGAWA Hirofumi <[email protected]> --- kernel/kmod.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff -puN kernel/kmod.c~kmod-uevent-fix kernel/kmod.ckernel/kmod.c renamed from kernel/kmod.c~kmod-uevent-fix +0
-0@@ -90,11 +90,11 @@ int request_module(const char *fmt, ...)if (ret >=MODULE_NAME_LEN )return -ENAMETOOLONG ;
kernel/kmod.c int request_module(const char *fmt, ...) · line 97
Quoted 10 lines
kernel/kmod.c renamed from kernel/kmod.c~kmod-uevent-fix +4
-4-strcpy (&modalias[strlen ("MODALIAS=" )], module_name); -kobject_uevent_env (&kmod_mk.kobj,KOBJ_CHANGE , uevent_envp); - -if (modprobe_path[0 ] =='\0' ) +if (modprobe_path[0 ] =='\0' ) { +strcpy (&modalias[strlen ("MODALIAS=" )], module_name); +kobject_uevent_env (&kmod_mk.kobj,KOBJ_CHANGE , uevent_envp); goto out; + }
No, we want to still emit these messgages, even if we have a real "helper" application. I don't see how this would fix the problem.
thanks,
greg k-h
Re: request_module: runaway loop modprobe net-pf-1 (is Re: Linux 2.6.21-rc1)
Quoted 18 lines · Greg KH
Quoted 17 lines · OGAWA Hirofumi
Quoted 15 lines · YOSHIFUJI Hideaki / ?$B5HF#1QL@ <[email protected]> writes:
In article <[email protected]> (at Tue, 20 Feb 2007 20:53:45 -0800 (PST)), Linus Torvalds <[email protected]> says:
Quoted 3 lines
But there's a ton of architecture updates (arm, mips, powerpc, x86, you name it), ACPI updates, and lots of driver work. And just a lot of cleanups.
I cannot boot 2.6.21-rc1; it falls into OOM-Killer.
Interesting error message I can see is:
request_module: runaway loop modprobe net-pf-1After bisecting, the commit
Driver core: letrequest_module()send a/sys/modules/kmod/-uevent
(idc353c3fb0700a3c17ea2b0237710a184232ccd7f) is to blame.
Quoted 6 lines
Quoted 4 lines
Quoted 1 line
Reverting it fixes the issue to me.
/sbin/hotplugneeds some module, butrequest_module()call/sbin/hotplugloop? Hm.. does the patch fix the problem?How does it loop?
E.g. something calls the request_modle(), and if hotplug is using socket(PF_UNIX) and af_unix is module, it also calls request_modle()?
Just my guess though...
Signature · 1 line
OGAWA Hirofumi <[email protected]>
Re: request_module: runaway loop modprobe net-pf-1 (is Re: Linux 2.6.21-rc1)
Quoted 25 lines · OGAWA Hirofumi
Quoted 23 lines · Greg KH
Quoted 21 lines · OGAWA Hirofumi
Quoted 8 lines · YOSHIFUJI Hideaki / ?$B5HF#1QL@ <[email protected]> writes:
In article <[email protected]> (at Tue, 20 Feb 2007 20:53:45 -0800 (PST)), Linus Torvalds <[email protected]> says:
Quoted 3 lines
But there's a ton of architecture updates (arm, mips, powerpc, x86, you name it), ACPI updates, and lots of driver work. And just a lot of cleanups.
I cannot boot 2.6.21-rc1; it falls into OOM-Killer.
Quoted 8 lines
Interesting error message I can see is:
request_module: runaway loop modprobe net-pf-1After bisecting, the commit
Driver core: letrequest_module()send a/sys/modules/kmod/-uevent
(idc353c3fb0700a3c17ea2b0237710a184232ccd7f) is to blame.Reverting it fixes the issue to me.
/sbin/hotplugneeds some module, butrequest_module()call/sbin/hotplugloop? Hm.. does the patch fix the problem?
Quoted 6 lines
Quoted 1 line
How does it loop?
E.g. something calls the
request_modle(), and if hotplug is usingsocket(PF_UNIX)andaf_unixis module, it also callsrequest_modle()?Just my guess though...
Ugh, why does anyone make af_unix a module these days. I thought only Debian was that foolish... :)
It will be interesting to see if this fixes the issue or not.
thanks,
greg k-h
Re: request_module: runaway loop modprobe net-pf-1 (is Re: Linux 2.6.21-rc1)
Quoted 8 lines · Greg KH
Quoted 4 lines · OGAWA Hirofumi
E.g. something calls the
request_modle(), and if hotplug is usingsocket(PF_UNIX)andaf_unixis module, it also callsrequest_modle()?Just my guess though...
Ugh, why does anyone make
af_unixa module these days. I thought only Debian was that foolish... :)
Then how about making CONFIG_UNIX bool instead of tristate?
Cheers
Anders
net/unix/Kconfig +1 -5
@@ -3,7 +3,7 @@ # config UNIX - tristate "Unix domain sockets" + bool "Unix domain sockets" ---help--- If you say Y here, you will include support for Unix domain sockets; sockets are the standard Unix mechanism for establishing and
@@ -13,9 +13,5 @@ config UNIX an embedded system or something similar, you therefore definitely want to say Y here. - To compile this driver as a module, choose M here: the module will be - called unix. Note that several important services won't work - correctly if you say M here and then neglect to load the module. - Say Y unless you know what you are doing.
David Miller
maintainerRe: request_module: runaway loop modprobe net-pf-1 (is Re: Linux 2.6.21-rc1)
From: Anders Larsen <[email protected]>
Date: Thu, 22 Feb 2007 10:57:47 +0100
Quoted 11 lines · Greg KH
Quoted 8 lines · OGAWA Hirofumi
Quoted 4 lines
E.g. something calls the
request_modle(), and if hotplug is usingsocket(PF_UNIX)andaf_unixis module, it also callsrequest_modle()?Just my guess though...
Ugh, why does anyone make
af_unixa module these days. I thought only Debian was that foolish... :)Then how about making
CONFIG_UNIXbool instead of tristate?
Please see the archives, there have been discussions about this kind of suggestion before.
We should not dis-allow AF_UNIX being modular just because it now becomes inconvenient.
A message that is not in the archive (sent off-list or not yet received): [email protected]
A message that is not in the archive (sent off-list or not yet received): [email protected]
Re: request_module: runaway loop modprobe net-pf-1 (is Re: Linux 2.6.21-rc1)
Quoted 23 lines · On Thu, Feb 22, 2007 at 12:34:17PM +0900, YOSHIFUJI Hideaki / ?$B5HF#1QL@ wrote:
In article <[email protected]> (at Thu, 22 Feb 2007 11:04:40 +0900 (JST)), YOSHIFUJI Hideaki / ?$B5HF#1QL@ <[email protected]> says:
Quoted 21 lines
In article <[email protected]> (at Thu, 22 Feb 2007 04:12:04 +0900), OGAWA Hirofumi <[email protected]> says:
Quoted 19 lines
Quoted 16 lines · YOSHIFUJI Hideaki / ?$B5HF#1QL@ <[email protected]> writes:
In article <[email protected]> (at Tue, 20 Feb 2007 20:53:45 -0800 (PST)), Linus Torvalds <[email protected]> says:
Quoted 3 lines
But there's a ton of architecture updates (arm, mips, powerpc, x86, you name it), ACPI updates, and lots of driver work. And just a lot of cleanups.
I cannot boot 2.6.21-rc1; it falls into OOM-Killer.
Interesting error message I can see is:
request_module: runaway loop modprobe net-pf-1After bisecting, the commit
Driver core: letrequest_module()send a/sys/modules/kmod/-uevent
(idc353c3fb0700a3c17ea2b0237710a184232ccd7f) is to blame.Reverting it fixes the issue to me.
Quoted 8 lines
Quoted 4 lines
Quoted 2 lines
/sbin/hotplugneeds some module, butrequest_module()call/sbin/hotplugloop? Hm.. does the patch fix the problem?Yes, it absolutely fixes the issue.
Several options:
- To revert the changeset to blame
No.
Quoted 1 line
- To apply Ogawa-san's (or other appropriate) patch
His patch just avoids the issue, but isn't correct.
Quoted 1 line
- To select UNIX in init/Kconfig:KMOD
I like this one, but some people might still want it as a module (I really don't know why, does anyone else???)
Quoted 2 lines
I think it would be a good idea to rate-limit frequency of requesing a single module, anyway.
Yes, if we can detect the loop, that would be best.
Or, maybe the easiest thing is to just not do the netlink call if it's asking for the network module? :)
Any other suggestions or thoughts?
thanks,
greg k-h
Quoted 9 lines · Linus Torvalds
Ok, the merge window for 2.6.21 has closed, and -rc1 is out there.
There's a lot of changes, as is usual for an -rc1 thing, but at least so far it would seem that 2.6.20 has been a good base, and I don't think we have anything *really* scary here.
The most interesting core change may be the dyntick/nohz one, where timer ticks will only happen when needed. It's been brewing for a _loong_ time, but it's in the standard kernel now as an option.
On i386 I get the following,
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
Testing NMI watchdog ... CPU#0: NMI appears to be stuck (24->24)! CPU#1: NMI appears to be stuck (0->0)!
CPU#2: NMI appears to be stuck (0->0)!
CPU#3: NMI appears to be stuck (0->0)!
when I add nmi_watchdog=1 to my boot args which worked on prior kernels. On closer inspection it looks like arch/i386/kernel/io_apic.c :check_timer() --> timer_irq_works() depends on IRQ0 incrementing jiffies which is no longer the case AFAIK.
I'm not sure exactly how that relates to the NMI, but the check_timer() function disabled the NMI through the io-apic if it can't get the "timer" working through the io-apic.
Daniel
Quoted 14 lines · Daniel Walker
Quoted 3 lines
The most interesting core change may be the dyntick/nohz one, where timer ticks will only happen when needed. It's been brewing for a _loong_ time, but it's in the standard kernel now as an option.
On i386 I get the following,
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
Testing NMI watchdog ... CPU#0: NMI appears to be stuck (24->24)! CPU#1: NMI appears to be stuck (0->0)!
CPU#2: NMI appears to be stuck (0->0)!
CPU#3: NMI appears to be stuck (0->0)!
Quoted 4 lines
when I add nmi_watchdog=1 to my boot args which worked on prior kernels. On closer inspection it looks like
arch/i386/kernel/io_apic.c:check_timer()-->timer_irq_works()depends on IRQ0 incrementing jiffies which is no longer the case AFAIK.
At this point the PIT / HPET _is_ active and incrementing jiffies. The switch to local apic timers happens afterwards.
Quoted 3 lines
I'm not sure exactly how that relates to the NMI, but the
check_timer()function disabled the NMI through the io-apic if it can't get the "timer" working through the io-apic.
Boot log please.
tglx
Quoted 15 lines · Thomas Gleixner
Quoted 14 lines · Daniel Walker
Quoted 3 lines
The most interesting core change may be the dyntick/nohz one, where timer ticks will only happen when needed. It's been brewing for a _loong_ time, but it's in the standard kernel now as an option.
On i386 I get the following,
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
Testing NMI watchdog ... CPU#0: NMI appears to be stuck (24->24)! CPU#1: NMI appears to be stuck (0->0)!
CPU#2: NMI appears to be stuck (0->0)!
CPU#3: NMI appears to be stuck (0->0)!
Quoted 7 lines
Quoted 4 lines
when I add nmi_watchdog=1 to my boot args which worked on prior kernels. On closer inspection it looks like
arch/i386/kernel/io_apic.c:check_timer()-->timer_irq_works()depends on IRQ0 incrementing jiffies which is no longer the case AFAIK.At this point the PIT / HPET _is_ active and incrementing jiffies. The switch to local apic timers happens afterwards.
Could be the switch over then which confuses the NMI .
Quoted 8 lines
Quoted 3 lines
I'm not sure exactly how that relates to the NMI, but the
check_timer()function disabled the NMI through the io-apic if it can't get the "timer" working through the io-apic.Boot log please.
tglx
.config is in there too .
ftp://source.mvista.com/pub/dwalker/tglx/
Quoted 4 lines · Daniel Walker
Quoted 2 lines
At this point the PIT / HPET _is_ active and incrementing jiffies. The switch to local apic timers happens afterwards.
Could be the switch over then which confuses the NMI .
Why? The switch just stops the PIT/HPET. It does not fiddle with IO_APIC and friends at all.
Quoted 1 line
ftp://source.mvista.com/pub/dwalker/tglx/
Nothing obvious. Bisect time :(
tglx
Quoted 8 lines · Thomas Gleixner
Quoted 4 lines · Daniel Walker
Quoted 2 lines
At this point the PIT / HPET _is_ active and incrementing jiffies. The switch to local apic timers happens afterwards.
Could be the switch over then which confuses the NMI .
Why? The switch just stops the PIT/HPET. It does not fiddle with
IO_APICand friends at all.
I'm not an expert on the io-apic, but the check_timer() function seemed to assume IRQ0 was happening regularly ..
Quoted 3 lines
Quoted 1 line
ftp://source.mvista.com/pub/dwalker/tglx/
Nothing obvious. Bisect time :(
Well, I'm pretty sure it's HRT, cause in prior versions this only happened when HRT is enabled. Then you guys went to the lapic all the time, and now this is happening all the time ..
You can't reproduce this?
Daniel
Quoted 8 lines · Daniel Walker
Quoted 5 lines
Quoted 2 lines
Could be the switch over then which confuses the NMI .
Why? The switch just stops the PIT/HPET. It does not fiddle with
IO_APICand friends at all.I'm not an expert on the io-apic, but the
check_timer()function seemed to assume IRQ0 was happening regularly ..
Again:
check_timer() is called _BEFORE_ we even touch the local APIC timers. At this point PIT/HPET _IS_ firing IRQ0 with HZ frequency.
Quoted 3 lines
Well, I'm pretty sure it's HRT, cause in prior versions this only happened when HRT is enabled. Then you guys went to the lapic all the time, and now this is happening all the time ..
The NMI is stuck:
if (nmi_count(cpu) - prev_nmi_count[cpu] <= 5) {
printk("CPU#%d: NMI appears to be stuck (%d->%d)!\n",
cpu,
prev_nmi_count[cpu],
nmi_count(cpu));This has nothing to do with jiffies.
There have been a bunch of changes in arch/i386/kernel/nmi.c as well.
Quoted 1 line
You can't reproduce this?
Nope.
Also all my machines emit something like:
"ACPI: LAPIC_NMI (acpi_id[0x00] dfl dfl lint[0x1])"
In your boot log nothing to see.
tglx
Quoted 7 lines · Thomas Gleixner
Quoted 6 lines · Daniel Walker
Quoted 5 lines
Quoted 2 lines
Could be the switch over then which confuses the NMI .
Why? The switch just stops the PIT/HPET. It does not fiddle with
IO_APICand friends at all.
Quoted 7 lines
Quoted 2 lines
I'm not an expert on the io-apic, but the
check_timer()function seemed to assume IRQ0 was happening regularly ..Again:
check_timer()is called _BEFORE_ we even touch the local APIC timers. At this point PIT/HPET _IS_ firing IRQ0 with HZ frequency.
Right, but eventually there isn't a regular timer interrupt through the io-apic. I don't think in the past IRQ0 stops without the system crashing, so check_timer() could assume the timer (IRQ0) is _always_ regular.
do you know what the requirement are for routing the NMI through the io-apic?
Quoted 6 lines
Quoted 3 lines
Well, I'm pretty sure it's HRT, cause in prior versions this only happened when HRT is enabled. Then you guys went to the lapic all the time, and now this is happening all the time ..
The NMI is stuck:
Quoted 7 lines
if (nmi_count(cpu) - prev_nmi_count[cpu] <= 5) { printk("CPU#%d: NMI appears to be stuck (%d->%d)!\n", cpu, prev_nmi_count[cpu], nmi_count(cpu));This has nothing to do with jiffies.
I think it has to do with IRQ0 . Did I mention this doesn't happen in 2.6.20 .
Quoted 5 lines
There have been a bunch of changes in
arch/i386/kernel/nmi.cas well.Quoted 1 line
You can't reproduce this?
Nope.
Do you use nmi_watchdog=1 ?
Daniel
Quoted 7 lines · Daniel Walker
Right, but eventually there isn't a regular timer interrupt through the io-apic. I don't think in the past IRQ0 stops without the system crashing, so
check_timer()could assume the timer (IRQ0) is _always_ regular.do you know what the requirement are for routing the NMI through the io-apic?
Sorry. I checked. switching PIT off really breaks nmi_watchdog=1, as this just mirrors IRQ#0 to the NMI. No IRQ#0 from PIT, no NMI
We could keep PIT running with an empty interrupt handler when nmi_watchdog=1 is set, but this interferes nicely with broadcasting.
Does nmi_watchdog=2 work ? We might switch to that, when a local APIC is available.
tglx
Quoted 11 lines · Thomas Gleixner
Quoted 7 lines · Daniel Walker
Right, but eventually there isn't a regular timer interrupt through the io-apic. I don't think in the past IRQ0 stops without the system crashing, so
check_timer()could assume the timer (IRQ0) is _always_ regular.do you know what the requirement are for routing the NMI through the io-apic?
Sorry. I checked. switching PIT off really breaks nmi_watchdog=1, as this just mirrors IRQ#0 to the NMI. No IRQ#0 from PIT, no NMI
That's what I suspected ..
Quoted 5 lines
We could keep PIT running with an empty interrupt handler when nmi_watchdog=1 is set, but this interferes nicely with broadcasting.
Does nmi_watchdog=2 work ? We might switch to that, when a local APIC is available.
Oddly, nmi_watchdog=2 doesn't work in 2.6.21-rc1, but it works in 2.6.20-rt8 however I'm not sure of the config could have been PREEMPT_RT was on.
Daniel
Quoted 12 lines · Thomas Gleixner
Quoted 7 lines · Daniel Walker
Right, but eventually there isn't a regular timer interrupt through the io-apic. I don't think in the past IRQ0 stops without the system crashing, so
check_timer()could assume the timer (IRQ0) is _always_ regular.do you know what the requirement are for routing the NMI through the io-apic?
Sorry. I checked. switching PIT off really breaks nmi_watchdog=1, as this just mirrors IRQ#0 to the NMI. No IRQ#0 from PIT, no NMI
Quoted 9 lines
We could keep PIT running with an empty interrupt handler when nmi_watchdog=1 is set, but this interferes nicely with broadcasting.
Does nmi_watchdog=2 work ? We might switch to that, when a local APIC is available.
tglx
There's a compile failure during my bisect.
distcc[3863] ERROR: compile /tmp//hrtimer.tmp.dwalker1.3795.i on dwalker3/120 failedkernel/hrtimer.c: In function 'hrtimer_cpu_notify':kernel/hrtimer.c:884: warning: implicit declaration of function 'clockevents_notify'kernel/hrtimer.c:884: error: 'CLOCK_EVT_NOTIFY_CPU_DEAD' undeclared (first use in this function) kernel/hrtimer.c:884: error: (Each undeclared identifier is reported only oncekernel/hrtimer.c:884: error: for each function it appears in.)drivers/ide/setup-pci.c: In function 'ide_scan_pcibus':drivers/ide/setup-pci.c:866: warning: ignoring return value of '__pci_register_driver', declared with attribute warn_unused_result make[1]: *** [kernel/hrtimer.o] Error 1
from this commit,
commit f8381cba04ba8173fd5a2b8e5cd8b3290ee13a98
Author: Thomas Gleixner <[email protected]> Date: Fri Feb 16 01:28:02 2007 -0800
[PATCH] tick-management: broadcast functionality
With Ingo Molnar <[email protected]>
Add broadcast functionality, so per cpu clock event devices can be registere as dummy devices or switched from/to broadcast on demand. The broadcast function distributes the events via the broadcast function of the clock even device. This is primarily designed to replace the switch apic timer to / fr IPI in power states, where the apic stops.
Quoted 2 lines · Daniel Walker
There's a compile failure during my bisect.
When that happens, you need to pick another commit to try than the one git selected for you automatically. You can do that by doing
git bisect visualize
and select another commit somewhere fairly close to a mid-point, and try that with
git reset --hard <commit-sha1>
instead.
Linus
Quoted 11 lines · Daniel Walker
There's a compile failure during my bisect.
distcc[3863] ERROR: compile
/tmp//hrtimer.tmp.dwalker1.3795.ion dwalker3/120 failedkernel/hrtimer.c: In function 'hrtimer_cpu_notify':kernel/hrtimer.c:884: warning: implicit declaration of function 'clockevents_notify'kernel/hrtimer.c:884: error: 'CLOCK_EVT_NOTIFY_CPU_DEAD' undeclared (first use in this function)kernel/hrtimer.c:884: error: (Each undeclared identifier is reported only oncekernel/hrtimer.c:884: error: for each function it appears in.)drivers/ide/setup-pci.c: In function 'ide_scan_pcibus':drivers/ide/setup-pci.c:866: warning: ignoring return value of '__pci_register_driver', declared with attributewarn_unused_resultmake[1]: *** [kernel/hrtimer.o] Error 1
hrmpf. we made it bisectable at some point.
tglx
Quoted 13 lines · Thomas Gleixner
Quoted 11 lines · Daniel Walker
There's a compile failure during my bisect.
distcc[3863] ERROR: compile
/tmp//hrtimer.tmp.dwalker1.3795.ion dwalker3/120 failedkernel/hrtimer.c: In function 'hrtimer_cpu_notify':kernel/hrtimer.c:884: warning: implicit declaration of function 'clockevents_notify'kernel/hrtimer.c:884: error: 'CLOCK_EVT_NOTIFY_CPU_DEAD' undeclared (first use in this function)kernel/hrtimer.c:884: error: (Each undeclared identifier is reported only oncekernel/hrtimer.c:884: error: for each function it appears in.)drivers/ide/setup-pci.c: In function 'ide_scan_pcibus':drivers/ide/setup-pci.c:866: warning: ignoring return value of '__pci_register_driver', declared with attributewarn_unused_resultmake[1]: *** [kernel/hrtimer.o] Error 1
Quoted 1 line
hrmpf. we made it bisectable at some point.
It was related some code under a hot plug ifdef ..
Here's the final commit from the bisect which caused it . It says "No changes to existing functionality" ?
e9e2cdb412412326c4827fc78ba27f410d837e6e is first bad commit commit e9e2cdb412412326c4827fc78ba27f410d837e6e
Author: Thomas Gleixner <[email protected]> Date: Fri Feb 16 01:28:04 2007 -0800
[PATCH] clockevents: i386 drivers
Add clockevent drivers for i386: lapic (local) and PIT/HPET (global). Update the timer IRQ to call into the PIT/HPET driver's event handler and the lapic-timer IRQ to call into the lapic clockevent driver. The assignement of timer functionality is delegated to the core framework code and replaces the compile and runtime evalution in do_timer_interrupt_hook()
Use the clockevents broadcast support and implement the lapic_broadcast function for ACPI.
No changes to existing functionality.
Quoted 3 lines · Daniel Walker
Here's the final commit from the bisect which caused it . It says "No changes to existing functionality" ?
Ok, it wouldn't be the first time some change that is supposed to change nothing does actually change something.
That said, one thing to worry about when doing bisection: the kernel configuration.
If you always just do "make oldconfig" or something, the kernel config for the thing you test will depend on the _previous_ kernel you compiled, and that is not always what you want. I've once had a failing kernel, did bisection, and it turned out that since I had gone back in time to before the option that caused the failure even existed, I had (by mistake) then compiled some of the later kernels without that option enabled, and called them "good".
The end result: "git bisect" didn't actually end up pointing to the right commit, just because I had effectively lied to it.
That said, considering that you did get a commit that doesn't look entirely unlikely (and that clearly changes things that are relevant), I suspect you did actually find the right one.
Linus
---
Quoted 18 lines
commit
e9e2cdb412412326c4827fc78ba27f410d837e6eAuthor: Thomas Gleixner <[email protected]> Date: Fri Feb 16 01:28:04 2007 -0800[PATCH] clockevents: i386 drivers
Add clockevent drivers for i386: lapic (local) and PIT/HPET (global). Update the timer IRQ to call into the PIT/HPET driver's event handler and the lapic-timer IRQ to call into the lapic clockevent driver. The assignement of timer functionality is delegated to the core framework code and replaces the compile and runtime evalution in
do_timer_interrupt_hook()Use the clockevents broadcast support and implement the
lapic_broadcastfunction for ACPI.No changes to existing functionality.
Quoted 3 lines · Linus Torvalds
That said, considering that you did get a commit that doesn't look entirely unlikely (and that clearly changes things that are relevant), I suspect you did actually find the right one.
Yup, thats the one which switches off PIT after we have the local APIC timers up and running. Which turns out to cause the nmi_watchdog not working anymore.
tglx
Quoted 8 lines · Linus Torvalds
Quoted 3 lines · Daniel Walker
Here's the final commit from the bisect which caused it . It says "No changes to existing functionality" ?
Ok, it wouldn't be the first time some change that is supposed to change nothing does actually change something.
Yeah , maybe I screwed something up. First time I've done a git bisect.
Quoted 10 lines
That said, one thing to worry about when doing bisection: the kernel configuration.
If you always just do "make oldconfig" or something, the kernel config for the thing you test will depend on the _previous_ kernel you compiled, and that is not always what you want. I've once had a failing kernel, did bisection, and it turned out that since I had gone back in time to before the option that caused the failure even existed, I had (by mistake) then compiled some of the later kernels without that option enabled, and called them "good".
In this case I don't think anything was specifically turned on, beyond SMP. For instance HRT/dynamic tick was off.
I didn't run "make oldconfig", but just running "make" asked for options that just got added, which was nice.
Quoted 6 lines
The end result: "git bisect" didn't actually end up pointing to the right commit, just because I had effectively lied to it.
That said, considering that you did get a commit that doesn't look entirely unlikely (and that clearly changes things that are relevant), I suspect you did actually find the right one.
I think if it's not that exact commit it's still one in that set. I mainly wanted to confirm that it was an hrt/dynamic tick issue , and not some left field patches..
Daniel
Re: Linux 2.6.21-rc1 [git bisect]
In reply to Linus TorvaldsQuoted 2 lines · Linus Torvalds
That said, one thing to worry about when doing bisection: the kernel configuration.
This bit me badly the one time I did a git bisect; it kept ping- ponging around a big change (sata? xtables?) that required me to answer the same two dozen questions about ten different times.
If git-bisect itself could manage .config as part of the process, reverting to the one used with the most-recently-in-the-past try when it backs up to a revision, that would be, you know, wonderful.
--Pete
----------------------------------
Pete Harlan
ArtSelect, Inc.
[email protected]
http://www.artselect.com
ArtSelect is a subsidiary of a21, Inc.
Quoted 5 lines · On Wed, 21 Feb 2007 18:41:11 +0100 Thomas Gleixner <[email protected]> wrote:
Quoted 3 lines · Daniel Walker
Quoted 2 lines
At this point the PIT / HPET _is_ active and incrementing jiffies. The switch to local apic timers happens afterwards.
Quoted 9 lines
Quoted 1 line
Could be the switch over then which confuses the NMI .
Why? The switch just stops the PIT/HPET. It does not fiddle with
IO_APICand friends at all.Quoted 1 line
ftp://source.mvista.com/pub/dwalker/tglx/
Nothing obvious. Bisect time :(
I already bisected this on my old pIII, which has the same problem:
clockevents-i386-drivers.patch
Quoted 2 lines · Andrew Morton
I already bisected this on my old pIII, which has the same problem:
clockevents-i386-drivers.patch
yes - we know what the problem is (and will fix it): the stopping of the PIT - nmi_watchdog=1 is hack to use the IO-APIC's PIT pin to also signal NMIs.
Just to clarify, this problem does not occur if HIGH_RES_TIMERS is off, correct?
Ingo
Quoted 11 lines · Ingo Molnar
Quoted 2 lines · Andrew Morton
I already bisected this on my old pIII, which has the same problem:
clockevents-i386-drivers.patchyes - we know what the problem is (and will fix it): the stopping of the PIT - nmi_watchdog=1 is hack to use the IO-APIC's PIT pin to also signal NMIs.
Just to clarify, this problem does not occur if
HIGH_RES_TIMERSis off, correct?
It does, as we switch off PIT when lapic is available in any case.
tglx
Quoted 6 lines · Ingo Molnar
Quoted 2 lines · Andrew Morton
I already bisected this on my old pIII, which has the same problem:
clockevents-i386-drivers.patch
Quoted 6 lines
yes - we know what the problem is (and will fix it): the stopping of the PIT - nmi_watchdog=1 is hack to use the IO-APIC's PIT pin to also signal NMIs.
Just to clarify, this problem does not occur if
HIGH_RES_TIMERSis off, correct?
s/does not occur/does occur/
we switch off the PIT whenever we can.
Ingo
I'm getting an undefined symbol with CONFIG_AGP=m:
WARNING: "compat_agp_ioctl" [drivers/char/agp/agpgart.ko] undefined!
Andreas.
Signature · 4 lines
Andreas Schwab, SuSE Labs, [email protected] SuSE Linux Products GmbH, Maxfeldstraße 5, 90409 Nürnberg, Germany PGP key fingerprint = 58CA 54C7 6D53 942B 1756 01D3 44D5 214B 8276 4ED5 "And now for something completely different."
Quoted 3 lines · Andreas Schwab
I'm getting an undefined symbol with
CONFIG_AGP=m:WARNING: "
compat_agp_ioctl" [drivers/char/agp/agpgart.ko] undefined!
Fix went to Linus an hour ago.
It's been in -mm for a week, and agpgart.git for a day or so.
Dave
Signature · 1 line
http://www.codemonkey.org.uk
NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
In reply to Linus TorvaldsLinus Torvalds <[email protected]> ha scritto:
Quoted 9 lines
Ok, the merge window for 2.6.21 has closed, and -rc1 is out there.
There's a lot of changes, as is usual for an -rc1 thing, but at least so far it would seem that 2.6.20 has been a good base, and I don't think we have anything *really* scary here.
The most interesting core change may be the dyntick/nohz one, where timer ticks will only happen when needed. It's been brewing for a _loong_ time, but it's in the standard kernel now as an option.
Hi Thomas,
I'm testing NO_HZ on my machines. On the laptop I see that the timer interrupt counter is incremented (though slower than HZ). This machine is running UP kernel.
On my desktop I see this:
CPU0 CPU1
0: 114 0 IO-APIC-edge timer 1: 1624 10771 IO-APIC-edge i8042 6: 3 0 IO-APIC-edge floppy 7: 0 0 IO-APIC-edge parport0 9: 0 0 IO-APIC-fasteoi acpi 12: 40111 184047 IO-APIC-edge i8042 16: 75624 998858 IO-APIC-fasteoi radeon@pci:0000:01:00.0, uhci_hcd:usb1 17: 0 0 IO-APIC-fasteoi uhci_hcd:usb4 18: 711 5487 IO-APIC-fasteoi ide1, libata, ehci_hcd:usb7, uhci_hcd:usb3 19: 617 2254 IO-APIC-fasteoi libata, uhci_hcd:usb2 20: 0 0 IO-APIC-fasteoi ehci_hcd:usb6, uhci_hcd:usb5 21: 2483869 0 IO-APIC-fasteoi eth0 22: 2 0 IO-APIC-fasteoi ohci1394 218: 28872 360643 PCI-MSI-edge HDA Intel 219: 32932 138196 PCI-MSI-edge libata NMI: 0 0 LOC: 2761191 2827539 ERR: 0 MIS: 0
Interrupt 0 is stuck at 114 (the number is consistent across reboots). I don't experience any problem, time is running fine. Still it's strange that the timer is doing nothing; maybe something other than the PIT is used for time keeping?
This is the dmesg of the "abnormal" machine (dual core, SMP kernel):
Linux version 2.6.20-ge696268a-dirty ([email protected]) (gcc version 4.1.2 20061115 (prerelease) (Debian 4.1.1-21)) #33 SMP PREEMPT Tue Feb 20 23:24:24 CET 2007 BIOS-provided physical RAM map:
sanitize start
sanitize endcopy_e820_map() start: 0000000000000000 size: 000000000009c800 end: 000000000009c800 type: 1copy_e820_map() type is E820_RAMcopy_e820_map() start: 000000000009c800 size: 0000000000003800 end: 00000000000a0000 type: 2copy_e820_map() start: 00000000000e4000 size: 000000000001c000 end: 0000000000100000 type: 2copy_e820_map() start: 0000000000100000 size: 000000003fe90000 end: 000000003ff90000 type: 1copy_e820_map() type is E820_RAMcopy_e820_map() start: 000000003ff90000 size: 000000000000e000 end: 000000003ff9e000 type: 3copy_e820_map() start: 000000003ff9e000 size: 0000000000042000 end: 000000003ffe0000 type: 4copy_e820_map() start: 000000003ffe0000 size: 0000000000020000 end: 0000000040000000 type: 2copy_e820_map() start: 00000000fee00000 size: 0000000000001000 end: 00000000fee01000 type: 2copy_e820_map() start: 00000000ffb00000 size: 0000000000500000 end: 0000000100000000 type: 2
BIOS-e820: 0000000000000000 - 000000000009c800 (usable)
BIOS-e820: 000000000009c800 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000e4000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 000000003ff90000 (usable)
BIOS-e820: 000000003ff90000 - 000000003ff9e000 (ACPI data)
BIOS-e820: 000000003ff9e000 - 000000003ffe0000 (ACPI NVS)
BIOS-e820: 000000003ffe0000 - 0000000040000000 (reserved)
BIOS-e820: 00000000fee00000 - 00000000fee01000 (reserved)
BIOS-e820: 00000000ffb00000 - 0000000100000000 (reserved)
1023MB LOWMEM available.
found SMP MP-table at 000ff780
Entering add_active_range(0, 0, 262032) 0 entries of 256 used
Zone PFN ranges:
DMA 0 -> 4096
Normal 4096 -> 262032
early_node_map[1] active PFN ranges
0: 0 -> 262032
On node 0 totalpages: 262032
DMA zone: 32 pages used for memmap
DMA zone: 0 pages reserved
DMA zone: 4064 pages, LIFO batch:0
Normal zone: 2015 pages used for memmap
Normal zone: 255921 pages, LIFO batch:31
DMI 2.4 present.
ACPI: RSDP 000FA980, 0024 (r2 ACPIAM)
ACPI: XSDT 3FF90100, 0054 (r1 KOZIRO FRONTIER 12000611 MSFT 97)
ACPI: FACP 3FF90290, 00F4 (r3 MSTEST OEMFACP 12000611 MSFT 97)
ACPI: DSDT 3FF905C0, 8F8C (r1 A0637 A0637000 0 INTL 20060113)
ACPI: FACS 3FF9E000, 0040
ACPI: APIC 3FF90390, 006C (r1 MSTEST OEMAPIC 12000611 MSFT 97)
ACPI: MCFG 3FF90400, 003C (r1 MSTEST OEMMCFG 12000611 MSFT 97)
ACPI: SLIC 3FF90440, 0176 (r1 KOZIRO FRONTIER 12000611 MSFT 97)
ACPI: OEMB 3FF9E040, 007B (r1 MSTEST AMI_OEM 12000611 MSFT 97)
ACPI: HPET 3FF99550, 0038 (r1 MSTEST OEMHPET 12000611 MSFT 97)
ACPI: PM-Timer IO Port: 0x808
ACPI: Local APIC address 0xfee00000
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x00] enabled)
Processor #0 6:15 APIC version 20
ACPI: LAPIC (acpi_id[0x02] lapic_id[0x01] enabled)
Processor #1 6:15 APIC version 20
ACPI: LAPIC (acpi_id[0x03] lapic_id[0x82] disabled)
ACPI: LAPIC (acpi_id[0x04] lapic_id[0x83] disabled)
ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
IOAPIC[0]: apic_id 2, version 32, address 0xfec00000, GSI 0-23
ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
ACPI: IRQ0 used by override.
ACPI: IRQ2 used by override.
ACPI: IRQ9 used by override.
Enabling APIC mode: Flat. Using 1 I/O APICs
ACPI: HPET id: 0x8086a202 base: 0xfed00000
Using ACPI (MADT) for SMP configuration information
Allocating PCI resources starting at 50000000 (gap: 40000000:bee00000)
Detected 2135.184 MHz processor.
Built 1 zonelists. Total pages: 259985
Kernel command line: BOOT_IMAGE=linux-2.6.20g ro video=radeonfb:1024x768-8@60 lapic apic=verbose root=/dev/mapper/main_vol-root mapped APIC to ffffd000 (fee00000)
mapped IOAPIC to ffffc000 (fec00000)
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Initializing CPU#0
CPU 0 irqstacks, hard=b042f000 soft=b042d000
PID hash table entries: 4096 (order: 12, 16384 bytes)
Console: colour VGA+ 80x25
Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
... MAX_LOCKDEP_SUBCLASSES: 8
... MAX_LOCK_DEPTH: 30
... MAX_LOCKDEP_KEYS: 2048
... CLASSHASH_SIZE: 1024
... MAX_LOCKDEP_ENTRIES: 8192 ... MAX_LOCKDEP_CHAINS: 16384 ... CHAINHASH_SIZE: 8192
memory used by lock dependency info: 1096 kB
per task-struct memory footprint: 1200 bytes
------------------------
| Locking API testsuite:
[cut, everything is ok]
-------------------------------------------------------
Good, all 218 testcases passed! |
---------------------------------
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
Memory: 1029640k/1048128k available (2028k kernel code, 17904k reserved, 985k data, 200k init, 0k highmem) virtual kernel memory layout:
fixmap : 0xfffb7000 - 0xfffff000 ( 288 kB)
vmalloc : 0xf0800000 - 0xfffb5000 ( 247 MB)
lowmem : 0xb0000000 - 0xeff90000 (1023 MB)
.init : 0xb03f6000 - 0xb0428000 ( 200 kB)
.data : 0xb02fb094 - 0xb03f1814 ( 985 kB)
.text : 0xb0100000 - 0xb02fb094 (2028 kB)Checking if this processor honours the WP bit even in supervisor mode... Ok.
hpet0: at MMIO 0xfed00000, IRQs 2, 8, 0
hpet0: 3 64-bit timers, 14318180 Hz
Calibrating delay using timer specific routine.. 4273.73 BogoMIPS (lpj=8547462)
Mount-cache hash table entries: 512
CPU: After generic identify, caps: bfebfbff 20100000 00000000 00000000 0000e3bd 00000000 00000001
monitor/mwait feature present.
using mwait in idle threads.
CPU: L1 I cache: 32K, L1 D cache: 32K
CPU: L2 cache: 2048K
CPU: Physical Processor ID: 0
CPU: Processor Core ID: 0
CPU: After all inits, caps: bfebfbff 20100000 00000000 00003940 0000e3bd 00000000 00000001
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
Compat vDSO mapped to ffffe000.
Checking 'hlt' instruction... OK.
lockdep: not fixing up alternatives.
ACPI: Core revision 20070126
Parsing all Control Methods:
Table [DSDT](id 0001) - 1008 Objects with 75 Devices 286 Methods 36 Regions
tbxface-0587 [02] tb_load_namespace : ACPI Tables successfully acquired
evxfevnt-0091 [02] enable : Transition to ACPI mode successful
CPU0: Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz stepping 06
enabled ExtINT on CPU#0
lockdep: not fixing up alternatives.
Booting processor 1/1 eip 3000
CPU 1 irqstacks, hard=b0430000 soft=b042e000
Initializing CPU#1
masked ExtINT on CPU#1
Calibrating delay using timer specific routine.. 4270.09 BogoMIPS (lpj=8540188)
CPU: After generic identify, caps: bfebfbff 20100000 00000000 00000000 0000e3bd 00000000 00000001
monitor/mwait feature present.
CPU: L1 I cache: 32K, L1 D cache: 32K
CPU: L2 cache: 2048K
CPU: Physical Processor ID: 0
CPU: Processor Core ID: 1
CPU: After all inits, caps: bfebfbff 20100000 00000000 00003940 0000e3bd 00000000 00000001
Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#1.
CPU1: Intel(R) Core(TM)2 CPU 6400 @ 2.13GHz stepping 06
Total of 2 processors activated (8543.82 BogoMIPS).
ENABLING IO-APIC IRQs
init IO_APIC IRQs
IO-APIC (apicid-pin) 2-0, 2-16, 2-17, 2-18, 2-19, 2-20, 2-21, 2-22, 2-23 not connected.
..TIMER: vector=0x31 apic1=0 pin1=2 apic2=-1 pin2=-1
Using local APIC timer interrupts.
calibrating APIC timer ...
... lapic delta = 1667977
... PM timer delta = 357949
... PM timer result ok
..... delta 1667977
..... mult: 71634589
..... calibration result: 1067505
..... CPU clock speed is 2135.0043 MHz.
..... host bus clock speed is 266.3505 MHz.
... verify APIC timer
... jiffies delta = 25
... PM timer delta = 357949
... PM timer result ok
checking TSC synchronization [CPU#0 -> CPU#1]: passed.
Brought up 2 CPUs
migration_cost=21
NET: Registered protocol family 16
ACPI: bus type pci registered
PCI: BIOS Bug: MCFG area at e0000000 is not E820-reserved
PCI: Not using MMCONFIG.
PCI: PCI BIOS revision 3.00 entry at 0xf0031, last bus=5
PCI: Using configuration type 1
Setting up standard PCI resources
evgpeblk-0952 [04] ev_create_gpe_block : GPE 00 to 1F [_GPE] 4 regs on int 0x9
evgpeblk-1049 [03] ev_initialize_gpe_bloc: Found 11 Wake, Enabled 2 Runtime GPEs in this block
Completing Region/Field/Buffer/Package initialization:..................................................................................................................................................................................................................................... Initialized 35/36 Regions 44/44 Fields 51/51 Buffers 99/100 Packages (1017 nodes)
Initializing Device/Processor/Thermal objects by executing _INI methods:.
Executed 1 _INI methods requiring 1 _STA executions (examined 81 objects)
ACPI: Interpreter enabled
ACPI: (supports S0 S1 S3 S4 S5)
ACPI: Using IOAPIC for interrupt routing
ACPI: PCI Root Bridge [PCI0] (0000:00)
PCI: Probing PCI hardware (bus 00)
PCI quirk: region 0800-087f claimed by ICH6 ACPI/GPIO/TCO
PCI quirk: region 0480-04bf claimed by ICH6 GPIO
Boot video device is 0000:01:00.0
PCI: Firmware left 0000:05:01.0 e100 interrupts enabled, disabling
PCI: Transparent bridge - 0000:00:1e.0
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P2._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P1._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P4._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P7._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.P0P8._PRT]
ACPI: PCI Interrupt Link [LNKA] (IRQs 3 4 5 6 7 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LNKB] (IRQs 3 4 *5 6 7 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKC] (IRQs 3 4 5 6 7 10 11 12 14 *15)
ACPI: PCI Interrupt Link [LNKD] (IRQs 3 4 5 6 7 *10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKE] (IRQs 3 4 5 6 7 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNKF] (IRQs 3 4 5 6 7 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LNKG] (IRQs *3 4 5 6 7 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNKH] (IRQs 3 4 5 6 7 10 11 12 *14 15)
Linux Plug and Play Support v0.97 (c) Adam Belay
pnp: PnP ACPI init
pnp: PnP ACPI: found 17 devices
SCSI subsystem initialized
libata version 2.10 loaded.
PCI: Using ACPI for IRQ routing
PCI: If a device doesn't work, try "pci=routeirq". If it helps, post a report
number of MP IRQ sources: 15.
number of IO-APIC #2 registers: 24.
testing the IO APIC.......................
IO APIC #2......
.... register #00: 02000000
....... : physical APIC id: 02 ....... : Delivery Type: 0 ....... : LTS : 0 .... register #01: 00170020 ....... : max redirection entries: 0017 ....... : PRQ implemented: 0 ....... : IO APIC version: 0020 .... IRQ redirection table: NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect: 00 000 00 1 0 0 0 0 0 0 00 01 003 03 1 0 0 0 0 1 1 39 02 003 03 0 0 0 0 0 1 1 31 03 003 03 0 0 0 0 0 1 1 41 04 003 03 1 0 0 0 0 1 1 49 05 003 03 0 0 0 0 0 1 1 51 06 003 03 1 0 0 0 0 1 1 59 07 003 03 1 0 0 0 0 1 1 61 08 003 03 1 0 0 0 0 1 1 69 09 003 03 0 1 0 0 0 1 1 71 0a 003 03 0 0 0 0 0 1 1 79 0b 003 03 0 0 0 0 0 1 1 81 0c 003 03 1 0 0 0 0 1 1 89 0d 003 03 1 0 0 0 0 1 1 91 0e 003 03 0 0 0 0 0 1 1 99 0f 003 03 0 0 0 0 0 1 1 A1 10 000 00 1 0 0 0 0 0 0 00 11 000 00 1 0 0 0 0 0 0 00 12 000 00 1 0 0 0 0 0 0 00 13 000 00 1 0 0 0 0 0 0 00 14 000 00 1 0 0 0 0 0 0 00 15 000 00 1 0 0 0 0 0 0 00 16 000 00 1 0 0 0 0 0 0 00 17 000 00 1 0 0 0 0 0 0 00
IRQ to pin mappings:
IRQ0 -> 0:2
IRQ1 -> 0:1
IRQ3 -> 0:3
IRQ4 -> 0:4
IRQ5 -> 0:5
IRQ6 -> 0:6
IRQ7 -> 0:7
IRQ8 -> 0:8
IRQ9 -> 0:9
IRQ10 -> 0:10
IRQ11 -> 0:11
IRQ12 -> 0:12
IRQ13 -> 0:13
IRQ14 -> 0:14
IRQ15 -> 0:15
.................................... done.
PCI: Cannot allocate resource region 2 of device 0000:02:00.0
PCI: Cannot allocate resource region 3 of device 0000:02:00.0
pnp: 00:01: iomem range 0xfed14000-0xfed19fff has been reserved
pnp: 00:08: ioport range 0x290-0x297 has been reserved
pnp: 00:09: iomem range 0xffafe000-0xffb0cbff has been reserved
pnp: 00:09: iomem range 0xffb00000-0xffbfffff could not be reserved
pnp: 00:09: iomem range 0xfed1c000-0xfed1ffff has been reserved
pnp: 00:09: iomem range 0xfed20000-0xfed8ffff has been reserved
pnp: 00:0c: iomem range 0xfec00000-0xfec00fff has been reserved
pnp: 00:0c: iomem range 0xfee00000-0xfee00fff has been reserved
pnp: 00:0f: iomem range 0xe0000000-0xefffffff has been reserved
pnp: 00:10: iomem range 0x0-0x9ffff could not be reserved
pnp: 00:10: iomem range 0xc0000-0xcffff could not be reserved
pnp: 00:10: iomem range 0xe0000-0xfffff could not be reserved
pnp: 00:10: iomem range 0x100000-0x3fffffff could not be reserved
PCI: Bridge: 0000:00:01.0
IO window: 7000-9fff
MEM window: ff200000-ff2fffff
PREFETCH window: bfd00000-dfcfffff
PCI: Bridge: 0000:00:1c.0
IO window: disabled.
MEM window: disabled.
PREFETCH window: dfd00000-dfdfffff
PCI: Bridge: 0000:00:1c.3
IO window: disabled.
MEM window: ff400000-ff4fffff
PREFETCH window: disabled.
PCI: Bridge: 0000:00:1c.4
IO window: a000-afff
MEM window: ff300000-ff3fffff
PREFETCH window: disabled.
PCI: Bridge: 0000:00:1e.0
IO window: b000-cfff
MEM window: ff500000-ff9fffff
PREFETCH window: dfe00000-dfefffff
ACPI: PCI Interrupt 0000:00:01.0[A] -> GSI 16 (level, low) -> IRQ 16
PCI: Setting latency timer of device 0000:00:01.0 to 64
ACPI: PCI Interrupt 0000:00:1c.0[A] -> GSI 16 (level, low) -> IRQ 16
PCI: Setting latency timer of device 0000:00:1c.0 to 64
ACPI: PCI Interrupt 0000:00:1c.3[D] -> GSI 19 (level, low) -> IRQ 17
PCI: Setting latency timer of device 0000:00:1c.3 to 64
ACPI: PCI Interrupt 0000:00:1c.4[A] -> GSI 16 (level, low) -> IRQ 16
PCI: Setting latency timer of device 0000:00:1c.4 to 64
PCI: Setting latency timer of device 0000:00:1e.0 to 64
NET: Registered protocol family 2
IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
TCP established hash table entries: 65536 (order: 9, 2621440 bytes)
TCP bind hash table entries: 65536 (order: 9, 2359296 bytes)
TCP: Hash tables configured (established 65536 bind 65536)
TCP reno registered
checking if image is initramfs... it is
Freeing initrd memory: 2718k freed
Machine check exception polling timer started.
Total HugeTLB memory allocated, 0
io scheduler noop registered
io scheduler anticipatory registered (default)
io scheduler deadline registered
io scheduler cfq registered
PCI: Setting latency timer of device 0000:00:01.0 to 64 assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:01.0:pcie00]
PCI: Setting latency timer of device 0000:00:1c.0 to 64 assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:1c.0:pcie00]
Allocate Port Service[0000:00:1c.0:pcie02]
PCI: Setting latency timer of device 0000:00:1c.3 to 64 assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:1c.3:pcie00]
Allocate Port Service[0000:00:1c.3:pcie02]
PCI: Setting latency timer of device 0000:00:1c.4 to 64 assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:1c.4:pcie00]
Allocate Port Service[0000:00:1c.4:pcie02]radeonfb_pci_register BEGIN
ACPI: PCI Interrupt 0000:01:00.0[A] -> GSI 16 (level, low) -> IRQ 16 radeonfb (0000:01:00.0): Found 131072k of DDR 256 bits wide videoram radeonfb (0000:01:00.0): mapped 16384k videoram
radeonfb: Found Intel x86 BIOS ROM Image
Retrieved PLL infos from ATOM BIOS
radeonfb: Reference=27.00 MHz (RefDiv=12) Memory=540.00 Mhz, System=520.00 MHz PLL min 20000 max 50000
TMDS PLL from BIOS: 16500 b011c
index 3 port 2 conn 2 dac -1 ddc 0 tmds 0
index 4 port 2 conn 2 dac 1 ddc 0 tmds -1
index 7 port 1 conn 2 dac -1 ddc 1 tmds 1
Starting monitor auto detection...i2c_adapter i2c-1: unable to read EDID block.i2c_adapter i2c-1: unable to read EDID block.i2c_adapter i2c-1: unable to read EDID block.
radeonfb: I2C (port 1) ... not found
radeonfb: I2C (port 0) ... found CRT display
* Connector 1 is DVI-I. Head -1, Monitor: None
ddc port: 1, dac: -1, tmds: 1
* Connector 2 is DVI-I. Head 0, Monitor: CRT (EDID probed)
ddc port: 0, dac: 1, tmds: 0
hStart = 1048, hEnd = 1184, hTotal = 1344
vStart = 771, vEnd = 777, vTotal = 806h_total_disp = 0x7f00a7 hsync_strt_wid = 0x910422v_total_disp = 0x2ff0325 vsync_strt_wid = 0x860302
pixclock = 15384
freq = 6500
freq = 6500, PLL min = 20000, PLL max = 50000ref_div = 12, ref_clk = 2700, output_freq = 26000ref_div = 12, ref_clk = 2700, output_freq = 26000
post div = 0x2fb_div = 0x74ppll_div_3 = 0x20074
Console: switching to colour frame buffer device 128x48
radeonfb: Backlight initialized (radeonbl0)
radeonfb (0000:01:00.0): ATI Radeon ]Rradeonfb_pci_register ENDhpet_resources: 0xfed00000 is busy
ACPI Error (utglobal-0128): Unknown exception code: 0xFFFFFFF0 [20070126]
Hangcheck: starting hangcheck timer 0.9.0 (tick is 180 seconds, margin is 60 seconds).
Hangcheck: Using get_cycles().
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing disabled
serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
00:06: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
Floppy drive(s): fd0 is 1.44M
FDC 0 is a post-1991 82077
RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
loop: loaded (max 8 devices)
netconsole: not configured, aborting
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
ALI15X3: IDE controller at PCI slot 0000:05:02.1
ACPI: PCI Interrupt 0000:05:02.1[A] -> GSI 23 (level, low) -> IRQ 18
ALI15X3: chipset revision 198
ALI15X3: 100% native mode on irq 18
ide0: BM-DMA at 0xc080-0xc087, BIOS settings: hda:DMA, hdb:DMA
ide1: BM-DMA at 0xc088-0xc08f, BIOS settings: hdc:pio, hdd:pioProbing IDE interface ide0...
Probing IDE interface ide1...
hdc: Maxtor 6Y120L0, ATA DISK drive
hdd: QUANTUM FIREBALLlct10 10, ATA DISK drive
ide1 at 0xc480-0xc487,0xc402 on irq 18
hdc: max request size: 128KiB
hdc: 240121728 sectors (122942 MB) w/2048KiB Cache, CHS=65535/16/63, UDMA(133)
hdc: cache flushes supported
hdc: hdc1 hdc2 < hdc5 > hdc3
hdd: max request size: 128KiB
hdd: 20044080 sectors (10262 MB) w/418KiB Cache, CHS=19885/16/63, UDMA(33)
hdd: cache flushes not supported
hdd: hdd1 hdd2
ahci 0000:00:1f.2: version 2.0
ACPI: PCI Interrupt 0000:00:1f.2[B] -> GSI 19 (level, low) -> IRQ 17
PCI: Setting latency timer of device 0000:00:1f.2 to 64
ahci 0000:00:1f.2: AHCI 0001.0100 32 slots 6 ports 3 Gbps 0x3f impl SATA mode
ahci 0000:00:1f.2: flags: 64bit ncq ilck stag pm led clo pmp pio slum part
ata1: SATA max UDMA/133 cmd 0xf080c900 ctl 0x00000000 bmdma 0x00000000 irq 219
ata2: SATA max UDMA/133 cmd 0xf080c980 ctl 0x00000000 bmdma 0x00000000 irq 219
ata3: SATA max UDMA/133 cmd 0xf080ca00 ctl 0x00000000 bmdma 0x00000000 irq 219
ata4: SATA max UDMA/133 cmd 0xf080ca80 ctl 0x00000000 bmdma 0x00000000 irq 219
ata5: SATA max UDMA/133 cmd 0xf080cb00 ctl 0x00000000 bmdma 0x00000000 irq 219
ata6: SATA max UDMA/133 cmd 0xf080cb80 ctl 0x00000000 bmdma 0x00000000 irq 219
scsi0 : ahci
ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
ata1.00: ATA-7: ST3250820AS, 3.AAE, max UDMA/133
ata1.00: 488397168 sectors, multi 16: LBA48 NCQ (depth 31/32)
ata1.00: configured for UDMA/133
scsi1 : ahci
ata2: SATA link down (SStatus 0 SControl 300)
scsi2 : ahci
ata3: SATA link down (SStatus 0 SControl 300)
scsi3 : ahci
ata4: SATA link down (SStatus 0 SControl 300)
scsi4 : ahci
ata5: SATA link down (SStatus 0 SControl 300)
scsi5 : ahci
ata6: SATA link down (SStatus 0 SControl 300)
scsi 0:0:0:0: Direct-Access ATA ST3250820AS 3.AA PQ: 0 ANSI: 5
SCSI device sda: 488397168 512-byte hdwr sectors (250059 MB)
sda: Write Protect is off
sda: Mode Sense: 00 3a 00 00
SCSI device sda: write cache: enabled, read cache: enabled, doesn't support DPO or FUA
SCSI device sda: 488397168 512-byte hdwr sectors (250059 MB)
sda: Write Protect is off
sda: Mode Sense: 00 3a 00 00
SCSI device sda: write cache: enabled, read cache: enabled, doesn't support DPO or FUA
sda: [LDM] sda1 sda2
sd 0:0:0:0: Attached scsi disk sda
sd 0:0:0:0: Attached scsi generic sg0 type 0
PCI: Device 0000:02:00.0 not available because of resource collisions
ahci: probe of 0000:02:00.0 failed with error -22sata_uli 0000:05:02.0: version 1.0
ACPI: PCI Interrupt 0000:05:02.0[A] -> GSI 23 (level, low) -> IRQ 18
ata7: SATA max UDMA/133 cmd 0x0001c000 ctl 0x0001bc02 bmdma 0x0001b480 irq 18
ata8: SATA max UDMA/133 cmd 0x0001b880 ctl 0x0001b802 bmdma 0x0001b488 irq 18
scsi6 : sata_uli
ata7: SATA link down (SStatus 0 SControl 310)
scsi7 : sata_uli
ata8: SATA link down (SStatus 0 SControl 310)
PCI: Enabling device 0000:02:00.1 (0000 -> 0001)
ACPI: PCI Interrupt 0000:02:00.1[B] -> GSI 17 (level, low) -> IRQ 19
PCI: Setting latency timer of device 0000:02:00.1 to 64
ata9: PATA max UDMA/100 cmd 0x0001ac00 ctl 0x0001a882 bmdma 0x0001a400 irq 19
ata10: PATA max UDMA/100 cmd 0x0001a800 ctl 0x0001a482 bmdma 0x0001a408 irq 19
scsi8 : pata_jmicron
ata9.00: ATAPI, max UDMA/33
ata9.01: ATAPI, max UDMA/33
ata9.00: configured for UDMA/33
ata9.01: configured for UDMA/33
scsi9 : pata_jmicron
ATA: abnormal status 0x7F on port 0x0001a807
scsi 8:0:0:0: CD-ROM HL-DT-ST DVDRAM GSA-4167B DL13 PQ: 0 ANSI: 5
sr0: scsi3-mmc drive: 48x/48x writer dvd-ram cd/rw xa/form2 cdda tray
Uniform CD-ROM driver Revision: 3.20
sr 8:0:0:0: Attached scsi CD-ROM sr0
sr 8:0:0:0: Attached scsi generic sg1 type 5
scsi 8:0:1:0: CD-ROM WAITEC ALADAR/1 B1.5 PQ: 0 ANSI: 5
sr1: scsi3-mmc drive: 16x/40x writer cd/rw xa/form2 cdda tray
sr 8:0:1:0: Attached scsi CD-ROM sr1
sr 8:0:1:0: Attached scsi generic sg2 type 5
PNP: PS/2 Controller [PNP0303:PS2K,PNP0f03:PS2M] at 0x60,0x64 irq 1,12
serio: i8042 KBD port at 0x60,0x64 irq 1
serio: i8042 AUX port at 0x60,0x64 irq 12
mice: PS/2 mouse device common for all mice
input: AT Translated Set 2 keyboard as /class/input/input0
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
Using IPI No-Shortcut mode
Freeing unused kernel memory: 200k freed
Write protecting the kernel read-only data: 767k
Time: tsc clocksource has been installed.
Switched to high resolution mode on CPU 0
Switched to high resolution mode on CPU 1
SGI XFS with ACLs, large block numbers, no debug enabled
ACPI Warning (tbutils-0158): Incorrect checksum in table [OEMB] - 1F, should be 12 [20070126]
ACPI: SSDT 3FF9E0C0, 01C6 (r1 AMI CPU1PM 1 INTL 20060113)
Parsing all Control Methods:
Table [SSDT](id 00EC) - 9 Objects with 0 Devices 3 Methods 0 Regions
ACPI: SSDT 3FF9E290, 013A (r1 AMI CPU2PM 1 INTL 20060113)
Parsing all Control Methods:
Table [SSDT](id 00EF) - 7 Objects with 0 Devices 4 Methods 0 Regions
ACPI Exception (processor_core-0783): AE_NOT_FOUND, Processor Device is not present [20070126] ACPI Exception (processor_core-0783): AE_NOT_FOUND, Processor Device is not present [20070126]
input: ImPS/2 Generic Wheel Mouse as /class/input/input1
device-mapper: ioctl: 4.11.0-ioctl (2006-10-12) initialised: [email protected]
kjournald starting. Commit interval 5 seconds
EXT3-fs: mounted filesystem with journal data mode.
Linux agpgart interface v0.102 (c) Dave Jones
agpgart: Detected an Intel 965G Chipset.
agpgart: AGP aperture is 256M @ 0x0
PCI: Enabling device 0000:00:1f.3 (0001 -> 0003)
ACPI: PCI Interrupt 0000:00:1f.3[C] -> GSI 18 (level, low) -> IRQ 20
parport: PnPBIOS parport detected.
parport0: PC-style at 0x378 (0x778), irq 7, dma 3 [PCSPP,TRISTATE,COMPAT,EPP,ECP,DMA]
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Attansic L1 Ethernet Network Driver - version 2.0.7
Copyright(c) 2005-2006 Attansic Corporation.
ACPI: PCI Interrupt 0000:03:00.0[A] -> GSI 19 (level, low) -> IRQ 17
PCI: Setting latency timer of device 0000:03:00.0 to 64
e100: Intel(R) PRO/100 Network Driver, 3.5.17-k2-NAPI
e100: Copyright(c) 1999-2006 Intel Corporation
USB Universal Host Controller Interface driver v3.0
ACPI: PCI Interrupt 0000:00:1a.0[A] -> <6>ACPI: PCI Interrupt 0000:05:01.0[A] -> GSI 22 (level, low) -> IRQ 21 GSI 16 (level, low) -> IRQ 16
PCI: Setting latency timer of device 0000:00:1a.0 to 64uhci_hcd 0000:00:1a.0: UHCI Host Controlleruhci_hcd 0000:00:1a.0: new USB bus registered, assigned bus number 1uhci_hcd 0000:00:1a.0: irq 16, io base 0x0000e000
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
e100: eth1: e100_probe: addr 0xdfeff000, irq 21, MAC addr 00:50:8B:5C:21:8B
hub 1-0:1.0: 2 ports detected
ACPI: PCI Interrupt 0000:00:1a.1[B] -> GSI 17 (level, low) -> IRQ 19
PCI: Setting latency timer of device 0000:00:1a.1 to 64uhci_hcd 0000:00:1a.1: UHCI Host Controlleruhci_hcd 0000:00:1a.1: new USB bus registered, assigned bus number 2uhci_hcd 0000:00:1a.1: irq 19, io base 0x0000e080
usb usb2: configuration #1 chosen from 1 choice
hub 2-0:1.0: USB hub found
hub 2-0:1.0: 2 ports detected
ACPI: PCI Interrupt 0000:00:1d.0[A] -> GSI 23 (level, low) -> IRQ 18
PCI: Setting latency timer of device 0000:00:1d.0 to 64uhci_hcd 0000:00:1d.0: UHCI Host Controlleruhci_hcd 0000:00:1d.0: new USB bus registered, assigned bus number 3uhci_hcd 0000:00:1d.0: irq 18, io base 0x0000d800
usb usb3: configuration #1 chosen from 1 choice
hub 3-0:1.0: USB hub found
hub 3-0:1.0: 2 ports detected
ACPI: PCI Interrupt 0000:00:1d.1[B] -> GSI 19 (level, low) -> IRQ 17
PCI: Setting latency timer of device 0000:00:1d.1 to 64uhci_hcd 0000:00:1d.1: UHCI Host Controlleruhci_hcd 0000:00:1d.1: new USB bus registered, assigned bus number 4uhci_hcd 0000:00:1d.1: irq 17, io base 0x0000d880
usb usb4: configuration #1 chosen from 1 choice
hub 4-0:1.0: USB hub found
hub 4-0:1.0: 2 ports detected
ACPI: PCI Interrupt 0000:00:1d.2[C] -> GSI 18 (level, low) -> IRQ 20
PCI: Setting latency timer of device 0000:00:1d.2 to 64uhci_hcd 0000:00:1d.2: UHCI Host Controlleruhci_hcd 0000:00:1d.2: new USB bus registered, assigned bus number 5uhci_hcd 0000:00:1d.2: irq 20, io base 0x0000dc00
usb usb5: configuration #1 chosen from 1 choice
hub 5-0:1.0: USB hub found
hub 5-0:1.0: 2 ports detected
ACPI: PCI Interrupt 0000:00:1a.7[C] -> GSI 18 (level, low) -> IRQ 20
PCI: Setting latency timer of device 0000:00:1a.7 to 64ehci_hcd 0000:00:1a.7: EHCI Host Controllerehci_hcd 0000:00:1a.7: new USB bus registered, assigned bus number 6ehci_hcd 0000:00:1a.7: debug port 1
PCI: cache line size of 32 is not supported by device 0000:00:1a.7ehci_hcd 0000:00:1a.7: irq 20, io mem 0xffaff400ehci_hcd 0000:00:1a.7: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb6: configuration #1 chosen from 1 choice
hub 6-0:1.0: USB hub found
hub 6-0:1.0: 4 ports detected
ACPI: PCI Interrupt 0000:00:1b.0[A] -> GSI 22 (level, low) -> IRQ 21
PCI: Setting latency timer of device 0000:00:1b.0 to 64hda_codec: Unknown model for AD1988, trying auto-probe from BIOS...
ACPI: PCI Interrupt 0000:00:1d.7[A] -> GSI 23 (level, low) -> IRQ 18
PCI: Setting latency timer of device 0000:00:1d.7 to 64ehci_hcd 0000:00:1d.7: EHCI Host Controllerehci_hcd 0000:00:1d.7: new USB bus registered, assigned bus number 7ehci_hcd 0000:00:1d.7: debug port 1
PCI: cache line size of 32 is not supported by device 0000:00:1d.7ehci_hcd 0000:00:1d.7: irq 18, io mem 0xffaff000ehci_hcd 0000:00:1d.7: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004
usb usb7: configuration #1 chosen from 1 choice
hub 7-0:1.0: USB hub found
hub 7-0:1.0: 6 ports detected
ACPI: PCI Interrupt 0000:05:03.0[A] -> GSI 21 (level, low) -> IRQ 22
ohci1394: fw-host0: OHCI-1394 1.0 (PCI): IRQ=[22] MMIO=[ff7ef800-ff7effff] Max Packet=[2048] IR/IT contexts=[4/8] Adding 787176k swap on /dev/hdd2. Priority:9 extents:1 across:787176k
EXT3 FS on dm-0, internal journal
ieee1394: Host added: ID:BUS[0-00:1023] GUID[0011d80000e56e6e]
NET: Registered protocol family 10
processor_perflib-0563 [00] processor_get_psd : Invalid _PSD data
processor_perflib-0563 [00] processor_get_psd : Invalid _PSD data
Installing knfsd (copyright (C) 1996 [email protected]).
kjournald starting. Commit interval 5 seconds
EXT3 FS on dm-2, internal journal
EXT3-fs: mounted filesystem with ordered data mode.
kjournald starting. Commit interval 5 seconds
EXT3 FS on dm-3, internal journal
EXT3-fs: mounted filesystem with ordered data mode.
kjournald starting. Commit interval 5 seconds
EXT3 FS on dm-1, internal journal
EXT3-fs: mounted filesystem with ordered data mode.
e100: eth0: e100_watchdog: link up, 100Mbps, full-duplex
CBQ: class 00010001 has bad quantum==0, repaired.
u32 classifier
input device check on
Actions configured
input: Power Button (FF) as /class/input/input2
ACPI: Power Button (FF) [PWRF]
input: Power Button (CM) as /class/input/input3
ACPI: Power Button (CM) [PWRB]
fuse init (API version 7.8)
[drm] Initialized drm 1.1.0 20060810
[drm] Initialized radeon 1.25.0 20060524 on minor 0
[drm] Setting GART location based on new memory map
[drm] Loading R300 Microcode
[drm] writeback test succeeded in 1 usecs
Luca
Signature · 2 lines
"La vita potrebbe non avere alcun significato. Oppure, ancora peggio, potrebbe averne uno che disapprovo". -- Ashleigh Brilliant
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 28 lines · Luca Tettamanti
Hi Thomas,
I'm testingNO_HZon my machines. On the laptop I see that the timer interrupt counter is incremented (though slower than HZ). This machine is running UP kernel.On my desktop I see this:
CPU0 CPU1
0: 114 0 IO-APIC-edge timer 1: 1624 10771 IO-APIC-edge i8042 6: 3 0 IO-APIC-edge floppy 7: 0 0 IO-APIC-edge parport0 9: 0 0 IO-APIC-fasteoi acpi 12: 40111 184047 IO-APIC-edge i8042 16: 75624 998858 IO-APIC-fasteoi radeon@pci:0000:01:00.0, uhci_hcd:usb1 17: 0 0 IO-APIC-fasteoi uhci_hcd:usb4 18: 711 5487 IO-APIC-fasteoi ide1, libata, ehci_hcd:usb7, uhci_hcd:usb3 19: 617 2254 IO-APIC-fasteoi libata, uhci_hcd:usb2 20: 0 0 IO-APIC-fasteoi ehci_hcd:usb6, uhci_hcd:usb5 21: 2483869 0 IO-APIC-fasteoi eth0 22: 2 0 IO-APIC-fasteoi ohci1394 218: 28872 360643 PCI-MSI-edge HDA Intel 219: 32932 138196 PCI-MSI-edge libata NMI: 0 0 LOC: 2761191 2827539 ERR: 0 MIS: 0
Quoted 4 lines
Interrupt 0 is stuck at 114 (the number is consistent across reboots). I don't experience any problem, time is running fine. Still it's strange that the timer is doing nothing; maybe something other than the PIT is used for time keeping?
Yes, we switch away from PIT and use the local APIC timer. (LOC)
tglx
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 29 lines · Thomas Gleixner
Quoted 28 lines · Luca Tettamanti
Hi Thomas,
I'm testingNO_HZon my machines. On the laptop I see that the timer interrupt counter is incremented (though slower than HZ). This machine is running UP kernel.On my desktop I see this:
CPU0 CPU1
0: 114 0 IO-APIC-edge timer 1: 1624 10771 IO-APIC-edge i8042 6: 3 0 IO-APIC-edge floppy 7: 0 0 IO-APIC-edge parport0 9: 0 0 IO-APIC-fasteoi acpi 12: 40111 184047 IO-APIC-edge i8042 16: 75624 998858 IO-APIC-fasteoi radeon@pci:0000:01:00.0, uhci_hcd:usb1 17: 0 0 IO-APIC-fasteoi uhci_hcd:usb4 18: 711 5487 IO-APIC-fasteoi ide1, libata, ehci_hcd:usb7, uhci_hcd:usb3 19: 617 2254 IO-APIC-fasteoi libata, uhci_hcd:usb2 20: 0 0 IO-APIC-fasteoi ehci_hcd:usb6, uhci_hcd:usb5 21: 2483869 0 IO-APIC-fasteoi eth0 22: 2 0 IO-APIC-fasteoi ohci1394 218: 28872 360643 PCI-MSI-edge HDA Intel 219: 32932 138196 PCI-MSI-edge libata NMI: 0 0 LOC: 2761191 2827539 ERR: 0 MIS: 0
Quoted 6 lines
Quoted 4 lines
Interrupt 0 is stuck at 114 (the number is consistent across reboots). I don't experience any problem, time is running fine. Still it's strange that the timer is doing nothing; maybe something other than the PIT is used for time keeping?
Yes, we switch away from PIT and use the local APIC timer. (LOC)
Ok, thanks for the clarification.
Luca
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
In reply to Thomas GleixnerQuoted 8 lines · Thomas Gleixner
Quoted 5 lines · Luca Tettamanti
Interrupt 0 is stuck at 114 (the number is consistent across reboots). I don't experience any problem, time is running fine. Still it's strange that the timer is doing nothing; maybe something other than the PIT is used for time keeping?
Yes, we switch away from PIT and use the local APIC timer. (LOC)
What's the benefit of doing so - and why has not it been done before? I mean, I run a regular 2.6.18.6, /sys/devices/system/clocksource/clocksource0/current_clocksource (is this related?) shows "acpi_pm", but the IRQ0 counter increases at HZ. Maybe I am confusing things, but why the need for PIT when clocksource is acpi_pm anyway?
Jan
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 7 lines
What's the benefit of doing so - and why has not it been done before? I mean, I run a regular 2.6.18.6,
/sys/devices/system/clocksource/clocksource0/current_clocksource(is this related?) shows "acpi_pm", but the IRQ0 counter increases at HZ. Maybe I am confusing things, but why the need for PIT when clocksource isacpi_pmanyway?
you're mixing up 2 concepts:
1) clocksource
2) eventsource
1) is for "what time is it now", and acpi_pm is useful for that, as are several other things such as rdtsc
2) is for "I need THIS to happen X miliseconds from now". acpi_pm is not useful for that, nor is rdtsc.
some can be used for both (PIT), but on a concept level the uses are independent. The advantage of local apic over PIT is that local apic is cheap to do "one shot" future events with, while the PIT will tick periodic at a fixed frequency. With tickless idle.. that's not what you want.
Signature · 2 lines
if you want to mail me at work (you don't), use arjan (at) linux.intel.com Test the interaction between Linux and your BIOS via http://www.linuxfirmwarekit.org
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 7 lines · Arjan van de Ven
some can be used for both (PIT), but on a concept level the uses are independent. The advantage of local apic over PIT is that local apic is cheap to do "one shot" future events with, while the PIT will tick periodic at a fixed frequency. With tickless idle.. that's not what you want.
So with a local apic, and acpi_pm as clocksource, I shouldn't be getting timer interrupts? Yet I do. Which I assume means that the kernel will still get woken up very often.
Rgds
Signature · 5 lines
-- Pierre Ossman Linux kernel, MMC maintainer http://www.kernel.org PulseAudio, core developer http://pulseaudio.org rdesktop, core developer http://www.rdesktop.org
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 11 lines · Pierre Ossman
Quoted 7 lines · Arjan van de Ven
some can be used for both (PIT), but on a concept level the uses are independent. The advantage of local apic over PIT is that local apic is cheap to do "one shot" future events with, while the PIT will tick periodic at a fixed frequency. With tickless idle.. that's not what you want.
So with a local apic, and
acpi_pmas clocksource, I shouldn't be getting timer interrupts?
timer interrupts as in "irq0"?
you shouldn't if you use the hrtimers/tickless stuff...
can you get us a dmesg somewhere? maybe the kernel mentions why ;)
Quoted 2 lines
Yet I do. Which I assume means that the kernel will still get woken up very often.
if irq0 keeps increasing at 100Hz or 1000Hz or so.. then yes
Signature · 2 lines
if you want to mail me at work (you don't), use arjan (at) linux.intel.com Test the interaction between Linux and your BIOS via http://www.linuxfirmwarekit.org
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 10 lines · Arjan van de Ven
Quoted 4 lines · Pierre Ossman
So with a local apic, and
acpi_pmas clocksource, I shouldn't be getting timer interrupts?timer interrupts as in "irq0"?
Yes:
0: 9786349 XT-PIC-XT timer
Quoted 2 lines
you shouldn't if you use the hrtimers/tickless stuff...
CONFIG_HIGH_RES_TIMERS=yCONFIG_NO_HZ=y
Quoted 3 lines
can you get us a dmesg somewhere? maybe the kernel mentions why ;)
Sure. My dmesg is full of mmc debug crud right now, but I'll just reboot and I'll have a clean one for you.
Rgds
Signature · 5 lines
-- Pierre Ossman Linux kernel, MMC maintainer http://www.kernel.org PulseAudio, core developer http://pulseaudio.org rdesktop, core developer http://www.rdesktop.org
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 8 lines · Pierre Ossman
Quoted 3 lines · Arjan van de Ven
can you get us a dmesg somewhere? maybe the kernel mentions why ;)
Sure. My dmesg is full of mmc debug crud right now, but I'll just reboot and I'll have a clean one for you.
Here we go.
Signature · 5 lines
-- Pierre Ossman Linux kernel, MMC maintainer http://www.kernel.org PulseAudio, core developer http://pulseaudio.org rdesktop, core developer http://www.rdesktop.org
[ 0.000000] Linux version 2.6.21-rc1 ([email protected]) (gcc version 4.1.2 20070214 (Red Hat 4.1.2-1)) #383 PREEMPT Thu Feb 22 08:34:36 CET 2007 [ 0.000000] BIOS-provided physical RAM map: [ 0.000000] sanitize start [ 0.000000] sanitize end [ 0.000000] copy_e820_map() start: 0000000000000000 size: 000000000009fc00 end: 000000000009fc00 type: 1 [ 0.000000] copy_e820_map() type is E820_RAM [ 0.000000] copy_e820_map() start: 000000000009fc00 size: 0000000000000400 end: 00000000000a0000 type: 2 [ 0.000000] copy_e820_map() start: 00000000000e0000 size: 0000000000020000 end: 0000000000100000 type: 2 [ 0.000000] copy_e820_map() start: 0000000000100000 size: 000000001fed0000 end: 000000001ffd0000 type: 1 [ 0.000000] copy_e820_map() type is E820_RAM [ 0.000000] copy_e820_map() start: 000000001ffd0000 size: 0000000000020c00 end: 000000001fff0c00 type: 2 [ 0.000000] copy_e820_map() start: 000000001fff0c00 size: 000000000000b400 end: 000000001fffc000 type: 4 [ 0.000000] copy_e820_map() start: 000000001fffc000 size: 0000000000004000 end: 0000000020000000 type: 2 [ 0.000000] BIOS-e820: 0000000000000000 - 000000000009fc00 (usable) [ 0.000000] BIOS-e820: 000000000009fc00 - 00000000000a0000 (reserved) [ 0.000000] BIOS-e820: 00000000000e0000 - 0000000000100000 (reserved) [ 0.000000] BIOS-e820: 0000000000100000 - 000000001ffd0000 (usable) [ 0.000000] BIOS-e820: 000000001ffd0000 - 000000001fff0c00 (reserved) [ 0.000000] BIOS-e820: 000000001fff0c00 - 000000001fffc000 (ACPI NVS) [ 0.000000] BIOS-e820: 000000001fffc000 - 0000000020000000 (reserved) [ 0.000000] 511MB LOWMEM available. [ 0.000000] Entering add_active_range(0, 0, 131024) 0 entries of 256 used [ 0.000000] Zone PFN ranges: [ 0.000000] DMA 0 -> 4096 [ 0.000000] Normal 4096 -> 131024 [ 0.000000] early_node_map[1] active PFN ranges [ 0.000000] 0: 0 -> 131024 [ 0.000000] On node 0 totalpages: 131024 [ 0.000000] DMA zone: 32 pages used for memmap [ 0.000000] DMA zone: 0 pages reserved [ 0.000000] DMA zone: 4064 pages, LIFO batch:0 [ 0.000000] Normal zone: 991 pages used for memmap [ 0.000000] Normal zone: 125937 pages, LIFO batch:31 [ 0.000000] DMI 2.3 present. [ 0.000000] ACPI: RSDP 000F6560, 0014 (r0 COMPAQ) [ 0.000000] ACPI: RSDT 1FFF0C84, 002C (r1 HP CPQ0860 13090420 CPQ 1) [ 0.000000] ACPI: FACP 1FFF0C00, 0084 (r2 HP CPQ0860 2 CPQ 1) [ 0.000000] ACPI: DSDT 1FFF0CB0, 4F8C (r1 HP nx7000 10000 MSFT 100000E) [ 0.000000] ACPI: FACS 1FFFBE80, 0040 [ 0.000000] ACPI: SSDT 1FFF5C3C, 028A (r1 COMPAQ CPQGysr 1001 MSFT 100000E) [ 0.000000] ACPI: PM-Timer IO Port: 0x1008 [ 0.000000] Allocating PCI resources starting at 30000000 (gap: 20000000:e0000000) [ 0.000000] Detected 1594.954 MHz processor. [ 14.448059] Built 1 zonelists. Total pages: 130001 [ 14.448062] Kernel command line: ro root=/dev/sda5 rhgb lapic quiet [ 14.448282] Local APIC disabled by BIOS -- reenabling. [ 14.448285] Found and enabled local APIC! [ 14.448289] mapped APIC to ffffd000 (fee00000) [ 14.448292] Enabling fast FPU save and restore... done. [ 14.448295] Enabling unmasked SIMD FPU exception support... done. [ 14.448306] Initializing CPU#0 [ 14.448386] CPU 0 irqstacks, hard=c0409000 soft=c0408000 [ 14.448390] PID hash table entries: 2048 (order: 11, 8192 bytes) [ 14.449530] Console: colour VGA+ 80x25 [ 14.449549] Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar [ 14.449552] ... MAX_LOCKDEP_SUBCLASSES: 8 [ 14.449554] ... MAX_LOCK_DEPTH: 30 [ 14.449556] ... MAX_LOCKDEP_KEYS: 2048 [ 14.449558] ... CLASSHASH_SIZE: 1024 [ 14.449560] ... MAX_LOCKDEP_ENTRIES: 8192 [ 14.449563] ... MAX_LOCKDEP_CHAINS: 16384 [ 14.449565] ... CHAINHASH_SIZE: 8192 [ 14.449567] memory used by lock dependency info: 1096 kB [ 14.449569] per task-struct memory footprint: 1200 bytes [ 14.449840] Dentry cache hash table entries: 65536 (order: 6, 262144 bytes) [ 14.450174] Inode-cache hash table entries: 32768 (order: 5, 131072 bytes) [ 14.465505] Memory: 510664k/524096k available (2021k kernel code, 12812k reserved, 861k data, 196k init, 0k highmem) [ 14.465516] virtual kernel memory layout: [ 14.465517] fixmap : 0xfffb7000 - 0xfffff000 ( 288 kB) [ 14.465519] vmalloc : 0xe0800000 - 0xfffb5000 ( 503 MB) [ 14.465520] lowmem : 0xc0000000 - 0xdffd0000 ( 511 MB) [ 14.465522] .init : 0xc03d2000 - 0xc0403000 ( 196 kB) [ 14.465523] .data : 0xc02f9796 - 0xc03d0c34 ( 861 kB) [ 14.465525] .text : 0xc0100000 - 0xc02f9796 (2021 kB) [ 14.465528] Checking if this processor honours the WP bit even in supervisor mode... Ok. [ 14.545754] Calibrating delay using timer specific routine.. 3192.49 BogoMIPS (lpj=6384997) [ 14.545859] Mount-cache hash table entries: 512 [ 14.546172] CPU: After generic identify, caps: a7e9fbbf 00000000 00000000 00000000 00000180 00000000 00000000 [ 14.546184] CPU: L1 I cache: 32K, L1 D cache: 32K [ 14.546187] CPU: L2 cache: 1024K [ 14.546189] CPU: After all inits, caps: a7e9fbbf 00000000 00000000 00002040 00000180 00000000 00000000 [ 14.546197] Intel machine check architecture supported. [ 14.546201] Intel machine check reporting enabled on CPU#0. [ 14.546212] CPU: Intel(R) Pentium(R) M processor 1600MHz stepping 05 [ 14.546219] Checking 'hlt' instruction... OK. [ 14.561817] ACPI: Core revision 20070126 [ 14.565737] ACPI: setting ELCR to 0200 (from 0c20) [ 14.841876] PM: Adding info for No Bus:platform [ 14.842084] NET: Registered protocol family 16 [ 14.842201] PM: Adding info for No Bus:vtcon0 [ 14.842321] ACPI: bus type pci registered [ 14.843667] PCI: PCI BIOS revision 2.10 entry at 0xf031f, last bus=3 [ 14.843669] PCI: Using configuration type 1 [ 14.843672] Setting up standard PCI resources [ 14.856589] ACPI: Interpreter enabled [ 14.856594] ACPI: (supports S0 S3 S4 S5) [ 14.856624] ACPI: Using PIC for interrupt routing [ 14.856672] PM: Adding info for acpi:acpi_system:00 [ 14.856761] PM: Adding info for acpi:button_power:00 [ 14.856830] PM: Adding info for acpi:ACPI0007:00 [ 14.856923] PM: Adding info for acpi:device:00 [ 14.857012] PM: Adding info for acpi:PNP0C01:00 [ 14.857101] PM: Adding info for acpi:PNP0A03:00 [ 14.857179] PM: Adding info for acpi:device:01 [ 14.857274] PM: Adding info for acpi:video:00 [ 14.857354] PM: Adding info for acpi:device:02 [ 14.857434] PM: Adding info for acpi:device:03 [ 14.857529] PM: Adding info for acpi:device:04 [ 14.857613] PM: Adding info for acpi:device:05 [ 14.857700] PM: Adding info for acpi:device:06 [ 14.857798] PM: Adding info for acpi:device:07 [ 14.857955] PM: Adding info for acpi:device:08 [ 14.858039] PM: Adding info for acpi:device:09 [ 14.858135] PM: Adding info for acpi:device:0a [ 14.858230] PM: Adding info for acpi:device:0b [ 14.858389] PM: Adding info for acpi:PNP0C09:00 [ 14.858798] PM: Adding info for acpi:WEC0518:00 [ 14.858889] PM: Adding info for acpi:PNP0A06:00 [ 14.859583] PM: Adding info for acpi:PNP0501:00 [ 14.859677] PM: Adding info for acpi:power_resource:00 [ 14.860356] PM: Adding info for acpi:SMCF010:00 [ 14.860433] PM: Adding info for acpi:power_resource:01 [ 14.861360] PM: Adding info for acpi:PNP0401:00 [ 14.861442] PM: Adding info for acpi:power_resource:02 [ 14.861530] PM: Adding info for acpi:PNP0C04:00 [ 14.861629] PM: Adding info for acpi:PNP0100:00 [ 14.861715] PM: Adding info for acpi:PNP0200:00 [ 14.861810] PM: Adding info for acpi:PNP0800:00 [ 14.861905] PM: Adding info for acpi:PNP0B00:00 [ 14.861992] PM: Adding info for acpi:PNP0303:00 [ 14.862108] PM: Adding info for acpi:SYN0107:00 [ 14.862198] PM: Adding info for acpi:power_resource:03 [ 14.862286] PM: Adding info for acpi:PNP0000:00 [ 14.862369] PM: Adding info for acpi:PNP0C02:00 [ 14.862473] PM: Adding info for acpi:device:0c [ 14.862562] PM: Adding info for acpi:device:0d [ 14.862646] PM: Adding info for acpi:device:0e [ 14.862744] PM: Adding info for acpi:device:0f [ 14.862841] PM: Adding info for acpi:device:10 [ 14.862927] PM: Adding info for acpi:device:11 [ 14.863033] PM: Adding info for acpi:device:12 [ 14.863121] PM: Adding info for acpi:device:13 [ 14.863208] PM: Adding info for acpi:device:14 [ 14.863310] PM: Adding info for acpi:device:15 [ 14.863408] PM: Adding info for acpi:device:16 [ 14.863493] PM: Adding info for acpi:device:17 [ 14.863594] PM: Adding info for acpi:device:18 [ 14.863680] PM: Adding info for acpi:device:19 [ 14.863774] PM: Adding info for acpi:device:1a [ 14.863873] PM: Adding info for acpi:device:1b [ 14.863960] PM: Adding info for acpi:device:1c [ 14.864045] PM: Adding info for acpi:device:1d [ 14.864152] PM: Adding info for acpi:device:1e [ 14.864242] PM: Adding info for acpi:device:1f [ 14.864333] PM: Adding info for acpi:device:20 [ 14.864432] PM: Adding info for acpi:device:21 [ 14.864522] PM: Adding info for acpi:device:22 [ 14.864608] PM: Adding info for acpi:device:23 [ 14.864715] PM: Adding info for acpi:device:24 [ 14.864802] PM: Adding info for acpi:device:25 [ 14.865109] PM: Adding info for acpi:PNP0C0F:00 [ 14.865402] PM: Adding info for acpi:PNP0C0F:01 [ 14.865681] PM: Adding info for acpi:PNP0C0F:02 [ 14.865966] PM: Adding info for acpi:PNP0C0F:03 [ 14.866259] PM: Adding info for acpi:PNP0C0F:04 [ 14.866537] PM: Adding info for acpi:PNP0C0F:05 [ 14.866819] PM: Adding info for acpi:PNP0C0F:06 [ 14.867109] PM: Adding info for acpi:PNP0C0F:07 [ 14.867205] PM: Adding info for acpi:device:26 [ 14.867398] PM: Adding info for acpi:device:27 [ 14.867503] PM: Adding info for acpi:PNP0C02:01 [ 14.867988] PM: Adding info for acpi:PNP0C0A:00 [ 14.868085] PM: Adding info for acpi:ACPI0003:00 [ 14.868188] PM: Adding info for acpi:PNP0C0C:00 [ 14.868286] PM: Adding info for acpi:PNP0C0D:00 [ 14.868602] PM: Adding info for acpi:PNP0C02:02 [ 14.868701] PM: Adding info for acpi:thermal:00 [ 14.888562] ACPI: PCI Root Bridge [C046] (0000:00) [ 14.888582] PCI: Probing PCI hardware (bus 00) [ 14.888600] PM: Adding info for No Bus:pci0000:00 [ 14.889160] PCI quirk: region 1000-107f claimed by ICH4 ACPI/GPIO/TCO [ 14.889166] PCI quirk: region 1100-113f claimed by ICH4 GPIO [ 14.889542] Boot video device is 0000:01:00.0 [ 14.889926] PCI: Transparent bridge - 0000:00:1e.0 [ 14.890017] PCI: Bus #03 (-#06) is hidden behind transparent bridge #02 (-#03) (try 'pci=assign-busses') [ 14.890020] Please report the result to linux-kernel to fix this permanently [ 14.890046] ACPI: PCI Interrupt Routing Table [\_SB_.C046._PRT] [ 14.890134] ACPI: PCI Interrupt Routing Table [\_SB_.C046.C047._PRT] [ 14.890159] ACPI: PCI Interrupt Routing Table [\_SB_.C046.C058._PRT] [ 14.891226] PM: Adding info for pci:0000:00:00.0 [ 14.892273] PM: Adding info for pci:0000:00:01.0 [ 14.893301] PM: Adding info for pci:0000:00:1d.0 [ 14.894334] PM: Adding info for pci:0000:00:1d.1 [ 14.895374] PM: Adding info for pci:0000:00:1d.2 [ 14.896400] PM: Adding info for pci:0000:00:1d.7 [ 14.897426] PM: Adding info for pci:0000:00:1e.0 [ 14.898489] PM: Adding info for pci:0000:00:1f.0 [ 14.899515] PM: Adding info for pci:0000:00:1f.1 [ 14.900540] PM: Adding info for pci:0000:00:1f.3 [ 14.901584] PM: Adding info for pci:0000:00:1f.5 [ 14.902616] PM: Adding info for pci:0000:00:1f.6 [ 14.902707] PM: Adding info for pci:0000:01:00.0 [ 14.902866] PM: Adding info for pci:0000:02:00.0 [ 14.903010] PM: Adding info for pci:0000:02:01.0 [ 14.903154] PM: Adding info for pci:0000:02:02.0 [ 14.903315] PM: Adding info for pci:0000:02:04.0 [ 14.903675] ACPI: PCI Interrupt Link [C0C2] (IRQs 5 *10) [ 14.903920] ACPI: PCI Interrupt Link [C0C3] (IRQs 5 *10) [ 14.904159] ACPI: PCI Interrupt Link [C0C4] (IRQs *5 10) [ 14.904398] ACPI: PCI Interrupt Link [C0C5] (IRQs *5 10) [ 14.904622] ACPI: PCI Interrupt Link [C0C6] (IRQs 5 10) *0, disabled. [ 14.904865] ACPI: PCI Interrupt Link [C0C7] (IRQs 5 10) *11 [ 14.905089] ACPI: PCI Interrupt Link [C0C8] (IRQs 5 10) *0, disabled. [ 14.905329] ACPI: PCI Interrupt Link [C0C9] (IRQs *5 10) [ 14.905696] ACPI: Power Resource [C18D] (on) [ 14.905914] ACPI: Power Resource [C195] (on) [ 14.906095] ACPI: Power Resource [C19C] (on) [ 14.906149] ACPI: Power Resource [C1A6] (on) [ 14.906181] Linux Plug and Play Support v0.97 (c) Adam Belay [ 14.906215] pnp: PnP ACPI init [ 14.906231] PM: Adding info for No Bus:pnp0 [ 14.906407] PM: Adding info for pnp:00:00 [ 14.913640] PM: Adding info for pnp:00:01 [ 14.914004] PM: Adding info for pnp:00:02 [ 14.915128] PM: Adding info for pnp:00:03 [ 14.916340] PM: Adding info for pnp:00:04 [ 14.917556] PM: Adding info for pnp:00:05 [ 14.917633] PM: Adding info for pnp:00:06 [ 14.917708] PM: Adding info for pnp:00:07 [ 14.917800] PM: Adding info for pnp:00:08 [ 14.917870] PM: Adding info for pnp:00:09 [ 14.917943] PM: Adding info for pnp:00:0a [ 14.918034] PM: Adding info for pnp:00:0b [ 14.918251] PM: Adding info for pnp:00:0c [ 14.919198] PM: Adding info for pnp:00:0d [ 14.920447] PM: Adding info for pnp:00:0e [ 14.920504] pnp: PnP ACPI: found 15 devices [ 14.920698] PCI: Using ACPI for IRQ routing [ 14.920701] PCI: If a device doesn't work, try "pci=routeirq". If it helps, post a report [ 14.978391] pnp: 00:00: iomem range 0x0-0x9ffff could not be reserved [ 14.978396] pnp: 00:00: iomem range 0xe0000-0xfffff could not be reserved [ 14.978400] pnp: 00:00: iomem range 0x100000-0x1fffffff could not be reserved [ 14.978417] pnp: 00:0c: iomem range 0xffb00000-0xffbfffff has been reserved [ 14.978421] pnp: 00:0c: iomem range 0xfff00000-0xffffffff has been reserved [ 14.978430] pnp: 00:0d: ioport range 0x4d0-0x4d1 has been reserved [ 14.978434] pnp: 00:0d: ioport range 0x1000-0x107f has been reserved [ 14.978438] pnp: 00:0d: ioport range 0x1100-0x113f has been reserved [ 14.978441] pnp: 00:0d: ioport range 0x1200-0x121f has been reserved [ 14.978445] pnp: 00:0d: iomem range 0xfec00000-0xfec000ff has been reserved [ 14.978454] pnp: 00:0e: iomem range 0xd5000-0xd7fff has been reserved [ 14.978458] pnp: 00:0e: iomem range 0xfec01000-0xfec01fff has been reserved [ 14.978506] PM: Adding info for No Bus:mem [ 14.978563] PM: Adding info for No Bus:kmem [ 14.978618] PM: Adding info for No Bus:null [ 14.978687] PM: Adding info for No Bus:port [ 14.978750] PM: Adding info for No Bus:zero [ 14.978805] PM: Adding info for No Bus:full [ 14.978873] PM: Adding info for No Bus:random [ 14.978927] PM: Adding info for No Bus:urandom [ 14.978983] PM: Adding info for No Bus:kmsg [ 14.979082] PCI: Bridge: 0000:00:01.0 [ 14.979086] IO window: 3000-3fff [ 14.979091] MEM window: 90400000-904fffff [ 14.979096] PREFETCH window: 98000000-9fffffff [ 14.979106] PCI: Bus 3, cardbus bridge: 0000:02:04.0 [ 14.979109] IO window: 00002800-000028ff [ 14.979114] IO window: 00002c00-00002cff [ 14.979120] PREFETCH window: 30000000-33ffffff [ 14.979125] MEM window: 38000000-3bffffff [ 14.979130] PCI: Bridge: 0000:00:1e.0 [ 14.979134] IO window: 2000-2fff [ 14.979141] MEM window: 90000000-903fffff [ 14.979146] PREFETCH window: 30000000-33ffffff [ 14.979167] PCI: Setting latency timer of device 0000:00:1e.0 to 64 [ 14.979545] ACPI: PCI Interrupt Link [C0C4] enabled at IRQ 5 [ 14.979549] PCI: setting IRQ 5 as level-triggered [ 14.979553] ACPI: PCI Interrupt 0000:02:04.0[A] -> Link [C0C4] -> GSI 5 (level, low) -> IRQ 5 [ 14.979600] NET: Registered protocol family 2 [ 15.013809] IP route cache hash table entries: 4096 (order: 2, 16384 bytes) [ 15.013972] TCP established hash table entries: 16384 (order: 7, 720896 bytes) [ 15.016348] TCP bind hash table entries: 16384 (order: 7, 720896 bytes) [ 15.018857] TCP: Hash tables configured (established 16384 bind 16384) [ 15.018869] TCP reno registered [ 15.030033] checking if image is initramfs... it is [ 15.312865] Freeing initrd memory: 2727k freed [ 15.313192] Machine check exception polling timer started. [ 15.313295] PM: Adding info for platform:pcspkr [ 15.313697] PM: Adding info for No Bus:snapshot [ 15.313774] audit: initializing netlink socket (disabled) [ 15.313806] audit(1172159879.500:1): initialized [ 15.314097] VFS: Disk quotas dquot_6.5.1 [ 15.314117] Dquot-cache hash table entries: 1024 (order 0, 4096 bytes) [ 15.314321] io scheduler noop registered [ 15.314325] io scheduler anticipatory registered [ 15.314328] io scheduler deadline registered [ 15.314351] io scheduler cfq registered (default) [ 15.315217] ACPI: PCI Interrupt Link [C0C2] enabled at IRQ 10 [ 15.315222] PCI: setting IRQ 10 as level-triggered [ 15.315226] ACPI: PCI Interrupt 0000:01:00.0[A] -> Link [C0C2] -> GSI 10 (level, low) -> IRQ 10 [ 15.315274] radeonfb: Retrieved PLL infos from BIOS [ 15.315278] radeonfb: Reference=27.00 MHz (RefDiv=12) Memory=250.00 Mhz, System=220.00 MHz [ 15.315282] radeonfb: PLL min 20000 max 35000 [ 15.315359] PM: Adding info for No Bus:i2c-0 [ 15.315505] PM: Adding info for No Bus:i2c-1 [ 15.315600] PM: Adding info for No Bus:i2c-2 [ 15.315711] PM: Adding info for No Bus:i2c-3 [ 15.415165] i2c_adapter i2c-1: unable to read EDID block. [ 15.571135] i2c_adapter i2c-1: unable to read EDID block. [ 15.727123] i2c_adapter i2c-1: unable to read EDID block. [ 15.883109] i2c_adapter i2c-3: unable to read EDID block. [ 16.039095] i2c_adapter i2c-3: unable to read EDID block. [ 16.195082] i2c_adapter i2c-3: unable to read EDID block. [ 16.249641] Non-DDC laptop panel detected [ 16.351069] i2c_adapter i2c-2: unable to read EDID block. [ 16.507056] i2c_adapter i2c-2: unable to read EDID block. [ 16.663042] i2c_adapter i2c-2: unable to read EDID block. [ 16.819029] i2c_adapter i2c-3: unable to read EDID block. [ 16.975016] i2c_adapter i2c-3: unable to read EDID block. [ 17.131002] i2c_adapter i2c-3: unable to read EDID block. [ 17.186560] radeonfb: Monitor 1 type LCD found [ 17.186562] radeonfb: Monitor 2 type no found [ 17.186569] radeonfb: panel ID string: SEC [ 17.186572] radeonfb: detected LVDS panel size from BIOS: 1680x1050 [ 17.186576] radeondb: BIOS provided dividers will be used [ 17.305548] radeonfb: Dynamic Clock Power Management enabled [ 17.305566] PM: Adding info for No Bus:fb0 [ 17.306919] PM: Adding info for No Bus:vtcon1 [ 17.345666] Console: switching to colour frame buffer device 210x65 [ 17.379016] radeonfb: Backlight initialized (radeonbl0) [ 17.379021] radeonfb (0000:01:00.0): ATI Radeon Lf [ 17.379179] PM: Adding info for No Bus:tty [ 17.379246] PM: Adding info for No Bus:console [ 17.379323] PM: Adding info for No Bus:ptmx [ 17.379388] PM: Adding info for No Bus:tty0 [ 17.379473] PM: Adding info for No Bus:vcs [ 17.379545] PM: Adding info for No Bus:vcsa [ 17.379602] PM: Adding info for No Bus:tty1 [ 17.379685] PM: Adding info for No Bus:tty2 [ 17.379739] PM: Adding info for No Bus:tty3 [ 17.379804] PM: Adding info for No Bus:tty4 [ 17.379870] PM: Adding info for No Bus:tty5 [ 17.379935] PM: Adding info for No Bus:tty6 [ 17.379995] PM: Adding info for No Bus:tty7 [ 17.380068] PM: Adding info for No Bus:tty8 [ 17.380127] PM: Adding info for No Bus:tty9 [ 17.380189] PM: Adding info for No Bus:tty10 [ 17.380266] PM: Adding info for No Bus:tty11 [ 17.380327] PM: Adding info for No Bus:tty12 [ 17.380386] PM: Adding info for No Bus:tty13 [ 17.380463] PM: Adding info for No Bus:tty14 [ 17.380525] PM: Adding info for No Bus:tty15 [ 17.380585] PM: Adding info for No Bus:tty16 [ 17.380659] PM: Adding info for No Bus:tty17 [ 17.380719] PM: Adding info for No Bus:tty18 [ 17.380781] PM: Adding info for No Bus:tty19 [ 17.380859] PM: Adding info for No Bus:tty20 [ 17.380920] PM: Adding info for No Bus:tty21 [ 17.380986] PM: Adding info for No Bus:tty22 [ 17.381063] PM: Adding info for No Bus:tty23 [ 17.381124] PM: Adding info for No Bus:tty24 [ 17.381185] PM: Adding info for No Bus:tty25 [ 17.381263] PM: Adding info for No Bus:tty26 [ 17.381328] PM: Adding info for No Bus:tty27 [ 17.381390] PM: Adding info for No Bus:tty28 [ 17.381465] PM: Adding info for No Bus:tty29 [ 17.381527] PM: Adding info for No Bus:tty30 [ 17.381604] PM: Adding info for No Bus:tty31 [ 17.381680] PM: Adding info for No Bus:tty32 [ 17.381742] PM: Adding info for No Bus:tty33 [ 17.381806] PM: Adding info for No Bus:tty34 [ 17.381888] PM: Adding info for No Bus:tty35 [ 17.381952] PM: Adding info for No Bus:tty36 [ 17.382017] PM: Adding info for No Bus:tty37 [ 17.382101] PM: Adding info for No Bus:tty38 [ 17.382169] PM: Adding info for No Bus:tty39 [ 17.382233] PM: Adding info for No Bus:tty40 [ 17.382313] PM: Adding info for No Bus:tty41 [ 17.382378] PM: Adding info for No Bus:tty42 [ 17.382450] PM: Adding info for No Bus:tty43 [ 17.382532] PM: Adding info for No Bus:tty44 [ 17.382597] PM: Adding info for No Bus:tty45 [ 17.382663] PM: Adding info for No Bus:tty46 [ 17.382746] PM: Adding info for No Bus:tty47 [ 17.382812] PM: Adding info for No Bus:tty48 [ 17.382878] PM: Adding info for No Bus:tty49 [ 17.382966] PM: Adding info for No Bus:tty50 [ 17.383033] PM: Adding info for No Bus:tty51 [ 17.383099] PM: Adding info for No Bus:tty52 [ 17.383182] PM: Adding info for No Bus:tty53 [ 17.383248] PM: Adding info for No Bus:tty54 [ 17.383316] PM: Adding info for No Bus:tty55 [ 17.383399] PM: Adding info for No Bus:tty56 [ 17.383467] PM: Adding info for No Bus:tty57 [ 17.383537] PM: Adding info for No Bus:tty58 [ 17.383622] PM: Adding info for No Bus:tty59 [ 17.383690] PM: Adding info for No Bus:tty60 [ 17.383756] PM: Adding info for No Bus:tty61 [ 17.383846] PM: Adding info for No Bus:tty62 [ 17.383916] PM: Adding info for No Bus:tty63 [ 17.384003] PM: Adding info for No Bus:ptyp0 [ 17.384085] PM: Adding info for No Bus:ptyp1 [ 17.384153] PM: Adding info for No Bus:ptyp2 [ 17.384220] PM: Adding info for No Bus:ptyp3 [ 17.384303] PM: Adding info for No Bus:ptyp4 [ 17.384370] PM: Adding info for No Bus:ptyp5 [ 17.384436] PM: Adding info for No Bus:ptyp6 [ 17.384519] PM: Adding info for No Bus:ptyp7 [ 17.384589] PM: Adding info for No Bus:ptyp8 [ 17.384656] PM: Adding info for No Bus:ptyp9 [ 17.384742] PM: Adding info for No Bus:ptypa [ 17.384810] PM: Adding info for No Bus:ptypb [ 17.384878] PM: Adding info for No Bus:ptypc [ 17.384961] PM: Adding info for No Bus:ptypd [ 17.385029] PM: Adding info for No Bus:ptype [ 17.385099] PM: Adding info for No Bus:ptypf [ 17.385183] PM: Adding info for No Bus:ptyq0 [ 17.385255] PM: Adding info for No Bus:ptyq1 [ 17.385328] PM: Adding info for No Bus:ptyq2 [ 17.385416] PM: Adding info for No Bus:ptyq3 [ 17.385488] PM: Adding info for No Bus:ptyq4 [ 17.385563] PM: Adding info for No Bus:ptyq5 [ 17.385658] PM: Adding info for No Bus:ptyq6 [ 17.385729] PM: Adding info for No Bus:ptyq7 [ 17.385799] PM: Adding info for No Bus:ptyq8 [ 17.385889] PM: Adding info for No Bus:ptyq9 [ 17.385959] PM: Adding info for No Bus:ptyqa [ 17.386032] PM: Adding info for No Bus:ptyqb [ 17.386118] PM: Adding info for No Bus:ptyqc [ 17.386189] PM: Adding info for No Bus:ptyqd [ 17.386260] PM: Adding info for No Bus:ptyqe [ 17.386349] PM: Adding info for No Bus:ptyqf [ 17.386421] PM: Adding info for No Bus:ptyr0 [ 17.386491] PM: Adding info for No Bus:ptyr1 [ 17.386583] PM: Adding info for No Bus:ptyr2 [ 17.386662] PM: Adding info for No Bus:ptyr3 [ 17.386734] PM: Adding info for No Bus:ptyr4 [ 17.386822] PM: Adding info for No Bus:ptyr5 [ 17.386896] PM: Adding info for No Bus:ptyr6 [ 17.386968] PM: Adding info for No Bus:ptyr7 [ 17.387059] PM: Adding info for No Bus:ptyr8 [ 17.387132] PM: Adding info for No Bus:ptyr9 [ 17.387204] PM: Adding info for No Bus:ptyra [ 17.387296] PM: Adding info for No Bus:ptyrb [ 17.387370] PM: Adding info for No Bus:ptyrc [ 17.387444] PM: Adding info for No Bus:ptyrd [ 17.387537] PM: Adding info for No Bus:ptyre [ 17.387613] PM: Adding info for No Bus:ptyrf [ 17.387689] PM: Adding info for No Bus:ptys0 [ 17.387781] PM: Adding info for No Bus:ptys1 [ 17.387859] PM: Adding info for No Bus:ptys2 [ 17.387937] PM: Adding info for No Bus:ptys3 [ 17.388028] PM: Adding info for No Bus:ptys4 [ 17.388102] PM: Adding info for No Bus:ptys5 [ 17.388187] PM: Adding info for No Bus:ptys6 [ 17.388283] PM: Adding info for No Bus:ptys7 [ 17.388362] PM: Adding info for No Bus:ptys8 [ 17.388438] PM: Adding info for No Bus:ptys9 [ 17.388536] PM: Adding info for No Bus:ptysa [ 17.388617] PM: Adding info for No Bus:ptysb [ 17.388695] PM: Adding info for No Bus:ptysc [ 17.388794] PM: Adding info for No Bus:ptysd [ 17.388877] PM: Adding info for No Bus:ptyse [ 17.388961] PM: Adding info for No Bus:ptysf [ 17.389060] PM: Adding info for No Bus:ptyt0 [ 17.389143] PM: Adding info for No Bus:ptyt1 [ 17.389222] PM: Adding info for No Bus:ptyt2 [ 17.389321] PM: Adding info for No Bus:ptyt3 [ 17.389404] PM: Adding info for No Bus:ptyt4 [ 17.389487] PM: Adding info for No Bus:ptyt5 [ 17.389653] PM: Adding info for No Bus:ptyt6 [ 17.389737] PM: Adding info for No Bus:ptyt7 [ 17.389817] PM: Adding info for No Bus:ptyt8 [ 17.389913] PM: Adding info for No Bus:ptyt9 [ 17.389996] PM: Adding info for No Bus:ptyta [ 17.390076] PM: Adding info for No Bus:ptytb [ 17.390170] PM: Adding info for No Bus:ptytc [ 17.390254] PM: Adding info for No Bus:ptytd [ 17.390335] PM: Adding info for No Bus:ptyte [ 17.390432] PM: Adding info for No Bus:ptytf [ 17.390513] PM: Adding info for No Bus:ptyu0 [ 17.390595] PM: Adding info for No Bus:ptyu1 [ 17.390695] PM: Adding info for No Bus:ptyu2 [ 17.390777] PM: Adding info for No Bus:ptyu3 [ 17.390859] PM: Adding info for No Bus:ptyu4 [ 17.390958] PM: Adding info for No Bus:ptyu5 [ 17.391040] PM: Adding info for No Bus:ptyu6 [ 17.391124] PM: Adding info for No Bus:ptyu7 [ 17.391221] PM: Adding info for No Bus:ptyu8 [ 17.391304] PM: Adding info for No Bus:ptyu9 [ 17.391387] PM: Adding info for No Bus:ptyua [ 17.391490] PM: Adding info for No Bus:ptyub [ 17.391583] PM: Adding info for No Bus:ptyuc [ 17.391675] PM: Adding info for No Bus:ptyud [ 17.391782] PM: Adding info for No Bus:ptyue [ 17.391875] PM: Adding info for No Bus:ptyuf [ 17.391969] PM: Adding info for No Bus:ptyv0 [ 17.392072] PM: Adding info for No Bus:ptyv1 [ 17.392163] PM: Adding info for No Bus:ptyv2 [ 17.392259] PM: Adding info for No Bus:ptyv3 [ 17.392368] PM: Adding info for No Bus:ptyv4 [ 17.392457] PM: Adding info for No Bus:ptyv5 [ 17.392549] PM: Adding info for No Bus:ptyv6 [ 17.392656] PM: Adding info for No Bus:ptyv7 [ 17.392747] PM: Adding info for No Bus:ptyv8 [ 17.392838] PM: Adding info for No Bus:ptyv9 [ 17.392950] PM: Adding info for No Bus:ptyva [ 17.393043] PM: Adding info for No Bus:ptyvb [ 17.393137] PM: Adding info for No Bus:ptyvc [ 17.393246] PM: Adding info for No Bus:ptyvd [ 17.393335] PM: Adding info for No Bus:ptyve [ 17.393430] PM: Adding info for No Bus:ptyvf [ 17.393605] PM: Adding info for No Bus:ptyw0 [ 17.393699] PM: Adding info for No Bus:ptyw1 [ 17.393792] PM: Adding info for No Bus:ptyw2 [ 17.393898] PM: Adding info for No Bus:ptyw3 [ 17.393989] PM: Adding info for No Bus:ptyw4 [ 17.394077] PM: Adding info for No Bus:ptyw5 [ 17.394185] PM: Adding info for No Bus:ptyw6 [ 17.394277] PM: Adding info for No Bus:ptyw7 [ 17.394367] PM: Adding info for No Bus:ptyw8 [ 17.394472] PM: Adding info for No Bus:ptyw9 [ 17.394565] PM: Adding info for No Bus:ptywa [ 17.394658] PM: Adding info for No Bus:ptywb [ 17.394764] PM: Adding info for No Bus:ptywc [ 17.394855] PM: Adding info for No Bus:ptywd [ 17.394948] PM: Adding info for No Bus:ptywe [ 17.395058] PM: Adding info for No Bus:ptywf [ 17.395150] PM: Adding info for No Bus:ptyx0 [ 17.395241] PM: Adding info for No Bus:ptyx1 [ 17.395355] PM: Adding info for No Bus:ptyx2 [ 17.395449] PM: Adding info for No Bus:ptyx3 [ 17.395540] PM: Adding info for No Bus:ptyx4 [ 17.395649] PM: Adding info for No Bus:ptyx5 [ 17.395750] PM: Adding info for No Bus:ptyx6 [ 17.395849] PM: Adding info for No Bus:ptyx7 [ 17.395963] PM: Adding info for No Bus:ptyx8 [ 17.396064] PM: Adding info for No Bus:ptyx9 [ 17.396165] PM: Adding info for No Bus:ptyxa [ 17.396280] PM: Adding info for No Bus:ptyxb [ 17.396383] PM: Adding info for No Bus:ptyxc [ 17.396481] PM: Adding info for No Bus:ptyxd [ 17.396596] PM: Adding info for No Bus:ptyxe [ 17.396697] PM: Adding info for No Bus:ptyxf [ 17.396796] PM: Adding info for No Bus:ptyy0 [ 17.396913] PM: Adding info for No Bus:ptyy1 [ 17.397013] PM: Adding info for No Bus:ptyy2 [ 17.397113] PM: Adding info for No Bus:ptyy3 [ 17.397225] PM: Adding info for No Bus:ptyy4 [ 17.397329] PM: Adding info for No Bus:ptyy5 [ 17.397430] PM: Adding info for No Bus:ptyy6 [ 17.397603] PM: Adding info for No Bus:ptyy7 [ 17.397703] PM: Adding info for No Bus:ptyy8 [ 17.397798] PM: Adding info for No Bus:ptyy9 [ 17.397913] PM: Adding info for No Bus:ptyya [ 17.398012] PM: Adding info for No Bus:ptyyb [ 17.398113] PM: Adding info for No Bus:ptyyc [ 17.398225] PM: Adding info for No Bus:ptyyd [ 17.398324] PM: Adding info for No Bus:ptyye [ 17.398425] PM: Adding info for No Bus:ptyyf [ 17.398541] PM: Adding info for No Bus:ptyz0 [ 17.398640] PM: Adding info for No Bus:ptyz1 [ 17.398738] PM: Adding info for No Bus:ptyz2 [ 17.398853] PM: Adding info for No Bus:ptyz3 [ 17.398954] PM: Adding info for No Bus:ptyz4 [ 17.399054] PM: Adding info for No Bus:ptyz5 [ 17.399173] PM: Adding info for No Bus:ptyz6 [ 17.399277] PM: Adding info for No Bus:ptyz7 [ 17.399377] PM: Adding info for No Bus:ptyz8 [ 17.399492] PM: Adding info for No Bus:ptyz9 [ 17.399594] PM: Adding info for No Bus:ptyza [ 17.399695] PM: Adding info for No Bus:ptyzb [ 17.399819] PM: Adding info for No Bus:ptyzc [ 17.399923] PM: Adding info for No Bus:ptyzd [ 17.400027] PM: Adding info for No Bus:ptyze [ 17.400154] PM: Adding info for No Bus:ptyzf [ 17.400260] PM: Adding info for No Bus:ptya0 [ 17.400368] PM: Adding info for No Bus:ptya1 [ 17.400494] PM: Adding info for No Bus:ptya2 [ 17.400606] PM: Adding info for No Bus:ptya3 [ 17.400712] PM: Adding info for No Bus:ptya4 [ 17.400836] PM: Adding info for No Bus:ptya5 [ 17.400949] PM: Adding info for No Bus:ptya6 [ 17.401059] PM: Adding info for No Bus:ptya7 [ 17.401184] PM: Adding info for No Bus:ptya8 [ 17.401293] PM: Adding info for No Bus:ptya9 [ 17.401401] PM: Adding info for No Bus:ptyaa [ 17.401528] PM: Adding info for No Bus:ptyab [ 17.401694] PM: Adding info for No Bus:ptyac [ 17.401799] PM: Adding info for No Bus:ptyad [ 17.401922] PM: Adding info for No Bus:ptyae [ 17.402029] PM: Adding info for No Bus:ptyaf [ 17.402133] PM: Adding info for No Bus:ptyb0 [ 17.402255] PM: Adding info for No Bus:ptyb1 [ 17.402360] PM: Adding info for No Bus:ptyb2 [ 17.402469] PM: Adding info for No Bus:ptyb3 [ 17.402590] PM: Adding info for No Bus:ptyb4 [ 17.402701] PM: Adding info for No Bus:ptyb5 [ 17.402812] PM: Adding info for No Bus:ptyb6 [ 17.402936] PM: Adding info for No Bus:ptyb7 [ 17.403045] PM: Adding info for No Bus:ptyb8 [ 17.403154] PM: Adding info for No Bus:ptyb9 [ 17.403281] PM: Adding info for No Bus:ptyba [ 17.403392] PM: Adding info for No Bus:ptybb [ 17.403502] PM: Adding info for No Bus:ptybc [ 17.403630] PM: Adding info for No Bus:ptybd [ 17.403740] PM: Adding info for No Bus:ptybe [ 17.403854] PM: Adding info for No Bus:ptybf [ 17.403984] PM: Adding info for No Bus:ptyc0 [ 17.404103] PM: Adding info for No Bus:ptyc1 [ 17.404221] PM: Adding info for No Bus:ptyc2 [ 17.404353] PM: Adding info for No Bus:ptyc3 [ 17.404472] PM: Adding info for No Bus:ptyc4 [ 17.404589] PM: Adding info for No Bus:ptyc5 [ 17.404723] PM: Adding info for No Bus:ptyc6 [ 17.404840] PM: Adding info for No Bus:ptyc7 [ 17.404962] PM: Adding info for No Bus:ptyc8 [ 17.405094] PM: Adding info for No Bus:ptyc9 [ 17.405216] PM: Adding info for No Bus:ptyca [ 17.405338] PM: Adding info for No Bus:ptycb [ 17.405476] PM: Adding info for No Bus:ptycc [ 17.405658] PM: Adding info for No Bus:ptycd [ 17.405777] PM: Adding info for No Bus:ptyce [ 17.405908] PM: Adding info for No Bus:ptycf [ 17.406025] PM: Adding info for No Bus:ptyd0 [ 17.406138] PM: Adding info for No Bus:ptyd1 [ 17.406271] PM: Adding info for No Bus:ptyd2 [ 17.406388] PM: Adding info for No Bus:ptyd3 [ 17.406502] PM: Adding info for No Bus:ptyd4 [ 17.406636] PM: Adding info for No Bus:ptyd5 [ 17.406752] PM: Adding info for No Bus:ptyd6 [ 17.406870] PM: Adding info for No Bus:ptyd7 [ 17.406999] PM: Adding info for No Bus:ptyd8 [ 17.407116] PM: Adding info for No Bus:ptyd9 [ 17.407234] PM: Adding info for No Bus:ptyda [ 17.407367] PM: Adding info for No Bus:ptydb [ 17.407486] PM: Adding info for No Bus:ptydc [ 17.407602] PM: Adding info for No Bus:ptydd [ 17.407741] PM: Adding info for No Bus:ptyde [ 17.407862] PM: Adding info for No Bus:ptydf [ 17.407984] PM: Adding info for No Bus:ptye0 [ 17.408120] PM: Adding info for No Bus:ptye1 [ 17.408248] PM: Adding info for No Bus:ptye2 [ 17.408373] PM: Adding info for No Bus:ptye3 [ 17.408510] PM: Adding info for No Bus:ptye4 [ 17.408635] PM: Adding info for No Bus:ptye5 [ 17.408764] PM: Adding info for No Bus:ptye6 [ 17.408908] PM: Adding info for No Bus:ptye7 [ 17.409038] PM: Adding info for No Bus:ptye8 [ 17.409163] PM: Adding info for No Bus:ptye9 [ 17.409310] PM: Adding info for No Bus:ptyea [ 17.409442] PM: Adding info for No Bus:ptyeb [ 17.409634] PM: Adding info for No Bus:ptyec [ 17.409777] PM: Adding info for No Bus:ptyed [ 17.409901] PM: Adding info for No Bus:ptyee [ 17.410027] PM: Adding info for No Bus:ptyef [ 17.410173] PM: Adding info for No Bus:ttyp0 [ 17.410293] PM: Adding info for No Bus:ttyp1 [ 17.410412] PM: Adding info for No Bus:ttyp2 [ 17.410548] PM: Adding info for No Bus:ttyp3 [ 17.410672] PM: Adding info for No Bus:ttyp4 [ 17.410792] PM: Adding info for No Bus:ttyp5 [ 17.410932] PM: Adding info for No Bus:ttyp6 [ 17.411053] PM: Adding info for No Bus:ttyp7 [ 17.411176] PM: Adding info for No Bus:ttyp8 [ 17.411313] PM: Adding info for No Bus:ttyp9 [ 17.411435] PM: Adding info for No Bus:ttypa [ 17.411559] PM: Adding info for No Bus:ttypb [ 17.411698] PM: Adding info for No Bus:ttypc [ 17.411822] PM: Adding info for No Bus:ttypd [ 17.411947] PM: Adding info for No Bus:ttype [ 17.412089] PM: Adding info for No Bus:ttypf [ 17.412217] PM: Adding info for No Bus:ttyq0 [ 17.412345] PM: Adding info for No Bus:ttyq1 [ 17.412495] PM: Adding info for No Bus:ttyq2 [ 17.412628] PM: Adding info for No Bus:ttyq3 [ 17.412755] PM: Adding info for No Bus:ttyq4 [ 17.412906] PM: Adding info for No Bus:ttyq5 [ 17.413041] PM: Adding info for No Bus:ttyq6 [ 17.413180] PM: Adding info for No Bus:ttyq7 [ 17.413327] PM: Adding info for No Bus:ttyq8 [ 17.413464] PM: Adding info for No Bus:ttyq9 [ 17.413655] PM: Adding info for No Bus:ttyqa [ 17.413802] PM: Adding info for No Bus:ttyqb [ 17.413931] PM: Adding info for No Bus:ttyqc [ 17.414060] PM: Adding info for No Bus:ttyqd [ 17.414208] PM: Adding info for No Bus:ttyqe [ 17.414342] PM: Adding info for No Bus:ttyqf [ 17.414471] PM: Adding info for No Bus:ttyr0 [ 17.414614] PM: Adding info for No Bus:ttyr1 [ 17.414746] PM: Adding info for No Bus:ttyr2 [ 17.414877] PM: Adding info for No Bus:ttyr3 [ 17.415022] PM: Adding info for No Bus:ttyr4 [ 17.415154] PM: Adding info for No Bus:ttyr5 [ 17.415290] PM: Adding info for No Bus:ttyr6 [ 17.415438] PM: Adding info for No Bus:ttyr7 [ 17.415569] PM: Adding info for No Bus:ttyr8 [ 17.415702] PM: Adding info for No Bus:ttyr9 [ 17.415854] PM: Adding info for No Bus:ttyra [ 17.415987] PM: Adding info for No Bus:ttyrb [ 17.416119] PM: Adding info for No Bus:ttyrc [ 17.416270] PM: Adding info for No Bus:ttyrd [ 17.416405] PM: Adding info for No Bus:ttyre [ 17.416548] PM: Adding info for No Bus:ttyrf [ 17.416700] PM: Adding info for No Bus:ttys0 [ 17.416838] PM: Adding info for No Bus:ttys1 [ 17.416980] PM: Adding info for No Bus:ttys2 [ 17.417139] PM: Adding info for No Bus:ttys3 [ 17.417276] PM: Adding info for No Bus:ttys4 [ 17.417420] PM: Adding info for No Bus:ttys5 [ 17.417645] PM: Adding info for No Bus:ttys6 [ 17.417790] PM: Adding info for No Bus:ttys7 [ 17.417925] PM: Adding info for No Bus:ttys8 [ 17.418076] PM: Adding info for No Bus:ttys9 [ 17.418213] PM: Adding info for No Bus:ttysa [ 17.418352] PM: Adding info for No Bus:ttysb [ 17.418506] PM: Adding info for No Bus:ttysc [ 17.418645] PM: Adding info for No Bus:ttysd [ 17.418782] PM: Adding info for No Bus:ttyse [ 17.418938] PM: Adding info for No Bus:ttysf [ 17.419076] PM: Adding info for No Bus:ttyt0 [ 17.419213] PM: Adding info for No Bus:ttyt1 [ 17.419370] PM: Adding info for No Bus:ttyt2 [ 17.419515] PM: Adding info for No Bus:ttyt3 [ 17.419657] PM: Adding info for No Bus:ttyt4 [ 17.419814] PM: Adding info for No Bus:ttyt5 [ 17.419954] PM: Adding info for No Bus:ttyt6 [ 17.420096] PM: Adding info for No Bus:ttyt7 [ 17.420256] PM: Adding info for No Bus:ttyt8 [ 17.420399] PM: Adding info for No Bus:ttyt9 [ 17.420540] PM: Adding info for No Bus:ttyta [ 17.420704] PM: Adding info for No Bus:ttytb [ 17.420856] PM: Adding info for No Bus:ttytc [ 17.421003] PM: Adding info for No Bus:ttytd [ 17.421171] PM: Adding info for No Bus:ttyte [ 17.421323] PM: Adding info for No Bus:ttytf [ 17.421470] PM: Adding info for No Bus:ttyu0 [ 17.421695] PM: Adding info for No Bus:ttyu1 [ 17.421842] PM: Adding info for No Bus:ttyu2 [ 17.421986] PM: Adding info for No Bus:ttyu3 [ 17.422145] PM: Adding info for No Bus:ttyu4 [ 17.422289] PM: Adding info for No Bus:ttyu5 [ 17.422431] PM: Adding info for No Bus:ttyu6 [ 17.422593] PM: Adding info for No Bus:ttyu7 [ 17.422737] PM: Adding info for No Bus:ttyu8 [ 17.422885] PM: Adding info for No Bus:ttyu9 [ 17.423054] PM: Adding info for No Bus:ttyua [ 17.423203] PM: Adding info for No Bus:ttyub [ 17.423350] PM: Adding info for No Bus:ttyuc [ 17.423514] PM: Adding info for No Bus:ttyud [ 17.423664] PM: Adding info for No Bus:ttyue [ 17.423814] PM: Adding info for No Bus:ttyuf [ 17.423976] PM: Adding info for No Bus:ttyv0 [ 17.424129] PM: Adding info for No Bus:ttyv1 [ 17.424276] PM: Adding info for No Bus:ttyv2 [ 17.424441] PM: Adding info for No Bus:ttyv3 [ 17.424589] PM: Adding info for No Bus:ttyv4 [ 17.424738] PM: Adding info for No Bus:ttyv5 [ 17.424918] PM: Adding info for No Bus:ttyv6 [ 17.425075] PM: Adding info for No Bus:ttyv7 [ 17.425227] PM: Adding info for No Bus:ttyv8 [ 17.425403] PM: Adding info for No Bus:ttyv9 [ 17.425621] PM: Adding info for No Bus:ttyva [ 17.425779] PM: Adding info for No Bus:ttyvb [ 17.425945] PM: Adding info for No Bus:ttyvc [ 17.426096] PM: Adding info for No Bus:ttyvd [ 17.426247] PM: Adding info for No Bus:ttyve [ 17.426421] PM: Adding info for No Bus:ttyvf [ 17.426574] PM: Adding info for No Bus:ttyw0 [ 17.426727] PM: Adding info for No Bus:ttyw1 [ 17.426900] PM: Adding info for No Bus:ttyw2 [ 17.427057] PM: Adding info for No Bus:ttyw3 [ 17.427211] PM: Adding info for No Bus:ttyw4 [ 17.427380] PM: Adding info for No Bus:ttyw5 [ 17.427536] PM: Adding info for No Bus:ttyw6 [ 17.427696] PM: Adding info for No Bus:ttyw7 [ 17.427868] PM: Adding info for No Bus:ttyw8 [ 17.428025] PM: Adding info for No Bus:ttyw9 [ 17.428181] PM: Adding info for No Bus:ttywa [ 17.428357] PM: Adding info for No Bus:ttywb [ 17.428516] PM: Adding info for No Bus:ttywc [ 17.428672] PM: Adding info for No Bus:ttywd [ 17.428848] PM: Adding info for No Bus:ttywe [ 17.429017] PM: Adding info for No Bus:ttywf [ 17.429182] PM: Adding info for No Bus:ttyx0 [ 17.429361] PM: Adding info for No Bus:ttyx1 [ 17.429523] PM: Adding info for No Bus:ttyx2 [ 17.429745] PM: Adding info for No Bus:ttyx3 [ 17.429919] PM: Adding info for No Bus:ttyx4 [ 17.430084] PM: Adding info for No Bus:ttyx5 [ 17.430244] PM: Adding info for No Bus:ttyx6 [ 17.430423] PM: Adding info for No Bus:ttyx7 [ 17.430585] PM: Adding info for No Bus:ttyx8 [ 17.430744] PM: Adding info for No Bus:ttyx9 [ 17.430924] PM: Adding info for No Bus:ttyxa [ 17.431087] PM: Adding info for No Bus:ttyxb [ 17.431249] PM: Adding info for No Bus:ttyxc [ 17.431430] PM: Adding info for No Bus:ttyxd [ 17.431593] PM: Adding info for No Bus:ttyxe [ 17.431759] PM: Adding info for No Bus:ttyxf [ 17.431936] PM: Adding info for No Bus:ttyy0 [ 17.432102] PM: Adding info for No Bus:ttyy1 [ 17.432265] PM: Adding info for No Bus:ttyy2 [ 17.432446] PM: Adding info for No Bus:ttyy3 [ 17.432611] PM: Adding info for No Bus:ttyy4 [ 17.432777] PM: Adding info for No Bus:ttyy5 [ 17.432963] PM: Adding info for No Bus:ttyy6 [ 17.433137] PM: Adding info for No Bus:ttyy7 [ 17.433304] PM: Adding info for No Bus:ttyy8 [ 17.433488] PM: Adding info for No Bus:ttyy9 [ 17.433723] PM: Adding info for No Bus:ttyya [ 17.433896] PM: Adding info for No Bus:ttyyb [ 17.434080] PM: Adding info for No Bus:ttyyc [ 17.434249] PM: Adding info for No Bus:ttyyd [ 17.434418] PM: Adding info for No Bus:ttyye [ 17.434602] PM: Adding info for No Bus:ttyyf [ 17.434771] PM: Adding info for No Bus:ttyz0 [ 17.434937] PM: Adding info for No Bus:ttyz1 [ 17.435125] PM: Adding info for No Bus:ttyz2 [ 17.435299] PM: Adding info for No Bus:ttyz3 [ 17.435465] PM: Adding info for No Bus:ttyz4 [ 17.435647] PM: Adding info for No Bus:ttyz5 [ 17.435817] PM: Adding info for No Bus:ttyz6 [ 17.435988] PM: Adding info for No Bus:ttyz7 [ 17.436171] PM: Adding info for No Bus:ttyz8 [ 17.436342] PM: Adding info for No Bus:ttyz9 [ 17.436511] PM: Adding info for No Bus:ttyza [ 17.436703] PM: Adding info for No Bus:ttyzb [ 17.436875] PM: Adding info for No Bus:ttyzc [ 17.437045] PM: Adding info for No Bus:ttyzd [ 17.437237] PM: Adding info for No Bus:ttyze [ 17.437413] PM: Adding info for No Bus:ttyzf [ 17.437651] PM: Adding info for No Bus:ttya0 [ 17.437849] PM: Adding info for No Bus:ttya1 [ 17.438024] PM: Adding info for No Bus:ttya2 [ 17.438198] PM: Adding info for No Bus:ttya3 [ 17.438386] PM: Adding info for No Bus:ttya4 [ 17.438562] PM: Adding info for No Bus:ttya5 [ 17.438736] PM: Adding info for No Bus:ttya6 [ 17.438926] PM: Adding info for No Bus:ttya7 [ 17.439103] PM: Adding info for No Bus:ttya8 [ 17.439281] PM: Adding info for No Bus:ttya9 [ 17.439474] PM: Adding info for No Bus:ttyaa [ 17.439651] PM: Adding info for No Bus:ttyab [ 17.439826] PM: Adding info for No Bus:ttyac [ 17.440016] PM: Adding info for No Bus:ttyad [ 17.440195] PM: Adding info for No Bus:ttyae [ 17.440374] PM: Adding info for No Bus:ttyaf [ 17.440564] PM: Adding info for No Bus:ttyb0 [ 17.440746] PM: Adding info for No Bus:ttyb1 [ 17.440926] PM: Adding info for No Bus:ttyb2 [ 17.441123] PM: Adding info for No Bus:ttyb3 [ 17.441302] PM: Adding info for No Bus:ttyb4 [ 17.441486] PM: Adding info for No Bus:ttyb5 [ 17.441746] PM: Adding info for No Bus:ttyb6 [ 17.441933] PM: Adding info for No Bus:ttyb7 [ 17.442111] PM: Adding info for No Bus:ttyb8 [ 17.442311] PM: Adding info for No Bus:ttyb9 [ 17.442493] PM: Adding info for No Bus:ttyba [ 17.442677] PM: Adding info for No Bus:ttybb [ 17.442872] PM: Adding info for No Bus:ttybc [ 17.443054] PM: Adding info for No Bus:ttybd [ 17.443234] PM: Adding info for No Bus:ttybe [ 17.443436] PM: Adding info for No Bus:ttybf [ 17.443618] PM: Adding info for No Bus:ttyc0 [ 17.443800] PM: Adding info for No Bus:ttyc1 [ 17.444003] PM: Adding info for No Bus:ttyc2 [ 17.444193] PM: Adding info for No Bus:ttyc3 [ 17.444375] PM: Adding info for No Bus:ttyc4 [ 17.444573] PM: Adding info for No Bus:ttyc5 [ 17.444757] PM: Adding info for No Bus:ttyc6 [ 17.444949] PM: Adding info for No Bus:ttyc7 [ 17.445149] PM: Adding info for No Bus:ttyc8 [ 17.445335] PM: Adding info for No Bus:ttyc9 [ 17.445520] PM: Adding info for No Bus:ttyca [ 17.445785] PM: Adding info for No Bus:ttycb [ 17.445974] PM: Adding info for No Bus:ttycc [ 17.446160] PM: Adding info for No Bus:ttycd [ 17.446369] PM: Adding info for No Bus:ttyce [ 17.446559] PM: Adding info for No Bus:ttycf [ 17.446748] PM: Adding info for No Bus:ttyd0 [ 17.446950] PM: Adding info for No Bus:ttyd1 [ 17.447138] PM: Adding info for No Bus:ttyd2 [ 17.447326] PM: Adding info for No Bus:ttyd3 [ 17.447528] PM: Adding info for No Bus:ttyd4 [ 17.447719] PM: Adding info for No Bus:ttyd5 [ 17.447909] PM: Adding info for No Bus:ttyd6 [ 17.448117] PM: Adding info for No Bus:ttyd7 [ 17.448306] PM: Adding info for No Bus:ttyd8 [ 17.448493] PM: Adding info for No Bus:ttyd9 [ 17.448701] PM: Adding info for No Bus:ttyda [ 17.448896] PM: Adding info for No Bus:ttydb [ 17.449084] PM: Adding info for No Bus:ttydc [ 17.449294] PM: Adding info for No Bus:ttydd [ 17.449482] PM: Adding info for No Bus:ttyde [ 17.449737] PM: Adding info for No Bus:ttydf [ 17.449944] PM: Adding info for No Bus:ttye0 [ 17.450134] PM: Adding info for No Bus:ttye1 [ 17.450324] PM: Adding info for No Bus:ttye2 [ 17.450533] PM: Adding info for No Bus:ttye3 [ 17.450729] PM: Adding info for No Bus:ttye4 [ 17.450921] PM: Adding info for No Bus:ttye5 [ 17.451131] PM: Adding info for No Bus:ttye6 [ 17.451325] PM: Adding info for No Bus:ttye7 [ 17.451519] PM: Adding info for No Bus:ttye8 [ 17.451730] PM: Adding info for No Bus:ttye9 [ 17.451926] PM: Adding info for No Bus:ttyea [ 17.452126] PM: Adding info for No Bus:ttyeb [ 17.452339] PM: Adding info for No Bus:ttyec [ 17.452536] PM: Adding info for No Bus:ttyed [ 17.452733] PM: Adding info for No Bus:ttyee [ 17.452950] PM: Adding info for No Bus:ttyef [ 17.453041] PM: Adding info for No Bus:rtc [ 17.453112] Real Time Clock Driver v1.12ac [ 17.453127] PM: Adding info for No Bus:hpet [ 17.453349] PM: Adding info for No Bus:nvram [ 17.453410] Non-volatile memory driver v1.2 [ 17.453414] Linux agpgart interface v0.102 (c) Dave Jones [ 17.453491] agpgart: Detected an Intel 855PM Chipset. [ 17.467082] PM: Adding info for No Bus:agpgart [ 17.467185] agpgart: AGP aperture is 256M @ 0xb0000000 [ 17.467259] [drm] Initialized drm 1.1.0 20060810 [ 17.467262] Hangcheck: starting hangcheck timer 0.9.0 (tick is 180 seconds, margin is 60 seconds). [ 17.467265] Hangcheck: Using get_cycles(). [ 17.467295] PM: Adding info for No Bus:isa [ 17.468471] RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize [ 17.468583] PM: Adding info for No Bus:lo [ 17.469040] PNP: PS/2 Controller [PNP0303:C1A3,PNP0f13:C1A4] at 0x60,0x64 irq 1,12 [ 17.469143] PM: Adding info for platform:i8042 [ 17.479662] i8042.c: Detected active multiplexing controller, rev 1.1. [ 17.484951] serio: i8042 KBD port at 0x60,0x64 irq 1 [ 17.484981] PM: Adding info for serio:serio0 [ 17.485019] serio: i8042 AUX0 port at 0x60,0x64 irq 12 [ 17.485023] serio: i8042 AUX1 port at 0x60,0x64 irq 12 [ 17.485028] serio: i8042 AUX2 port at 0x60,0x64 irq 12 [ 17.485032] serio: i8042 AUX3 port at 0x60,0x64 irq 12 [ 17.485134] PM: Adding info for serio:serio1 [ 17.485191] mice: PS/2 mouse device common for all mice [ 17.485257] PM: Adding info for serio:serio2 [ 17.485976] input: PC Speaker as /class/input/input0 [ 17.489176] PM: Adding info for serio:serio3 [ 17.516161] NET: Registered protocol family 1 [ 17.516168] NET: Registered protocol family 17 [ 17.516437] Testing NMI watchdog ... <7>PM: Adding info for serio:serio4 [ 17.556788] OK. [ 17.556791] Using IPI Shortcut mode [ 17.556923] swsusp: Resume From Partition /dev/hda2 [ 17.556925] PM: Checking swsusp image. [ 17.556942] swsusp: Error -6 check for resume file [ 17.556944] PM: Resume from disk failed. [ 17.557449] Freeing unused kernel memory: 196k freed [ 17.557515] Write protecting the kernel read-only data: 646k [ 17.557524] Time: tsc clocksource has been installed. [ 17.557605] PM: Adding info for No Bus:vcs1 [ 17.557674] PM: Adding info for No Bus:vcsa1 [ 17.833716] usbcore: registered new interface driver usbfs [ 17.833786] usbcore: registered new interface driver hub [ 17.833871] usbcore: registered new device driver usb [ 17.836138] USB Universal Host Controller Interface driver v3.0 [ 17.836237] ACPI: PCI Interrupt 0000:00:1d.0[A] -> Link [C0C2] -> GSI 10 (level, low) -> IRQ 10 [ 17.836253] PCI: Setting latency timer of device 0000:00:1d.0 to 64 [ 17.836258] uhci_hcd 0000:00:1d.0: UHCI Host Controller [ 17.836502] uhci_hcd 0000:00:1d.0: new USB bus registered, assigned bus number 1 [ 17.836533] uhci_hcd 0000:00:1d.0: irq 10, io base 0x000048c0 [ 17.836648] PM: Adding info for usb:usb1 [ 17.836812] PM: Adding info for No Bus:usbdev1.1_ep00 [ 17.836864] usb usb1: configuration #1 chosen from 1 choice [ 17.836901] PM: Adding info for usb:1-0:1.0 [ 17.836970] hub 1-0:1.0: USB hub found [ 17.836995] hub 1-0:1.0: 2 ports detected [ 17.937548] PM: Adding info for No Bus:usbdev1.1_ep81 [ 17.937647] PM: Adding info for No Bus:usbdev1.1 [ 17.938191] ACPI: PCI Interrupt Link [C0C5] enabled at IRQ 5 [ 17.938194] ACPI: PCI Interrupt 0000:00:1d.1[B] -> Link [C0C5] -> GSI 5 (level, low) -> IRQ 5 [ 17.938206] PCI: Setting latency timer of device 0000:00:1d.1 to 64 [ 17.938210] uhci_hcd 0000:00:1d.1: UHCI Host Controller [ 17.938263] uhci_hcd 0000:00:1d.1: new USB bus registered, assigned bus number 2 [ 17.938289] uhci_hcd 0000:00:1d.1: irq 5, io base 0x000048e0 [ 17.938380] PM: Adding info for usb:usb2 [ 17.938473] PM: Adding info for No Bus:usbdev2.1_ep00 [ 17.938519] usb usb2: configuration #1 chosen from 1 choice [ 17.938538] PM: Adding info for usb:2-0:1.0 [ 17.938585] hub 2-0:1.0: USB hub found [ 17.938597] hub 2-0:1.0: 2 ports detected [ 18.017509] Switched to high resolution mode on CPU 0 [ 18.041396] PM: Adding info for No Bus:usbdev2.1_ep81 [ 18.041461] PM: Adding info for No Bus:usbdev2.1 [ 18.041546] ACPI: PCI Interrupt 0000:00:1d.2[C] -> Link [C0C4] -> GSI 5 (level, low) -> IRQ 5 [ 18.041561] PCI: Setting latency timer of device 0000:00:1d.2 to 64 [ 18.041565] uhci_hcd 0000:00:1d.2: UHCI Host Controller [ 18.041633] uhci_hcd 0000:00:1d.2: new USB bus registered, assigned bus number 3 [ 18.041656] uhci_hcd 0000:00:1d.2: irq 5, io base 0x00004c00 [ 18.041734] PM: Adding info for usb:usb3 [ 18.041821] PM: Adding info for No Bus:usbdev3.1_ep00 [ 18.041866] usb usb3: configuration #1 chosen from 1 choice [ 18.041885] PM: Adding info for usb:3-0:1.0 [ 18.041948] hub 3-0:1.0: USB hub found [ 18.041959] hub 3-0:1.0: 2 ports detected [ 18.145369] PM: Adding info for No Bus:usbdev3.1_ep81 [ 18.145436] PM: Adding info for No Bus:usbdev3.1 [ 18.147639] ohci_hcd: 2006 August 04 USB 1.1 'Open' Host Controller (OHCI) Driver [ 18.151112] ACPI: PCI Interrupt Link [C0C9] enabled at IRQ 5 [ 18.151117] ACPI: PCI Interrupt 0000:00:1d.7[D] -> Link [C0C9] -> GSI 5 (level, low) -> IRQ 5 [ 18.151133] PCI: Setting latency timer of device 0000:00:1d.7 to 64 [ 18.151138] ehci_hcd 0000:00:1d.7: EHCI Host Controller [ 18.151199] ehci_hcd 0000:00:1d.7: new USB bus registered, assigned bus number 4 [ 18.151239] ehci_hcd 0000:00:1d.7: debug port 1 [ 18.151248] PCI: cache line size of 32 is not supported by device 0000:00:1d.7 [ 18.151257] ehci_hcd 0000:00:1d.7: irq 5, io mem 0xa0000000 [ 18.155131] ehci_hcd 0000:00:1d.7: USB 2.0 started, EHCI 1.00, driver 10 Dec 2004 [ 18.155193] PM: Adding info for usb:usb4 [ 18.155277] PM: Adding info for No Bus:usbdev4.1_ep00 [ 18.155308] usb usb4: configuration #1 chosen from 1 choice [ 18.155330] PM: Adding info for usb:4-0:1.0 [ 18.155377] hub 4-0:1.0: USB hub found [ 18.155436] hub 4-0:1.0: 6 ports detected [ 18.257358] PM: Adding info for No Bus:usbdev4.1_ep81 [ 18.257424] PM: Adding info for No Bus:usbdev4.1 [ 18.274141] SCSI subsystem initialized [ 18.289005] libata version 2.10 loaded. [ 18.292848] ata_piix 0000:00:1f.1: version 2.00ac7 [ 18.292871] PCI: Enabling device 0000:00:1f.1 (0005 -> 0007) [ 18.292884] ACPI: PCI Interrupt 0000:00:1f.1[A] -> Link [C0C4] -> GSI 5 (level, low) -> IRQ 5 [ 18.292912] PCI: Setting latency timer of device 0000:00:1f.1 to 64 [ 18.293061] ata1: PATA max UDMA/100 cmd 0x000101f0 ctl 0x000103f6 bmdma 0x00014c40 irq 14 [ 18.293109] ata2: PATA max UDMA/100 cmd 0x00010170 ctl 0x00010376 bmdma 0x00014c48 irq 15 [ 18.293143] scsi0 : ata_piix [ 18.293158] PM: Adding info for No Bus:host0 [ 18.317733] Synaptics Touchpad, model: 1, fw: 5.9, id: 0x236eb3, caps: 0x904713/0x10008 [ 18.375112] input: SynPS/2 Synaptics TouchPad as /class/input/input1 [ 18.403567] input: AT Translated Set 2 keyboard as /class/input/input2 [ 18.457965] ata1.00: ATA-6: FUJITSU MHT2080AH PL, 006C, max UDMA/100 [ 18.457969] ata1.00: 156301488 sectors, multi 16: LBA [ 18.469868] ata1.00: configured for UDMA/100 [ 18.469878] scsi1 : ata_piix [ 18.469907] PM: Adding info for No Bus:host1 [ 18.789870] ata2.00: ATAPI, max MWDMA2 [ 18.889270] usb 3-2: new full speed USB device using uhci_hcd and address 2 [ 18.953823] ata2.00: configured for MWDMA2 [ 18.953843] PM: Adding info for No Bus:target0:0:0 [ 18.954047] scsi 0:0:0:0: Direct-Access ATA FUJITSU MHT2080A 006C PQ: 0 ANSI: 5 [ 18.954076] PM: Adding info for scsi:0:0:0:0 [ 18.954276] SCSI device sda: 156301488 512-byte hdwr sectors (80026 MB) [ 18.954296] sda: Write Protect is off [ 18.954298] sda: Mode Sense: 00 3a 00 00 [ 18.954331] SCSI device sda: write cache: enabled, read cache: enabled, doesn't support DPO or FUA [ 18.954458] SCSI device sda: 156301488 512-byte hdwr sectors (80026 MB) [ 18.954477] sda: Write Protect is off [ 18.954479] sda: Mode Sense: 00 3a 00 00 [ 18.954512] SCSI device sda: write cache: enabled, read cache: enabled, doesn't support DPO or FUA [ 18.954516] sda: sda1 sda2 sda3 sda4 < sda5 sda6 > [ 18.998407] sd 0:0:0:0: Attached scsi disk sda [ 18.998481] PM: Adding info for No Bus:target1:0:0 [ 19.003578] scsi 1:0:0:0: CD-ROM HL-DT-ST RW/DVD GCC-4241N 0C29 PQ: 0 ANSI: 5 [ 19.003590] PM: Adding info for scsi:1:0:0:0 [ 19.121408] PM: Adding info for usb:3-2 [ 19.121488] PM: Adding info for No Bus:usbdev3.2_ep00 [ 19.121520] usb 3-2: configuration #1 chosen from 1 choice [ 19.125419] PM: Adding info for usb:3-2:1.0 [ 19.125473] PM: Adding info for No Bus:usbdev3.2_ep81 [ 19.125513] PM: Adding info for No Bus:usbdev3.2_ep02 [ 19.125567] PM: Adding info for No Bus:usbdev3.2_ep82 [ 19.125601] PM: Adding info for usb:3-2:1.1 [ 19.125649] PM: Adding info for No Bus:usbdev3.2_ep03 [ 19.125701] PM: Adding info for No Bus:usbdev3.2_ep83 [ 19.125737] PM: Adding info for usb:3-2:1.2 [ 19.125807] PM: Adding info for No Bus:usbdev3.2 [ 22.019963] EXT3-fs: mounted filesystem with ordered data mode. [ 22.020261] kjournald starting. Commit interval 5 seconds [ 22.745062] PM: Removing info for No Bus:vcs1 [ 22.745148] PM: Removing info for No Bus:vcsa1 [ 22.745238] PM: Adding info for No Bus:vcs1 [ 22.745264] PM: Adding info for No Bus:vcsa1 [ 22.745307] PM: Removing info for No Bus:vcs1 [ 22.745337] PM: Removing info for No Bus:vcsa1 [ 22.853108] PM: Adding info for No Bus:vcs1 [ 22.853136] PM: Adding info for No Bus:vcsa1 [ 29.827217] sd 0:0:0:0: Attached scsi generic sg0 type 0 [ 29.827249] scsi 1:0:0:0: Attached scsi generic sg1 type 5 [ 30.101069] ieee80211_crypt: registered algorithm 'NULL' [ 30.182908] ACPI: PCI Interrupt Link [C0C3] enabled at IRQ 10 [ 30.182914] ACPI: PCI Interrupt 0000:00:1f.3[B] -> Link [C0C3] -> GSI 10 (level, low) -> IRQ 10 [ 30.182966] PM: Adding info for No Bus:i2c-4 [ 30.344355] ieee80211: 802.11 data/management/control stack, git-1.1.13 [ 30.344361] ieee80211: Copyright (C) 2004-2005 Intel Corporation <[email protected]> [ 30.481651] ieee1394: Initialized config rom entry `ip1394' [ 30.531451] intel_rng: FWH not detected [ 30.578518] sr0: scsi3-mmc drive: 24x/24x writer cd/rw xa/form2 cdda tray [ 30.578526] Uniform CD-ROM driver Revision: 3.20 [ 30.578720] sr 1:0:0:0: Attached scsi CD-ROM sr0 [ 30.598491] 8139cp: 10/100 PCI Ethernet driver v1.3 (Mar 22, 2004) [ 30.598576] ACPI: PCI Interrupt 0000:02:01.0[A] -> Link [C0C3] -> GSI 10 (level, low) -> IRQ 10 [ 30.598941] PM: Adding info for No Bus:eth0 [ 30.599142] eth0: RTL-8139C+ at 0xe18e8000, 00:02:3f:22:db:8c, IRQ 10 [ 30.727508] Serial: 8250/16550 driver $Revision: 1.90 $ 2 ports, IRQ sharing disabled [ 30.727636] PM: Adding info for platform:serial8250 [ 30.727840] serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A [ 30.728078] PM: Adding info for No Bus:ttyS0 [ 30.728232] PM: Adding info for No Bus:ttyS1 [ 30.749708] PM: Removing info for No Bus:ttyS0 [ 30.749880] 00:03: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A [ 30.750112] PM: Adding info for No Bus:ttyS0 [ 30.890646] parport: PnPBIOS parport detected. [ 30.890771] parport0: PC-style at 0x378 (0x778), irq 7, dma 1 [PCSPP,TRISTATE,COMPAT,ECP,DMA] [ 30.924586] ACPI: PCI Interrupt 0000:02:00.0[A] -> Link [C0C2] -> GSI 10 (level, low) -> IRQ 10 [ 30.924707] PM: Adding info for ieee1394:fw-host0 [ 30.977898] ohci1394: fw-host0: OHCI-1394 1.0 (PCI): IRQ=[10] MMIO=[90200000-902007ff] Max Packet=[1024] IR/IT contexts=[4/8] [ 31.317914] ipw2200: Intel(R) PRO/Wireless 2200/2915 Network Driver, 1.2.0kmprq [ 31.317919] ipw2200: Copyright(c) 2003-2006 Intel Corporation [ 31.318059] ACPI: PCI Interrupt 0000:02:02.0[A] -> Link [C0C5] -> GSI 5 (level, low) -> IRQ 5 [ 31.318128] ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection [ 31.318341] PM: Adding info for No Bus:0000:02:02.0 [ 31.521036] rtc_cmos 00:09: rtc core: registered rtc_cmos as rtc0 [ 31.521090] pnp: Device 00:09 does not support disabling. [ 31.521098] rtc_cmos: probe of 00:09 failed with error -16 [ 31.567553] Bluetooth: Core ver 2.11 [ 31.567578] PM: Adding info for platform:bluetooth [ 31.567672] NET: Registered protocol family 31 [ 31.567674] Bluetooth: HCI device and connection manager initialized [ 31.567776] Bluetooth: HCI socket layer initialized [ 31.809583] NET: Registered protocol family 23 [ 31.890511] PM: Adding info for No Bus:timer [ 31.923764] wbsd: Winbond W83L51xD SD/MMC card interface driver [ 31.923768] wbsd: Copyright(c) Pierre Ossman [ 31.924599] pnp: Device 00:02 activated. [ 31.924603] wbsd [wbsd_pnp_probe()]: PnP resources: port 248 irq 6 dma 0 [ 31.929771] PM: Adding info for No Bus:mmc0 [ 31.929793] mmc0: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0 timing 0 [ 31.929862] mmc0: clock 0Hz busmode 1 powermode 1 cs 0 Vdd 21 width 0 timing 0 [ 31.930866] mmc0: clock 375000Hz busmode 1 powermode 2 cs 0 Vdd 21 width 0 timing 0 [ 31.932863] mmc0: clock 375000Hz busmode 1 powermode 2 cs 1 Vdd 21 width 0 timing 0 [ 31.933867] mmc0: starting CMD0 arg 00000000 flags 00000040 [ 31.933870] wbsd [wbsd_request_end()]: Ending request, cmd (0) [ 31.933894] mmc0: req done (CMD0): 1/0/0: 00000000 00000000 00000000 00000000 [ 31.934892] mmc0: clock 375000Hz busmode 1 powermode 2 cs 0 Vdd 21 width 0 timing 0 [ 31.935898] mmc0: starting CMD8 arg 000001aa flags 00000075 [ 31.935901] wbsd [wbsd_request_end()]: Ending request, cmd (8) [ 31.935909] mmc0: req done (CMD8): 1/0/0: 00000000 00000000 00000000 00000000 [ 31.935914] mmc0: starting CMD55 arg 00000000 flags 00000015 [ 31.935917] wbsd [wbsd_request_end()]: Ending request, cmd (37) [ 31.935925] mmc0: req done (CMD55): 1/0/0: 00000000 00000000 00000000 00000000 [ 31.935930] mmc0: starting CMD55 arg 00000000 flags 00000015 [ 31.935932] wbsd [wbsd_request_end()]: Ending request, cmd (37) [ 31.935940] mmc0: req done (CMD55): 1/0/0: 00000000 00000000 00000000 00000000 [ 31.935945] mmc0: starting CMD55 arg 00000000 flags 00000015 [ 31.935948] wbsd [wbsd_request_end()]: Ending request, cmd (37) [ 31.935956] mmc0: req done (CMD55): 1/0/0: 00000000 00000000 00000000 00000000 [ 31.935960] mmc0: starting CMD55 arg 00000000 flags 00000015 [ 31.935963] wbsd [wbsd_request_end()]: Ending request, cmd (37) [ 31.935971] mmc0: req done (CMD55): 1/0/0: 00000000 00000000 00000000 00000000 [ 31.935975] mmc0: starting CMD1 arg 00000000 flags 00000061 [ 31.935978] wbsd [wbsd_request_end()]: Ending request, cmd (1) [ 31.935986] mmc0: req done (CMD1): 1/0/0: 00000000 00000000 00000000 00000000 [ 31.935991] mmc0: clock 0Hz busmode 1 powermode 0 cs 0 Vdd 0 width 0 timing 0 [ 31.936317] mmc0: W83L51xD id 7112 at 0x248 irq 6 dma 0 PnP [ 31.940026] wbsd: Resetting card detection ignore [ 31.946630] Bluetooth: HCI USB driver ver 2.9 [ 31.991096] Detected unconfigured Compaq x1000 family SMSC IrDA chip, pre-configuring device. [ 31.991101] Setting up Intel 82801 controller and SMSC device [ 31.991232] found SMC SuperIO Chip (devid=0x5a rev=00 base=0x002e): LPC47N227 [ 31.991248] smsc_superio_flat(): fir: 0x2f8, sir: 0x2e8, dma: 03, irq: 7, mode: 0x0e [ 31.991264] SMsC IrDA Controller found [ 31.991266] IrCC version 2.0, firport 0x2f8, sirport 0x2e8 dma=3, irq=7 [ 31.991329] No transceiver found. Defaulting to Fast pin select [ 32.037151] PM: Removing info for No Bus:usbdev3.2_ep03 [ 32.037226] PM: Removing info for No Bus:usbdev3.2_ep83 [ 32.037305] PM: Adding info for No Bus:usbdev3.2_ep03 [ 32.037347] PM: Adding info for No Bus:usbdev3.2_ep83 [ 32.037430] PM: Adding info for No Bus:hci0 [ 32.037518] usbcore: registered new interface driver hci_usb [ 32.108177] PM: Removing info for No Bus:0000:02:02.0 [ 32.227503] PM: Adding info for No Bus:eth1 [ 32.227593] ipw2200: Detected geography ZZR (14 802.11bg channels, 0 802.11a channels) [ 32.228010] PM: Adding info for No Bus:irda0 [ 32.228064] PM: Adding info for platform:smsc-ircc2.0 [ 32.228098] IrDA: Registered device irda0 [ 32.228317] Yenta: CardBus bridge found at 0000:02:04.0 [0e11:0860] [ 32.228341] Yenta: Using CSCINT to route CSC interrupts to PCI [ 32.228344] Yenta: Routing CardBus interrupts to PCI [ 32.228350] Yenta TI: socket 0000:02:04.0, mfunc 0x001c1112, devctl 0x44 [ 32.252311] PM: Adding info for ieee1394:00023f454a000284 [ 32.252452] ieee1394: Host added: ID:BUS[0-00:1023] GUID[00023f454a000284] [ 32.252486] PM: Adding info for ieee1394:00023f454a000284-0 [ 32.435247] PM: Adding info for No Bus:seq [ 32.464486] Yenta: ISA IRQ mask 0x0818, PCI irq 5 [ 32.464491] Socket status: 30000006 [ 32.464495] Yenta: Raising subordinate bus# of parent bus (#02) from #03 to #06 [ 32.464511] pcmcia: parent PCI bridge I/O window: 0x2000 - 0x2fff [ 32.464595] cs: IO port probe 0x2000-0x2fff: clean. [ 32.465321] pcmcia: parent PCI bridge Memory window: 0x90000000 - 0x903fffff [ 32.465325] pcmcia: parent PCI bridge Memory window: 0x30000000 - 0x33ffffff [ 32.465507] PM: Adding info for No Bus:pcmcia_socket0 [ 32.521484] PM: Adding info for No Bus:sequencer [ 32.521601] PM: Adding info for No Bus:sequencer2 [ 32.665760] ACPI: PCI Interrupt 0000:00:1f.5[B] -> Link [C0C3] -> GSI 10 (level, low) -> IRQ 10 [ 32.665798] PCI: Setting latency timer of device 0000:00:1f.5 to 64 [ 32.912227] cs: IO port probe 0x100-0x3af: excluding 0x140-0x14f 0x200-0x20f [ 32.914055] cs: IO port probe 0x3e0-0x4ff: clean. [ 32.914883] cs: IO port probe 0x820-0x8ff: clean. [ 32.915596] cs: IO port probe 0xc00-0xcf7: clean. [ 32.916632] cs: IO port probe 0xa00-0xaff: clean. [ 33.591857] intel8x0_measure_ac97_clock: measured 55258 usecs [ 33.591861] intel8x0: clocking to 48000 [ 33.591899] PM: Adding info for No Bus:card0 [ 33.592421] PM: Adding info for No Bus:pcmC0D4p [ 33.592727] PM: Adding info for No Bus:pcmC0D3c [ 33.592902] PM: Adding info for No Bus:pcmC0D2c [ 33.593082] PM: Adding info for No Bus:pcmC0D1c [ 33.593321] PM: Adding info for No Bus:adsp [ 33.593545] PM: Adding info for No Bus:pcmC0D0p [ 33.593716] PM: Adding info for No Bus:pcmC0D0c [ 33.593911] PM: Adding info for No Bus:dsp [ 33.594085] PM: Adding info for No Bus:audio [ 33.594275] PM: Adding info for ac97:0-0:AD1981B [ 33.594644] PM: Adding info for No Bus:controlC0 [ 33.594905] PM: Adding info for No Bus:mixer [ 33.758500] ACPI: PCI Interrupt 0000:00:1f.6[B] -> Link [C0C3] -> GSI 10 (level, low) -> IRQ 10 [ 33.758524] PCI: Setting latency timer of device 0000:00:1f.6 to 64 [ 33.764207] PM: Adding info for No Bus:card1 [ 33.764266] PM: Adding info for No Bus:pcmC1D0p [ 33.764315] PM: Adding info for No Bus:pcmC1D0c [ 33.764395] PM: Adding info for No Bus:dsp1 [ 33.764430] PM: Adding info for No Bus:audio1 [ 33.764476] PM: Adding info for ac97:1-1:Si3036,8 [ 33.764537] PM: Adding info for No Bus:controlC1 [ 33.764589] PM: Adding info for No Bus:mixer1 [ 34.259958] lp0: using parport0 (interrupt-driven). [ 36.009355] PM: Adding info for No Bus:vcs8 [ 36.009578] PM: Adding info for No Bus:vcsa8 [ 36.010233] PM: Removing info for No Bus:vcs8 [ 36.010430] PM: Removing info for No Bus:vcsa8 [ 36.011992] PM: Adding info for No Bus:vcs8 [ 36.012128] PM: Adding info for No Bus:vcsa8 [ 36.016604] PM: Removing info for No Bus:vcs8 [ 36.016788] PM: Removing info for No Bus:vcsa8 [ 36.746895] NET: Registered protocol family 10 [ 36.747096] lo: Disabled Privacy Extensions [ 36.747345] Mobile IPv6 [ 37.069451] PM: Adding info for No Bus:vcs8 [ 37.069650] PM: Adding info for No Bus:vcsa8 [ 37.508858] [drm] Initialized radeon 1.25.0 20060524 on minor 0 [ 44.424120] ACPI: AC Adapter [C134] (on-line) [ 44.445177] ACPI: Battery Slot [C11F] (battery absent) [ 44.472180] input: Power Button (FF) as /class/input/input3 [ 44.487990] ACPI: Power Button (FF) [PWRF] [ 44.497199] input: Power Button (CM) as /class/input/input4 [ 44.497648] ACPI: Power Button (CM) [C1BE] [ 44.498073] input: Lid Switch as /class/input/input5 [ 44.498253] ACPI: Lid Switch [C136] [ 44.577672] No dock devices found. [ 44.714156] ACPI: CPU0 (power states: C1[C1] C2[C2] C3[C3]) [ 44.714165] ACPI: Processor [CPU0] (supports 8 throttling states) [ 44.738813] Time: acpi_pm clocksource has been installed. [ 44.754662] ACPI: Video Device [C0D0] (multi-head: yes rom: no post: no) [ 48.399426] EXT3 FS on sda5, internal journal [ 48.516847] kjournald starting. Commit interval 5 seconds [ 48.517208] EXT3 FS on sda1, internal journal [ 48.517218] EXT3-fs: mounted filesystem with ordered data mode. [ 48.616915] FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive! [ 48.642486] FAT: utf8 is not a recommended IO charset for FAT filesystems, filesystem will be case sensitive! [ 49.233012] Adding 1000432k swap on /dev/sda2. Priority:-1 extents:1 across:1000432k [ 49.396740] PM: Removing info for No Bus:vcs1 [ 49.396980] PM: Removing info for No Bus:vcsa1 [ 49.656687] PM: Adding info for No Bus:microcode [ 49.672342] PM: Adding info for platform:microcode [ 49.677982] PM: Adding info for No Bus:microcode [ 49.680015] PM: Removing info for No Bus:microcode [ 49.680983] IA-32 Microcode Update Driver: v1.14a <[email protected]> [ 49.821236] PM: Removing info for No Bus:microcode [ 49.822660] PM: Removing info for platform:microcode [ 50.859647] Clocksource tsc unstable (delta = -150132146 ns) [ 54.182545] audit(1172156319.053:2): audit_pid=2713 old=0 by auid=4294967295 [ 76.598140] Bluetooth: L2CAP ver 2.8 [ 76.598147] Bluetooth: L2CAP socket layer initialized [ 76.780339] Bluetooth: RFCOMM socket layer initialized [ 76.780360] Bluetooth: RFCOMM TTY layer initialized [ 76.780363] Bluetooth: RFCOMM ver 1.8 [ 93.468314] Bluetooth: HIDP (Human Interface Emulation) ver 1.1 [ 94.821804] IrCOMM protocol (Dag Brattli) [ 94.971210] PM: Adding info for No Bus:ircomm0 [ 118.771468] PM: Adding info for No Bus:ircomm1 [ 118.806250] PM: Adding info for No Bus:ircomm2 [ 118.807503] PM: Adding info for No Bus:ircomm3 [ 118.808667] PM: Adding info for No Bus:ircomm4 [ 118.809714] PM: Adding info for No Bus:ircomm5 [ 118.810773] PM: Adding info for No Bus:ircomm6 [ 118.811908] PM: Adding info for No Bus:ircomm7 [ 118.812755] PM: Adding info for No Bus:ircomm8 [ 118.813158] PM: Adding info for No Bus:ircomm9 [ 118.813566] PM: Adding info for No Bus:ircomm10 [ 118.813952] PM: Adding info for No Bus:ircomm11 [ 118.814330] PM: Adding info for No Bus:ircomm12 [ 118.814732] PM: Adding info for No Bus:ircomm13 [ 118.815110] PM: Adding info for No Bus:ircomm14 [ 118.815576] PM: Adding info for No Bus:ircomm15 [ 118.815983] PM: Adding info for No Bus:ircomm16 [ 118.816365] PM: Adding info for No Bus:ircomm17 [ 118.816742] PM: Adding info for No Bus:ircomm18 [ 118.817152] PM: Adding info for No Bus:ircomm19 [ 118.817531] PM: Adding info for No Bus:ircomm20 [ 118.817916] PM: Adding info for No Bus:ircomm21 [ 118.818384] PM: Adding info for No Bus:ircomm22 [ 118.818772] PM: Adding info for No Bus:ircomm23 [ 118.819154] PM: Adding info for No Bus:ircomm24 [ 118.819578] PM: Adding info for No Bus:ircomm25 [ 118.819963] PM: Adding info for No Bus:ircomm26 [ 118.820351] PM: Adding info for No Bus:ircomm27 [ 118.820766] PM: Adding info for No Bus:ircomm28 [ 118.821158] PM: Adding info for No Bus:ircomm29 [ 118.821545] PM: Adding info for No Bus:ircomm30 [ 118.821961] PM: Adding info for No Bus:ircomm31 [ 119.961500] PPP generic driver version 2.4.2 [ 119.961812] PM: Adding info for No Bus:ppp [ 120.114758] PM: Adding info for No Bus:irnet [ 120.397247] PM: Adding info for No Bus:irda1 [ 120.398141] IrDA: Registered device irda1 (irport io=0x3E8 irq=3) [ 123.513058] tun: Universal TUN/TAP device driver, 1.6 [ 123.513303] tun: (C) 1999-2004 Max Krasnyansky <[email protected]> [ 123.513505] PM: Adding info for No Bus:tun [ 86.581310] eth0: link down [ 86.581521] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 148.171216] PM: Adding info for No Bus:vcs1 [ 148.171292] PM: Adding info for No Bus:vcsa1 [ 148.171409] PM: Removing info for No Bus:vcs1 [ 148.171482] PM: Removing info for No Bus:vcsa1 [ 148.171601] PM: Adding info for No Bus:vcs1 [ 148.171652] PM: Adding info for No Bus:vcsa1 [ 148.231785] PM: Adding info for No Bus:vcs2 [ 148.232003] PM: Adding info for No Bus:vcsa2 [ 148.232204] PM: Removing info for No Bus:vcs2 [ 148.232369] PM: Removing info for No Bus:vcsa2 [ 148.232753] PM: Adding info for No Bus:vcs2 [ 148.232896] PM: Adding info for No Bus:vcsa2 [ 148.235379] PM: Adding info for No Bus:vcs3 [ 148.235559] PM: Adding info for No Bus:vcsa3 [ 148.235776] PM: Removing info for No Bus:vcs3 [ 148.235936] PM: Removing info for No Bus:vcsa3 [ 148.236147] PM: Adding info for No Bus:vcs3 [ 148.236287] PM: Adding info for No Bus:vcsa3 [ 148.263994] PM: Adding info for No Bus:vcs4 [ 148.264245] PM: Adding info for No Bus:vcsa4 [ 148.264832] PM: Removing info for No Bus:vcs4 [ 148.264998] PM: Removing info for No Bus:vcsa4 [ 148.267191] PM: Adding info for No Bus:vcs5 [ 148.267367] PM: Adding info for No Bus:vcsa5 [ 148.267556] PM: Removing info for No Bus:vcs5 [ 148.267711] PM: Removing info for No Bus:vcsa5 [ 148.267920] PM: Adding info for No Bus:vcs5 [ 148.268059] PM: Adding info for No Bus:vcsa5 [ 148.270719] PM: Adding info for No Bus:vcs6 [ 148.270896] PM: Adding info for No Bus:vcsa6 [ 148.271110] PM: Removing info for No Bus:vcs6 [ 148.271266] PM: Removing info for No Bus:vcsa6 [ 148.271474] PM: Adding info for No Bus:vcs6 [ 148.271614] PM: Adding info for No Bus:vcsa6 [ 148.280530] PM: Adding info for No Bus:vcs4 [ 148.280901] PM: Adding info for No Bus:vcsa4 [ 119.929036] mtrr: no MTRR for 98000000,4000000 found [ 120.515772] PM: Adding info for No Bus:vcs7 [ 120.516152] PM: Adding info for No Bus:vcsa7 [ 101.915202] agpgart: Found an AGP 2.0 compliant device at 0000:00:00.0. [ 101.915228] agpgart: Putting AGP V2 device at 0000:00:00.0 into 1x mode [ 101.915284] agpgart: Putting AGP V2 device at 0000:01:00.0 into 1x mode [ 102.236240] [drm] Setting GART location based on new memory map [ 102.236253] [drm] Loading R200 Microcode [ 102.236346] [drm] writeback test succeeded in 2 usecs [ 157.770700] ieee80211_crypt: registered algorithm 'WEP' [ 158.285463] ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready [ 151.274779] eth1: no IPv6 routers present
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 9 lines · Pierre Ossman
Quoted 3 lines
Sure. My dmesg is full of mmc debug crud right now, but I'll just reboot and I'll have a clean one for you.
Here we go.
[ 44.498253] ACPI: Lid Switch [C136] [ 44.577672] No dock devices found. [ 44.714156] ACPI: CPU0 (power states: C1[C1] C2[C2] C3[C3])
---------------------------------------------------------^^^^^
Here is the reason. The local APIC stops working in C3 state and we fall back to the PIT in that case. Not really exciting for dynticks, but the only way to keep the system alive. There is a patch coming up from Intel, which finds out how to use HPET even if it is not enabled by the BIOS. This will still end up on IRQ#0, but will give way longer idle sleeps than the PIT.
tglx
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 9 lines · Thomas Gleixner
Here is the reason. The local APIC stops working in C3 state and we fall back to the PIT in that case. Not really exciting for dynticks, but the only way to keep the system alive. There is a patch coming up from Intel, which finds out how to use HPET even if it is not enabled by the BIOS. This will still end up on IRQ#0, but will give way longer idle sleeps than the PIT.
So then the next two questions are; is it possible to disable C3 and is it a net power gain to get rid of the wakeups in favor of having C3.
Rgds
Signature · 5 lines
-- Pierre Ossman Linux kernel, MMC maintainer http://www.kernel.org PulseAudio, core developer http://pulseaudio.org rdesktop, core developer http://www.rdesktop.org
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 11 lines · Pierre Ossman
Quoted 9 lines · Thomas Gleixner
Here is the reason. The local APIC stops working in C3 state and we fall back to the PIT in that case. Not really exciting for dynticks, but the only way to keep the system alive. There is a patch coming up from Intel, which finds out how to use HPET even if it is not enabled by the BIOS. This will still end up on IRQ#0, but will give way longer idle sleeps than the PIT.
Quoted 1 line
So then the next two questions are; is it possible to disable C3
yeah there is a commandline thingy for it
Quoted 2 lines
and is
it a net power gain to get rid of the wakeups in favor of having C3.
no; c3 saves a TON more power.
you can try enabling HPET in your BIOS...
Signature · 2 lines
if you want to mail me at work (you don't), use arjan (at) linux.intel.com Test the interaction between Linux and your BIOS via http://www.linuxfirmwarekit.org
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 5 lines · Arjan van de Ven
no; c3 saves a TON more power.
you can try enabling HPET in your BIOS...
Hah, I wish! This is a laptop, so the BIOS is as brain dead and broken as is humanly possible.
Can I determine if I have the required hardware? So I can tell if I'm permanently screwed, or just temporarily.
Rgds
Signature · 5 lines
-- Pierre Ossman Linux kernel, MMC maintainer http://www.kernel.org PulseAudio, core developer http://pulseaudio.org rdesktop, core developer http://www.rdesktop.org
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Hi,
Quoted 7 lines · Pierre Ossman
Quoted 5 lines · Arjan van de Ven
no; c3 saves a TON more power.
you can try enabling HPET in your BIOS...
Quoted 5 lines
Hah, I wish! This is a laptop, so the BIOS is as brain dead and broken as is humanly possible.
Can I determine if I have the required hardware? So I can tell if I'm permanently screwed, or just temporarily.
http://lkml.org/lkml/2006/11/14/153
and related posts in this older thread
("CONFIG_NO_HZ: missed ticks, stall (keyb IRQ required) [2.6.18-rc4-mm1]") should help.
Andreas Mohr
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
In reply to Pierre OssmanQuoted 7 lines · Pierre Ossman
Quoted 5 lines · Arjan van de Ven
no; c3 saves a TON more power.
you can try enabling HPET in your BIOS...
Quoted 5 lines
Hah, I wish! This is a laptop, so the BIOS is as brain dead and broken as is humanly possible.
Can I determine if I have the required hardware? So I can tell if I'm permanently screwed, or just temporarily.
if it's something built in the last year or two you have the hw.
Signature · 2 lines
if you want to mail me at work (you don't), use arjan (at) linux.intel.com Test the interaction between Linux and your BIOS via http://www.linuxfirmwarekit.org
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
Quoted 3 lines · Arjan van de Ven
if it's something built in the last year or two you have the hw.
I have an ICH4-M, and from Intel's datasheets it looks like I got the short straw..
Signature · 5 lines
-- Pierre Ossman Linux kernel, MMC maintainer http://www.kernel.org PulseAudio, core developer http://pulseaudio.org rdesktop, core developer http://www.rdesktop.org
RE: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
In reply to Thomas GleixnerQuoted 34 lines
-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf Of Thomas Gleixner
Sent: Thursday, February 22, 2007 8:00 AM
To: Pierre Ossman
Cc: Arjan van de Ven; Jan Engelhardt; Luca Tettamanti; [email protected]
Subject: Re:NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]Quoted 1 line · Pierre Ossman
Quoted 1 line
Sure. My dmesg is full of mmc debug crud right now, but
I'll just reboot
Quoted 8 lines
Quoted 2 lines
and I'll have a clean one for you.
Here we go.
[ 44.498253] ACPI: Lid Switch [C136] [ 44.577672] No dock devices found. [ 44.714156] ACPI: CPU0 (power states: C1[C1] C2[C2] C3[C3])---------------------------------------------------------^^^^^
Here is the reason. The local APIC stops working in C3 state and we fall
back to the PIT in that case. Not really exciting for dynticks, but the only way to keep the system alive. There is a patch coming up from Intel, which finds out how to use HPET even if it is not enabled by the BIOS. This will still end up on IRQ#0, but will give way longer idle sleeps than the PIT.
Quoted 3 lines
tglx
Thomas,
I have the patchset for this HPET part ready to roll out. But, looks likeNO_HZ and lapic eventsource support is only in i386 and not in x86-64 in 2.6.21-rc1.
Do you know the state of NO_HZ x86-64 support?
Will it get into git soon? In which case I can rebase my patches against git
and send it out for review/testing.
Otherwise, I will send out my patches, which are against rt (and my initial
implementation of this HPET part is only for x86-64).
Thanks,
Venki
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
In reply to Jan EngelhardtQuoted 9 lines · Jan Engelhardt
Quoted 2 lines
Yes, we switch away from PIT and use the local APIC timer. (LOC)
What's the benefit of doing so - and why has not it been done before? I mean, I run a regular 2.6.18.6,
/sys/devices/system/clocksource/clocksource0/current_clocksource(is this related?) shows "acpi_pm", but the IRQ0 counter increases at HZ. Maybe I am confusing things, but why the need for PIT when clocksource isacpi_pmanyway?
acpi_pm is only a readout device to keep track of current time.
PIT and local APIC timer are used to provide either periodic or one shot programmable timer events.
Up to now the kernel started PIT and local APIC timer in parallel with the same period where PIT incremented jiffies and local APIC timer called update_process_times() and profile_tick. We changed this to let the boot cpu increment jiffies inside the local apic timer interrupt after PIT has been stopped. A whole interrupt for jiffies64++ is waste.
Also when we switch to nohz / high resolution mode, we want to use the local APIC, as it is much faster to access. The maximum delta to program is 27ms for the pit and ~1sec for the local APIC. This is important for dynticks, as we can achieve longer idle sleeps w/o reprogramming the timer.
tglx
David Miller
maintainerRe: NO_HZ: timer interrupt stuck
From: Thomas Gleixner <[email protected]>
Date: Thu, 22 Feb 2007 16:51:41 +0100
Quoted 8 lines
PIT and local APIC timer are used to provide either periodic or one shot programmable timer events.
Up to now the kernel started PIT and local APIC timer in parallel with the same period where PIT incremented jiffies and local APIC timer called
update_process_times()andprofile_tick. We changed this to let the boot cpu increment jiffies inside the local apic timer interrupt after PIT has been stopped. A whole interrupt for jiffies64++ is waste.
BTW, I'm adding support for sparc64, and before I get much further will the code handle a oneshot-only device? That's basically what I have (sparc64 basically has a TSC and a "comparison" register, you write the "comparison" register with the TSC value at which you'd like the timer interrupt to occur, so it's one-shot and you have to write it again to get the next timer).
I see logic in the generic code to do periodic events when the timer only provides one-shot ticks. But as far as I can tell both the HPET and the local APIC support periodic timers so I can't tell how much testing that code has gotten :-)
I, in fact, don't see any clockevent device in the current tree that does not set CLOCK_EVT_FEAT_PERIODIC.
I guess you could clear that bit just to test those generic code paths. :-)
BTW, sparc64 always did the trick where the do_timer() work was done by one of the per-cpu local timer interrupts, I'm glad the idea gained traction generically. :-)))
Re: NO_HZ: timer interrupt stuck
Quoted 6 lines · David Miller
BTW, I'm adding support for sparc64, and before I get much further will the code handle a oneshot-only device? That's basically what I have (sparc64 basically has a TSC and a "comparison" register, you write the "comparison" register with the TSC value at which you'd like the timer interrupt to occur, so it's one-shot and you have to write it again to get the next timer).
Yes, all you need is to omit the CLOCK_EVT_FEAT_PERIODIC flag when you register your device.
Quoted 4 lines
I see logic in the generic code to do periodic events when the timer only provides one-shot ticks. But as far as I can tell both the HPET and the local APIC support periodic timers so I can't tell how much testing that code has gotten :-)
Not much :)
Quoted 2 lines
I, in fact, don't see any clockevent device in the current tree that does not set
CLOCK_EVT_FEAT_PERIODIC.
There is an ARM patch which makes use of it.
Quoted 2 lines
I guess you could clear that bit just to test those generic code paths. :-)
yep.
Quoted 3 lines
BTW, sparc64 always did the trick where the
do_timer()work was done by one of the per-cpu local timer interrupts, I'm glad the idea gained traction generically. :-)))
:)
tglx
David Miller
maintainerRe: NO_HZ: timer interrupt stuck
From: Thomas Gleixner <[email protected]>
Date: Thu, 22 Feb 2007 18:39:19 +0100
Quoted 10 lines · David Miller
Quoted 6 lines
BTW, I'm adding support for sparc64, and before I get much further will the code handle a oneshot-only device? That's basically what I have (sparc64 basically has a TSC and a "comparison" register, you write the "comparison" register with the TSC value at which you'd like the timer interrupt to occur, so it's one-shot and you have to write it again to get the next timer).
Yes, all you need is to omit the
CLOCK_EVT_FEAT_PERIODICflag when you register your device.
Thanks a lot Thomas.
I noticed while doing this work that the generic clock code is incompatible with the time interpolator, since both provide a do_{get,set}timeofday() implementation. Just FYI...
sparc generic time / clockevents [ was Re: NO_HZ: timer interrupt stuck ]
David,
<trimmed CC due to sparcness, added John instaed >
Quoted 8 lines · David Miller
Quoted 2 lines
Yes, all you need is to omit the
CLOCK_EVT_FEAT_PERIODICflag when you register your device.Thanks a lot Thomas.
I noticed while doing this work that the generic clock code is incompatible with the time interpolator, since both provide a do_{get,set}timeofday() implementation. Just FYI...
John, can you have a look at this ?
tglx
David Miller
maintainerRe: sparc generic time / clockevents
From: Thomas Gleixner <[email protected]>
Date: Fri, 23 Feb 2007 10:56:18 +0100
Quoted 11 lines · David Miller
Quoted 8 lines
Quoted 2 lines
Yes, all you need is to omit the
CLOCK_EVT_FEAT_PERIODICflag when you register your device.Thanks a lot Thomas.
I noticed while doing this work that the generic clock code is incompatible with the time interpolator, since both provide a do_{get,set}timeofday() implementation. Just FYI...
John, can you have a look at this ?
Note we may not care :-) All the interpolator does is provide a generic tick based gettimeofday implementation, and the generic clock code does essentially the same thing.
And the generic clock code must in fact provide the implementations in order to deal with dyntick issues.
The only other platform using the time interpolator is IA64, and after my dyntick implementation on sparc64 the one and only user will be IA64 :-)
Re: sparc generic time / clockevents
Quoted 19 lines · David Miller
From: Thomas Gleixner <[email protected]>
Date: Fri, 23 Feb 2007 10:56:18 +0100Quoted 11 lines · David Miller
Quoted 8 lines
Quoted 2 lines
Yes, all you need is to omit the
CLOCK_EVT_FEAT_PERIODICflag when you register your device.Thanks a lot Thomas.
I noticed while doing this work that the generic clock code is incompatible with the time interpolator, since both provide a do_{get,set}timeofday() implementation. Just FYI...
John, can you have a look at this ?
Note we may not care :-) All the interpolator does is provide a generic tick based gettimeofday implementation, and the generic clock code does essentially the same thing.
Quoted 6 lines
And the generic clock code must in fact provide the implementations in order to deal with dyntick issues.
The only other platform using the time interpolator is IA64, and after my dyntick implementation on sparc64 the one and only user will be IA64 :-)
Yea. I actually have some in-progress patches from Peter Keilty that convert ia64 and sparc64 time_interpolators to clocksources, then removes the time_interpolator code.
The ia64 conversion is more complicated due to the fsyscall asm, but I think the sparc64 conversion (below) is pretty straight forward. I've only built tested this, so I have no clue if it actually works.
Any thoughts?
thanks
-john
From: Peter Keilty <[email protected]>
Initial sparc64 conversion to generic clocksource/timekeeping code.
Kconfig | 2 +- defconfig | 2 +- kernel/time.c | 34 +++++++++++++++++++++++----------- 3 files changed, 25 insertions(+), 13 deletions(-)
linux-2.6.21-rc1_timeofday-arch-sparc64_C7.patch
============================================
arch/sparc64/Kconfig +1 -1
@@ -34,7 +34,7 @@ config LOCKDEP_SUPPORT bool default y -config TIME_INTERPOLATION +config GENERIC_TIME bool default y
arch/sparc64/defconfig +1 -1
@@ -9,7 +9,7 @@ CONFIG_64BIT=y CONFIG_MMU=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_LOCKDEP_SUPPORT=y -CONFIG_TIME_INTERPOLATION=y +CONFIG_GENERIC_TIME=y CONFIG_ARCH_MAY_HAVE_PC_FDC=y # CONFIG_ARCH_HAS_ILOG2_U32 is not set # CONFIG_ARCH_HAS_ILOG2_U64 is not set
arch/sparc64/kernel/time.c +23 -11
@@ -31,6 +31,7 @@ #include <linux/percpu.h>#include <linux/profile.h> #include <linux/miscdevice.h> #include <linux/rtc.h> +#include <linux/clocksource.h> #include <asm/oplib.h> #include <asm/mostek.h>
@@ -620,7 +621,7 @@ #endifif (!mregs && !dregs) {prom_printf ("Something wrong, clock regs not mapped yet.\n" );prom_halt (); - } + }if (mregs) {spin_lock_irq (&mostek_lock);
@@ -820,7 +821,7 @@ #endif }set_system_time (); - +local_irq_restore (flags);return 0 ;
@@ -975,22 +976,33 @@ static struct notifier_block sparc64_cpu#endif /* CONFIG_CPU_FREQ */ -static struct time_interpolator sparc64_cpu_interpolator = { - .source =TIME_SOURCE_CPU , - .shift =16 , - .mask =0xffffffffffffffffLL +static cycle_t read_sparc64_cpuclock (void ) +{ +return (cycle_t )get_cycles (); +} + +static struct clocksource clocksource_sparc64_cpuclock = { + .name ="sparc64_cpuclock" , + .rating =300 , + .read = read_sparc64_cpuclock, + .mask =0xffffffffffffffffLL , + .mult =0 ,/*to be caluclated*/ + .shift =16 , + .flags =CLOCK_SOURCE_IS_CONTINUOUS , }; +/* The quotient formula is taken from the IA64 port. */ #define SPARC64_NSEC_PER_CYC_SHIFT 10ULvoid __init time_init (void ) {unsigned long clock =sparc64_init_timers (); - sparc64_cpu_interpolator.frequency = clock; -register_time_interpolator (&sparc64_cpu_interpolator); + clocksource_sparc64_cpuclock.mult =clocksource_hz2mult (clock, + clocksource_sparc64_cpuclock.shift); +clocksource_register (&clocksource_sparc64_cpuclock); -/* Now that the interpolator is registered, it is +/* Now that the clocksource is registered, it is * safe to start the timer ticking. */ sparc64_start_timers ();
@@ -1025,11 +1037,11 @@ #endifunsigned long flags;u8 tmp; -/* +/* * Not having a register set can lead to trouble. * Also starfire doesn't have a tod clock. */ -if (!mregs && !dregs) +if (!mregs && !dregs)return -1 ;if (mregs) {
Re: sparc generic time / clockevents
Quoted 42 lines · john stultz
Quoted 26 lines · David Miller
From: Thomas Gleixner <[email protected]>
Date: Fri, 23 Feb 2007 10:56:18 +0100Quoted 7 lines · David Miller
Quoted 6 lines
Quoted 6 lines
Yes, all you need is to omit the
CLOCK_EVT_FEAT_PERIODICflag when you register your device.Quoted 10 lines
Quoted 7 lines
Thanks a lot Thomas.
I noticed while doing this work that the generic clock code is incompatible with the time interpolator, since both provide a do_{get,set}timeofday() implementation. Just FYI...
John, can you have a look at this ?
Note we may not care :-) All the interpolator does is provide a generic tick based gettimeofday implementation, and the generic clock code does essentially the same thing.
Quoted 8 lines
And the generic clock code must in fact provide the implementations in order to deal with dyntick issues.
The only other platform using the time interpolator is IA64, and after my dyntick implementation on sparc64 the one and only user will be IA64 :-)
Yea. I actually have some in-progress patches from Peter Keilty that convert ia64 and sparc64
time_interpolatorsto clocksources, then removes thetime_interpolatorcode.
Quoted 7 lines
The ia64 conversion is more complicated due to the fsyscall asm, but I think the sparc64 conversion (below) is pretty straight forward. I've only built tested this, so I have no clue if it actually works.
Any thoughts?
I have only build tested also, I thought it was pretty straight forward.
Quoted 134 lines
thanks
-johnFrom: Peter Keilty <[email protected]>
Initial sparc64 conversion to generic clocksource/timekeeping code.
Signed-off-by Peter Keilty <[email protected]>Signed-off-by John Stultz <[email protected]>Kconfig | 2 +- defconfig | 2 +- kernel/time.c | 34 +++++++++++++++++++++++----------- 3 files changed, 25 insertions(+), 13 deletions(-)linux-2.6.21-rc1_timeofday-arch-sparc64_C7.patch
============================================arch/sparc64/Kconfig +1
-1@@ -34,7 +34,7 @@ config LOCKDEP_SUPPORT bool default y -config TIME_INTERPOLATION +config GENERIC_TIME bool default yarch/sparc64/defconfig +0
-0@@ -9,7 +9,7 @@ CONFIG_64BIT=y
CONFIG_MMU=yCONFIG_STACKTRACE_SUPPORT=yCONFIG_LOCKDEP_SUPPORT=yarch/sparc64/defconfig +1
-1-CONFIG_TIME_INTERPOLATION=y +CONFIG_GENERIC_TIME=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
#CONFIG_ARCH_HAS_ILOG2_U32is not set
#CONFIG_ARCH_HAS_ILOG2_U64is not setarch/sparc64/kernel/time.c +23
-11@@ -31,6 +31,7 @@ #include <linux/percpu.h>#include <linux/profile.h> #include <linux/miscdevice.h> #include <linux/rtc.h> +#include <linux/clocksource.h> #include <asm/oplib.h> #include <asm/mostek.h> @@ -620,7 +621,7 @@ #endifif (!mregs && !dregs) {prom_printf ("Something wrong, clock regs not mapped yet.\n" );prom_halt (); - } + }if (mregs) {spin_lock_irq (&mostek_lock);@@ -820,7 +821,7 @@ #endif }set_system_time (); - +local_irq_restore (flags);return 0 ;@@ -975,22 +976,33 @@ static struct notifier_block sparc64_cpu#endif /* CONFIG_CPU_FREQ */ -static struct time_interpolator sparc64_cpu_interpolator = { - .source =TIME_SOURCE_CPU , - .shift =16 , - .mask =0xffffffffffffffffLL +static cycle_t read_sparc64_cpuclock (void ) +{ +return (cycle_t )get_cycles (); +} + +static struct clocksource clocksource_sparc64_cpuclock = { + .name ="sparc64_cpuclock" , + .rating =300 , + .read = read_sparc64_cpuclock, + .mask =0xffffffffffffffffLL , + .mult =0 ,/*to be caluclated*/ + .shift =16 , + .flags =CLOCK_SOURCE_IS_CONTINUOUS , }; +/* The quotient formula is taken from the IA64 port. */ #define SPARC64_NSEC_PER_CYC_SHIFT 10ULvoid __init time_init (void ) {unsigned long clock =sparc64_init_timers (); - sparc64_cpu_interpolator.frequency = clock; -register_time_interpolator (&sparc64_cpu_interpolator); + clocksource_sparc64_cpuclock.mult =clocksource_hz2mult (clock, + clocksource_sparc64_cpuclock.shift); +clocksource_register (&clocksource_sparc64_cpuclock); -/* Now that the interpolator is registered, it is +/* Now that the clocksource is registered, it is * safe to start the timer ticking. */ sparc64_start_timers ();@@ -1025,11 +1037,11 @@ #endifunsigned long flags;u8 tmp; -/* +/* * Not having a register set can lead to trouble. * Also starfire doesn't have a tod clock. */ -if (!mregs && !dregs) +if (!mregs && !dregs)return -1 ;if (mregs) {
David Miller
maintainerRe: sparc generic time / clockevents
In reply to john stultzFrom: john stultz <[email protected]>
Date: Fri, 23 Feb 2007 11:51:18 -0800
Quoted 9 lines
Yea. I actually have some in-progress patches from Peter Keilty that convert ia64 and sparc64
time_interpolatorsto clocksources, then removes thetime_interpolatorcode.The ia64 conversion is more complicated due to the fsyscall asm, but I think the sparc64 conversion (below) is pretty straight forward. I've only built tested this, so I have no clue if it actually works.
Any thoughts?
Hey John, I had to do this already in order to do the dynticks port to sparc64, but nice to see another attempt :-)
Two things I did on my side:
+ .mask = 0xffffffffffffffffLL,
I used CLOCKSOURCE_MASK(64) here.
+static cycle_t read_sparc64_cpuclock(void)
+{
+ return (cycle_t)get_cycles();
+}
...
+ .read = read_sparc64_cpuclock,
You can just directly assign tick_ops->get_tick to .read at run-time to avoid a stack frame and function call/return.
+ .shift = 16,
These shift selections all seem rather arbitrary.
If it's not an arbitrary selection, it would be nice to have some comments about how to go about choosing an appropriate shift. I imagine the selections has to do with the possible range of the frequencies the clocksource supports, and how much accuracy you get for certain shift selections given that range.
Re: sparc generic time / clockevents
Quoted 7 lines · David Miller
From: john stultz <[email protected]>
Date: Fri, 23 Feb 2007 11:51:18 -0800Quoted 4 lines
Yea. I actually have some in-progress patches from Peter Keilty that convert ia64 and sparc64
time_interpolatorsto clocksources, then removes thetime_interpolatorcode.
Quoted 8 lines
Quoted 5 lines
The ia64 conversion is more complicated due to the fsyscall asm, but I think the sparc64 conversion (below) is pretty straight forward. I've only built tested this, so I have no clue if it actually works.
Any thoughts?
Hey John, I had to do this already in order to do the dynticks port to sparc64, but nice to see another attempt :-)
Oh! Well, sorry for not sending it out earlier, then!
Quoted 5 lines
Two things I did on my side:
arch/sparc64/kernel/time.c +1
-0+ .mask = 0xffffffffffffffffLL,I used
CLOCKSOURCE_MASK(64)here.
Yep. That's better.
Quoted 9 lines
arch/sparc64/kernel/time.c +5
-0+static cycle_t read_sparc64_cpuclock (void ) +{ +return (cycle_t )get_cycles (); +} + .read = read_sparc64_cpuclock,You can just directly assign
tick_ops->get_tickto .read at run-time to avoid a stack frame and function call/return.
Cool.
Quoted 9 lines
arch/sparc64/kernel/time.c +1
-0+ .shift = 16,These shift selections all seem rather arbitrary.
If it's not an arbitrary selection, it would be nice to have some comments about how to go about choosing an appropriate shift. I imagine the selections has to do with the possible range of the frequencies the clocksource supports, and how much accuracy you get for certain shift selections given that range.
Correct. The higher the shift value, the more precise NTP multiplier adjustment we can make. However, too large w/ a high frequency clocksource and you'll risk overflowing 64bits on the mult.
Although that's not super critical anymore since Roman implemented the high-res error accounting, the net effect should be the same over the long term(we just have to work harder w/ courser adjustments - resulting in very small clock frequency oscillations).
I do need to get some documentation going. I had some back when I first started pushing the changes, but so much was revised and rewritten it stopped being correct.
-john
David Miller
maintainerRe: sparc generic time / clockevents
From: john stultz <[email protected]>
Date: Fri, 23 Feb 2007 16:53:27 -0800
Quoted 15 lines · David Miller
Quoted 9 lines
arch/sparc64/kernel/time.c +1
-0+ .shift = 16,These shift selections all seem rather arbitrary.
If it's not an arbitrary selection, it would be nice to have some comments about how to go about choosing an appropriate shift. I imagine the selections has to do with the possible range of the frequencies the clocksource supports, and how much accuracy you get for certain shift selections given that range.
Correct. The higher the shift value, the more precise NTP multiplier adjustment we can make. However, too large w/ a high frequency clocksource and you'll risk overflowing 64bits on the mult.
Quoted 4 lines
Although that's not super critical anymore since Roman implemented the high-res error accounting, the net effect should be the same over the long term(we just have to work harder w/ courser adjustments - resulting in very small clock frequency oscillations).
While we were discussing this I was debugging my clocksource sparc64 implementation, a shift of 32 didn't work whereas one of 16 (as in your version of sparc64 support) did. :-)
There is also a very unfortunate inconsistency between how the shift and multiplier are used in clock sources vs. clock events.
You can initialize your clocksource multiplier using:
mult = clocksource_hz2mult(ticks_per_hz, SHIFT);
but WOE BE TO HE who tries to use that for clockevents (like I did initially) :-) You have to instead use something like:
mult = div_sc(ticks_per_hz, NSEC_PER_SEC, SHIFT);
I would have been done with the sparc64 dynticks support yesterday if I didn't trip over all this stuff.
It also isn't clear from the comments that the first argument to clocksource_hz2mult() and div_sc() is indeed "ticks_per_hz". I had to gleen over the hpet and LAPIC drivers to kind of figure this out. Another potential improvement for the comments :-)
David Miller
maintainergeneric one-shot bug (was Re: sparc generic time / clockevents)
In reply to David MillerAs I suspected, the one-shot code wasn't very well tested and I'd be the one to debug this thing on sparc64 :-)
When a timer exceeds the timer period, the one-shot handling code does the following loop:
for (;;) {
ktime_t next = ktime_add(dev->next_event, tick_period);
if (!clockevents_program_event(dev, next, ktime_get()))
return;
tick_periodic(cpu);
}So it just keeps running tick_periodic() until we "catch up".
Problem is, if clockevents_program_event() gets a "next" time in the past, the very case where we'll loop, it DOES NOT update dev->next_event. It returns the error before doing so.
As a result of this, we'll loop forever here, the softlockup watchdog will trigger, and the system will wedge completely.
I was getting a softlockup and immediate system hang, so to debug this I kept a history of the last 8 TSC values when tick_periodic() was invoked. At softlockup trigger, I'd dump the log. And what I saw were TSC deltas that we so tiny as to be just enough to indicate tick_periodic() was running in a tight loop :-)
I propose the following fix, which I'm about to test.
kernel/time/tick-common.c +3 -2
@@ -77,6 +77,7 @@ static void tick_periodic(int cpu)void tick_handle_periodic (struct clock_event_device *dev) {int cpu =smp_processor_id (); +ktime_t next;tick_periodic (cpu);
@@ -86,12 +87,12 @@ void tick_handle_periodic(struct clock_event_device *dev)* Setup the next period for devices, which do not have * periodic mode: */ + next =ktime_add (dev->next_event, tick_period);for (;;) { -ktime_t next =ktime_add (dev->next_event, tick_period); -if (!clockevents_program_event (dev, next,ktime_get ()))return ;tick_periodic (cpu); + next =ktime_add (next, tick_period); } }
Thomas Gleixner
Acked-byRe: generic one-shot bug (was Re: sparc generic time / clockevents)
Quoted 14 lines · David Miller
As I suspected, the one-shot code wasn't very well tested and I'd be the one to debug this thing on sparc64 :-)
When a timer exceeds the timer period, the one-shot handling code does the following loop:
for (;;) { ktime_t next = ktime_add(dev->next_event, tick_period); if (!clockevents_program_event(dev, next, ktime_get())) return; tick_periodic(cpu); }
Quoted 5 lines
So it just keeps running
tick_periodic()until we "catch up".Problem is, if
clockevents_program_event()gets a "next" time in the past, the very case where we'll loop, it DOES NOT updatedev->next_event. It returns the error before doing so.
Yep, that's caused by a late change for the *!&#ed broadcast stuff for x86.
Quoted 10 lines
As a result of this, we'll loop forever here, the softlockup watchdog will trigger, and the system will wedge completely.
I was getting a softlockup and immediate system hang, so to debug this I kept a history of the last 8 TSC values when
tick_periodic()was invoked. At softlockup trigger, I'd dump the log. And what I saw were TSC deltas that we so tiny as to be just enough to indicatetick_periodic()was running in a tight loop :-)I propose the following fix, which I'm about to test.
Yep
Quoted 1 line
Signed-off-by David S. Miller <[email protected]>
Quoted 27 lines
kernel/time/tick-common.c +3
-2@@ -77,6 +77,7 @@ static void tick_periodic(int cpu)void tick_handle_periodic (struct clock_event_device *dev) {int cpu =smp_processor_id (); +ktime_t next;tick_periodic (cpu);@@ -86,12 +87,12 @@ void tick_handle_periodic(struct clock_event_device *dev)* Setup the next period for devices, which do not have * periodic mode: */ + next =ktime_add (dev->next_event, tick_period);for (;;) { -ktime_t next =ktime_add (dev->next_event, tick_period); -if (!clockevents_program_event (dev, next,ktime_get ()))return ;tick_periodic (cpu); + next =ktime_add (next, tick_period); } }
Re: NO_HZ: timer interrupt stuck
In reply to David MillerQuoted 4 lines · David Miller
BTW, sparc64 always did the trick where the
do_timer()work was done by one of the per-cpu local timer interrupts, I'm glad the idea gained traction generically. :-)))
It was already implemented before for x86-64, but disabled by default because it ran into some platform issues. The new code hopefully knows now how to work around them.
-Andi
Re: NO_HZ: timer interrupt stuck [Re: Linux 2.6.21-rc1]
In reply to Thomas GleixnerQuoted 7 lines · Thomas Gleixner
Quoted 5 lines
Interrupt 0 is stuck at 114 (the number is consistent across reboots). I don't experience any problem, time is running fine. Still it's strange that the timer is doing nothing; maybe something other than the PIT is used for time keeping?
Yes, we switch away from PIT and use the local APIC timer. (LOC)
Before this becomes a FAQ. Would anybody mind if I just renamed "timer" to "pit" to make this clear?
-Andi
Re: Linux 2.6.21-rc1 -- suspend
In reply to Linus TorvaldsHi!
Quoted 5 lines
Ok, the merge window for 2.6.21 has closed, and -rc1 is out there.
There's a lot of changes, as is usual for an -rc1 thing, but at least so far it would seem that 2.6.20 has been a good base, and I don't think we have anything *really* scary here.
And lot of acpi/suspend changes, which seem to break my machine in weird and not really reproducible way. I'm looking onto that.
(Yep, that should teach me to test -mm a bit more).
Pavel
Signature · 2 lines
(english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
2.6.21-rc1: known regressions (part 1)
In reply to Linus TorvaldsThis email lists some known regressions in 2.6.21-rc1 compared to 2.6.20 that are not yet fixed in Linus' tree.
If you find your name in the Cc header, you are either submitter of one of the bugs, maintainer of an affectected subsystem or driver, a patch of you caused a breakage or I'm considering you in any other way possibly involved with one or more of these issues.
Due to the huge amount of recipients, please trim the Cc when answering.
Subject : resume: slab error in verify_redzone_free(): cache `size-512':
memory outside object was overwritten
References : http://lkml.org/lkml/2007/2/24/41
Submitter : Pavel Machek <[email protected]>
Status : unknown
Subject : ThinkPad T60: no screen after suspend to RAM
References : http://lkml.org/lkml/2007/2/22/391
Submitter : Michael S. Tsirkin <[email protected]>
Status : unknown
Subject : HP nx6325 notebook: usb mouse stops working after suspend to ram
References : http://lkml.org/lkml/2007/2/21/413
Submitter : Arkadiusz Miskiewicz <[email protected]>
commit 0a6139027f3986162233adc17285151e78b39cac
Status : unknown
Subject : MacBook: AE_NOT_FOUND ACPI messages
References : http://bugzilla.kernel.org/show_bug.cgi?id=8066
Submitter : Thomas Meyer <[email protected]>
Status : unknown
Subject : Asus A8N-VM motherboard: boot failure (ACPI related)
References : http://lkml.org/lkml/2007/2/23/132
Submitter : Andrew <[email protected]>
Status : unknown
Subject : Asus M6Ne notebook: ACPI: First battery is not detected
References : http://bugzilla.kernel.org/show_bug.cgi?id=8080
Submitter : Janosch Machowinski <[email protected]>
Status : unknown
Subject : Asus M6Ne/M6A notebooks: SATA_ACPI errors during kernel boot
References : http://bugzilla.kernel.org/show_bug.cgi?id=8080
http://bugzilla.kernel.org/show_bug.cgi?id=8046
Submitter : Janosch Machowinski <[email protected]>
Lukas Hejtmanek <[email protected]>
Status : unknown
Subject : ata-piix ACPI errors (40/80 pin cable mix)
References : http://lkml.org/lkml/2007/2/22/159
Submitter : Meelis Roos <[email protected]>
Status : unknown
Subject : ata_piix: PATA UDMA/100 configured as UDMA/33
References : http://lkml.org/lkml/2007/2/20/294
Submitter : Fabio Comolli <[email protected]>
Status : unknown
Subject : sata_via failure
References : http://bugzilla.kernel.org/show_bug.cgi?id=8025
Submitter : Jean-Luc Coulon <[email protected]>
Markus Trippelsdorf <[email protected]>
Patch : http://www.mail-archive.com/[email protected]/msg03945.html
Status : patch available
Subject : BUG: at drivers/pci/pci.c:817 pcim_enable_device() (suspend, ata)
References : http://lkml.org/lkml/2007/2/14/275
http://lkml.org/lkml/2007/2/22/367
Submitter : Rafael J. Wysocki <[email protected]>
Lukas Hejtmanek <[email protected]>
Patch : http://lkml.org/lkml/2007/2/25/102
Status : patch available
regression: forcedeth.c hang
Quoted 2 lines · Adrian Bunk
This email lists some known regressions in 2.6.21-rc1 compared to 2.6.20 that are not yet fixed in Linus' tree.
just found a new one: forcedeth.c broke since v2.6.20. It generates a few irqs after ifup and then stops dead (no in/out packets). Undoing all of these commits fixes the problem:
commit 21828163b2b31e0675cb3e66a2a4a231dec06236
commit 57fff6986b6daae13947c565786757c05303f0f6
commit 4e16ed1b0e17a3832310031e2ddaeb0914eb837d
commit f0734ab658390380079369f7090dcf7aa226f394
commit b01867cbd1853995946c8c838eff93a0885d8bc6
commit 445583b89d71b48cf8c64e26acc5a710248feed7
commit aaa37d2d099f97ced415546e285ac901e47a2437
commit 86b22b0dfbf462e6ed75e54fc83575dae01e3c69
commit 0d63fb32b2b8c3464d9c1afc3ce3fd3ceec025b6
commit 164a86e40e6c74ec5a91c364ccf7b1a2295b0a52
commit 761fcd9e3e0aa2a02231d1631f31409be5e890d2
commit d2f7841277d8613a780ab28d04d8f31a31816153
commit 1d39ed565cfcc7c4fe586de621aef495c4f94ffb
that's 75K of delta - i'll bisect it some more. Hardware in question:
00:0a.0 Bridge: nVidia Corporation CK804 Ethernet Controller (rev a3)
config options:
CONFIG_FORCEDETH=y
CONFIG_FORCEDETH_NAPI=y
Ingo
Re: regression: forcedeth.c hang
Quoted 21 lines · Ingo Molnar
Quoted 2 lines
This email lists some known regressions in 2.6.21-rc1 compared to 2.6.20 that are not yet fixed in Linus' tree.
just found a new one:
forcedeth.cbroke since v2.6.20. It generates a few irqs after ifup and then stops dead (no in/out packets). Undoing all of these commits fixes the problem:commit
21828163b2b31e0675cb3e66a2a4a231dec06236
commit57fff6986b6daae13947c565786757c05303f0f6
commit4e16ed1b0e17a3832310031e2ddaeb0914eb837d
commitf0734ab658390380079369f7090dcf7aa226f394
commitb01867cbd1853995946c8c838eff93a0885d8bc6
commit445583b89d71b48cf8c64e26acc5a710248feed7
commitaaa37d2d099f97ced415546e285ac901e47a2437
commit86b22b0dfbf462e6ed75e54fc83575dae01e3c69
commit0d63fb32b2b8c3464d9c1afc3ce3fd3ceec025b6
commit164a86e40e6c74ec5a91c364ccf7b1a2295b0a52
commit761fcd9e3e0aa2a02231d1631f31409be5e890d2
commitd2f7841277d8613a780ab28d04d8f31a31816153
commit1d39ed565cfcc7c4fe586de621aef495c4f94ffb
Quoted 8 lines
that's 75K of delta - i'll bisect it some more. Hardware in question:
00:0a.0 Bridge: nVidia Corporation CK804 Ethernet Controller (rev a3)
config options:
CONFIG_FORCEDETH=y
CONFIG_FORCEDETH_NAPI=y
git bisection gives:
| 0d63fb32b2b8c3464d9c1afc3ce3fd3ceec025b6 is first bad commit | commit 0d63fb32b2b8c3464d9c1afc3ce3fd3ceec025b6 | Author: Ayaz Abdulla <[email protected]> | Date: Tue Jan 9 13:30:13 2007 -0500 | | forcedeth: rx skb recycle | | This patch removes the code that recycled the skb on error. This will | help in reducing the branches in the main data paths. | | Signed-Off-By: Ayaz Abdulla <[email protected]> | | Signed-off-by: Jeff Garzik <[email protected]> | | :040000 040000 0e4cb0aa12ba1df6a7ca84da697c75082b449ece b70edcf390d63ac9e0b35d2aea7b59efe2bfeaea M drivers
but i think this is simply the first commit that makes the driver essentially non-bisectable - the failures in interim iterations changed from 'interface unusable' to boot hangs that were either forcedeth tx ring timeouts, or hangs after nv_sata initialization. I've attached the full .config below.
Ingo
-------------------------->
#
# Automatically generated make config: don't edit # Linux kernel version: 2.6.21-rc1-syslet-v5
# Tue Feb 27 09:46:29 2007
#CONFIG_X86_32=yCONFIG_GENERIC_TIME=y CONFIG_CLOCKSOURCE_WATCHDOG=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y CONFIG_LOCKDEP_SUPPORT=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_SEMAPHORE_SLEEPERS=yCONFIG_X86=yCONFIG_MMU=yCONFIG_ZONE_DMA=yCONFIG_ASYNC_SUPPORT=yCONFIG_GENERIC_ISA_DMA=yCONFIG_GENERIC_IOMAP=yCONFIG_GENERIC_BUG=yCONFIG_GENERIC_HWEIGHT=y CONFIG_ARCH_MAY_HAVE_PC_FDC=yCONFIG_DMI=y CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
#
# Code maturity level options
#CONFIG_EXPERIMENTAL=yCONFIG_LOCK_KERNEL=yCONFIG_INIT_ENV_ARG_LIMIT=32
#
# General setup
#CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not setCONFIG_SWAP=yCONFIG_SYSVIPC=y
# CONFIG_IPC_NS is not setCONFIG_SYSVIPC_SYSCTL=yCONFIG_POSIX_MQUEUE=yCONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not setCONFIG_TASKSTATS=yCONFIG_TASK_DELAY_ACCT=y
# CONFIG_TASK_XACCT is not set
# CONFIG_UTS_NS is not setCONFIG_AUDIT=yCONFIG_AUDITSYSCALL=y
# CONFIG_IKCONFIG is not setCONFIG_CPUSETS=yCONFIG_SYSFS_DEPRECATED=yCONFIG_RELAY=yCONFIG_INITRAMFS_SOURCE=""CONFIG_CC_OPTIMIZE_FOR_SIZE=yCONFIG_SYSCTL=y
# CONFIG_EMBEDDED is not setCONFIG_UID16=yCONFIG_SYSCTL_SYSCALL=yCONFIG_KALLSYMS=yCONFIG_KALLSYMS_ALL=yCONFIG_KALLSYMS_EXTRA_PASS=yCONFIG_HOTPLUG=yCONFIG_PRINTK=yCONFIG_BUG=yCONFIG_ELF_CORE=yCONFIG_BASE_FULL=yCONFIG_FUTEX=yCONFIG_EPOLL=yCONFIG_SHMEM=yCONFIG_SLAB=yCONFIG_VM_EVENT_COUNTERS=yCONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not setCONFIG_BASE_SMALL=0
# CONFIG_SLOB is not set
#
# Loadable module support
#CONFIG_MODULES=yCONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not setCONFIG_MODVERSIONS=yCONFIG_MODULE_SRCVERSION_ALL=yCONFIG_KMOD=yCONFIG_STOP_MACHINE=y
#
# Block layer
#CONFIG_BLOCK=yCONFIG_LBD=yCONFIG_BLK_DEV_IO_TRACE=yCONFIG_LSF=y
#
# IO Schedulers
#CONFIG_IOSCHED_NOOP=yCONFIG_IOSCHED_AS=yCONFIG_IOSCHED_DEADLINE=yCONFIG_IOSCHED_CFQ=y
# CONFIG_DEFAULT_AS is not setCONFIG_DEFAULT_DEADLINE=y
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not setCONFIG_DEFAULT_IOSCHED="deadline"
#
# Processor type and features
#
# CONFIG_TICK_ONESHOT is not set
# CONFIG_NO_HZ is not set
# CONFIG_HIGH_RES_TIMERS is not setCONFIG_SMP=y
# CONFIG_X86_PC is not set
# 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 setCONFIG_X86_GENERICARCH=y
# CONFIG_X86_ES7000 is not setCONFIG_PARAVIRT=y
# CONFIG_VMI is not setCONFIG_X86_CYCLONE_TIMER=y
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not setCONFIG_M686=y
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
# CONFIG_MCORE2 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_MGEODE_LX is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not setCONFIG_X86_GENERIC=yCONFIG_X86_CMPXCHG=yCONFIG_X86_L1_CACHE_SHIFT=7CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not setCONFIG_GENERIC_CALIBRATE_DELAY=yCONFIG_X86_PPRO_FENCE=yCONFIG_X86_WP_WORKS_OK=yCONFIG_X86_INVLPG=yCONFIG_X86_BSWAP=yCONFIG_X86_POPAD_OK=yCONFIG_X86_CMPXCHG64=yCONFIG_X86_GOOD_APIC=yCONFIG_X86_INTEL_USERCOPY=yCONFIG_X86_USE_PPRO_CHECKSUM=yCONFIG_X86_TSC=yCONFIG_HPET_TIMER=yCONFIG_HPET_EMULATE_RTC=yCONFIG_NR_CPUS=32CONFIG_SCHED_SMT=yCONFIG_SCHED_MC=y
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not setCONFIG_PREEMPT=yCONFIG_PREEMPT_BKL=yCONFIG_X86_LOCAL_APIC=yCONFIG_X86_IO_APIC=yCONFIG_X86_MCE=y
# CONFIG_X86_MCE_NONFATAL is not setCONFIG_X86_MCE_P4THERMAL=yCONFIG_VM86=yCONFIG_TOSHIBA=mCONFIG_I8K=m
# CONFIG_X86_REBOOTFIXUPS is not setCONFIG_MICROCODE=mCONFIG_MICROCODE_OLD_INTERFACE=yCONFIG_X86_MSR=mCONFIG_X86_CPUID=m
#
# Firmware Drivers
#CONFIG_EDD=mCONFIG_EFI_VARS=yCONFIG_DELL_RBU=mCONFIG_DCDBAS=m
# CONFIG_NOHIGHMEM is not setCONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not setCONFIG_PAGE_OFFSET=0xC0000000CONFIG_HIGHMEM=yCONFIG_ARCH_POPULATES_NODE_MAP=yCONFIG_SELECT_MEMORY_MODEL=yCONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not setCONFIG_FLATMEM=yCONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_SPARSEMEM_STATIC is not setCONFIG_SPLIT_PTLOCK_CPUS=4CONFIG_RESOURCES_64BIT=yCONFIG_ZONE_DMA_FLAG=1
# CONFIG_HIGHPTE is not set
# CONFIG_MATH_EMULATION is not setCONFIG_MTRR=yCONFIG_EFI=y
# CONFIG_IRQBALANCE is not setCONFIG_BOOT_IOREMAP=y
# CONFIG_SECCOMP is not set
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not setCONFIG_HZ_1000=yCONFIG_HZ=1000CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not setCONFIG_PHYSICAL_START=0x100000
# CONFIG_RELOCATABLE is not setCONFIG_PHYSICAL_ALIGN=0x100000CONFIG_HOTPLUG_CPU=yCONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
#
# Power management options (ACPI, APM)
#CONFIG_PM=yCONFIG_PM_LEGACY=y
# CONFIG_PM_DEBUG is not setCONFIG_PM_SYSFS_DEPRECATED=yCONFIG_SOFTWARE_SUSPEND=yCONFIG_PM_STD_PARTITION=""CONFIG_SUSPEND_SMP=y
#
# ACPI (Advanced Configuration and Power Interface) Support #CONFIG_ACPI=yCONFIG_ACPI_SLEEP=yCONFIG_ACPI_SLEEP_PROC_FS=y
# CONFIG_ACPI_SLEEP_PROC_SLEEP is not set CONFIG_ACPI_PROCFS=yCONFIG_ACPI_AC=mCONFIG_ACPI_BATTERY=mCONFIG_ACPI_BUTTON=mCONFIG_ACPI_VIDEO=mCONFIG_ACPI_FAN=yCONFIG_ACPI_DOCK=m
# CONFIG_ACPI_BAY is not set CONFIG_ACPI_PROCESSOR=yCONFIG_ACPI_HOTPLUG_CPU=yCONFIG_ACPI_THERMAL=yCONFIG_ACPI_ASUS=mCONFIG_ACPI_IBM=mCONFIG_ACPI_TOSHIBA=m CONFIG_ACPI_BLACKLIST_YEAR=1999
# CONFIG_ACPI_DEBUG is not setCONFIG_ACPI_EC=yCONFIG_ACPI_POWER=yCONFIG_ACPI_SYSTEM=yCONFIG_X86_PM_TIMER=yCONFIG_ACPI_CONTAINER=yCONFIG_ACPI_SBS=m
#
# APM (Advanced Power Management) BIOS Support
#CONFIG_APM=y
# CONFIG_APM_IGNORE_USER_SUSPEND is not set
# CONFIG_APM_DO_ENABLE is not setCONFIG_APM_CPU_IDLE=y
# CONFIG_APM_DISPLAY_BLANK is not setCONFIG_APM_RTC_IS_GMT=y
# CONFIG_APM_ALLOW_INTS is not set
# CONFIG_APM_REAL_MODE_POWER_OFF is not set
#
# CPU Frequency scaling
#CONFIG_CPU_FREQ=yCONFIG_CPU_FREQ_TABLE=y CONFIG_CPU_FREQ_DEBUG=y CONFIG_CPU_FREQ_STAT=m CONFIG_CPU_FREQ_STAT_DETAILS=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y CONFIG_CPU_FREQ_GOV_PERFORMANCE=y CONFIG_CPU_FREQ_GOV_POWERSAVE=m CONFIG_CPU_FREQ_GOV_USERSPACE=y CONFIG_CPU_FREQ_GOV_ONDEMAND=m CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
#
# CPUFreq processor drivers
#CONFIG_X86_ACPI_CPUFREQ=m
# CONFIG_X86_POWERNOW_K6 is not setCONFIG_X86_POWERNOW_K7=yCONFIG_X86_POWERNOW_K7_ACPI=yCONFIG_X86_POWERNOW_K8=yCONFIG_X86_POWERNOW_K8_ACPI=y
# CONFIG_X86_GX_SUSPMOD is not setCONFIG_X86_SPEEDSTEP_CENTRINO=yCONFIG_X86_SPEEDSTEP_CENTRINO_ACPI=yCONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=yCONFIG_X86_SPEEDSTEP_ICH=yCONFIG_X86_SPEEDSTEP_SMI=yCONFIG_X86_P4_CLOCKMOD=m
# CONFIG_X86_CPUFREQ_NFORCE2 is not setCONFIG_X86_LONGRUN=y
# CONFIG_X86_LONGHAUL is not set
# CONFIG_X86_E_POWERSAVER is not set
#
# shared options # # CONFIG_X86_ACPI_CPUFREQ_PROC_INTF is not set CONFIG_X86_SPEEDSTEP_LIB=y # CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK is not set
#
# Bus options (PCI, PCMCIA, EISA, MCA, ISA) #CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GOMMCONFIG is not set
# CONFIG_PCI_GODIRECT is not set CONFIG_PCI_GOANY=yCONFIG_PCI_BIOS=yCONFIG_PCI_DIRECT=yCONFIG_PCI_MMCONFIG=yCONFIG_PCIEPORTBUS=y CONFIG_HOTPLUG_PCI_PCIE=m
# CONFIG_HOTPLUG_PCI_PCIE_POLL_EVENT_MODE is not set CONFIG_PCIEAER=yCONFIG_PCI_MSI=y
# CONFIG_PCI_DEBUG is not set CONFIG_HT_IRQ=yCONFIG_ISA_DMA_API=yCONFIG_ISA=y
# CONFIG_EISA is not set
# CONFIG_MCA is not set
# CONFIG_SCx200 is not setCONFIG_K8_NB=y
#
# PCCARD (PCMCIA/CardBus) support
#CONFIG_PCCARD=y
# CONFIG_PCMCIA_DEBUG is not setCONFIG_PCMCIA=yCONFIG_PCMCIA_LOAD_CIS=yCONFIG_PCMCIA_IOCTL=yCONFIG_CARDBUS=y
#
# PC-card bridges
#CONFIG_YENTA=yCONFIG_YENTA_O2=yCONFIG_YENTA_RICOH=yCONFIG_YENTA_TI=yCONFIG_YENTA_ENE_TUNE=yCONFIG_YENTA_TOSHIBA=yCONFIG_PD6729=mCONFIG_I82092=m
# CONFIG_I82365 is not set
# CONFIG_TCIC is not setCONFIG_PCMCIA_PROBE=yCONFIG_PCCARD_NONSTATIC=y
#
# PCI Hotplug Support
#CONFIG_HOTPLUG_PCI=yCONFIG_HOTPLUG_PCI_FAKE=mCONFIG_HOTPLUG_PCI_COMPAQ=m
# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not setCONFIG_HOTPLUG_PCI_IBM=mCONFIG_HOTPLUG_PCI_ACPI=mCONFIG_HOTPLUG_PCI_ACPI_IBM=m
# CONFIG_HOTPLUG_PCI_CPCI is not set
# CONFIG_HOTPLUG_PCI_SHPC is not set
#
# Executable file formats
#CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_AOUT is not setCONFIG_BINFMT_MISC=y
#
# Networking
#CONFIG_NET=y
#
# Networking options
#
# CONFIG_NETDEBUG is not setCONFIG_PACKET=yCONFIG_PACKET_MMAP=yCONFIG_UNIX=yCONFIG_XFRM=yCONFIG_XFRM_USER=y
# CONFIG_XFRM_SUB_POLICY is not set
# CONFIG_XFRM_MIGRATE is not setCONFIG_NET_KEY=y
# CONFIG_NET_KEY_MIGRATE is not setCONFIG_INET=yCONFIG_IP_MULTICAST=yCONFIG_IP_ADVANCED_ROUTER=yCONFIG_ASK_IP_FIB_HASH=y
# CONFIG_IP_FIB_TRIE is not setCONFIG_IP_FIB_HASH=yCONFIG_IP_MULTIPLE_TABLES=yCONFIG_IP_ROUTE_MULTIPATH=y
# CONFIG_IP_ROUTE_MULTIPATH_CACHED is not setCONFIG_IP_ROUTE_VERBOSE=y
# CONFIG_IP_PNP is not setCONFIG_NET_IPIP=mCONFIG_NET_IPGRE=mCONFIG_NET_IPGRE_BROADCAST=yCONFIG_IP_MROUTE=yCONFIG_IP_PIMSM_V1=yCONFIG_IP_PIMSM_V2=y
# CONFIG_ARPD is not setCONFIG_SYN_COOKIES=yCONFIG_INET_AH=mCONFIG_INET_ESP=mCONFIG_INET_IPCOMP=mCONFIG_INET_XFRM_TUNNEL=mCONFIG_INET_TUNNEL=mCONFIG_INET_XFRM_MODE_TRANSPORT=mCONFIG_INET_XFRM_MODE_TUNNEL=mCONFIG_INET_XFRM_MODE_BEET=mCONFIG_INET_DIAG=mCONFIG_INET_TCP_DIAG=mCONFIG_TCP_CONG_ADVANCED=yCONFIG_TCP_CONG_BIC=yCONFIG_TCP_CONG_CUBIC=mCONFIG_TCP_CONG_WESTWOOD=mCONFIG_TCP_CONG_HTCP=mCONFIG_TCP_CONG_HSTCP=mCONFIG_TCP_CONG_HYBLA=mCONFIG_TCP_CONG_VEGAS=mCONFIG_TCP_CONG_SCALABLE=mCONFIG_TCP_CONG_LP=mCONFIG_TCP_CONG_VENO=mCONFIG_DEFAULT_BIC=y
# CONFIG_DEFAULT_CUBIC is not set
# CONFIG_DEFAULT_HTCP is not set
# CONFIG_DEFAULT_VEGAS is not set
# CONFIG_DEFAULT_WESTWOOD is not set
# CONFIG_DEFAULT_RENO is not setCONFIG_DEFAULT_TCP_CONG="bic"CONFIG_TCP_MD5SIG=y
#
# IP: Virtual Server Configuration
#CONFIG_IP_VS=m
# CONFIG_IP_VS_DEBUG is not setCONFIG_IP_VS_TAB_BITS=12
#
# IPVS transport protocol load balancing support
#CONFIG_IP_VS_PROTO_TCP=yCONFIG_IP_VS_PROTO_UDP=yCONFIG_IP_VS_PROTO_ESP=yCONFIG_IP_VS_PROTO_AH=y
#
# IPVS scheduler
#CONFIG_IP_VS_RR=mCONFIG_IP_VS_WRR=mCONFIG_IP_VS_LC=mCONFIG_IP_VS_WLC=mCONFIG_IP_VS_LBLC=mCONFIG_IP_VS_LBLCR=mCONFIG_IP_VS_DH=mCONFIG_IP_VS_SH=mCONFIG_IP_VS_SED=mCONFIG_IP_VS_NQ=m
#
# IPVS application helper
#CONFIG_IP_VS_FTP=mCONFIG_IPV6=mCONFIG_IPV6_PRIVACY=yCONFIG_IPV6_ROUTER_PREF=yCONFIG_IPV6_ROUTE_INFO=yCONFIG_INET6_AH=mCONFIG_INET6_ESP=mCONFIG_INET6_IPCOMP=m
# CONFIG_IPV6_MIP6 is not setCONFIG_INET6_XFRM_TUNNEL=mCONFIG_INET6_TUNNEL=mCONFIG_INET6_XFRM_MODE_TRANSPORT=mCONFIG_INET6_XFRM_MODE_TUNNEL=mCONFIG_INET6_XFRM_MODE_BEET=mCONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=mCONFIG_IPV6_SIT=mCONFIG_IPV6_TUNNEL=m
# CONFIG_IPV6_MULTIPLE_TABLES is not setCONFIG_NETLABEL=yCONFIG_NETWORK_SECMARK=yCONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not setCONFIG_BRIDGE_NETFILTER=y
#
# Core Netfilter Configuration
#CONFIG_NETFILTER_NETLINK=yCONFIG_NETFILTER_NETLINK_QUEUE=yCONFIG_NETFILTER_NETLINK_LOG=yCONFIG_NF_CONNTRACK_ENABLED=mCONFIG_NF_CONNTRACK_SUPPORT=y
# CONFIG_IP_NF_CONNTRACK_SUPPORT is not setCONFIG_NF_CONNTRACK=mCONFIG_NF_CT_ACCT=yCONFIG_NF_CONNTRACK_MARK=yCONFIG_NF_CONNTRACK_SECMARK=yCONFIG_NF_CONNTRACK_EVENTS=yCONFIG_NF_CT_PROTO_GRE=mCONFIG_NF_CT_PROTO_SCTP=mCONFIG_NF_CONNTRACK_AMANDA=mCONFIG_NF_CONNTRACK_FTP=mCONFIG_NF_CONNTRACK_H323=mCONFIG_NF_CONNTRACK_IRC=mCONFIG_NF_CONNTRACK_NETBIOS_NS=mCONFIG_NF_CONNTRACK_PPTP=m
# CONFIG_NF_CONNTRACK_SANE is not setCONFIG_NF_CONNTRACK_SIP=mCONFIG_NF_CONNTRACK_TFTP=mCONFIG_NF_CT_NETLINK=mCONFIG_NETFILTER_XTABLES=mCONFIG_NETFILTER_XT_TARGET_CLASSIFY=mCONFIG_NETFILTER_XT_TARGET_CONNMARK=mCONFIG_NETFILTER_XT_TARGET_DSCP=mCONFIG_NETFILTER_XT_TARGET_MARK=mCONFIG_NETFILTER_XT_TARGET_NFQUEUE=mCONFIG_NETFILTER_XT_TARGET_NFLOG=mCONFIG_NETFILTER_XT_TARGET_NOTRACK=mCONFIG_NETFILTER_XT_TARGET_SECMARK=mCONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m
# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not setCONFIG_NETFILTER_XT_MATCH_COMMENT=mCONFIG_NETFILTER_XT_MATCH_CONNBYTES=mCONFIG_NETFILTER_XT_MATCH_CONNMARK=mCONFIG_NETFILTER_XT_MATCH_CONNTRACK=mCONFIG_NETFILTER_XT_MATCH_DCCP=mCONFIG_NETFILTER_XT_MATCH_DSCP=mCONFIG_NETFILTER_XT_MATCH_ESP=mCONFIG_NETFILTER_XT_MATCH_HELPER=mCONFIG_NETFILTER_XT_MATCH_LENGTH=mCONFIG_NETFILTER_XT_MATCH_LIMIT=mCONFIG_NETFILTER_XT_MATCH_MAC=mCONFIG_NETFILTER_XT_MATCH_MARK=mCONFIG_NETFILTER_XT_MATCH_POLICY=mCONFIG_NETFILTER_XT_MATCH_MULTIPORT=mCONFIG_NETFILTER_XT_MATCH_PHYSDEV=mCONFIG_NETFILTER_XT_MATCH_PKTTYPE=mCONFIG_NETFILTER_XT_MATCH_QUOTA=mCONFIG_NETFILTER_XT_MATCH_REALM=mCONFIG_NETFILTER_XT_MATCH_SCTP=mCONFIG_NETFILTER_XT_MATCH_STATE=mCONFIG_NETFILTER_XT_MATCH_STATISTIC=mCONFIG_NETFILTER_XT_MATCH_STRING=mCONFIG_NETFILTER_XT_MATCH_TCPMSS=mCONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
#
# IP: Netfilter Configuration
#CONFIG_NF_CONNTRACK_IPV4=mCONFIG_NF_CONNTRACK_PROC_COMPAT=yCONFIG_IP_NF_QUEUE=mCONFIG_IP_NF_IPTABLES=mCONFIG_IP_NF_MATCH_IPRANGE=mCONFIG_IP_NF_MATCH_TOS=mCONFIG_IP_NF_MATCH_RECENT=mCONFIG_IP_NF_MATCH_ECN=mCONFIG_IP_NF_MATCH_AH=mCONFIG_IP_NF_MATCH_TTL=mCONFIG_IP_NF_MATCH_OWNER=mCONFIG_IP_NF_MATCH_ADDRTYPE=mCONFIG_IP_NF_FILTER=mCONFIG_IP_NF_TARGET_REJECT=mCONFIG_IP_NF_TARGET_LOG=mCONFIG_IP_NF_TARGET_ULOG=mCONFIG_NF_NAT=mCONFIG_NF_NAT_NEEDED=yCONFIG_IP_NF_TARGET_MASQUERADE=mCONFIG_IP_NF_TARGET_REDIRECT=mCONFIG_IP_NF_TARGET_NETMAP=mCONFIG_IP_NF_TARGET_SAME=mCONFIG_NF_NAT_SNMP_BASIC=mCONFIG_NF_NAT_PROTO_GRE=mCONFIG_NF_NAT_FTP=mCONFIG_NF_NAT_IRC=mCONFIG_NF_NAT_TFTP=mCONFIG_NF_NAT_AMANDA=mCONFIG_NF_NAT_PPTP=mCONFIG_NF_NAT_H323=mCONFIG_NF_NAT_SIP=mCONFIG_IP_NF_MANGLE=mCONFIG_IP_NF_TARGET_TOS=mCONFIG_IP_NF_TARGET_ECN=mCONFIG_IP_NF_TARGET_TTL=mCONFIG_IP_NF_TARGET_CLUSTERIP=mCONFIG_IP_NF_RAW=mCONFIG_IP_NF_ARPTABLES=mCONFIG_IP_NF_ARPFILTER=mCONFIG_IP_NF_ARP_MANGLE=m
#
# IPv6: Netfilter Configuration (EXPERIMENTAL)
#CONFIG_NF_CONNTRACK_IPV6=mCONFIG_IP6_NF_QUEUE=mCONFIG_IP6_NF_IPTABLES=mCONFIG_IP6_NF_MATCH_RT=mCONFIG_IP6_NF_MATCH_OPTS=mCONFIG_IP6_NF_MATCH_FRAG=mCONFIG_IP6_NF_MATCH_HL=mCONFIG_IP6_NF_MATCH_OWNER=mCONFIG_IP6_NF_MATCH_IPV6HEADER=mCONFIG_IP6_NF_MATCH_AH=m
# CONFIG_IP6_NF_MATCH_MH is not setCONFIG_IP6_NF_MATCH_EUI64=mCONFIG_IP6_NF_FILTER=mCONFIG_IP6_NF_TARGET_LOG=mCONFIG_IP6_NF_TARGET_REJECT=mCONFIG_IP6_NF_MANGLE=mCONFIG_IP6_NF_TARGET_HL=mCONFIG_IP6_NF_RAW=m
#
# DECnet: Netfilter Configuration
#
# CONFIG_DECNET_NF_GRABULATOR is not set
#
# Bridge: Netfilter Configuration
#CONFIG_BRIDGE_NF_EBTABLES=mCONFIG_BRIDGE_EBT_BROUTE=mCONFIG_BRIDGE_EBT_T_FILTER=mCONFIG_BRIDGE_EBT_T_NAT=mCONFIG_BRIDGE_EBT_802_3=mCONFIG_BRIDGE_EBT_AMONG=mCONFIG_BRIDGE_EBT_ARP=mCONFIG_BRIDGE_EBT_IP=mCONFIG_BRIDGE_EBT_LIMIT=mCONFIG_BRIDGE_EBT_MARK=mCONFIG_BRIDGE_EBT_PKTTYPE=mCONFIG_BRIDGE_EBT_STP=mCONFIG_BRIDGE_EBT_VLAN=mCONFIG_BRIDGE_EBT_ARPREPLY=mCONFIG_BRIDGE_EBT_DNAT=mCONFIG_BRIDGE_EBT_MARK_T=mCONFIG_BRIDGE_EBT_REDIRECT=mCONFIG_BRIDGE_EBT_SNAT=mCONFIG_BRIDGE_EBT_LOG=mCONFIG_BRIDGE_EBT_ULOG=m
#
# DCCP Configuration (EXPERIMENTAL)
#CONFIG_IP_DCCP=mCONFIG_INET_DCCP_DIAG=mCONFIG_IP_DCCP_ACKVEC=y
#
# DCCP CCIDs Configuration (EXPERIMENTAL)
#CONFIG_IP_DCCP_CCID2=m
# CONFIG_IP_DCCP_CCID2_DEBUG is not setCONFIG_IP_DCCP_CCID3=mCONFIG_IP_DCCP_TFRC_LIB=m
# CONFIG_IP_DCCP_CCID3_DEBUG is not setCONFIG_IP_DCCP_CCID3_RTO=100
#
# DCCP Kernel Hacking
#
# CONFIG_IP_DCCP_DEBUG is not set
# CONFIG_NET_DCCPPROBE is not set
#
# SCTP Configuration (EXPERIMENTAL)
#CONFIG_IP_SCTP=m
# CONFIG_SCTP_DBG_MSG is not set
# CONFIG_SCTP_DBG_OBJCNT is not set
# CONFIG_SCTP_HMAC_NONE is not set
# CONFIG_SCTP_HMAC_SHA1 is not setCONFIG_SCTP_HMAC_MD5=y
#
# TIPC Configuration (EXPERIMENTAL)
#CONFIG_TIPC=m
# CONFIG_TIPC_ADVANCED is not set
# CONFIG_TIPC_DEBUG is not setCONFIG_ATM=mCONFIG_ATM_CLIP=m
# CONFIG_ATM_CLIP_NO_ICMP is not setCONFIG_ATM_LANE=m
# CONFIG_ATM_MPOA is not setCONFIG_ATM_BR2684=m
# CONFIG_ATM_BR2684_IPFILTER is not setCONFIG_BRIDGE=mCONFIG_VLAN_8021Q=mCONFIG_DECNET=mCONFIG_DECNET_ROUTER=yCONFIG_LLC=y
# CONFIG_LLC2 is not setCONFIG_IPX=m
# CONFIG_IPX_INTERN is not setCONFIG_ATALK=mCONFIG_DEV_APPLETALK=m
# CONFIG_LTPC is not set
# CONFIG_COPS is not setCONFIG_IPDDP=mCONFIG_IPDDP_ENCAP=yCONFIG_IPDDP_DECAP=y
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_ECONET is not setCONFIG_WAN_ROUTER=m
#
# QoS and/or fair queueing
#CONFIG_NET_SCHED=yCONFIG_NET_SCH_FIFO=y
# CONFIG_NET_SCH_CLK_JIFFIES is not setCONFIG_NET_SCH_CLK_GETTIMEOFDAY=y
# CONFIG_NET_SCH_CLK_CPU is not set
#
# Queueing/Scheduling
#CONFIG_NET_SCH_CBQ=mCONFIG_NET_SCH_HTB=mCONFIG_NET_SCH_HFSC=mCONFIG_NET_SCH_ATM=mCONFIG_NET_SCH_PRIO=mCONFIG_NET_SCH_RED=mCONFIG_NET_SCH_SFQ=mCONFIG_NET_SCH_TEQL=mCONFIG_NET_SCH_TBF=mCONFIG_NET_SCH_GRED=mCONFIG_NET_SCH_DSMARK=mCONFIG_NET_SCH_NETEM=mCONFIG_NET_SCH_INGRESS=m
#
# Classification
#CONFIG_NET_CLS=yCONFIG_NET_CLS_BASIC=mCONFIG_NET_CLS_TCINDEX=mCONFIG_NET_CLS_ROUTE4=mCONFIG_NET_CLS_ROUTE=yCONFIG_NET_CLS_FW=mCONFIG_NET_CLS_U32=mCONFIG_CLS_U32_PERF=yCONFIG_CLS_U32_MARK=yCONFIG_NET_CLS_RSVP=mCONFIG_NET_CLS_RSVP6=mCONFIG_NET_EMATCH=yCONFIG_NET_EMATCH_STACK=32CONFIG_NET_EMATCH_CMP=mCONFIG_NET_EMATCH_NBYTE=mCONFIG_NET_EMATCH_U32=mCONFIG_NET_EMATCH_META=mCONFIG_NET_EMATCH_TEXT=mCONFIG_NET_CLS_ACT=yCONFIG_NET_ACT_POLICE=mCONFIG_NET_ACT_GACT=mCONFIG_GACT_PROB=yCONFIG_NET_ACT_MIRRED=mCONFIG_NET_ACT_IPT=mCONFIG_NET_ACT_PEDIT=mCONFIG_NET_ACT_SIMP=mCONFIG_NET_CLS_IND=yCONFIG_NET_ESTIMATOR=y
#
# Network testing
#CONFIG_NET_PKTGEN=m
# CONFIG_NET_TCPPROBE is not set
# CONFIG_HAMRADIO is not setCONFIG_IRDA=m
#
# IrDA protocols
#CONFIG_IRLAN=mCONFIG_IRNET=mCONFIG_IRCOMM=m
# CONFIG_IRDA_ULTRA is not set
#
# IrDA options
#CONFIG_IRDA_CACHE_LAST_LSAP=yCONFIG_IRDA_FAST_RR=y
# CONFIG_IRDA_DEBUG is not set
#
# Infrared-port device drivers
#
#
# SIR device drivers
#CONFIG_IRTTY_SIR=m
#
# Dongle support
#CONFIG_DONGLE=yCONFIG_ESI_DONGLE=mCONFIG_ACTISYS_DONGLE=mCONFIG_TEKRAM_DONGLE=mCONFIG_TOIM3232_DONGLE=mCONFIG_LITELINK_DONGLE=mCONFIG_MA600_DONGLE=mCONFIG_GIRBIL_DONGLE=mCONFIG_MCP2120_DONGLE=mCONFIG_OLD_BELKIN_DONGLE=mCONFIG_ACT200L_DONGLE=m
#
# Old SIR device drivers
#
#
# Old Serial dongle support
#
#
# FIR device drivers
#CONFIG_USB_IRDA=mCONFIG_SIGMATEL_FIR=mCONFIG_NSC_FIR=mCONFIG_WINBOND_FIR=mCONFIG_TOSHIBA_FIR=mCONFIG_SMC_IRCC_FIR=mCONFIG_ALI_FIR=mCONFIG_VLSI_FIR=mCONFIG_VIA_FIR=mCONFIG_MCS_FIR=mCONFIG_BT=mCONFIG_BT_L2CAP=mCONFIG_BT_SCO=mCONFIG_BT_RFCOMM=mCONFIG_BT_RFCOMM_TTY=yCONFIG_BT_BNEP=mCONFIG_BT_BNEP_MC_FILTER=yCONFIG_BT_BNEP_PROTO_FILTER=yCONFIG_BT_CMTP=mCONFIG_BT_HIDP=m
#
# Bluetooth device drivers
#CONFIG_BT_HCIUSB=mCONFIG_BT_HCIUSB_SCO=yCONFIG_BT_HCIUART=mCONFIG_BT_HCIUART_H4=yCONFIG_BT_HCIUART_BCSP=yCONFIG_BT_HCIBCM203X=mCONFIG_BT_HCIBPA10X=mCONFIG_BT_HCIBFUSB=mCONFIG_BT_HCIDTL1=mCONFIG_BT_HCIBT3C=mCONFIG_BT_HCIBLUECARD=mCONFIG_BT_HCIBTUART=mCONFIG_BT_HCIVHCI=mCONFIG_IEEE80211=m
# CONFIG_IEEE80211_DEBUG is not setCONFIG_IEEE80211_CRYPT_WEP=mCONFIG_IEEE80211_CRYPT_CCMP=mCONFIG_IEEE80211_CRYPT_TKIP=mCONFIG_IEEE80211_SOFTMAC=mCONFIG_IEEE80211_SOFTMAC_DEBUG=yCONFIG_WIRELESS_EXT=yCONFIG_FIB_RULES=y
#
# Device Drivers
#
#
# Generic Driver Options
#CONFIG_STANDALONE=yCONFIG_PREVENT_FIRMWARE_BUILD=yCONFIG_FW_LOADER=y
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
#
# Connector - unified userspace <-> kernelspace linker #CONFIG_CONNECTOR=yCONFIG_PROC_EVENTS=y
#
# Memory Technology Devices (MTD)
#CONFIG_MTD=m
# CONFIG_MTD_DEBUG is not setCONFIG_MTD_CONCAT=mCONFIG_MTD_PARTITIONS=yCONFIG_MTD_REDBOOT_PARTS=mCONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
#
# User Modules And Translation Layers
#CONFIG_MTD_CHAR=mCONFIG_MTD_BLKDEVS=mCONFIG_MTD_BLOCK=mCONFIG_MTD_BLOCK_RO=mCONFIG_FTL=mCONFIG_NFTL=mCONFIG_NFTL_RW=yCONFIG_INFTL=mCONFIG_RFD_FTL=m
# CONFIG_SSFDC is not set
#
# RAM/ROM/Flash chip drivers
#CONFIG_MTD_CFI=mCONFIG_MTD_JEDECPROBE=mCONFIG_MTD_GEN_PROBE=m
# CONFIG_MTD_CFI_ADV_OPTIONS is not setCONFIG_MTD_MAP_BANK_WIDTH_1=yCONFIG_MTD_MAP_BANK_WIDTH_2=yCONFIG_MTD_MAP_BANK_WIDTH_4=y
# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_32 is not setCONFIG_MTD_CFI_I1=yCONFIG_MTD_CFI_I2=y
# CONFIG_MTD_CFI_I4 is not set
# CONFIG_MTD_CFI_I8 is not setCONFIG_MTD_CFI_INTELEXT=mCONFIG_MTD_CFI_AMDSTD=mCONFIG_MTD_CFI_STAA=mCONFIG_MTD_CFI_UTIL=mCONFIG_MTD_RAM=mCONFIG_MTD_ROM=mCONFIG_MTD_ABSENT=m
# CONFIG_MTD_OBSOLETE_CHIPS is not set
#
# Mapping drivers for chip access
#CONFIG_MTD_COMPLEX_MAPPINGS=y
# CONFIG_MTD_PHYSMAP is not set
# CONFIG_MTD_PNC2000 is not setCONFIG_MTD_SC520CDP=mCONFIG_MTD_NETSC520=mCONFIG_MTD_TS5500=m
# CONFIG_MTD_SBC_GXX is not set
# CONFIG_MTD_AMD76XROM is not set
# CONFIG_MTD_ICHXROM is not set
# CONFIG_MTD_ESB2ROM is not set
# CONFIG_MTD_CK804XROM is not setCONFIG_MTD_SCB2_FLASH=m
# CONFIG_MTD_NETtel is not set
# CONFIG_MTD_DILNETPC is not set
# CONFIG_MTD_L440GX is not setCONFIG_MTD_PCI=m
# CONFIG_MTD_PLATRAM is not set
#
# Self-contained MTD device drivers
#CONFIG_MTD_PMC551=m
# CONFIG_MTD_PMC551_BUGFIX is not set
# CONFIG_MTD_PMC551_DEBUG is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_PHRAM is not setCONFIG_MTD_MTDRAM=mCONFIG_MTDRAM_TOTAL_SIZE=4096CONFIG_MTDRAM_ERASE_SIZE=128CONFIG_MTD_BLOCK2MTD=m
#
# Disk-On-Chip Device Drivers
#
# CONFIG_MTD_DOC2000 is not set
# CONFIG_MTD_DOC2001 is not set
# CONFIG_MTD_DOC2001PLUS is not set
#
# NAND Flash Device Drivers
#CONFIG_MTD_NAND=m
# CONFIG_MTD_NAND_VERIFY_WRITE is not set CONFIG_MTD_NAND_ECC_SMC=y CONFIG_MTD_NAND_IDS=m CONFIG_MTD_NAND_DISKONCHIP=m
# CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0
# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set # CONFIG_MTD_NAND_CAFE is not set CONFIG_MTD_NAND_CS553X=m CONFIG_MTD_NAND_NANDSIM=m
#
# OneNAND Flash Device Drivers
#
# CONFIG_MTD_ONENAND is not set
#
# Parallel port support
#CONFIG_PARPORT=mCONFIG_PARPORT_PC=mCONFIG_PARPORT_SERIAL=m
# CONFIG_PARPORT_PC_FIFO is not set
# CONFIG_PARPORT_PC_SUPERIO is not setCONFIG_PARPORT_PC_PCMCIA=m
# CONFIG_PARPORT_GSC is not set
# CONFIG_PARPORT_AX88796 is not setCONFIG_PARPORT_1284=yCONFIG_PARPORT_NOT_PC=y
#
# Plug and Play support
#CONFIG_PNP=y
# CONFIG_PNP_DEBUG is not set
#
# Protocols
#CONFIG_ISAPNP=y
# CONFIG_PNPBIOS is not setCONFIG_PNPACPI=y
#
# Block devices
#CONFIG_BLK_DEV_FD=m
# CONFIG_BLK_DEV_XD is not setCONFIG_PARIDE=m
#
# Parallel IDE high-level drivers
#CONFIG_PARIDE_PD=mCONFIG_PARIDE_PCD=mCONFIG_PARIDE_PF=mCONFIG_PARIDE_PT=mCONFIG_PARIDE_PG=m
#
# Parallel IDE protocol modules
#CONFIG_PARIDE_ATEN=mCONFIG_PARIDE_BPCK=mCONFIG_PARIDE_BPCK6=mCONFIG_PARIDE_COMM=mCONFIG_PARIDE_DSTR=mCONFIG_PARIDE_FIT2=mCONFIG_PARIDE_FIT3=mCONFIG_PARIDE_EPAT=mCONFIG_PARIDE_EPATC8=yCONFIG_PARIDE_EPIA=mCONFIG_PARIDE_FRIQ=mCONFIG_PARIDE_FRPW=mCONFIG_PARIDE_KBIC=mCONFIG_PARIDE_KTTI=mCONFIG_PARIDE_ON20=mCONFIG_PARIDE_ON26=mCONFIG_BLK_CPQ_DA=mCONFIG_BLK_CPQ_CISS_DA=mCONFIG_CISS_SCSI_TAPE=yCONFIG_BLK_DEV_DAC960=mCONFIG_BLK_DEV_UMEM=m
# CONFIG_BLK_DEV_COW_COMMON is not setCONFIG_BLK_DEV_LOOP=yCONFIG_BLK_DEV_CRYPTOLOOP=yCONFIG_BLK_DEV_NBD=mCONFIG_BLK_DEV_SX8=mCONFIG_BLK_DEV_UB=mCONFIG_BLK_DEV_RAM=yCONFIG_BLK_DEV_RAM_COUNT=16CONFIG_BLK_DEV_RAM_SIZE=16384CONFIG_BLK_DEV_RAM_BLOCKSIZE=4096CONFIG_BLK_DEV_INITRD=yCONFIG_CDROM_PKTCDVD=mCONFIG_CDROM_PKTCDVD_BUFFERS=8
# CONFIG_CDROM_PKTCDVD_WCACHE is not setCONFIG_ATA_OVER_ETH=m
#
# Misc devices
#CONFIG_IBM_ASM=m
# CONFIG_SGI_IOC4 is not setCONFIG_TIFM_CORE=mCONFIG_TIFM_7XX1=m
# CONFIG_ASUS_LAPTOP is not setCONFIG_MSI_LAPTOP=m
# CONFIG_SONY_LAPTOP is not set
#
# ATA/ATAPI/MFM/RLL support
#CONFIG_IDE=yCONFIG_BLK_DEV_IDE=y
#
# Please see Documentation/ide.txt for help/info on IDE drives #
# CONFIG_BLK_DEV_IDE_SATA is not set
# CONFIG_BLK_DEV_HD_IDE is not set CONFIG_BLK_DEV_IDEDISK=yCONFIG_IDEDISK_MULTI_MODE=yCONFIG_BLK_DEV_IDECS=m
# CONFIG_BLK_DEV_DELKIN is not set CONFIG_BLK_DEV_IDECD=m
# CONFIG_BLK_DEV_IDETAPE is not set CONFIG_BLK_DEV_IDEFLOPPY=yCONFIG_BLK_DEV_IDESCSI=m
# CONFIG_BLK_DEV_IDEACPI is not set CONFIG_IDE_TASK_IOCTL=y
#
# IDE chipset support/bugfixes
#CONFIG_IDE_GENERIC=yCONFIG_BLK_DEV_CMD640=yCONFIG_BLK_DEV_CMD640_ENHANCED=yCONFIG_BLK_DEV_IDEPNP=yCONFIG_BLK_DEV_IDEPCI=yCONFIG_IDEPCI_SHARE_IRQ=y
# CONFIG_BLK_DEV_OFFBOARD is not setCONFIG_BLK_DEV_GENERIC=y
# CONFIG_BLK_DEV_OPTI621 is not setCONFIG_BLK_DEV_RZ1000=yCONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not setCONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not setCONFIG_BLK_DEV_AEC62XX=yCONFIG_BLK_DEV_ALI15X3=y
# CONFIG_WDC_ALI15X3 is not setCONFIG_BLK_DEV_AMD74XX=yCONFIG_BLK_DEV_ATIIXP=yCONFIG_BLK_DEV_CMD64X=yCONFIG_BLK_DEV_TRIFLEX=y
# CONFIG_BLK_DEV_CY82C693 is not setCONFIG_BLK_DEV_CS5520=yCONFIG_BLK_DEV_CS5530=yCONFIG_BLK_DEV_CS5535=yCONFIG_BLK_DEV_HPT34X=y
# CONFIG_HPT34X_AUTODMA is not setCONFIG_BLK_DEV_HPT366=yCONFIG_BLK_DEV_JMICRON=m
# CONFIG_BLK_DEV_SC1200 is not setCONFIG_BLK_DEV_PIIX=y
# CONFIG_BLK_DEV_IT8213 is not setCONFIG_BLK_DEV_IT821X=y
# CONFIG_BLK_DEV_NS87415 is not setCONFIG_BLK_DEV_PDC202XX_OLD=y
# CONFIG_PDC202XX_BURST is not setCONFIG_BLK_DEV_PDC202XX_NEW=yCONFIG_BLK_DEV_SVWKS=yCONFIG_BLK_DEV_SIIMAGE=yCONFIG_BLK_DEV_SIS5513=y
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not setCONFIG_BLK_DEV_VIA82CXXX=y
# CONFIG_BLK_DEV_TC86C001 is not set
# CONFIG_IDE_ARM is not set
# CONFIG_IDE_CHIPSETS is not setCONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not setCONFIG_IDEDMA_AUTO=y
# CONFIG_BLK_DEV_HD is not set
#
# SCSI device support
#CONFIG_RAID_ATTRS=mCONFIG_SCSI=yCONFIG_SCSI_TGT=mCONFIG_SCSI_NETLINK=yCONFIG_SCSI_PROC_FS=y
#
# SCSI support type (disk, tape, CD-ROM)
#CONFIG_BLK_DEV_SD=yCONFIG_CHR_DEV_ST=mCONFIG_CHR_DEV_OSST=mCONFIG_BLK_DEV_SR=mCONFIG_BLK_DEV_SR_VENDOR=yCONFIG_CHR_DEV_SG=yCONFIG_CHR_DEV_SCH=m
#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs #CONFIG_SCSI_MULTI_LUN=yCONFIG_SCSI_CONSTANTS=yCONFIG_SCSI_LOGGING=y
# CONFIG_SCSI_SCAN_ASYNC is not set
#
# SCSI Transports
#CONFIG_SCSI_SPI_ATTRS=yCONFIG_SCSI_FC_ATTRS=mCONFIG_SCSI_ISCSI_ATTRS=mCONFIG_SCSI_SAS_ATTRS=yCONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_LIBSAS_DEBUG is not set
#
# SCSI low-level drivers
#CONFIG_ISCSI_TCP=mCONFIG_BLK_DEV_3W_XXXX_RAID=mCONFIG_SCSI_3W_9XXX=m
# CONFIG_SCSI_7000FASST is not setCONFIG_SCSI_ACARD=mCONFIG_SCSI_AHA152X=mCONFIG_SCSI_AHA1542=mCONFIG_SCSI_AACRAID=mCONFIG_SCSI_AIC7XXX=yCONFIG_AIC7XXX_CMDS_PER_DEVICE=4CONFIG_AIC7XXX_RESET_DELAY_MS=1000
# CONFIG_AIC7XXX_DEBUG_ENABLE is not setCONFIG_AIC7XXX_DEBUG_MASK=0
# CONFIG_AIC7XXX_REG_PRETTY_PRINT is not setCONFIG_SCSI_AIC7XXX_OLD=mCONFIG_SCSI_AIC79XX=yCONFIG_AIC79XX_CMDS_PER_DEVICE=4CONFIG_AIC79XX_RESET_DELAY_MS=1000
# CONFIG_AIC79XX_ENABLE_RD_STRM is not set
# CONFIG_AIC79XX_DEBUG_ENABLE is not setCONFIG_AIC79XX_DEBUG_MASK=0
# CONFIG_AIC79XX_REG_PRETTY_PRINT is not setCONFIG_SCSI_AIC94XX=y
# CONFIG_AIC94XX_DEBUG is not set
# CONFIG_SCSI_DPT_I2O is not setCONFIG_SCSI_ADVANSYS=m
# CONFIG_SCSI_IN2000 is not setCONFIG_SCSI_ARCMSR=mCONFIG_MEGARAID_NEWGEN=yCONFIG_MEGARAID_MM=mCONFIG_MEGARAID_MAILBOX=mCONFIG_MEGARAID_LEGACY=mCONFIG_MEGARAID_SAS=mCONFIG_SCSI_HPTIOP=mCONFIG_SCSI_BUSLOGIC=m
# CONFIG_SCSI_OMIT_FLASHPOINT is not set
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_DTC3280 is not set
# CONFIG_SCSI_EATA is not setCONFIG_SCSI_FUTURE_DOMAIN=mCONFIG_SCSI_GDTH=m
# CONFIG_SCSI_GENERIC_NCR5380 is not set
# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not setCONFIG_SCSI_IPS=mCONFIG_SCSI_INITIO=mCONFIG_SCSI_INIA100=mCONFIG_SCSI_PPA=mCONFIG_SCSI_IMM=m
# CONFIG_SCSI_IZIP_EPP16 is not set
# CONFIG_SCSI_IZIP_SLOW_CTR is not set
# CONFIG_SCSI_NCR53C406A is not setCONFIG_SCSI_STEX=mCONFIG_SCSI_SYM53C8XX_2=mCONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64CONFIG_SCSI_SYM53C8XX_MMIO=y
# CONFIG_SCSI_IPR is not set
# CONFIG_SCSI_PAS16 is not set
# CONFIG_SCSI_PSI240I is not set
# CONFIG_SCSI_QLOGIC_FAS is not setCONFIG_SCSI_QLOGIC_1280=mCONFIG_SCSI_QLA_FC=mCONFIG_SCSI_QLA_ISCSI=mCONFIG_SCSI_LPFC=m
# CONFIG_SCSI_SEAGATE is not set
# CONFIG_SCSI_SYM53C416 is not set
CONFIG_SCSI_DC395x=mCONFIG_SCSI_DC390T=m
# CONFIG_SCSI_T128 is not set
# CONFIG_SCSI_U14_34F is not set
# CONFIG_SCSI_ULTRASTOR is not set
# CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not setCONFIG_SCSI_SRP=m
#
# PCMCIA SCSI adapter support
#CONFIG_PCMCIA_AHA152X=mCONFIG_PCMCIA_FDOMAIN=mCONFIG_PCMCIA_NINJA_SCSI=mCONFIG_PCMCIA_QLOGIC=mCONFIG_PCMCIA_SYM53C500=m
#
# Serial ATA (prod) and Parallel ATA (experimental) drivers #CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set CONFIG_SATA_AHCI=yCONFIG_SATA_SVW=yCONFIG_ATA_PIIX=yCONFIG_SATA_MV=yCONFIG_SATA_NV=yCONFIG_PDC_ADMA=yCONFIG_SATA_QSTOR=yCONFIG_SATA_PROMISE=yCONFIG_SATA_SX4=yCONFIG_SATA_SIL=yCONFIG_SATA_SIL24=yCONFIG_SATA_SIS=yCONFIG_SATA_ULI=yCONFIG_SATA_VIA=yCONFIG_SATA_VITESSE=y
# CONFIG_SATA_INIC162X is not set CONFIG_SATA_INTEL_COMBINED=yCONFIG_SATA_ACPI=yCONFIG_PATA_ALI=yCONFIG_PATA_AMD=yCONFIG_PATA_ARTOP=yCONFIG_PATA_ATIIXP=yCONFIG_PATA_CMD64X=yCONFIG_PATA_CS5520=yCONFIG_PATA_CS5530=yCONFIG_PATA_CS5535=yCONFIG_PATA_CYPRESS=yCONFIG_PATA_EFAR=yCONFIG_ATA_GENERIC=yCONFIG_PATA_HPT366=yCONFIG_PATA_HPT37X=yCONFIG_PATA_HPT3X2N=yCONFIG_PATA_HPT3X3=yCONFIG_PATA_ISAPNP=yCONFIG_PATA_IT821X=y
# CONFIG_PATA_IT8213 is not set CONFIG_PATA_JMICRON=yCONFIG_PATA_LEGACY=mCONFIG_PATA_TRIFLEX=yCONFIG_PATA_MARVELL=yCONFIG_PATA_MPIIX=yCONFIG_PATA_OLDPIIX=yCONFIG_PATA_NETCELL=yCONFIG_PATA_NS87410=yCONFIG_PATA_OPTI=yCONFIG_PATA_OPTIDMA=yCONFIG_PATA_PCMCIA=yCONFIG_PATA_PDC_OLD=yCONFIG_PATA_QDI=yCONFIG_PATA_RADISYS=yCONFIG_PATA_RZ1000=yCONFIG_PATA_SC1200=yCONFIG_PATA_SERVERWORKS=yCONFIG_PATA_PDC2027X=yCONFIG_PATA_SIL680=yCONFIG_PATA_SIS=yCONFIG_PATA_VIA=yCONFIG_PATA_WINBOND=yCONFIG_PATA_WINBOND_VLB=y
#
# Old CD-ROM drivers (not SCSI, not IDE)
#
# CONFIG_CD_NO_IDESCSI is not set
#
# Multi-device support (RAID and LVM)
#CONFIG_MD=yCONFIG_BLK_DEV_MD=yCONFIG_MD_LINEAR=mCONFIG_MD_RAID0=mCONFIG_MD_RAID1=mCONFIG_MD_RAID10=mCONFIG_MD_RAID456=mCONFIG_MD_RAID5_RESHAPE=yCONFIG_MD_MULTIPATH=mCONFIG_MD_FAULTY=mCONFIG_BLK_DEV_DM=m
# CONFIG_DM_DEBUG is not setCONFIG_DM_CRYPT=mCONFIG_DM_SNAPSHOT=mCONFIG_DM_MIRROR=mCONFIG_DM_ZERO=mCONFIG_DM_MULTIPATH=mCONFIG_DM_MULTIPATH_EMC=m
#
# Fusion MPT device support
#CONFIG_FUSION=yCONFIG_FUSION_SPI=mCONFIG_FUSION_FC=mCONFIG_FUSION_SAS=mCONFIG_FUSION_MAX_SGE=40CONFIG_FUSION_CTL=mCONFIG_FUSION_LAN=m
#
# IEEE 1394 (FireWire) support
#CONFIG_IEEE1394=m
#
# Subsystem Options
#
# CONFIG_IEEE1394_VERBOSEDEBUG is not setCONFIG_IEEE1394_EXTRA_CONFIG_ROMS=yCONFIG_IEEE1394_CONFIG_ROM_IP1394=y
#
# Device Drivers
#CONFIG_IEEE1394_PCILYNX=mCONFIG_IEEE1394_OHCI1394=m
#
# Protocol Drivers
#CONFIG_IEEE1394_VIDEO1394=mCONFIG_IEEE1394_SBP2=m
# CONFIG_IEEE1394_SBP2_PHYS_DMA is not setCONFIG_IEEE1394_ETH1394=mCONFIG_IEEE1394_DV1394=mCONFIG_IEEE1394_RAWIO=m
#
# I2O device support
#CONFIG_I2O=m
# CONFIG_I2O_LCT_NOTIFY_ON_CHANGES is not setCONFIG_I2O_EXT_ADAPTEC=yCONFIG_I2O_CONFIG=mCONFIG_I2O_CONFIG_OLD_IOCTL=yCONFIG_I2O_BUS=mCONFIG_I2O_BLOCK=mCONFIG_I2O_SCSI=mCONFIG_I2O_PROC=m
#
# Macintosh device drivers
#
# CONFIG_MAC_EMUMOUSEBTN is not set
#
# Network device support
#CONFIG_NETDEVICES=yCONFIG_IFB=mCONFIG_DUMMY=mCONFIG_BONDING=mCONFIG_EQUALIZER=mCONFIG_TUN=mCONFIG_NET_SB1000=m
#
# ARCnet devices
#
# CONFIG_ARCNET is not set
#
# PHY device support
#CONFIG_PHYLIB=m
#
# MII PHY device drivers
#CONFIG_MARVELL_PHY=mCONFIG_DAVICOM_PHY=mCONFIG_QSEMI_PHY=mCONFIG_LXT_PHY=mCONFIG_CICADA_PHY=mCONFIG_VITESSE_PHY=mCONFIG_SMSC_PHY=mCONFIG_BROADCOM_PHY=mCONFIG_FIXED_PHY=mCONFIG_FIXED_MII_10_FDX=yCONFIG_FIXED_MII_100_FDX=y
#
# Ethernet (10 or 100Mbit)
#CONFIG_NET_ETHERNET=yCONFIG_MII=yCONFIG_HAPPYMEAL=mCONFIG_SUNGEM=mCONFIG_CASSINI=mCONFIG_NET_VENDOR_3COM=y
# CONFIG_EL1 is not set
# CONFIG_EL2 is not set
# CONFIG_ELPLUS is not set
# CONFIG_EL16 is not setCONFIG_EL3=m
# CONFIG_3C515 is not setCONFIG_VORTEX=mCONFIG_TYPHOON=m
# CONFIG_LANCE is not setCONFIG_NET_VENDOR_SMC=y
# CONFIG_WD80x3 is not setCONFIG_ULTRA=m
# CONFIG_SMC9194 is not set
# CONFIG_NET_VENDOR_RACAL is not set
#
# Tulip family network device support
#CONFIG_NET_TULIP=yCONFIG_DE2104X=mCONFIG_TULIP=m
# CONFIG_TULIP_MWI is not setCONFIG_TULIP_MMIO=y
# CONFIG_TULIP_NAPI is not setCONFIG_DE4X5=mCONFIG_WINBOND_840=mCONFIG_DM9102=mCONFIG_ULI526X=mCONFIG_PCMCIA_XIRCOM=m
# CONFIG_AT1700 is not set
# CONFIG_DEPCA is not set
# CONFIG_HP100 is not setCONFIG_NET_ISA=y
# CONFIG_E2100 is not setCONFIG_EWRK3=m
# CONFIG_EEXPRESS is not set
# CONFIG_EEXPRESS_PRO is not set
# CONFIG_HPLAN_PLUS is not set
# CONFIG_HPLAN is not set
# CONFIG_LP486E is not set
# CONFIG_ETH16I is not setCONFIG_NE2000=m
# CONFIG_ZNET is not set
# CONFIG_SEEQ8005 is not setCONFIG_NET_PCI=yCONFIG_PCNET32=mCONFIG_PCNET32_NAPI=yCONFIG_AMD8111_ETH=mCONFIG_AMD8111E_NAPI=yCONFIG_ADAPTEC_STARFIRE=mCONFIG_ADAPTEC_STARFIRE_NAPI=y
# CONFIG_AC3200 is not set
# CONFIG_APRICOT is not setCONFIG_B44=mCONFIG_FORCEDETH=yCONFIG_FORCEDETH_NAPI=y
# CONFIG_CS89x0 is not set
# CONFIG_DGRS is not set
# CONFIG_EEPRO100 is not setCONFIG_E100=yCONFIG_FEALNX=mCONFIG_NATSEMI=mCONFIG_NE2K_PCI=mCONFIG_8139CP=yCONFIG_8139TOO=yCONFIG_8139TOO_PIO=y
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_8139TOO_8129 is not set
# CONFIG_8139_OLD_RX_RESET is not setCONFIG_SIS900=mCONFIG_EPIC100=mCONFIG_SUNDANCE=m
# CONFIG_SUNDANCE_MMIO is not setCONFIG_TLAN=mCONFIG_VIA_RHINE=mCONFIG_VIA_RHINE_MMIO=yCONFIG_VIA_RHINE_NAPI=y
# CONFIG_SC92031 is not setCONFIG_NET_POCKET=yCONFIG_ATP=mCONFIG_DE600=mCONFIG_DE620=m
#
# Ethernet (1000 Mbit)
#CONFIG_ACENIC=m
# CONFIG_ACENIC_OMIT_TIGON_I is not setCONFIG_DL2K=mCONFIG_E1000=yCONFIG_E1000_NAPI=y
# CONFIG_E1000_DISABLE_PACKET_SPLIT is not setCONFIG_NS83820=mCONFIG_HAMACHI=mCONFIG_YELLOWFIN=mCONFIG_R8169=mCONFIG_R8169_NAPI=yCONFIG_R8169_VLAN=yCONFIG_SIS190=mCONFIG_SKGE=yCONFIG_SKY2=m
# CONFIG_SK98LIN is not setCONFIG_VIA_VELOCITY=mCONFIG_TIGON3=yCONFIG_BNX2=mCONFIG_QLA3XXX=m
# CONFIG_ATL1 is not set
#
# Ethernet (10000 Mbit)
#CONFIG_CHELSIO_T1=mCONFIG_CHELSIO_T1_1G=yCONFIG_CHELSIO_T1_NAPI=y
# CONFIG_CHELSIO_T3 is not setCONFIG_IXGB=mCONFIG_IXGB_NAPI=yCONFIG_S2IO=mCONFIG_S2IO_NAPI=yCONFIG_MYRI10GE=mCONFIG_NETXEN_NIC=m
#
# Token Ring devices
#CONFIG_TR=y
# CONFIG_IBMTR is not setCONFIG_IBMOL=mCONFIG_IBMLS=mCONFIG_3C359=m
# CONFIG_TMS380TR is not set
# CONFIG_SMCTR is not set
#
# Wireless LAN (non-hamradio)
#CONFIG_NET_RADIO=yCONFIG_NET_WIRELESS_RTNETLINK=y
#
# Obsolete Wireless cards support (pre-802.11)
#
# CONFIG_STRIP is not set
# CONFIG_ARLAN is not set
# CONFIG_WAVELAN is not setCONFIG_PCMCIA_WAVELAN=mCONFIG_PCMCIA_NETWAVE=m
#
# Wireless 802.11 Frequency Hopping cards support
#
# CONFIG_PCMCIA_RAYCS is not set
#
# Wireless 802.11b ISA/PCI cards support
#CONFIG_IPW2100=mCONFIG_IPW2100_MONITOR=y
# CONFIG_IPW2100_DEBUG is not setCONFIG_IPW2200=mCONFIG_IPW2200_MONITOR=yCONFIG_IPW2200_RADIOTAP=yCONFIG_IPW2200_PROMISCUOUS=yCONFIG_IPW2200_QOS=y
# CONFIG_IPW2200_DEBUG is not setCONFIG_AIRO=mCONFIG_HERMES=mCONFIG_PLX_HERMES=mCONFIG_TMD_HERMES=mCONFIG_NORTEL_HERMES=mCONFIG_PCI_HERMES=mCONFIG_ATMEL=mCONFIG_PCI_ATMEL=m
#
# Wireless 802.11b Pcmcia/Cardbus cards support
#CONFIG_PCMCIA_HERMES=mCONFIG_PCMCIA_SPECTRUM=mCONFIG_AIRO_CS=mCONFIG_PCMCIA_ATMEL=mCONFIG_PCMCIA_WL3501=m
#
# Prism GT/Duette 802.11(a/b/g) PCI/Cardbus support #CONFIG_PRISM54=mCONFIG_USB_ZD1201=mCONFIG_HOSTAP=mCONFIG_HOSTAP_FIRMWARE=y CONFIG_HOSTAP_FIRMWARE_NVRAM=y CONFIG_HOSTAP_PLX=mCONFIG_HOSTAP_PCI=mCONFIG_HOSTAP_CS=mCONFIG_BCM43XX=mCONFIG_BCM43XX_DEBUG=yCONFIG_BCM43XX_DMA=yCONFIG_BCM43XX_PIO=y CONFIG_BCM43XX_DMA_AND_PIO_MODE=y
# CONFIG_BCM43XX_DMA_MODE is not set
# CONFIG_BCM43XX_PIO_MODE is not set CONFIG_ZD1211RW=m
# CONFIG_ZD1211RW_DEBUG is not set CONFIG_NET_WIRELESS=y
#
# PCMCIA network device support
#CONFIG_NET_PCMCIA=yCONFIG_PCMCIA_3C589=mCONFIG_PCMCIA_3C574=mCONFIG_PCMCIA_FMVJ18X=mCONFIG_PCMCIA_PCNET=mCONFIG_PCMCIA_NMCLAN=mCONFIG_PCMCIA_SMC91C92=mCONFIG_PCMCIA_XIRC2PS=mCONFIG_PCMCIA_AXNET=mCONFIG_PCMCIA_IBMTR=m
#
# Wan interfaces
#
# CONFIG_WAN is not set
#
# ATM drivers
#
# CONFIG_ATM_DUMMY is not setCONFIG_ATM_TCP=mCONFIG_ATM_LANAI=mCONFIG_ATM_ENI=m
# CONFIG_ATM_ENI_DEBUG is not set
# CONFIG_ATM_ENI_TUNE_BURST is not setCONFIG_ATM_FIRESTREAM=m
# CONFIG_ATM_ZATM is not setCONFIG_ATM_NICSTAR=m
# CONFIG_ATM_NICSTAR_USE_SUNI is not set
# CONFIG_ATM_NICSTAR_USE_IDT77105 is not setCONFIG_ATM_IDT77252=m
# CONFIG_ATM_IDT77252_DEBUG is not set
# CONFIG_ATM_IDT77252_RCV_ALL is not setCONFIG_ATM_IDT77252_USE_SUNI=yCONFIG_ATM_AMBASSADOR=m
# CONFIG_ATM_AMBASSADOR_DEBUG is not setCONFIG_ATM_HORIZON=m
# CONFIG_ATM_HORIZON_DEBUG is not set
# CONFIG_ATM_IA is not setCONFIG_ATM_FORE200E_MAYBE=m
# CONFIG_ATM_FORE200E_PCA is not setCONFIG_ATM_HE=m
# CONFIG_ATM_HE_USE_SUNI is not setCONFIG_FDDI=y
# CONFIG_DEFXX is not setCONFIG_SKFP=m
# CONFIG_HIPPI is not setCONFIG_PLIP=mCONFIG_PPP=mCONFIG_PPP_MULTILINK=yCONFIG_PPP_FILTER=yCONFIG_PPP_ASYNC=mCONFIG_PPP_SYNC_TTY=mCONFIG_PPP_DEFLATE=m
# CONFIG_PPP_BSDCOMP is not setCONFIG_PPP_MPPE=mCONFIG_PPPOE=mCONFIG_PPPOATM=mCONFIG_SLIP=mCONFIG_SLIP_COMPRESSED=yCONFIG_SLHC=mCONFIG_SLIP_SMART=y
# CONFIG_SLIP_MODE_SLIP6 is not setCONFIG_NET_FC=y
# CONFIG_SHAPER is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set
#
# ISDN subsystem
#CONFIG_ISDN=m
#
# Old ISDN4Linux
#CONFIG_ISDN_I4L=mCONFIG_ISDN_PPP=yCONFIG_ISDN_PPP_VJ=yCONFIG_ISDN_MPP=yCONFIG_IPPP_FILTER=y
# CONFIG_ISDN_PPP_BSDCOMP is not setCONFIG_ISDN_AUDIO=yCONFIG_ISDN_TTY_FAX=y
#
# ISDN feature submodules
#CONFIG_ISDN_DIVERSION=m
#
# ISDN4Linux hardware drivers
#
#
# Passive cards
#CONFIG_ISDN_DRV_HISAX=m
#
# D-channel protocol features
#CONFIG_HISAX_EURO=yCONFIG_DE_AOC=yCONFIG_HISAX_NO_SENDCOMPLETE=yCONFIG_HISAX_NO_LLC=yCONFIG_HISAX_NO_KEYPAD=yCONFIG_HISAX_1TR6=yCONFIG_HISAX_NI1=yCONFIG_HISAX_MAX_CARDS=8
#
# HiSax supported cards
#
# CONFIG_HISAX_16_0 is not setCONFIG_HISAX_16_3=yCONFIG_HISAX_TELESPCI=yCONFIG_HISAX_S0BOX=y
# CONFIG_HISAX_AVM_A1 is not setCONFIG_HISAX_FRITZPCI=yCONFIG_HISAX_AVM_A1_PCMCIA=yCONFIG_HISAX_ELSA=y
# CONFIG_HISAX_IX1MICROR2 is not setCONFIG_HISAX_DIEHLDIVA=y
# CONFIG_HISAX_ASUSCOM is not set
# CONFIG_HISAX_TELEINT is not set
# CONFIG_HISAX_HFCS is not setCONFIG_HISAX_SEDLBAUER=y
# CONFIG_HISAX_SPORTSTER is not set
# CONFIG_HISAX_MIC is not setCONFIG_HISAX_NETJET=yCONFIG_HISAX_NETJET_U=yCONFIG_HISAX_NICCY=y
# CONFIG_HISAX_ISURF is not set
# CONFIG_HISAX_HSTSAPHIR is not setCONFIG_HISAX_BKM_A4T=yCONFIG_HISAX_SCT_QUADRO=yCONFIG_HISAX_GAZEL=yCONFIG_HISAX_HFC_PCI=yCONFIG_HISAX_W6692=yCONFIG_HISAX_HFC_SX=yCONFIG_HISAX_ENTERNOW_PCI=y
# CONFIG_HISAX_DEBUG is not set
#
# HiSax PCMCIA card service modules
#CONFIG_HISAX_SEDLBAUER_CS=mCONFIG_HISAX_ELSA_CS=mCONFIG_HISAX_AVM_A1_CS=mCONFIG_HISAX_TELES_CS=m
#
# HiSax sub driver modules
#CONFIG_HISAX_ST5481=m
# CONFIG_HISAX_HFCUSB is not setCONFIG_HISAX_HFC4S8S=mCONFIG_HISAX_FRITZ_PCIPNP=mCONFIG_HISAX_HDLC=y
#
# Active cards
#
# CONFIG_ISDN_DRV_ICN is not set
# CONFIG_ISDN_DRV_PCBIT is not set
# CONFIG_ISDN_DRV_SC is not set
# CONFIG_ISDN_DRV_ACT2000 is not set
#
# Siemens Gigaset
#CONFIG_ISDN_DRV_GIGASET=mCONFIG_GIGASET_BASE=mCONFIG_GIGASET_M105=m
# CONFIG_GIGASET_M101 is not set
# CONFIG_GIGASET_DEBUG is not set
# CONFIG_GIGASET_UNDOCREQ is not set
#
# CAPI subsystem
#CONFIG_ISDN_CAPI=mCONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=yCONFIG_ISDN_CAPI_MIDDLEWARE=yCONFIG_ISDN_CAPI_CAPI20=mCONFIG_ISDN_CAPI_CAPIFS_BOOL=yCONFIG_ISDN_CAPI_CAPIFS=mCONFIG_ISDN_CAPI_CAPIDRV=m
#
# CAPI hardware drivers
#
#
# Active AVM cards
#CONFIG_CAPI_AVM=y
# CONFIG_ISDN_DRV_AVMB1_B1ISA is not setCONFIG_ISDN_DRV_AVMB1_B1PCI=mCONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
# CONFIG_ISDN_DRV_AVMB1_T1ISA is not setCONFIG_ISDN_DRV_AVMB1_B1PCMCIA=mCONFIG_ISDN_DRV_AVMB1_AVM_CS=mCONFIG_ISDN_DRV_AVMB1_T1PCI=mCONFIG_ISDN_DRV_AVMB1_C4=m
#
# Active Eicon DIVA Server cards
#CONFIG_CAPI_EICON=yCONFIG_ISDN_DIVAS=mCONFIG_ISDN_DIVAS_BRIPCI=yCONFIG_ISDN_DIVAS_PRIPCI=yCONFIG_ISDN_DIVAS_DIVACAPI=mCONFIG_ISDN_DIVAS_USERIDI=mCONFIG_ISDN_DIVAS_MAINT=m
#
# Telephony Support
#
# CONFIG_PHONE is not set
#
# Input device support
#CONFIG_INPUT=yCONFIG_INPUT_FF_MEMLESS=y
#
# Userland interfaces
#CONFIG_INPUT_MOUSEDEV=y
# CONFIG_INPUT_MOUSEDEV_PSAUX is not setCONFIG_INPUT_MOUSEDEV_SCREEN_X=1024CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768CONFIG_INPUT_JOYDEV=m
# CONFIG_INPUT_TSDEV is not setCONFIG_INPUT_EVDEV=y
# CONFIG_INPUT_EVBUG is not set
#
# Input Device Drivers
#CONFIG_INPUT_KEYBOARD=yCONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_LKKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not setCONFIG_KEYBOARD_STOWAWAY=mCONFIG_INPUT_MOUSE=yCONFIG_MOUSE_PS2=yCONFIG_MOUSE_SERIAL=m
# CONFIG_MOUSE_INPORT is not set
# CONFIG_MOUSE_LOGIBM is not set
# CONFIG_MOUSE_PC110PAD is not setCONFIG_MOUSE_VSXXXAA=mCONFIG_INPUT_JOYSTICK=yCONFIG_JOYSTICK_ANALOG=mCONFIG_JOYSTICK_A3D=mCONFIG_JOYSTICK_ADI=mCONFIG_JOYSTICK_COBRA=mCONFIG_JOYSTICK_GF2K=mCONFIG_JOYSTICK_GRIP=mCONFIG_JOYSTICK_GRIP_MP=mCONFIG_JOYSTICK_GUILLEMOT=mCONFIG_JOYSTICK_INTERACT=mCONFIG_JOYSTICK_SIDEWINDER=mCONFIG_JOYSTICK_TMDC=mCONFIG_JOYSTICK_IFORCE=mCONFIG_JOYSTICK_IFORCE_USB=yCONFIG_JOYSTICK_IFORCE_232=yCONFIG_JOYSTICK_WARRIOR=mCONFIG_JOYSTICK_MAGELLAN=mCONFIG_JOYSTICK_SPACEORB=mCONFIG_JOYSTICK_SPACEBALL=mCONFIG_JOYSTICK_STINGER=mCONFIG_JOYSTICK_TWIDJOY=mCONFIG_JOYSTICK_DB9=mCONFIG_JOYSTICK_GAMECON=mCONFIG_JOYSTICK_TURBOGRAFX=mCONFIG_JOYSTICK_JOYDUMP=mCONFIG_INPUT_TOUCHSCREEN=yCONFIG_TOUCHSCREEN_GUNZE=mCONFIG_TOUCHSCREEN_ELO=mCONFIG_TOUCHSCREEN_MTOUCH=mCONFIG_TOUCHSCREEN_MK712=mCONFIG_TOUCHSCREEN_PENMOUNT=mCONFIG_TOUCHSCREEN_TOUCHRIGHT=mCONFIG_TOUCHSCREEN_TOUCHWIN=mCONFIG_TOUCHSCREEN_UCB1400=mCONFIG_INPUT_MISC=yCONFIG_INPUT_PCSPKR=mCONFIG_INPUT_WISTRON_BTNS=m
# CONFIG_INPUT_ATLAS_BTNS is not setCONFIG_INPUT_UINPUT=m
#
# Hardware I/O ports
#CONFIG_SERIO=yCONFIG_SERIO_I8042=yCONFIG_SERIO_SERPORT=y
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PARKBD is not set
# CONFIG_SERIO_PCIPS2 is not setCONFIG_SERIO_LIBPS2=yCONFIG_SERIO_RAW=mCONFIG_GAMEPORT=mCONFIG_GAMEPORT_NS558=mCONFIG_GAMEPORT_L4=mCONFIG_GAMEPORT_EMU10K1=mCONFIG_GAMEPORT_FM801=m
#
# Character devices
#CONFIG_VT=yCONFIG_VT_CONSOLE=yCONFIG_HW_CONSOLE=yCONFIG_VT_HW_CONSOLE_BINDING=yCONFIG_SERIAL_NONSTANDARD=y
# CONFIG_COMPUTONE is not set
# CONFIG_ROCKETPORT is not setCONFIG_CYCLADES=m
# CONFIG_CYZ_INTR is not set
# CONFIG_DIGIEPCA is not set
# CONFIG_ESPSERIAL is not set
# CONFIG_MOXA_INTELLIO is not set
# CONFIG_MOXA_SMARTIO is not setCONFIG_MOXA_SMARTIO_NEW=m
# CONFIG_ISI is not setCONFIG_SYNCLINK=mCONFIG_SYNCLINKMP=mCONFIG_SYNCLINK_GT=mCONFIG_N_HDLC=m
# CONFIG_SPECIALIX is not set
# CONFIG_SX is not set
# CONFIG_RIO is not set
# CONFIG_STALDRV is not set
#
# Serial drivers
#CONFIG_SERIAL_8250=yCONFIG_SERIAL_8250_CONSOLE=yCONFIG_SERIAL_8250_PCI=yCONFIG_SERIAL_8250_PNP=yCONFIG_SERIAL_8250_CS=mCONFIG_SERIAL_8250_NR_UARTS=32CONFIG_SERIAL_8250_RUNTIME_UARTS=4CONFIG_SERIAL_8250_EXTENDED=yCONFIG_SERIAL_8250_MANY_PORTS=y
# CONFIG_SERIAL_8250_FOURPORT is not set
# CONFIG_SERIAL_8250_ACCENT is not set
# CONFIG_SERIAL_8250_BOCA is not setCONFIG_SERIAL_8250_EXAR_ST16C554=m
# CONFIG_SERIAL_8250_HUB6 is not setCONFIG_SERIAL_8250_SHARE_IRQ=yCONFIG_SERIAL_8250_DETECT_IRQ=yCONFIG_SERIAL_8250_RSA=y
#
# Non-8250 serial port support
#CONFIG_SERIAL_CORE=yCONFIG_SERIAL_CORE_CONSOLE=yCONFIG_SERIAL_JSM=mCONFIG_UNIX98_PTYS=y
# CONFIG_LEGACY_PTYS is not setCONFIG_PRINTER=mCONFIG_LP_CONSOLE=yCONFIG_PPDEV=mCONFIG_TIPAR=m
#
# IPMI
#CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not setCONFIG_IPMI_DEVICE_INTERFACE=mCONFIG_IPMI_SI=mCONFIG_IPMI_WATCHDOG=mCONFIG_IPMI_POWEROFF=m
#
# Watchdog Cards
#CONFIG_WATCHDOG=y
# CONFIG_WATCHDOG_NOWAYOUT is not set
#
# Watchdog Device Drivers
#CONFIG_SOFT_WATCHDOG=m
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_ADVANTECH_WDT is not setCONFIG_ALIM1535_WDT=mCONFIG_ALIM7101_WDT=m
# CONFIG_SC520_WDT is not set
# CONFIG_EUROTECH_WDT is not set
# CONFIG_IB700_WDT is not setCONFIG_IBMASR=m
# CONFIG_WAFER_WDT is not setCONFIG_I6300ESB_WDT=mCONFIG_I8XX_TCO=mCONFIG_ITCO_WDT=mCONFIG_ITCO_VENDOR_SUPPORT=y
# CONFIG_SC1200_WDT is not setCONFIG_PC87413_WDT=m
# CONFIG_60XX_WDT is not set
# CONFIG_SBC8360_WDT is not set
# CONFIG_CPU5_WDT is not set
# CONFIG_SMSC37B787_WDT is not setCONFIG_W83627HF_WDT=mCONFIG_W83697HF_WDT=mCONFIG_W83877F_WDT=mCONFIG_W83977F_WDT=mCONFIG_MACHZ_WDT=m
# CONFIG_SBC_EPX_C3_WATCHDOG is not set
#
# ISA-based Watchdog Cards
#
# CONFIG_PCWATCHDOG is not set
# CONFIG_MIXCOMWD is not set
# CONFIG_WDT is not set
#
# PCI-based Watchdog Cards
#CONFIG_PCIPCWATCHDOG=mCONFIG_WDTPCI=mCONFIG_WDT_501_PCI=y
#
# USB-based Watchdog Cards
#CONFIG_USBPCWATCHDOG=mCONFIG_HW_RANDOM=yCONFIG_HW_RANDOM_INTEL=mCONFIG_HW_RANDOM_AMD=mCONFIG_HW_RANDOM_GEODE=mCONFIG_HW_RANDOM_VIA=mCONFIG_NVRAM=yCONFIG_RTC=yCONFIG_DTLK=mCONFIG_R3964=m
# CONFIG_APPLICOM is not setCONFIG_SONYPI=mCONFIG_AGP=yCONFIG_AGP_ALI=yCONFIG_AGP_ATI=yCONFIG_AGP_AMD=yCONFIG_AGP_AMD64=yCONFIG_AGP_INTEL=yCONFIG_AGP_NVIDIA=yCONFIG_AGP_SIS=yCONFIG_AGP_SWORKS=yCONFIG_AGP_VIA=yCONFIG_AGP_EFFICEON=yCONFIG_DRM=mCONFIG_DRM_TDFX=mCONFIG_DRM_R128=mCONFIG_DRM_RADEON=mCONFIG_DRM_I810=mCONFIG_DRM_I830=mCONFIG_DRM_I915=mCONFIG_DRM_MGA=mCONFIG_DRM_SIS=mCONFIG_DRM_VIA=mCONFIG_DRM_SAVAGE=m
#
# PCMCIA character devices
#
# CONFIG_SYNCLINK_CS is not setCONFIG_CARDMAN_4000=mCONFIG_CARDMAN_4040=mCONFIG_MWAVE=m
CONFIG_PC8736x_GPIO=mCONFIG_NSC_GPIO=mCONFIG_CS5535_GPIO=m
# CONFIG_RAW_DRIVER is not setCONFIG_HPET=y
# CONFIG_HPET_RTC_IRQ is not set
# CONFIG_HPET_MMAP is not setCONFIG_HANGCHECK_TIMER=m
#
# TPM devices
#CONFIG_TCG_TPM=mCONFIG_TCG_TIS=mCONFIG_TCG_NSC=mCONFIG_TCG_ATMEL=mCONFIG_TCG_INFINEON=m
# CONFIG_TELCLOCK is not set
#
# I2C support
#CONFIG_I2C=mCONFIG_I2C_CHARDEV=m
#
# I2C Algorithms
#CONFIG_I2C_ALGOBIT=mCONFIG_I2C_ALGOPCF=mCONFIG_I2C_ALGOPCA=m
#
# I2C Hardware Bus support
#CONFIG_I2C_ALI1535=mCONFIG_I2C_ALI1563=mCONFIG_I2C_ALI15X3=mCONFIG_I2C_AMD756=mCONFIG_I2C_AMD756_S4882=mCONFIG_I2C_AMD8111=mCONFIG_I2C_I801=mCONFIG_I2C_I810=mCONFIG_I2C_PIIX4=mCONFIG_I2C_ISA=mCONFIG_I2C_NFORCE2=m
# CONFIG_I2C_OCORES is not setCONFIG_I2C_PARPORT=mCONFIG_I2C_PARPORT_LIGHT=m
# CONFIG_I2C_PASEMI is not setCONFIG_I2C_PROSAVAGE=mCONFIG_I2C_SAVAGE4=m
# CONFIG_SCx200_ACB is not setCONFIG_I2C_SIS5595=mCONFIG_I2C_SIS630=mCONFIG_I2C_SIS96X=mCONFIG_I2C_STUB=mCONFIG_I2C_VIA=mCONFIG_I2C_VIAPRO=mCONFIG_I2C_VOODOO3=mCONFIG_I2C_PCA_ISA=m
#
# Miscellaneous I2C Chip support
#CONFIG_SENSORS_DS1337=mCONFIG_SENSORS_DS1374=mCONFIG_SENSORS_EEPROM=mCONFIG_SENSORS_PCF8574=mCONFIG_SENSORS_PCA9539=mCONFIG_SENSORS_PCF8591=mCONFIG_SENSORS_MAX6875=m
# CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
# CONFIG_I2C_DEBUG_CHIP is not set
#
# SPI support
#
# CONFIG_SPI is not set
# CONFIG_SPI_MASTER is not set
#
# Dallas's 1-wire bus
#CONFIG_W1=mCONFIG_W1_CON=y
#
# 1-wire Bus Masters
#CONFIG_W1_MASTER_MATROX=mCONFIG_W1_MASTER_DS2490=mCONFIG_W1_MASTER_DS2482=m
#
# 1-wire Slaves
#CONFIG_W1_SLAVE_THERM=mCONFIG_W1_SLAVE_SMEM=mCONFIG_W1_SLAVE_DS2433=mCONFIG_W1_SLAVE_DS2433_CRC=y
#
# Hardware Monitoring support
#CONFIG_HWMON=mCONFIG_HWMON_VID=mCONFIG_SENSORS_ABITUGURU=mCONFIG_SENSORS_ADM1021=mCONFIG_SENSORS_ADM1025=mCONFIG_SENSORS_ADM1026=m
# CONFIG_SENSORS_ADM1029 is not setCONFIG_SENSORS_ADM1031=mCONFIG_SENSORS_ADM9240=mCONFIG_SENSORS_K8TEMP=mCONFIG_SENSORS_ASB100=mCONFIG_SENSORS_ATXP1=mCONFIG_SENSORS_DS1621=mCONFIG_SENSORS_F71805F=mCONFIG_SENSORS_FSCHER=mCONFIG_SENSORS_FSCPOS=mCONFIG_SENSORS_GL518SM=mCONFIG_SENSORS_GL520SM=mCONFIG_SENSORS_IT87=mCONFIG_SENSORS_LM63=mCONFIG_SENSORS_LM75=mCONFIG_SENSORS_LM77=mCONFIG_SENSORS_LM78=mCONFIG_SENSORS_LM80=mCONFIG_SENSORS_LM83=mCONFIG_SENSORS_LM85=mCONFIG_SENSORS_LM87=mCONFIG_SENSORS_LM90=mCONFIG_SENSORS_LM92=mCONFIG_SENSORS_MAX1619=mCONFIG_SENSORS_PC87360=mCONFIG_SENSORS_PC87427=mCONFIG_SENSORS_SIS5595=mCONFIG_SENSORS_SMSC47M1=mCONFIG_SENSORS_SMSC47M192=mCONFIG_SENSORS_SMSC47B397=mCONFIG_SENSORS_VIA686A=mCONFIG_SENSORS_VT1211=mCONFIG_SENSORS_VT8231=mCONFIG_SENSORS_W83781D=mCONFIG_SENSORS_W83791D=mCONFIG_SENSORS_W83792D=mCONFIG_SENSORS_W83793=mCONFIG_SENSORS_W83L785TS=mCONFIG_SENSORS_W83627HF=mCONFIG_SENSORS_W83627EHF=mCONFIG_SENSORS_HDAPS=m
# CONFIG_HWMON_DEBUG_CHIP is not set
#
# Multifunction device drivers
#
# CONFIG_MFD_SM501 is not set
#
# Multimedia devices
#CONFIG_VIDEO_DEV=mCONFIG_VIDEO_V4L1=yCONFIG_VIDEO_V4L1_COMPAT=yCONFIG_VIDEO_V4L2=y
#
# Video Capture Adapters
#
#
# Video Capture Adapters
#
# CONFIG_VIDEO_ADV_DEBUG is not setCONFIG_VIDEO_HELPER_CHIPS_AUTO=yCONFIG_VIDEO_TVAUDIO=mCONFIG_VIDEO_TDA7432=mCONFIG_VIDEO_TDA9840=mCONFIG_VIDEO_TDA9875=mCONFIG_VIDEO_TEA6415C=mCONFIG_VIDEO_TEA6420=mCONFIG_VIDEO_MSP3400=mCONFIG_VIDEO_WM8775=mCONFIG_VIDEO_BT819=mCONFIG_VIDEO_BT856=mCONFIG_VIDEO_KS0127=mCONFIG_VIDEO_OV7670=mCONFIG_VIDEO_SAA7110=mCONFIG_VIDEO_SAA7111=mCONFIG_VIDEO_SAA7114=mCONFIG_VIDEO_SAA711X=mCONFIG_VIDEO_TVP5150=mCONFIG_VIDEO_VPX3220=mCONFIG_VIDEO_CX25840=mCONFIG_VIDEO_CX2341X=mCONFIG_VIDEO_SAA7185=mCONFIG_VIDEO_ADV7170=mCONFIG_VIDEO_ADV7175=m
# CONFIG_VIDEO_VIVI is not setCONFIG_VIDEO_BT848=mCONFIG_VIDEO_BT848_DVB=yCONFIG_VIDEO_SAA6588=m
# CONFIG_VIDEO_PMS is not setCONFIG_VIDEO_BWQCAM=mCONFIG_VIDEO_CQCAM=mCONFIG_VIDEO_W9966=mCONFIG_VIDEO_CPIA=mCONFIG_VIDEO_CPIA_PP=mCONFIG_VIDEO_CPIA_USB=mCONFIG_VIDEO_CPIA2=mCONFIG_VIDEO_SAA5246A=mCONFIG_VIDEO_SAA5249=mCONFIG_TUNER_3036=mCONFIG_VIDEO_STRADIS=mCONFIG_VIDEO_ZORAN_ZR36060=mCONFIG_VIDEO_ZORAN=mCONFIG_VIDEO_ZORAN_BUZ=mCONFIG_VIDEO_ZORAN_DC10=mCONFIG_VIDEO_ZORAN_DC30=mCONFIG_VIDEO_ZORAN_LML33=mCONFIG_VIDEO_ZORAN_LML33R10=mCONFIG_VIDEO_ZORAN_AVS6EYES=mCONFIG_VIDEO_MEYE=mCONFIG_VIDEO_SAA7134=mCONFIG_VIDEO_SAA7134_ALSA=mCONFIG_VIDEO_SAA7134_DVB=mCONFIG_VIDEO_MXB=mCONFIG_VIDEO_DPC=mCONFIG_VIDEO_HEXIUM_ORION=mCONFIG_VIDEO_HEXIUM_GEMINI=mCONFIG_VIDEO_CX88=mCONFIG_VIDEO_CX88_ALSA=mCONFIG_VIDEO_CX88_BLACKBIRD=mCONFIG_VIDEO_CX88_DVB=mCONFIG_VIDEO_CX88_VP3054=mCONFIG_VIDEO_CAFE_CCIC=m
#
# V4L USB devices
#CONFIG_VIDEO_PVRUSB2=m
# CONFIG_VIDEO_PVRUSB2_29XXX is not setCONFIG_VIDEO_PVRUSB2_24XXX=yCONFIG_VIDEO_PVRUSB2_SYSFS=y
# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not setCONFIG_VIDEO_EM28XX=mCONFIG_VIDEO_USBVISION=mCONFIG_VIDEO_USBVIDEO=mCONFIG_USB_VICAM=mCONFIG_USB_IBMCAM=mCONFIG_USB_KONICAWC=mCONFIG_USB_QUICKCAM_MESSENGER=mCONFIG_USB_ET61X251=mCONFIG_VIDEO_OVCAMCHIP=mCONFIG_USB_W9968CF=mCONFIG_USB_OV511=mCONFIG_USB_SE401=mCONFIG_USB_SN9C102=mCONFIG_USB_STV680=mCONFIG_USB_ZC0301=mCONFIG_USB_PWC=m
# CONFIG_USB_PWC_DEBUG is not set
#
# Radio Adapters
#
# CONFIG_RADIO_CADET is not set
# CONFIG_RADIO_RTRACK is not set
# CONFIG_RADIO_RTRACK2 is not set
# CONFIG_RADIO_AZTECH is not set
# CONFIG_RADIO_GEMTEK is not setCONFIG_RADIO_GEMTEK_PCI=mCONFIG_RADIO_MAXIRADIO=mCONFIG_RADIO_MAESTRO=m
# CONFIG_RADIO_SF16FMI is not set
# CONFIG_RADIO_SF16FMR2 is not set
# CONFIG_RADIO_TERRATEC is not set
# CONFIG_RADIO_TRUST is not set
# CONFIG_RADIO_TYPHOON is not set
# CONFIG_RADIO_ZOLTRIX is not setCONFIG_USB_DSBR=m
#
# Digital Video Broadcasting Devices
#CONFIG_DVB=yCONFIG_DVB_CORE=m
# CONFIG_DVB_CORE_ATTACH is not set
#
# Supported SAA7146 based PCI Adapters
#CONFIG_DVB_AV7110=mCONFIG_DVB_AV7110_OSD=yCONFIG_DVB_BUDGET=mCONFIG_DVB_BUDGET_CI=mCONFIG_DVB_BUDGET_AV=mCONFIG_DVB_BUDGET_PATCH=m
#
# Supported USB Adapters
#CONFIG_DVB_USB=m
# CONFIG_DVB_USB_DEBUG is not setCONFIG_DVB_USB_A800=mCONFIG_DVB_USB_DIBUSB_MB=m
# CONFIG_DVB_USB_DIBUSB_MB_FAULTY is not setCONFIG_DVB_USB_DIBUSB_MC=mCONFIG_DVB_USB_DIB0700=mCONFIG_DVB_USB_UMT_010=mCONFIG_DVB_USB_CXUSB=m
# CONFIG_DVB_USB_M920X is not set
# CONFIG_DVB_USB_GL861 is not set
# CONFIG_DVB_USB_AU6610 is not setCONFIG_DVB_USB_DIGITV=mCONFIG_DVB_USB_VP7045=mCONFIG_DVB_USB_VP702X=mCONFIG_DVB_USB_GP8PSK=mCONFIG_DVB_USB_NOVA_T_USB2=mCONFIG_DVB_USB_TTUSB2=mCONFIG_DVB_USB_DTT200U=mCONFIG_DVB_TTUSB_BUDGET=mCONFIG_DVB_TTUSB_DEC=mCONFIG_DVB_CINERGYT2=mCONFIG_DVB_CINERGYT2_TUNING=yCONFIG_DVB_CINERGYT2_STREAM_URB_COUNT=32CONFIG_DVB_CINERGYT2_STREAM_BUF_SIZE=512CONFIG_DVB_CINERGYT2_QUERY_INTERVAL=250CONFIG_DVB_CINERGYT2_ENABLE_RC_INPUT_DEVICE=yCONFIG_DVB_CINERGYT2_RC_QUERY_INTERVAL=100
#
# Supported FlexCopII (B2C2) Adapters
#CONFIG_DVB_B2C2_FLEXCOP=mCONFIG_DVB_B2C2_FLEXCOP_PCI=mCONFIG_DVB_B2C2_FLEXCOP_USB=m
# CONFIG_DVB_B2C2_FLEXCOP_DEBUG is not set
#
# Supported BT878 Adapters
#CONFIG_DVB_BT8XX=m
#
# Supported Pluto2 Adapters
#CONFIG_DVB_PLUTO2=m
#
# Supported DVB Frontends
#
#
# Customise DVB Frontends
#
# CONFIG_DVB_FE_CUSTOMISE is not set
#
# DVB-S (satellite) frontends
#CONFIG_DVB_STV0299=mCONFIG_DVB_CX24110=mCONFIG_DVB_CX24123=mCONFIG_DVB_TDA8083=mCONFIG_DVB_MT312=mCONFIG_DVB_VES1X93=mCONFIG_DVB_S5H1420=mCONFIG_DVB_TDA10086=m
#
# DVB-T (terrestrial) frontends
#CONFIG_DVB_SP8870=mCONFIG_DVB_SP887X=mCONFIG_DVB_CX22700=mCONFIG_DVB_CX22702=mCONFIG_DVB_L64781=mCONFIG_DVB_TDA1004X=mCONFIG_DVB_NXT6000=mCONFIG_DVB_MT352=mCONFIG_DVB_ZL10353=mCONFIG_DVB_DIB3000MB=mCONFIG_DVB_DIB3000MC=mCONFIG_DVB_DIB7000M=mCONFIG_DVB_DIB7000P=m
#
# DVB-C (cable) frontends
#CONFIG_DVB_VES1820=mCONFIG_DVB_TDA10021=mCONFIG_DVB_STV0297=m
#
# ATSC (North American/Korean Terrestrial/Cable DTV) frontends #CONFIG_DVB_NXT200X=mCONFIG_DVB_OR51211=mCONFIG_DVB_OR51132=mCONFIG_DVB_BCM3510=mCONFIG_DVB_LGDT330X=m
#
# Tuners/PLL support
#CONFIG_DVB_PLL=mCONFIG_DVB_TDA826X=m
# CONFIG_DVB_TUNER_QT1010 is not setCONFIG_DVB_TUNER_MT2060=mCONFIG_DVB_TUNER_LGH06XF=m
#
# Miscellaneous devices
#CONFIG_DVB_LNBP21=mCONFIG_DVB_ISL6421=mCONFIG_DVB_TUA6100=mCONFIG_VIDEO_SAA7146=mCONFIG_VIDEO_SAA7146_VV=mCONFIG_VIDEO_TUNER=mCONFIG_VIDEO_BUF=mCONFIG_VIDEO_BUF_DVB=mCONFIG_VIDEO_BTCX=mCONFIG_VIDEO_IR=mCONFIG_VIDEO_TVEEPROM=mCONFIG_USB_DABUSB=m
#
# Graphics support
#CONFIG_BACKLIGHT_LCD_SUPPORT=yCONFIG_BACKLIGHT_CLASS_DEVICE=yCONFIG_LCD_CLASS_DEVICE=m
# CONFIG_BACKLIGHT_PROGEAR is not setCONFIG_FB=y
# CONFIG_FIRMWARE_EDID is not setCONFIG_FB_DDC=mCONFIG_FB_CFB_FILLRECT=yCONFIG_FB_CFB_COPYAREA=yCONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_SVGALIB is not set
# CONFIG_FB_MACMODES is not setCONFIG_FB_BACKLIGHT=yCONFIG_FB_MODE_HELPERS=yCONFIG_FB_TILEBLITTING=y
#
# Frambuffer hardware drivers
#CONFIG_FB_CIRRUS=m
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not setCONFIG_FB_VGA16=mCONFIG_FB_VESA=y
# CONFIG_FB_IMAC is not set
# CONFIG_FB_HGA is not set
# CONFIG_FB_S1D13XXX is not setCONFIG_FB_NVIDIA=mCONFIG_FB_NVIDIA_I2C=yCONFIG_FB_NVIDIA_BACKLIGHT=yCONFIG_FB_RIVA=m
# CONFIG_FB_RIVA_I2C is not set
# CONFIG_FB_RIVA_DEBUG is not setCONFIG_FB_RIVA_BACKLIGHT=yCONFIG_FB_I810=mCONFIG_FB_I810_GTF=yCONFIG_FB_I810_I2C=yCONFIG_FB_INTEL=m
# CONFIG_FB_INTEL_DEBUG is not setCONFIG_FB_INTEL_I2C=yCONFIG_FB_MATROX=mCONFIG_FB_MATROX_MILLENIUM=yCONFIG_FB_MATROX_MYSTIQUE=yCONFIG_FB_MATROX_G=yCONFIG_FB_MATROX_I2C=mCONFIG_FB_MATROX_MAVEN=mCONFIG_FB_MATROX_MULTIHEAD=yCONFIG_FB_RADEON=mCONFIG_FB_RADEON_I2C=yCONFIG_FB_RADEON_BACKLIGHT=y
# CONFIG_FB_RADEON_DEBUG is not setCONFIG_FB_ATY128=mCONFIG_FB_ATY128_BACKLIGHT=yCONFIG_FB_ATY=mCONFIG_FB_ATY_CT=yCONFIG_FB_ATY_GENERIC_LCD=yCONFIG_FB_ATY_GX=yCONFIG_FB_ATY_BACKLIGHT=y
# CONFIG_FB_S3 is not setCONFIG_FB_SAVAGE=mCONFIG_FB_SAVAGE_I2C=yCONFIG_FB_SAVAGE_ACCEL=y
# CONFIG_FB_SIS is not setCONFIG_FB_NEOMAGIC=mCONFIG_FB_KYRO=mCONFIG_FB_3DFX=mCONFIG_FB_3DFX_ACCEL=yCONFIG_FB_VOODOO1=mCONFIG_FB_CYBLA=mCONFIG_FB_TRIDENT=mCONFIG_FB_TRIDENT_ACCEL=y
# CONFIG_FB_GEODE is not set
# CONFIG_FB_VIRTUAL is not set
#
# Console display driver support
#CONFIG_VGA_CONSOLE=yCONFIG_VGACON_SOFT_SCROLLBACK=yCONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64CONFIG_VIDEO_SELECT=y
# CONFIG_MDA_CONSOLE is not setCONFIG_DUMMY_CONSOLE=yCONFIG_FRAMEBUFFER_CONSOLE=yCONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
# CONFIG_FONTS is not set
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
#
# Logo configuration
#CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_MONO is not set
# CONFIG_LOGO_LINUX_VGA16 is not setCONFIG_LOGO_LINUX_CLUT224=y
#
# Sound
#CONFIG_SOUND=m
#
# Advanced Linux Sound Architecture
#CONFIG_SND=mCONFIG_SND_TIMER=mCONFIG_SND_PCM=mCONFIG_SND_HWDEP=mCONFIG_SND_RAWMIDI=mCONFIG_SND_SEQUENCER=mCONFIG_SND_SEQ_DUMMY=mCONFIG_SND_OSSEMUL=yCONFIG_SND_MIXER_OSS=mCONFIG_SND_PCM_OSS=mCONFIG_SND_PCM_OSS_PLUGINS=yCONFIG_SND_SEQUENCER_OSS=yCONFIG_SND_RTCTIMER=mCONFIG_SND_SEQ_RTCTIMER_DEFAULT=yCONFIG_SND_DYNAMIC_MINORS=y
# CONFIG_SND_SUPPORT_OLD_API is not setCONFIG_SND_VERBOSE_PROCFS=y
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set
#
# Generic devices
#CONFIG_SND_MPU401_UART=mCONFIG_SND_OPL3_LIB=mCONFIG_SND_OPL4_LIB=mCONFIG_SND_VX_LIB=mCONFIG_SND_AC97_CODEC=mCONFIG_SND_DUMMY=mCONFIG_SND_VIRMIDI=mCONFIG_SND_MTPAV=mCONFIG_SND_MTS64=m
# CONFIG_SND_SERIAL_U16550 is not setCONFIG_SND_MPU401=m
# CONFIG_SND_PORTMAN2X4 is not set
#
# ISA devices
#CONFIG_SND_CS4231_LIB=mCONFIG_SND_ADLIB=m
# CONFIG_SND_AD1816A is not set
# CONFIG_SND_AD1848 is not set
# CONFIG_SND_ALS100 is not set
# CONFIG_SND_AZT2320 is not set
# CONFIG_SND_CMI8330 is not set
# CONFIG_SND_CS4231 is not set
# CONFIG_SND_CS4232 is not setCONFIG_SND_CS4236=m
# CONFIG_SND_DT019X is not set
# CONFIG_SND_ES968 is not set
# CONFIG_SND_ES1688 is not setCONFIG_SND_ES18XX=m
# CONFIG_SND_GUSCLASSIC is not set
# CONFIG_SND_GUSEXTREME is not set
# CONFIG_SND_GUSMAX is not set
# CONFIG_SND_INTERWAVE is not set
# CONFIG_SND_INTERWAVE_STB is not setCONFIG_SND_OPL3SA2=m
# CONFIG_SND_OPTI92X_AD1848 is not set
# CONFIG_SND_OPTI92X_CS4231 is not set
# CONFIG_SND_OPTI93X is not setCONFIG_SND_MIRO=m
# CONFIG_SND_SB8 is not setCONFIG_SND_SB16=mCONFIG_SND_SBAWE=m
# CONFIG_SND_SB16_CSP is not set
# CONFIG_SND_SGALAXY is not set
# CONFIG_SND_SSCAPE is not set
# CONFIG_SND_WAVEFRONT is not set
#
# PCI devices
#CONFIG_SND_AD1889=mCONFIG_SND_ALS300=mCONFIG_SND_ALS4000=mCONFIG_SND_ALI5451=mCONFIG_SND_ATIIXP=mCONFIG_SND_ATIIXP_MODEM=mCONFIG_SND_AU8810=mCONFIG_SND_AU8820=mCONFIG_SND_AU8830=mCONFIG_SND_AZT3328=mCONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not setCONFIG_SND_CA0106=mCONFIG_SND_CMIPCI=mCONFIG_SND_CS4281=mCONFIG_SND_CS46XX=mCONFIG_SND_CS46XX_NEW_DSP=yCONFIG_SND_CS5535AUDIO=mCONFIG_SND_DARLA20=mCONFIG_SND_GINA20=mCONFIG_SND_LAYLA20=mCONFIG_SND_DARLA24=mCONFIG_SND_GINA24=mCONFIG_SND_LAYLA24=mCONFIG_SND_MONA=mCONFIG_SND_MIA=mCONFIG_SND_ECHO3G=mCONFIG_SND_INDIGO=mCONFIG_SND_INDIGOIO=mCONFIG_SND_INDIGODJ=mCONFIG_SND_EMU10K1=mCONFIG_SND_EMU10K1X=mCONFIG_SND_ENS1370=mCONFIG_SND_ENS1371=mCONFIG_SND_ES1938=mCONFIG_SND_ES1968=mCONFIG_SND_FM801=mCONFIG_SND_FM801_TEA575X_BOOL=yCONFIG_SND_FM801_TEA575X=mCONFIG_SND_HDA_INTEL=mCONFIG_SND_HDSP=mCONFIG_SND_HDSPM=mCONFIG_SND_ICE1712=mCONFIG_SND_ICE1724=mCONFIG_SND_INTEL8X0=mCONFIG_SND_INTEL8X0M=mCONFIG_SND_KORG1212=mCONFIG_SND_MAESTRO3=mCONFIG_SND_MIXART=mCONFIG_SND_NM256=mCONFIG_SND_PCXHR=mCONFIG_SND_RIPTIDE=mCONFIG_SND_RME32=mCONFIG_SND_RME96=mCONFIG_SND_RME9652=mCONFIG_SND_SONICVIBES=mCONFIG_SND_TRIDENT=mCONFIG_SND_VIA82XX=mCONFIG_SND_VIA82XX_MODEM=mCONFIG_SND_VX222=mCONFIG_SND_YMFPCI=mCONFIG_SND_AC97_POWER_SAVE=y
#
# USB devices
#CONFIG_SND_USB_AUDIO=mCONFIG_SND_USB_USX2Y=m
#
# PCMCIA devices
#
# CONFIG_SND_VXPOCKET is not set
# CONFIG_SND_PDAUDIOCF is not set
#
# SoC audio support
#
# CONFIG_SND_SOC is not set
#
# Open Sound System
#
# CONFIG_SOUND_PRIME is not setCONFIG_AC97_BUS=m
#
# HID Devices
#CONFIG_HID=m
# CONFIG_HID_DEBUG is not set
#
# USB support
#CONFIG_USB_ARCH_HAS_HCD=yCONFIG_USB_ARCH_HAS_OHCI=yCONFIG_USB_ARCH_HAS_EHCI=yCONFIG_USB=y
# CONFIG_USB_DEBUG is not set
#
# Miscellaneous USB options
#CONFIG_USB_DEVICEFS=y
# CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_SUSPEND is not set
# CONFIG_USB_OTG is not set
#
# USB Host Controller Drivers
#CONFIG_USB_EHCI_HCD=mCONFIG_USB_EHCI_SPLIT_ISO=yCONFIG_USB_EHCI_ROOT_HUB_TT=yCONFIG_USB_EHCI_TT_NEWSCHED=y
# CONFIG_USB_EHCI_BIG_ENDIAN_MMIO is not setCONFIG_USB_ISP116X_HCD=mCONFIG_USB_OHCI_HCD=m
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not setCONFIG_USB_OHCI_LITTLE_ENDIAN=yCONFIG_USB_UHCI_HCD=mCONFIG_USB_U132_HCD=mCONFIG_USB_SL811_HCD=mCONFIG_USB_SL811_CS=m
#
# USB Device Class drivers
#CONFIG_USB_ACM=mCONFIG_USB_PRINTER=m
#
# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' #
#
# may also be needed; see USB_STORAGE Help for more information # CONFIG_USB_STORAGE=m # CONFIG_USB_STORAGE_DEBUG is not set CONFIG_USB_STORAGE_DATAFAB=y CONFIG_USB_STORAGE_FREECOM=y CONFIG_USB_STORAGE_ISD200=y CONFIG_USB_STORAGE_DPCM=y CONFIG_USB_STORAGE_USBAT=y CONFIG_USB_STORAGE_SDDR09=y CONFIG_USB_STORAGE_SDDR55=y CONFIG_USB_STORAGE_JUMPSHOT=y CONFIG_USB_STORAGE_ALAUDA=y CONFIG_USB_STORAGE_KARMA=y CONFIG_USB_LIBUSUAL=y
#
# USB Input Devices
#CONFIG_USB_HID=m
# CONFIG_USB_HIDINPUT_POWERBOOK is not setCONFIG_HID_FF=yCONFIG_HID_PID=yCONFIG_LOGITECH_FF=y
# CONFIG_PANTHERLORD_FF is not setCONFIG_THRUSTMASTER_FF=yCONFIG_ZEROPLUS_FF=yCONFIG_USB_HIDDEV=y
#
# USB HID Boot Protocol drivers
#CONFIG_USB_KBD=mCONFIG_USB_MOUSE=mCONFIG_USB_AIPTEK=mCONFIG_USB_WACOM=mCONFIG_USB_ACECAD=mCONFIG_USB_KBTAB=mCONFIG_USB_POWERMATE=mCONFIG_USB_TOUCHSCREEN=mCONFIG_USB_TOUCHSCREEN_EGALAX=yCONFIG_USB_TOUCHSCREEN_PANJIT=yCONFIG_USB_TOUCHSCREEN_3M=yCONFIG_USB_TOUCHSCREEN_ITM=yCONFIG_USB_TOUCHSCREEN_ETURBO=yCONFIG_USB_TOUCHSCREEN_GUNZE=yCONFIG_USB_TOUCHSCREEN_DMC_TSC10=y
# CONFIG_USB_YEALINK is not setCONFIG_USB_XPAD=mCONFIG_USB_ATI_REMOTE=mCONFIG_USB_ATI_REMOTE2=mCONFIG_USB_KEYSPAN_REMOTE=mCONFIG_USB_APPLETOUCH=m
# CONFIG_USB_GTCO is not set
#
# USB Imaging devices
#CONFIG_USB_MDC800=mCONFIG_USB_MICROTEK=m
#
# USB Network Adapters
#CONFIG_USB_CATC=mCONFIG_USB_KAWETH=mCONFIG_USB_PEGASUS=mCONFIG_USB_RTL8150=mCONFIG_USB_USBNET_MII=mCONFIG_USB_USBNET=mCONFIG_USB_NET_AX8817X=mCONFIG_USB_NET_CDCETHER=m
# CONFIG_USB_NET_DM9601 is not setCONFIG_USB_NET_GL620A=mCONFIG_USB_NET_NET1080=mCONFIG_USB_NET_PLUSB=mCONFIG_USB_NET_MCS7830=mCONFIG_USB_NET_RNDIS_HOST=mCONFIG_USB_NET_CDC_SUBSET=mCONFIG_USB_ALI_M5632=yCONFIG_USB_AN2720=yCONFIG_USB_BELKIN=yCONFIG_USB_ARMLINUX=yCONFIG_USB_EPSON2888=y
# CONFIG_USB_KC2190 is not setCONFIG_USB_NET_ZAURUS=mCONFIG_USB_MON=y
#
# USB port drivers
#CONFIG_USB_USS720=m
#
# USB Serial Converter support
#CONFIG_USB_SERIAL=mCONFIG_USB_SERIAL_GENERIC=yCONFIG_USB_SERIAL_AIRCABLE=mCONFIG_USB_SERIAL_AIRPRIME=mCONFIG_USB_SERIAL_ARK3116=mCONFIG_USB_SERIAL_BELKIN=mCONFIG_USB_SERIAL_WHITEHEAT=mCONFIG_USB_SERIAL_DIGI_ACCELEPORT=mCONFIG_USB_SERIAL_CP2101=mCONFIG_USB_SERIAL_CYPRESS_M8=mCONFIG_USB_SERIAL_EMPEG=mCONFIG_USB_SERIAL_FTDI_SIO=mCONFIG_USB_SERIAL_FUNSOFT=mCONFIG_USB_SERIAL_VISOR=mCONFIG_USB_SERIAL_IPAQ=mCONFIG_USB_SERIAL_IR=mCONFIG_USB_SERIAL_EDGEPORT=mCONFIG_USB_SERIAL_EDGEPORT_TI=mCONFIG_USB_SERIAL_GARMIN=mCONFIG_USB_SERIAL_IPW=mCONFIG_USB_SERIAL_KEYSPAN_PDA=mCONFIG_USB_SERIAL_KEYSPAN=mCONFIG_USB_SERIAL_KEYSPAN_MPR=yCONFIG_USB_SERIAL_KEYSPAN_USA28=yCONFIG_USB_SERIAL_KEYSPAN_USA28X=yCONFIG_USB_SERIAL_KEYSPAN_USA28XA=yCONFIG_USB_SERIAL_KEYSPAN_USA28XB=yCONFIG_USB_SERIAL_KEYSPAN_USA19=yCONFIG_USB_SERIAL_KEYSPAN_USA18X=yCONFIG_USB_SERIAL_KEYSPAN_USA19W=yCONFIG_USB_SERIAL_KEYSPAN_USA19QW=yCONFIG_USB_SERIAL_KEYSPAN_USA19QI=yCONFIG_USB_SERIAL_KEYSPAN_USA49W=yCONFIG_USB_SERIAL_KEYSPAN_USA49WLC=yCONFIG_USB_SERIAL_KLSI=mCONFIG_USB_SERIAL_KOBIL_SCT=mCONFIG_USB_SERIAL_MCT_U232=mCONFIG_USB_SERIAL_MOS7720=mCONFIG_USB_SERIAL_MOS7840=mCONFIG_USB_SERIAL_NAVMAN=mCONFIG_USB_SERIAL_PL2303=mCONFIG_USB_SERIAL_HP4X=mCONFIG_USB_SERIAL_SAFE=mCONFIG_USB_SERIAL_SAFE_PADDED=yCONFIG_USB_SERIAL_SIERRAWIRELESS=mCONFIG_USB_SERIAL_TI=mCONFIG_USB_SERIAL_CYBERJACK=mCONFIG_USB_SERIAL_XIRCOM=mCONFIG_USB_SERIAL_OPTION=mCONFIG_USB_SERIAL_OMNINET=mCONFIG_USB_SERIAL_DEBUG=mCONFIG_USB_EZUSB=y
#
# USB Miscellaneous drivers
#CONFIG_USB_EMI62=mCONFIG_USB_EMI26=mCONFIG_USB_ADUTUX=mCONFIG_USB_AUERSWALD=mCONFIG_USB_RIO500=mCONFIG_USB_LEGOTOWER=mCONFIG_USB_LCD=m
# CONFIG_USB_BERRY_CHARGE is not setCONFIG_USB_LED=m
# CONFIG_USB_CYPRESS_CY7C63 is not set
# CONFIG_USB_CYTHERM is not setCONFIG_USB_PHIDGET=mCONFIG_USB_PHIDGETKIT=mCONFIG_USB_PHIDGETMOTORCONTROL=mCONFIG_USB_PHIDGETSERVO=mCONFIG_USB_IDMOUSE=mCONFIG_USB_FTDI_ELAN=mCONFIG_USB_APPLEDISPLAY=mCONFIG_USB_SISUSBVGA=mCONFIG_USB_SISUSBVGA_CON=yCONFIG_USB_LD=mCONFIG_USB_TRANCEVIBRATOR=m
# CONFIG_USB_IOWARRIOR is not setCONFIG_USB_TEST=m
#
# USB DSL modem support
#CONFIG_USB_ATM=mCONFIG_USB_SPEEDTOUCH=mCONFIG_USB_CXACRU=mCONFIG_USB_UEAGLEATM=mCONFIG_USB_XUSBATM=m
#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set
#
# MMC/SD Card support
#CONFIG_MMC=m
# CONFIG_MMC_DEBUG is not setCONFIG_MMC_BLOCK=mCONFIG_MMC_SDHCI=mCONFIG_MMC_WBSD=mCONFIG_MMC_TIFM_SD=m
#
# LED devices
#CONFIG_NEW_LEDS=yCONFIG_LEDS_CLASS=y
#
# LED drivers
#
#
# LED Triggers
#CONFIG_LEDS_TRIGGERS=yCONFIG_LEDS_TRIGGER_TIMER=mCONFIG_LEDS_TRIGGER_IDE_DISK=yCONFIG_LEDS_TRIGGER_HEARTBEAT=m
#
# InfiniBand support
#CONFIG_INFINIBAND=mCONFIG_INFINIBAND_USER_MAD=mCONFIG_INFINIBAND_USER_ACCESS=mCONFIG_INFINIBAND_ADDR_TRANS=yCONFIG_INFINIBAND_MTHCA=mCONFIG_INFINIBAND_MTHCA_DEBUG=y
# CONFIG_INFINIBAND_AMSO1100 is not setCONFIG_INFINIBAND_IPOIB=m
# CONFIG_INFINIBAND_IPOIB_CM is not setCONFIG_INFINIBAND_IPOIB_DEBUG=yCONFIG_INFINIBAND_IPOIB_DEBUG_DATA=yCONFIG_INFINIBAND_SRP=mCONFIG_INFINIBAND_ISER=m
#
# EDAC - error detection and reporting (RAS) (EXPERIMENTAL) #CONFIG_EDAC=y
#
# Reporting subsystems
#
# CONFIG_EDAC_DEBUG is not setCONFIG_EDAC_MM_EDAC=mCONFIG_EDAC_AMD76X=mCONFIG_EDAC_E7XXX=mCONFIG_EDAC_E752X=mCONFIG_EDAC_I82875P=mCONFIG_EDAC_I82860=mCONFIG_EDAC_R82600=mCONFIG_EDAC_POLL=y
#
# Real Time Clock
#CONFIG_RTC_LIB=mCONFIG_RTC_CLASS=m
#
# RTC interfaces
#CONFIG_RTC_INTF_SYSFS=mCONFIG_RTC_INTF_PROC=mCONFIG_RTC_INTF_DEV=m
# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
#
# RTC drivers
#
# CONFIG_RTC_DRV_CMOS is not setCONFIG_RTC_DRV_X1205=mCONFIG_RTC_DRV_DS1307=mCONFIG_RTC_DRV_DS1553=mCONFIG_RTC_DRV_ISL1208=mCONFIG_RTC_DRV_DS1672=mCONFIG_RTC_DRV_DS1742=mCONFIG_RTC_DRV_PCF8563=mCONFIG_RTC_DRV_PCF8583=mCONFIG_RTC_DRV_RS5C372=m
# CONFIG_RTC_DRV_M48T86 is not set
# CONFIG_RTC_DRV_TEST is not setCONFIG_RTC_DRV_V3020=m
#
# DMA Engine support
#CONFIG_DMA_ENGINE=y
#
# DMA Clients
#CONFIG_NET_DMA=y
#
# DMA Devices
#CONFIG_INTEL_IOATDMA=m
#
# Auxiliary Display support
#
# CONFIG_KS0108 is not set
#
# Virtualization
#CONFIG_KVM=yCONFIG_KVM_INTEL=yCONFIG_KVM_AMD=y
#
# File systems
#CONFIG_EXT2_FS=yCONFIG_EXT2_FS_XATTR=yCONFIG_EXT2_FS_POSIX_ACL=yCONFIG_EXT2_FS_SECURITY=yCONFIG_EXT2_FS_XIP=yCONFIG_FS_XIP=yCONFIG_EXT3_FS=yCONFIG_EXT3_FS_XATTR=yCONFIG_EXT3_FS_POSIX_ACL=yCONFIG_EXT3_FS_SECURITY=y
# CONFIG_EXT4DEV_FS is not setCONFIG_JBD=y
# CONFIG_JBD_DEBUG is not setCONFIG_FS_MBCACHE=yCONFIG_REISERFS_FS=m
# CONFIG_REISERFS_CHECK is not setCONFIG_REISERFS_PROC_INFO=yCONFIG_REISERFS_FS_XATTR=yCONFIG_REISERFS_FS_POSIX_ACL=yCONFIG_REISERFS_FS_SECURITY=yCONFIG_JFS_FS=mCONFIG_JFS_POSIX_ACL=yCONFIG_JFS_SECURITY=y
# CONFIG_JFS_DEBUG is not set
# CONFIG_JFS_STATISTICS is not setCONFIG_FS_POSIX_ACL=yCONFIG_XFS_FS=mCONFIG_XFS_QUOTA=yCONFIG_XFS_SECURITY=yCONFIG_XFS_POSIX_ACL=y
# CONFIG_XFS_RT is not setCONFIG_GFS2_FS=mCONFIG_GFS2_FS_LOCKING_NOLOCK=mCONFIG_GFS2_FS_LOCKING_DLM=mCONFIG_OCFS2_FS=m
# CONFIG_OCFS2_DEBUG_MASKLOG is not setCONFIG_MINIX_FS=mCONFIG_ROMFS_FS=mCONFIG_INOTIFY=yCONFIG_INOTIFY_USER=yCONFIG_QUOTA=y
# CONFIG_QFMT_V1 is not setCONFIG_QFMT_V2=yCONFIG_QUOTACTL=yCONFIG_DNOTIFY=yCONFIG_AUTOFS_FS=mCONFIG_AUTOFS4_FS=mCONFIG_FUSE_FS=mCONFIG_GENERIC_ACL=y
#
# CD-ROM/DVD Filesystems
#CONFIG_ISO9660_FS=yCONFIG_JOLIET=yCONFIG_ZISOFS=yCONFIG_UDF_FS=mCONFIG_UDF_NLS=y
#
# DOS/FAT/NT Filesystems
#CONFIG_FAT_FS=mCONFIG_MSDOS_FS=mCONFIG_VFAT_FS=mCONFIG_FAT_DEFAULT_CODEPAGE=437CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
# CONFIG_NTFS_FS is not set
#
# Pseudo filesystems
#CONFIG_PROC_FS=yCONFIG_PROC_KCORE=yCONFIG_PROC_SYSCTL=yCONFIG_SYSFS=yCONFIG_TMPFS=yCONFIG_TMPFS_POSIX_ACL=yCONFIG_HUGETLBFS=yCONFIG_HUGETLB_PAGE=yCONFIG_RAMFS=yCONFIG_CONFIGFS_FS=m
#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not setCONFIG_AFFS_FS=mCONFIG_ECRYPT_FS=mCONFIG_HFS_FS=mCONFIG_HFSPLUS_FS=mCONFIG_BEFS_FS=m
# CONFIG_BEFS_DEBUG is not setCONFIG_BFS_FS=mCONFIG_EFS_FS=mCONFIG_JFFS2_FS=mCONFIG_JFFS2_FS_DEBUG=0CONFIG_JFFS2_FS_WRITEBUFFER=yCONFIG_JFFS2_SUMMARY=y
# CONFIG_JFFS2_FS_XATTR is not set
# CONFIG_JFFS2_COMPRESSION_OPTIONS is not setCONFIG_JFFS2_ZLIB=yCONFIG_JFFS2_RTIME=y
# CONFIG_JFFS2_RUBIN is not setCONFIG_CRAMFS=mCONFIG_VXFS_FS=m
# CONFIG_HPFS_FS is not setCONFIG_QNX4FS_FS=mCONFIG_SYSV_FS=mCONFIG_UFS_FS=m
# CONFIG_UFS_FS_WRITE is not set
# CONFIG_UFS_DEBUG is not set
#
# Network File Systems
#CONFIG_NFS_FS=mCONFIG_NFS_V3=yCONFIG_NFS_V3_ACL=yCONFIG_NFS_V4=yCONFIG_NFS_DIRECTIO=yCONFIG_NFSD=mCONFIG_NFSD_V2_ACL=yCONFIG_NFSD_V3=yCONFIG_NFSD_V3_ACL=yCONFIG_NFSD_V4=yCONFIG_NFSD_TCP=yCONFIG_LOCKD=mCONFIG_LOCKD_V4=yCONFIG_EXPORTFS=mCONFIG_NFS_ACL_SUPPORT=mCONFIG_NFS_COMMON=yCONFIG_SUNRPC=mCONFIG_SUNRPC_GSS=mCONFIG_RPCSEC_GSS_KRB5=mCONFIG_RPCSEC_GSS_SPKM3=m
# CONFIG_SMB_FS is not setCONFIG_CIFS=m
# CONFIG_CIFS_STATS is not setCONFIG_CIFS_WEAK_PW_HASH=yCONFIG_CIFS_XATTR=yCONFIG_CIFS_POSIX=y
# CONFIG_CIFS_DEBUG2 is not set
# CONFIG_CIFS_EXPERIMENTAL is not setCONFIG_NCP_FS=mCONFIG_NCPFS_PACKET_SIGNING=yCONFIG_NCPFS_IOCTL_LOCKING=yCONFIG_NCPFS_STRONG=yCONFIG_NCPFS_NFS_NS=yCONFIG_NCPFS_OS2_NS=yCONFIG_NCPFS_SMALLDOS=yCONFIG_NCPFS_NLS=yCONFIG_NCPFS_EXTRAS=yCONFIG_CODA_FS=m
# CONFIG_CODA_FS_OLD_API is not set
# CONFIG_AFS_FS is not setCONFIG_9P_FS=m
#
# Partition Types
#CONFIG_PARTITION_ADVANCED=y
# CONFIG_ACORN_PARTITION is not setCONFIG_OSF_PARTITION=yCONFIG_AMIGA_PARTITION=y
# CONFIG_ATARI_PARTITION is not setCONFIG_MAC_PARTITION=yCONFIG_MSDOS_PARTITION=yCONFIG_BSD_DISKLABEL=yCONFIG_MINIX_SUBPARTITION=yCONFIG_SOLARIS_X86_PARTITION=yCONFIG_UNIXWARE_DISKLABEL=y
# CONFIG_LDM_PARTITION is not setCONFIG_SGI_PARTITION=y
# CONFIG_ULTRIX_PARTITION is not setCONFIG_SUN_PARTITION=yCONFIG_KARMA_PARTITION=yCONFIG_EFI_PARTITION=y
#
# Native Language Support
#CONFIG_NLS=yCONFIG_NLS_DEFAULT="utf8"CONFIG_NLS_CODEPAGE_437=yCONFIG_NLS_CODEPAGE_737=mCONFIG_NLS_CODEPAGE_775=mCONFIG_NLS_CODEPAGE_850=mCONFIG_NLS_CODEPAGE_852=mCONFIG_NLS_CODEPAGE_855=mCONFIG_NLS_CODEPAGE_857=mCONFIG_NLS_CODEPAGE_860=mCONFIG_NLS_CODEPAGE_861=mCONFIG_NLS_CODEPAGE_862=mCONFIG_NLS_CODEPAGE_863=mCONFIG_NLS_CODEPAGE_864=mCONFIG_NLS_CODEPAGE_865=mCONFIG_NLS_CODEPAGE_866=mCONFIG_NLS_CODEPAGE_869=mCONFIG_NLS_CODEPAGE_936=mCONFIG_NLS_CODEPAGE_950=mCONFIG_NLS_CODEPAGE_932=mCONFIG_NLS_CODEPAGE_949=mCONFIG_NLS_CODEPAGE_874=mCONFIG_NLS_ISO8859_8=mCONFIG_NLS_CODEPAGE_1250=mCONFIG_NLS_CODEPAGE_1251=mCONFIG_NLS_ASCII=yCONFIG_NLS_ISO8859_1=mCONFIG_NLS_ISO8859_2=mCONFIG_NLS_ISO8859_3=mCONFIG_NLS_ISO8859_4=mCONFIG_NLS_ISO8859_5=mCONFIG_NLS_ISO8859_6=mCONFIG_NLS_ISO8859_7=mCONFIG_NLS_ISO8859_9=mCONFIG_NLS_ISO8859_13=mCONFIG_NLS_ISO8859_14=mCONFIG_NLS_ISO8859_15=mCONFIG_NLS_KOI8_R=mCONFIG_NLS_KOI8_U=mCONFIG_NLS_UTF8=m
#
# Distributed Lock Manager
#CONFIG_DLM=mCONFIG_DLM_TCP=y
# CONFIG_DLM_SCTP is not setCONFIG_DLM_DEBUG=y
#
# Instrumentation Support
#CONFIG_PROFILING=yCONFIG_OPROFILE=mCONFIG_KPROBES=y
#
# Kernel hacking
#CONFIG_TRACE_IRQFLAGS_SUPPORT=y
# CONFIG_PRINTK_TIME is not set
# CONFIG_ENABLE_MUST_CHECK is not set CONFIG_MAGIC_SYSRQ=y
# CONFIG_UNUSED_SYMBOLS is not set CONFIG_DEBUG_FS=y
# CONFIG_HEADERS_CHECK is not set CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SHIRQ is not set CONFIG_LOG_BUF_SHIFT=20 CONFIG_DETECT_SOFTLOCKUP=y CONFIG_SCHEDSTATS=y
# CONFIG_TIMER_STATS is not set CONFIG_DEBUG_SLAB=yCONFIG_DEBUG_SLAB_LEAK=y CONFIG_DEBUG_PREEMPT=y
# CONFIG_DEBUG_RT_MUTEXES is not set CONFIG_RT_MUTEX_TESTER=y CONFIG_DEBUG_SPINLOCK=y CONFIG_DEBUG_MUTEXES=y CONFIG_DEBUG_LOCK_ALLOC=y CONFIG_PROVE_LOCKING=yCONFIG_LOCKDEP=y
# CONFIG_DEBUG_LOCKDEP is not set CONFIG_TRACE_IRQFLAGS=y CONFIG_DEBUG_SPINLOCK_SLEEP=y CONFIG_DEBUG_LOCKING_API_SELFTESTS=y CONFIG_STACKTRACE=y
# CONFIG_DEBUG_KOBJECT is not set CONFIG_DEBUG_HIGHMEM=y CONFIG_DEBUG_BUGVERBOSE=yCONFIG_DEBUG_INFO=yCONFIG_DEBUG_VM=yCONFIG_DEBUG_LIST=yCONFIG_FRAME_POINTER=y
# CONFIG_FORCED_INLINING is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_LKDTM is not set CONFIG_FAULT_INJECTION=yCONFIG_FAILSLAB=yCONFIG_FAIL_PAGE_ALLOC=y CONFIG_FAIL_MAKE_REQUEST=y CONFIG_FAULT_INJECTION_DEBUG_FS=y
# CONFIG_FAULT_INJECTION_STACKTRACE_FILTER is not set CONFIG_EARLY_PRINTK=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_STACK_USAGE is not set
#
# Page alloc debug is incompatible with Software Suspend on i386 #CONFIG_DEBUG_RODATA=yCONFIG_4KSTACKS=yCONFIG_X86_FIND_SMP_CONFIG=yCONFIG_X86_MPPARSE=yCONFIG_DOUBLEFAULT=y
# CONFIG_DEBUG_PARAVIRT is not set
#
# Security options
#CONFIG_KEYS=yCONFIG_KEYS_DEBUG_PROC_KEYS=yCONFIG_SECURITY=yCONFIG_SECURITY_NETWORK=y
# CONFIG_SECURITY_NETWORK_XFRM is not set CONFIG_SECURITY_CAPABILITIES=m
# CONFIG_SECURITY_ROOTPLUG is not set CONFIG_SECURITY_SELINUX=y CONFIG_SECURITY_SELINUX_BOOTPARAM=y CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1 CONFIG_SECURITY_SELINUX_DISABLE=y CONFIG_SECURITY_SELINUX_DEVELOP=y CONFIG_SECURITY_SELINUX_AVC_STATS=y CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
# CONFIG_SECURITY_SELINUX_ENABLE_SECMARK_DEFAULT is not set # CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set
#
# Cryptographic options
#CONFIG_CRYPTO=yCONFIG_CRYPTO_ALGAPI=yCONFIG_CRYPTO_BLKCIPHER=yCONFIG_CRYPTO_HASH=yCONFIG_CRYPTO_MANAGER=yCONFIG_CRYPTO_HMAC=yCONFIG_CRYPTO_XCBC=yCONFIG_CRYPTO_NULL=yCONFIG_CRYPTO_MD4=yCONFIG_CRYPTO_MD5=yCONFIG_CRYPTO_SHA1=yCONFIG_CRYPTO_SHA256=yCONFIG_CRYPTO_SHA512=yCONFIG_CRYPTO_WP512=yCONFIG_CRYPTO_TGR192=yCONFIG_CRYPTO_GF128MUL=yCONFIG_CRYPTO_ECB=yCONFIG_CRYPTO_CBC=yCONFIG_CRYPTO_PCBC=mCONFIG_CRYPTO_LRW=yCONFIG_CRYPTO_DES=y
# CONFIG_CRYPTO_FCRYPT is not setCONFIG_CRYPTO_BLOWFISH=yCONFIG_CRYPTO_TWOFISH=yCONFIG_CRYPTO_TWOFISH_COMMON=y
# CONFIG_CRYPTO_TWOFISH_586 is not setCONFIG_CRYPTO_SERPENT=yCONFIG_CRYPTO_AES=y
# CONFIG_CRYPTO_AES_586 is not setCONFIG_CRYPTO_CAST5=yCONFIG_CRYPTO_CAST6=yCONFIG_CRYPTO_TEA=yCONFIG_CRYPTO_ARC4=yCONFIG_CRYPTO_KHAZAD=yCONFIG_CRYPTO_ANUBIS=yCONFIG_CRYPTO_DEFLATE=yCONFIG_CRYPTO_MICHAEL_MIC=yCONFIG_CRYPTO_CRC32C=y
# CONFIG_CRYPTO_CAMELLIA is not set
# CONFIG_CRYPTO_TEST is not set
#
# Hardware crypto devices
#CONFIG_CRYPTO_DEV_PADLOCK=mCONFIG_CRYPTO_DEV_PADLOCK_AES=mCONFIG_CRYPTO_DEV_PADLOCK_SHA=mCONFIG_CRYPTO_DEV_GEODE=m
#
# Library routines
#CONFIG_BITREVERSE=yCONFIG_CRC_CCITT=yCONFIG_CRC16=yCONFIG_CRC32=yCONFIG_LIBCRC32C=yCONFIG_AUDIT_GENERIC=yCONFIG_ZLIB_INFLATE=yCONFIG_ZLIB_DEFLATE=yCONFIG_REED_SOLOMON=mCONFIG_REED_SOLOMON_DEC16=yCONFIG_TEXTSEARCH=yCONFIG_TEXTSEARCH_KMP=mCONFIG_TEXTSEARCH_BM=mCONFIG_TEXTSEARCH_FSM=mCONFIG_PLIST=yCONFIG_HAS_IOMEM=yCONFIG_HAS_IOPORT=yCONFIG_GENERIC_HARDIRQS=yCONFIG_GENERIC_IRQ_PROBE=yCONFIG_GENERIC_PENDING_IRQ=yCONFIG_X86_SMP=yCONFIG_X86_HT=yCONFIG_X86_BIOS_REBOOT=yCONFIG_X86_TRAMPOLINE=yCONFIG_KTIME_SCALAR=yCONFIG_NO_IDLE_HZ=y
Re: regression: forcedeth.c hang
Quoted 8 lines · Ingo Molnar
git bisection gives:
|
0d63fb32b2b8c3464d9c1afc3ce3fd3ceec025b6is first bad commitbut i think this is simply the first commit that makes the driver essentially non-bisectable - the failures in interim iterations changed from 'interface unusable' to boot hangs that were either forcedeth tx ring timeouts, or hangs after
nv_satainitialization.
here's the boot log of the tx_ring timeout that happens at the following commit in the first step of bisection:
commit aaa37d2d099f97ced415546e285ac901e47a2437
Author: Ayaz Abdulla <[email protected]>
Date: Sun Jan 21 18:10:42 2007 -0500
forcedeth: tx limiting
(eth0/eth1 gets flipped during network startup, so eth1 is the forcedeth driver)
Ingo
---------------------->
Linux version 2.6.21-rc1-syslet-v5 (mingo@dione) (gcc version 4.0.2) #8 SMP PREEMPT Tue Feb 27 10:33:37 CET 2007 BIOS-provided physical RAM map:
sanitize start
sanitize endcopy_e820_map() start: 0000000000000000 size: 000000000009f800 end: 000000000009f800 type: 1 copy_e820_map() type is E820_RAMcopy_e820_map() start: 000000000009f800 size: 0000000000000800 end: 00000000000a0000 type: 2 copy_e820_map() start: 00000000000f0000 size: 0000000000010000 end: 0000000000100000 type: 2 copy_e820_map() start: 0000000000100000 size: 000000003fef0000 end: 000000003fff0000 type: 1 copy_e820_map() type is E820_RAMcopy_e820_map() start: 000000003fff0000 size: 0000000000003000 end: 000000003fff3000 type: 4 copy_e820_map() start: 000000003fff3000 size: 000000000000d000 end: 0000000040000000 type: 3 copy_e820_map() start: 00000000e0000000 size: 0000000010000000 end: 00000000f0000000 type: 2 copy_e820_map() start: 00000000fec00000 size: 0000000001400000 end: 0000000100000000 type: 2
BIOS-e820: 0000000000000000 - 000000000009f800 (usable)
BIOS-e820: 000000000009f800 - 00000000000a0000 (reserved)
BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
BIOS-e820: 0000000000100000 - 000000003fff0000 (usable)
BIOS-e820: 000000003fff0000 - 000000003fff3000 (ACPI NVS)
BIOS-e820: 000000003fff3000 - 0000000040000000 (ACPI data)
BIOS-e820: 00000000e0000000 - 00000000f0000000 (reserved)
BIOS-e820: 00000000fec00000 - 0000000100000000 (reserved)
127MB HIGHMEM available.
896MB LOWMEM available.
found SMP MP-table at 000f5680
Entering add_active_range(0, 0, 262128) 0 entries of 256 used
Zone PFN ranges:
DMA 0 -> 4096
Normal 4096 -> 229376
HighMem 229376 -> 262128
early_node_map[1] active PFN ranges
0: 0 -> 262128
On node 0 totalpages: 262128
DMA zone: 56 pages used for memmap
DMA zone: 0 pages reserved
DMA zone: 4040 pages, LIFO batch:0
Normal zone: 3080 pages used for memmap
Normal zone: 222200 pages, LIFO batch:31
HighMem zone: 447 pages used for memmap
HighMem zone: 32305 pages, LIFO batch:7
DMI 2.3 present.
Using APIC driver default
ACPI: RSDP 000F76F0, 0014 (r0 Nvidia)
ACPI: RSDT 3FFF3040, 0034 (r1 Nvidia AWRDACPI 42302E31 AWRD 0)
ACPI: FACP 3FFF30C0, 0074 (r1 Nvidia AWRDACPI 42302E31 AWRD 0)
ACPI: DSDT 3FFF3180, 6264 (r1 NVIDIA AWRDACPI 1000 MSFT 100000E)
ACPI: FACS 3FFF0000, 0040
ACPI: SRAT 3FFF9500, 00A0 (r1 AMD HAMMER 1 AMD 1)
ACPI: MCFG 3FFF9600, 003C (r1 Nvidia AWRDACPI 42302E31 AWRD 0)
ACPI: APIC 3FFF9440, 007C (r1 Nvidia AWRDACPI 42302E31 AWRD 0)
Nvidia board detected. Ignoring ACPI timer override.
If you got timer trouble try acpi_use_timer_override
Nvidia board detected. Ignoring ACPI timer override.
If you got timer trouble try acpi_use_timer_override
Nvidia board detected. Ignoring ACPI timer override.
If you got timer trouble try acpi_use_timer_override
Nvidia board detected. Ignoring ACPI timer override.
If you got timer trouble try acpi_use_timer_override
Nvidia board detected. Ignoring ACPI timer override.
If you got timer trouble try acpi_use_timer_override
ACPI: PM-Timer IO Port: 0x4008
ACPI: Local APIC address 0xfee00000
ACPI: LAPIC (acpi_id[0x00] lapic_id[0x00] enabled)
Processor #0 15:3 APIC version 16
ACPI: LAPIC (acpi_id[0x01] lapic_id[0x01] enabled)
Processor #1 15:3 APIC version 16
ACPI: LAPIC_NMI (acpi_id[0x00] high edge lint[0x1])
ACPI: LAPIC_NMI (acpi_id[0x01] high edge lint[0x1])
ACPI: IOAPIC (id[0x02] address[0xfec00000] gsi_base[0])
IOAPIC[0]: apic_id 2, version 17, address 0xfec00000, GSI 0-23
ACPI: INT_SRC_OVR (bus 0 bus_irq 0 global_irq 2 dfl dfl)
ACPI: BIOS IRQ0 pin2 override ignored.
ACPI: INT_SRC_OVR (bus 0 bus_irq 9 global_irq 9 high level)
ACPI: INT_SRC_OVR (bus 0 bus_irq 14 global_irq 14 high edge)
ACPI: INT_SRC_OVR (bus 0 bus_irq 15 global_irq 15 high edge)
ACPI: IRQ9 used by override.
ACPI: IRQ14 used by override.
ACPI: IRQ15 used by override.
Enabling APIC mode: Flat. Using 1 I/O APICs
Using ACPI (MADT) for SMP configuration information
Allocating PCI resources starting at 50000000 (gap: 40000000:a0000000)
Detected 2160.240 MHz processor.
Built 1 zonelists. Total pages: 258545
Kernel command line: root=/dev/hda1 console=ttyS0,115200 console=tty 3 debug idle=poll profile=schedule initcall_debug maxcpus=2 selinux=1 enforcing=0 apic=verbose ignore_loglevel using polling idle threads.
kernel schedule profiling enabled (shift: 0)
debug: ignoring loglevel setting.
mapped APIC to ffffd000 (fee00000)
mapped IOAPIC to ffffc000 (fec00000)
Enabling fast FPU save and restore... done.
Enabling unmasked SIMD FPU exception support... done.
Initializing CPU#0
CPU 0 irqstacks, hard=c0638000 soft=c0658000
PID hash table entries: 4096 (order: 12, 16384 bytes)
spurious 8259A interrupt: IRQ7.
Console: colour VGA+ 80x25
Lock dependency validator: Copyright (c) 2006 Red Hat, Inc., Ingo Molnar
... MAX_LOCKDEP_SUBCLASSES: 8
... MAX_LOCK_DEPTH: 30
... MAX_LOCKDEP_KEYS: 2048
... CLASSHASH_SIZE: 1024
... MAX_LOCKDEP_ENTRIES: 8192 ... MAX_LOCKDEP_CHAINS: 16384 ... CHAINHASH_SIZE: 8192
memory used by lock dependency info: 1096 kB
per task-struct memory footprint: 1200 bytes
------------------------
| Locking API testsuite:
----------------------------------------------------------------------------
| spin |wlock |rlock |mutex | wsem | rsem |
--------------------------------------------------------------------------
A-A deadlock: ok | ok | ok | ok | ok | ok |
A-B-B-A deadlock: ok | ok | ok | ok | ok | ok |
A-B-B-C-C-A deadlock: ok | ok | ok | ok | ok | ok |
A-B-C-A-B-C deadlock: ok | ok | ok | ok | ok | ok |
A-B-B-C-C-D-D-A deadlock: ok | ok | ok | ok | ok | ok |
A-B-C-D-B-D-D-A deadlock: ok | ok | ok | ok | ok | ok |
A-B-C-D-B-C-D-A deadlock: ok | ok | ok | ok | ok | ok |
double unlock: ok | ok | ok | ok | ok | ok |
initialize held: ok | ok | ok | ok | ok | ok |
bad unlock order: ok | ok | ok | ok | ok | ok |
--------------------------------------------------------------------------
recursive read-lock: | ok | | ok |
recursive read-lock #2: | ok | | ok |
mixed read-write-lock: | ok | | ok |
mixed write-read-lock: | ok | | ok |
--------------------------------------------------------------------------
hard-irqs-on + irq-safe-A/12: ok | ok | ok |
soft-irqs-on + irq-safe-A/12: ok | ok | ok |
hard-irqs-on + irq-safe-A/21: ok | ok | ok |
soft-irqs-on + irq-safe-A/21: ok | ok | ok |
sirq-safe-A => hirqs-on/12: ok | ok | ok |
sirq-safe-A => hirqs-on/21: ok | ok | ok |
hard-safe-A + irqs-on/12: ok | ok | ok |
soft-safe-A + irqs-on/12: ok | ok | ok |
hard-safe-A + irqs-on/21: ok | ok | ok |
soft-safe-A + irqs-on/21: ok | ok | ok |
hard-safe-A + unsafe-B #1/123: ok | ok | ok |
soft-safe-A + unsafe-B #1/123: ok | ok | ok |
hard-safe-A + unsafe-B #1/132: ok | ok | ok |
soft-safe-A + unsafe-B #1/132: ok | ok | ok |
hard-safe-A + unsafe-B #1/213: ok | ok | ok |
soft-safe-A + unsafe-B #1/213: ok | ok | ok |
hard-safe-A + unsafe-B #1/231: ok | ok | ok |
soft-safe-A + unsafe-B #1/231: ok | ok | ok |
hard-safe-A + unsafe-B #1/312: ok | ok | ok |
soft-safe-A + unsafe-B #1/312: ok | ok | ok |
hard-safe-A + unsafe-B #1/321: ok | ok | ok |
soft-safe-A + unsafe-B #1/321: ok | ok | ok |
hard-safe-A + unsafe-B #2/123: ok | ok | ok |
soft-safe-A + unsafe-B #2/123: ok | ok | ok |
hard-safe-A + unsafe-B #2/132: ok | ok | ok |
soft-safe-A + unsafe-B #2/132: ok | ok | ok |
hard-safe-A + unsafe-B #2/213: ok | ok | ok |
soft-safe-A + unsafe-B #2/213: ok | ok | ok |
hard-safe-A + unsafe-B #2/231: ok | ok | ok |
soft-safe-A + unsafe-B #2/231: ok | ok | ok |
hard-safe-A + unsafe-B #2/312: ok | ok | ok |
soft-safe-A + unsafe-B #2/312: ok | ok | ok |
hard-safe-A + unsafe-B #2/321: ok | ok | ok |
soft-safe-A + unsafe-B #2/321: ok | ok | ok |
hard-irq lock-inversion/123: ok | ok | ok |
soft-irq lock-inversion/123: ok | ok | ok |
hard-irq lock-inversion/132: ok | ok | ok |
soft-irq lock-inversion/132: ok | ok | ok |
hard-irq lock-inversion/213: ok | ok | ok |
soft-irq lock-inversion/213: ok | ok | ok |
hard-irq lock-inversion/231: ok | ok | ok |
soft-irq lock-inversion/231: ok | ok | ok |
hard-irq lock-inversion/312: ok | ok | ok |
soft-irq lock-inversion/312: ok | ok | ok |
hard-irq lock-inversion/321: ok | ok | ok |
soft-irq lock-inversion/321: ok | ok | ok |
hard-irq read-recursion/123: ok |
soft-irq read-recursion/123: ok |
hard-irq read-recursion/132: ok |
soft-irq read-recursion/132: ok |
hard-irq read-recursion/213: ok |
soft-irq read-recursion/213: ok |
hard-irq read-recursion/231: ok |
soft-irq read-recursion/231: ok |
hard-irq read-recursion/312: ok |
soft-irq read-recursion/312: ok |
hard-irq read-recursion/321: ok |
soft-irq read-recursion/321: ok |-------------------------------------------------------
Good, all 218 testcases passed! |
---------------------------------
Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
Memory: 1010344k/1048512k available (3282k kernel code, 37492k reserved, 1710k data, 308k init, 131008k highmem) virtual kernel memory layout:
fixmap : 0xffc56000 - 0xfffff000 (3748 kB)
pkmap : 0xff800000 - 0xffc00000 (4096 kB)
vmalloc : 0xf8800000 - 0xff7fe000 ( 111 MB)
lowmem : 0xc0000000 - 0xf8000000 ( 896 MB)
.init : 0xc05e6000 - 0xc0633000 ( 308 kB)
.data : 0xc0434b9a - 0xc05e04f0 (1710 kB)
.text : 0xc0100000 - 0xc0434b9a (3282 kB)
Checking if this processor honours the WP bit even in supervisor mode... Ok.
Calibrating delay using timer specific routine.. 4322.31 BogoMIPS (lpj=2161157)
Security Framework v1.0.0 initialized
SELinux: Initializing.
SELinux: Starting in permissive mode
Mount-cache hash table entries: 512
CPU: After generic identify, caps: 178bfbff e3d3fbff 00000000 00000000 00000001 00000000 00000003
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 512K (64 bytes/line)CPU 0(2) -> Core 0
CPU: After all inits, caps: 178bfbff e3d3fbff 00000000 00000410 00000001 00000000 00000003 Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#0.
Checking 'hlt' instruction... OK.
lockdep: not fixing up alternatives.
ACPI: Core revision 20070126
CPU0: AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ stepping 02
enabled ExtINT on CPU#0
lockdep: not fixing up alternatives.
Booting processor 1/1 eip 3000
CPU 1 irqstacks, hard=c0639000 soft=c0659000
Initializing CPU#1
masked ExtINT on CPU#1
Calibrating delay using timer specific routine.. 4319.78 BogoMIPS (lpj=2159892)
CPU: After generic identify, caps: 178bfbff e3d3fbff 00000000 00000000 00000001 00000000 00000003
CPU: L1 I Cache: 64K (64 bytes/line), D cache 64K (64 bytes/line)
CPU: L2 Cache: 512K (64 bytes/line)
CPU 1(2) -> Core 1
CPU: After all inits, caps: 178bfbff e3d3fbff 00000000 00000410 00000001 00000000 00000003 Intel machine check architecture supported.
Intel machine check reporting enabled on CPU#1.
CPU1: AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ stepping 02
Total of 2 processors activated (8642.09 BogoMIPS).
ENABLING IO-APIC IRQs
init IO_APIC IRQs
IO-APIC (apicid-pin) 2-16, 2-17, 2-18, 2-19, 2-20, 2-21, 2-22, 2-23 not connected.
..TIMER: vector=0x31 apic1=0 pin1=0 apic2=-1 pin2=-1
Using local APIC timer interrupts.
calibrating APIC timer ...
... lapic delta = 1349919
... PM timer delta = 357899
... PM timer result ok
..... delta 1349919
..... mult: 57987393
..... calibration result: 215987
..... CPU clock speed is 2159.0869 MHz.
..... host bus clock speed is 215.0987 MHz.
... verify APIC timer
... jiffies delta = 100
... PM timer delta = 357896
... PM timer result ok
Brought up 2 CPUs
migration_cost=151
Calling initcall 0xc06069f6: init_cpufreq_transition_notifier_list+0x0/0x11() Calling initcall 0xc05ee584: cpufreq_tsc+0x0/0x11()
Calling initcall 0xc05f0ec1: acpisleep_dmi_init+0x0/0x11()
Calling initcall 0xc05f1097: reboot_init+0x0/0x11()
Calling initcall 0xc05f618a: print_banner+0x0/0xd()
Booting paravirtualized kernel on bare hardware
Calling initcall 0xc05f7973: sysctl_init+0x0/0x13()
Calling initcall 0xc05f7fda: helper_init+0x0/0x25()
Calling initcall 0xc05f83ef: pm_init+0x0/0x22()
Calling initcall 0xc05f8411: pm_disk_init+0x0/0x14()
Calling initcall 0xc05f883b: ksysfs_init+0x0/0x22()
Calling initcall 0xc05faa40: filelock_init+0x0/0x37()
Calling initcall 0xc05fb3d1: init_misc_binfmt+0x0/0x33()
Calling initcall 0xc05fb404: init_script_binfmt+0x0/0xf()
Calling initcall 0xc05fb413: init_elf_binfmt+0x0/0xf()
Calling initcall 0xc05fbdb5: debugfs_init+0x0/0x3d()
Calling initcall 0xc05fc2aa: securityfs_init+0x0/0x3d()
Calling initcall 0xc05fd128: random32_init+0x0/0x42()
Calling initcall 0xc0606a07: cpufreq_core_init+0x0/0x56()
Calling initcall 0xc0608c0e: sock_init+0x0/0x5f()
Calling initcall 0xc06094bc: netlink_proto_init+0x0/0x12a()
NET: Registered protocol family 16
Calling initcall 0xc05fd04f: kobject_uevent_init+0x0/0x3c()
Calling initcall 0xc05fd280: pcibus_class_init+0x0/0xf()
Calling initcall 0xc05fd7ea: pci_driver_init+0x0/0xf()
Calling initcall 0xc05fde19: backlight_class_init+0x0/0xf()
Calling initcall 0xc06013dd: tty_class_init+0x0/0x23()
Calling initcall 0xc0601a90: vtconsole_class_init+0x0/0xb5()
Calling initcall 0xc05eedeb: mtrr_if_init+0x0/0x57()
Calling initcall 0xc05f0f87: ffh_cstate_init+0x0/0x2c()
initcall at 0xc05f0f87: ffh_cstate_init+0x0/0x2c(): returned with error code -1 Calling initcall 0xc05fd985: acpi_pci_init+0x0/0x29()
ACPI: bus type pci registered
Calling initcall 0xc05ff37b: init_acpi_device_notify+0x0/0x45()
Calling initcall 0xc06076b3: pci_access_init+0x0/0x41()
PCI: Using MMCONFIG
PCI: No mmconfig possible on device 00:18
Calling initcall 0xc05edea0: request_standard_resources+0x0/0x2d0()
Setting up standard PCI resources
Calling initcall 0xc05ee25a: topology_init+0x0/0x2f()
Calling initcall 0xc05eeb91: mtrr_init_finialize+0x0/0x2c()
Calling initcall 0xc05f7de0: param_sysfs_init+0x0/0x175()
Calling initcall 0xc0151535: pm_sysrq_init+0x0/0x17()
Calling initcall 0xc05fb0bb: init_bio+0x0/0xfc()
Calling initcall 0xc05fce58: genhd_device_init+0x0/0x50()
Calling initcall 0xc05fd9ae: fbmem_init+0x0/0x87()
Calling initcall 0xc05ff17c: acpi_init+0x0/0x1ff()
ACPI: Interpreter enabled
ACPI: (supports S0 S1 S3 S4 S5)
ACPI: Using IOAPIC for interrupt routing
Calling initcall 0xc05ff3c0: acpi_scan_init+0x0/0xfc()
Calling initcall 0xc05ff561: acpi_ec_init+0x0/0x55()
Calling initcall 0xc05ff8a5: acpi_pci_root_init+0x0/0x25()
ACPI: PCI Root Bridge [PCI0] (0000:00)
PCI: Probing PCI hardware (bus 00)
PCI: Transparent bridge - 0000:00:09.0
Boot video device is 0000:01:00.0
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0._PRT]
ACPI: PCI Interrupt Routing Table [\_SB_.PCI0.HUB0._PRT]
Calling initcall 0xc05ff99e: acpi_pci_link_init+0x0/0x43()
ACPI: PCI Interrupt Link [LNK1] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNK2] (IRQs *3 4 5 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LNK3] (IRQs 3 4 5 7 9 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LNK4] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LNK5] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LUBA] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LUBB] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LMAC] (IRQs *3 4 5 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LACI] (IRQs 3 4 *5 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LMCI] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LSMB] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LUB2] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LIDE] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [LSID] (IRQs 3 4 5 7 9 10 *11 12 14 15)
ACPI: PCI Interrupt Link [LFID] (IRQs 3 4 *5 7 9 10 11 12 14 15)
ACPI: PCI Interrupt Link [LPCA] (IRQs 3 4 5 7 9 10 11 12 14 15) *0, disabled.
ACPI: PCI Interrupt Link [APC1] (IRQs 16) *0, disabled.
ACPI: PCI Interrupt Link [APC2] (IRQs 17) *0
ACPI: PCI Interrupt Link [APC3] (IRQs 18) *0
ACPI: PCI Interrupt Link [APC4] (IRQs 19) *0, disabled.
ACPI: PCI Interrupt Link [APC5] (IRQs *16), disabled.
ACPI: PCI Interrupt Link [APCF] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCG] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCH] (IRQs 20 21 22 23) *0
ACPI: PCI Interrupt Link [APCJ] (IRQs 20 21 22 23) *0
ACPI: PCI Interrupt Link [APCK] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCS] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCL] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APCZ] (IRQs 20 21 22 23) *0, disabled.
ACPI: PCI Interrupt Link [APSI] (IRQs 20 21 22 23) *0
ACPI: PCI Interrupt Link [APSJ] (IRQs 20 21 22 23) *0
ACPI: PCI Interrupt Link [APCP] (IRQs 20 21 22 23) *0, disabled.
Calling initcall 0xc05ffa78: acpi_power_init+0x0/0x69()
Calling initcall 0xc05ffc44: acpi_system_init+0x0/0xad()
Calling initcall 0xc05ffcf1: acpi_event_init+0x0/0x38()
Calling initcall 0xc05ffd29: acpi_cm_sbs_init+0x0/0x7()
Calling initcall 0xc05ffd30: pnp_init+0x0/0x1c()
Linux Plug and Play Support v0.97 (c) Adam Belay
Calling initcall 0xc05ffe83: pnpacpi_init+0x0/0x69()
pnp: PnP ACPI init
pnp: PnP ACPI: found 16 devices
Calling initcall 0xc06017f8: misc_init+0x0/0x79()
Calling initcall 0xc02a5eb4: cn_init+0x0/0xb8()
Calling initcall 0xc0604701: init_scsi+0x0/0x8f()
SCSI subsystem initialized
Calling initcall 0xc0604e63: ata_init+0x0/0x6c()
libata version 2.20 loaded.
Calling initcall 0xc0605aa5: init_pcmcia_cs+0x0/0x31()
Calling initcall 0xc0605f76: usb_init+0x0/0x103()
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Calling initcall 0xc0606309: serio_init+0x0/0x8d()
Calling initcall 0xc06066e3: input_init+0x0/0x101()
Calling initcall 0xc0606a87: leds_init+0x0/0x23()
Calling initcall 0xc060740d: dma_bus_init+0x0/0x23()
Calling initcall 0xc060820c: pci_acpi_init+0x0/0x9b()
PCI: Using ACPI for IRQ routing
PCI: If a device doesn't work, try "pci=routeirq". If it helps, post a report number of MP IRQ sources: 16.
number of IO-APIC #2 registers: 24.
testing the IO APIC.......................
IO APIC #2......
.... register #00: 00000000
....... : physical APIC id: 00 ....... : Delivery Type: 0 ....... : LTS : 0 .... register #01: 00170011 ....... : max redirection entries: 0017 ....... : PRQ implemented: 0 ....... : IO APIC version: 0011
.... register #02: 00000000
....... : arbitration: 00
.... IRQ redirection table:
NR Log Phy Mask Trig IRR Pol Stat Dest Deli Vect:
00 003 03 0 0 0 0 0 1 1 31 01 003 03 1 0 0 0 0 1 1 39 02 003 03 0 0 0 0 0 1 1 41 03 003 03 1 0 0 0 0 1 1 49 04 003 03 1 0 0 0 0 1 1 51 05 003 03 1 0 0 0 0 1 1 59 06 003 03 1 0 0 0 0 1 1 61 07 003 03 1 0 0 0 0 1 1 69 08 003 03 1 0 0 0 0 1 1 71 09 003 03 0 1 0 0 0 1 1 79 0a 003 03 1 0 0 0 0 1 1 81 0b 003 03 1 0 0 0 0 1 1 89 0c 003 03 1 0 0 0 0 1 1 91 0d 003 03 1 0 0 0 0 1 1 99 0e 003 03 0 0 0 0 0 1 1 A1 0f 003 03 0 0 0 0 0 1 1 A9 10 000 00 1 0 0 0 0 0 0 00 11 000 00 1 0 0 0 0 0 0 00 12 000 00 1 0 0 0 0 0 0 00 13 000 00 1 0 0 0 0 0 0 00 14 000 00 1 0 0 0 0 0 0 00 15 000 00 1 0 0 0 0 0 0 00 16 000 00 1 0 0 0 0 0 0 00 17 000 00 1 0 0 0 0 0 0 00
IRQ to pin mappings:
IRQ0 -> 0:0
IRQ1 -> 0:1
IRQ2 -> 0:2
IRQ3 -> 0:3
IRQ4 -> 0:4
IRQ5 -> 0:5
IRQ6 -> 0:6
IRQ7 -> 0:7
IRQ8 -> 0:8
IRQ9 -> 0:9
IRQ10 -> 0:10
IRQ11 -> 0:11
IRQ12 -> 0:12
IRQ13 -> 0:13
IRQ14 -> 0:14
IRQ15 -> 0:15
.................................... done.
Calling initcall 0xc06082a7: pci_legacy_init+0x0/0x105() Calling initcall 0xc0608740: pcibios_irq_init+0x0/0x452() Calling initcall 0xc0608b92: pcibios_init+0x0/0x7c() Calling initcall 0xc0608cc3: proto_init+0x0/0x2e() Calling initcall 0xc0608e13: net_dev_init+0x0/0x200() Calling initcall 0xc060927d: wireless_nlevent_init+0x0/0x39() Calling initcall 0xc06092b6: fib_rules_init+0x0/0xf() Calling initcall 0xc06093ac: pktsched_init+0x0/0x91() Calling initcall 0xc060944c: tc_filter_init+0x0/0x38() Calling initcall 0xc0609484: tc_action_init+0x0/0x38() Calling initcall 0xc06095e6: genl_init+0x0/0x9f() Calling initcall 0xc060a7a9: cipso_v4_init+0x0/0x76() Calling initcall 0xc060ab56: netlbl_init+0x0/0x71() NetLabel: Initializing NetLabel: domain hash size = 128 NetLabel: protocols = UNLABELED CIPSOv4 NetLabel: unlabeled traffic allowed by default Calling initcall 0xc05fa9ca: init_pipe_fs+0x0/0x3f() Calling initcall 0xc05ffe0c: pnp_system_init+0x0/0xf() pnp: 00:01: ioport range 0x4000-0x407f has been reserved pnp: 00:01: ioport range 0x4080-0x40ff has been reserved pnp: 00:01: ioport range 0x4400-0x447f has been reserved pnp: 00:01: ioport range 0x4480-0x44ff has been reserved pnp: 00:01: ioport range 0x4800-0x487f has been reserved pnp: 00:01: ioport range 0x4880-0x48ff has been reserved pnp: 00:0e: iomem range 0xe0000000-0xefffffff has been reserved pnp: 00:0f: iomem range 0xf0000-0xf3fff could not be reserved pnp: 00:0f: iomem range 0xf4000-0xf7fff could not be reserved pnp: 00:0f: iomem range 0xf8000-0xfbfff could not be reserved pnp: 00:0f: iomem range 0xfc000-0xfffff could not be reserved Calling initcall 0xc06012f8: chr_dev_init+0x0/0x86() Calling initcall 0xc0602e67: firmware_class_init+0x0/0x66() Calling initcall 0xc0605ad6: init_pcmcia_bus+0x0/0x76() Calling initcall 0xc0606a5d: cpufreq_gov_performance_init+0x0/0xf() Calling initcall 0xc0606a6c: cpufreq_gov_userspace_init+0x0/0x1b() Calling initcall 0xc0607430: pcibios_assign_resources+0x0/0x92() PCI: Bridge: 0000:00:09.0
IO window: a000-afff
MEM window: da000000-da0fffff
PREFETCH window: disabled.
PCI: Bridge: 0000:00:0b.0
IO window: disabled.
MEM window: disabled.
PREFETCH window: disabled.
PCI: Bridge: 0000:00:0c.0
IO window: disabled.
MEM window: disabled.
PREFETCH window: disabled.
PCI: Bridge: 0000:00:0d.0
IO window: disabled.
MEM window: disabled.
PREFETCH window: disabled.
PCI: Bridge: 0000:00:0e.0
IO window: 9000-9fff
MEM window: d8000000-d9ffffff
PREFETCH window: d0000000-d7ffffff
PCI: Setting latency timer of device 0000:00:09.0 to 64
PCI: Setting latency timer of device 0000:00:0b.0 to 64
PCI: Setting latency timer of device 0000:00:0c.0 to 64
PCI: Setting latency timer of device 0000:00:0d.0 to 64
PCI: Setting latency timer of device 0000:00:0e.0 to 64
Calling initcall 0xc060a1ae: inet_init+0x0/0x390()
NET: Registered protocol family 2
IP route cache hash table entries: 32768 (order: 5, 131072 bytes)
TCP established hash table entries: 65536 (order: 9, 2621440 bytes) TCP bind hash table entries: 65536 (order: 9, 2359296 bytes)
TCP: Hash tables configured (established 65536 bind 65536)
TCP reno registered
Calling initcall 0xc05ec1a0: populate_rootfs+0x0/0xe4()
Calling initcall 0xc05ed0fd: i8259A_init_sysfs+0x0/0x1d()
Calling initcall 0xc05ed1fd: sbf_init+0x0/0xd7()
Calling initcall 0xc05ee23d: i8237A_init_sysfs+0x0/0x1d()
Calling initcall 0xc05ee50a: init_pit_clocksource+0x0/0x63()
Calling initcall 0xc05ee5bb: init_tsc_clocksource+0x0/0xd1()
Calling initcall 0xc010ded3: cache_sysfs_init+0x0/0x4d()
Calling initcall 0xc05eeb03: thermal_throttle_init_device+0x0/0x8e() Calling initcall 0xc05ef94b: longrun_init+0x0/0x28()
Calling initcall 0xc05efce7: speedstep_init+0x0/0x24d()
Calling initcall 0xc05eff34: speedstep_init+0x0/0x107()
Calling initcall 0xc05f15ff: apm_init+0x0/0x3c7()
apm: BIOS version 1.2 Flags 0x07 (Driver version 1.16ac)
apm: disabled - APM is not SMP safe.
Calling initcall 0xc05f2c99: init_lapic_sysfs+0x0/0x28()
Calling initcall 0xc05f3d40: ioapic_init_sysfs+0x0/0xb6()
Calling initcall 0xc05f5eb9: init_hpet_clocksource+0x0/0x5f()
Calling initcall 0xc05f6197: add_pcspkr+0x0/0x35()
Calling initcall 0xc05f7696: create_proc_profile+0x0/0x176()
Calling initcall 0xc05f7880: ioresources_init+0x0/0x39()
Calling initcall 0xc05f7986: timekeeping_init_device+0x0/0x1d() Calling initcall 0xc05f7b4c: uid_cache_init+0x0/0x6e()
Calling initcall 0xc05f7f55: init_posix_timers+0x0/0x85()
Calling initcall 0xc05f7fff: init_posix_cpu_timers+0x0/0x51()
Calling initcall 0xc05f8075: latency_init+0x0/0x20()
Calling initcall 0xc05f80a6: init_clocksource_sysfs+0x0/0x43()
Calling initcall 0xc05f8176: init_jiffies_clocksource+0x0/0xf() Calling initcall 0xc05f8185: init_timer_list_procfs+0x0/0x2a()
Calling initcall 0xc05f81af: clockevents_sysfs_init+0x0/0x30()
Calling initcall 0xc05f82f9: lockdep_proc_init+0x0/0x3f()
Calling initcall 0xc05f8338: init+0x0/0x74()
Calling initcall 0xc014929e: init_rttest+0x0/0x10c()
Initializing RT-Tester: OK
Calling initcall 0xc05f83ac: proc_dma_init+0x0/0x20()
Calling initcall 0xc014a405: percpu_modinit+0x0/0x65()
Calling initcall 0xc05f83cc: kallsyms_init+0x0/0x23()
Calling initcall 0xc05f84aa: snapshot_device_init+0x0/0xf()
Calling initcall 0xc05f84b9: crash_notes_memory_init+0x0/0x38() Calling initcall 0xc05f8676: audit_init+0x0/0x10d()
audit: initializing netlink socket (disabled)
audit(1172571348.203:1): initialized
Calling initcall 0xc05f87f8: init_kprobes+0x0/0x43()
Calling initcall 0xc05f890b: relay_init+0x0/0x11()
Calling initcall 0xc05f891c: utsname_sysctl_init+0x0/0x11()
Calling initcall 0xc05f97ec: init_per_zone_pages_min+0x0/0x3c() Calling initcall 0xc05fa169: pdflush_init+0x0/0x16()
Calling initcall 0xc05fa1a3: kswapd_init+0x0/0x26()
Calling initcall 0xc05fa1c9: setup_vmstat+0x0/0x16()
Calling initcall 0xc05fa2a9: init_emergency_pool+0x0/0x62()
highmem bounce pool size: 64 pages
Calling initcall 0xc05fa30b: procswaps_init+0x0/0x20()
Calling initcall 0xc05fa32b: hugetlb_init+0x0/0x59()
Total HugeTLB memory allocated, 0
Calling initcall 0xc05fa3ba: init_tmpfs+0x0/0xbf()
Calling initcall 0xc05fa48d: cpucache_init+0x0/0x2f()
Calling initcall 0xc05faa09: fasync_init+0x0/0x37()
Calling initcall 0xc05fafea: aio_setup+0x0/0x77()
Calling initcall 0xc05fb22d: inotify_setup+0x0/0x11()
Calling initcall 0xc05fb23e: inotify_user_setup+0x0/0xc3()
Calling initcall 0xc05fb301: eventpoll_init+0x0/0xd0()
Calling initcall 0xc05fb422: init_mbcache+0x0/0x1b()
Calling initcall 0xc05fb43d: dquot_init+0x0/0xf2()
VFS: Disk quotas dquot_6.5.1
Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
Calling initcall 0xc05fb52f: init_v2_quota_format+0x0/0xf()
Calling initcall 0xc05fb53e: dnotify_init+0x0/0x37()
Calling initcall 0xc05fb953: init_devpts_fs+0x0/0x30()
Calling initcall 0xc05fb983: init_ext3_fs+0x0/0x6e()
Calling initcall 0xc05fbab1: journal_init+0x0/0xd8()
Calling initcall 0xc05fbb89: init_ext2_fs+0x0/0x6e()
Calling initcall 0xc05fbc2b: init_ramfs_fs+0x0/0xf()
Calling initcall 0xc05fbc49: init_hugetlbfs_fs+0x0/0x7d()
Calling initcall 0xc05fbcc6: init_iso9660_fs+0x0/0x70()
Calling initcall 0xc05fbd97: init_nls_cp437+0x0/0xf()
Calling initcall 0xc05fbda6: init_nls_ascii+0x0/0xf()
Calling initcall 0xc05fbdf2: ipc_init+0x0/0x16()
Calling initcall 0xc05fc013: ipc_sysctl_init+0x0/0x11()
Calling initcall 0xc05fc024: init_mqueue_fs+0x0/0xc2()
Calling initcall 0xc05fc21c: key_proc_init+0x0/0x4f()
Calling initcall 0xc05fc3c8: selinux_nf_ip_init+0x0/0x57()
SELinux: Registering netfilter hooks
Calling initcall 0xc05fc573: init_sel_fs+0x0/0x52()
Calling initcall 0xc05fc5c5: selnl_init+0x0/0x44()
Calling initcall 0xc05fc609: sel_netif_init+0x0/0x6d()
Calling initcall 0xc05fc676: aurule_init+0x0/0x46()
Calling initcall 0xc05fc6bc: crypto_algapi_init+0x0/0xc()
Calling initcall 0xc05fc6e6: cryptomgr_init+0x0/0xf()
Calling initcall 0xc05fc6f5: hmac_module_init+0x0/0xf()
Calling initcall 0xc05fc704: crypto_xcbc_module_init+0x0/0xf()
Calling initcall 0xc05fc713: init+0x0/0x4d()
Calling initcall 0xc05fc760: init+0x0/0xf()
Calling initcall 0xc05fc76f: init+0x0/0xf()
Calling initcall 0xc05fc77e: init+0x0/0xf()
Calling initcall 0xc05fc78d: init+0x0/0xf()
Calling initcall 0xc05fc79c: init+0x0/0x33()
Calling initcall 0xc05fc7cf: init+0x0/0x52()
Calling initcall 0xc05fc821: init+0x0/0x52()
Calling initcall 0xc05fc873: crypto_ecb_module_init+0x0/0xf()
Calling initcall 0xc05fc882: crypto_cbc_module_init+0x0/0xf()
Calling initcall 0xc05fc891: crypto_module_init+0x0/0xf()
Calling initcall 0xc05fc8a0: init+0x0/0x33()
Calling initcall 0xc05fc8d3: init+0x0/0xf()
Calling initcall 0xc05fc8e2: init+0x0/0xf()
Calling initcall 0xc05fc8f1: init+0x0/0x33()
Calling initcall 0xc05fc924: aes_init+0x0/0x2db()
Calling initcall 0xc05fcbff: init+0x0/0xf()
Calling initcall 0xc05fcc0e: init+0x0/0xf()
Calling initcall 0xc05fcc1d: arc4_init+0x0/0xf()
Calling initcall 0xc05fcc2c: init+0x0/0x52()
Calling initcall 0xc05fcc7e: init+0x0/0xf()
Calling initcall 0xc05fcc8d: init+0x0/0xf()
Calling initcall 0xc05fcc9c: init+0x0/0xf()
Calling initcall 0xc05fccab: michael_mic_init+0x0/0xf()
Calling initcall 0xc05fccba: init+0x0/0xf()
Calling initcall 0xc05fcea8: noop_init+0x0/0xf()
io scheduler noop registered
Calling initcall 0xc05fceb7: as_init+0x0/0xf()
io scheduler anticipatory registered
Calling initcall 0xc05fcec6: deadline_init+0x0/0xf()
io scheduler deadline registered (default)
Calling initcall 0xc05fced5: cfq_init+0x0/0xb6()
io scheduler cfq registered
Calling initcall 0xc05fcf8b: blk_trace_init+0x0/0xc4()
Calling initcall 0xc05fd1d4: audit_classes_init+0x0/0x40()
Calling initcall 0xc024643c: pci_init+0x0/0x2c()
PCI: Found disabled HT MSI Mapping on 0000:00:0b.0
PCI: Found enabled HT MSI Mapping on 0000:00:00.0
PCI: Linking AER extended capability on 0000:00:0b.0
PCI: Found disabled HT MSI Mapping on 0000:00:0c.0
PCI: Found enabled HT MSI Mapping on 0000:00:00.0
PCI: Linking AER extended capability on 0000:00:0c.0
PCI: Found disabled HT MSI Mapping on 0000:00:0d.0
PCI: Found enabled HT MSI Mapping on 0000:00:00.0
PCI: Linking AER extended capability on 0000:00:0d.0
PCI: Found disabled HT MSI Mapping on 0000:00:0e.0
PCI: Found enabled HT MSI Mapping on 0000:00:00.0
PCI: Linking AER extended capability on 0000:00:0e.0
Calling initcall 0xc05fd7f9: pci_sysfs_init+0x0/0x35()
Calling initcall 0xc05fd82e: pci_proc_init+0x0/0x5f()
Calling initcall 0xc05fd88d: pcie_portdrv_init+0x0/0x46()
PCI: Setting latency timer of device 0000:00:0b.0 to 64 assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:0b.0:pcie00]
Allocate Port Service[0000:00:0b.0:pcie03]
PCI: Setting latency timer of device 0000:00:0c.0 to 64 assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:0c.0:pcie00]
Allocate Port Service[0000:00:0c.0:pcie03]
PCI: Setting latency timer of device 0000:00:0d.0 to 64 assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:0d.0:pcie00]
Allocate Port Service[0000:00:0d.0:pcie03]
PCI: Setting latency timer of device 0000:00:0e.0 to 64 assign_interrupt_mode Found MSI capability
Allocate Port Service[0000:00:0e.0:pcie00]
Allocate Port Service[0000:00:0e.0:pcie03]
Calling initcall 0xc05fd8d3: aer_service_init+0x0/0xf()
Calling initcall 0xc05fd8e2: pci_hotplug_init+0x0/0x57()pci_hotplug: PCI Hot Plug PCI Core version: 0.5
Calling initcall 0xc05fdaca: fb_console_init+0x0/0x113()
Calling initcall 0xc05fe4de: vesafb_init+0x0/0x271()
Calling initcall 0xc05fea9c: acpi_reserve_resources+0x0/0xc8()
Calling initcall 0xc05ff854: acpi_fan_init+0x0/0x51()
ACPI: Fan [FAN] (on)
Calling initcall 0xc05ff96b: irqrouter_init_sysfs+0x0/0x33()
Calling initcall 0xc05ffae1: acpi_processor_init+0x0/0xcd()
Calling initcall 0xc05ffbae: acpi_container_init+0x0/0x45()
Calling initcall 0xc05ffbf3: acpi_thermal_init+0x0/0x51()
ACPI: Thermal Zone [THRM] (40 C)
Calling initcall 0xc0600dcc: isapnp_init+0x0/0x43f()
isapnp: Scanning for PnP cards...
isapnp: No Plug & Play device found
Calling initcall 0xc060138c: rand_initialize+0x0/0x25()
Calling initcall 0xc0601400: tty_init+0x0/0x1c9()
Calling initcall 0xc06015c9: pty_init+0x0/0x22f()
Calling initcall 0xc0601d7e: rtc_init+0x0/0x1b7()
Real Time Clock Driver v1.12ac
Calling initcall 0xc0601f35: hpet_init+0x0/0x57()
Calling initcall 0xc0601f8c: nvram_init+0x0/0x7c()
Non-volatile memory driver v1.2
Calling initcall 0xc0602008: agp_init+0x0/0x2f()
Linux agpgart interface v0.102 (c) Dave Jones
Calling initcall 0xc060209b: agp_ali_init+0x0/0x24()
Calling initcall 0xc06020bf: agp_ati_init+0x0/0x24()
Calling initcall 0xc06020e3: agp_amdk7_init+0x0/0x24()
Calling initcall 0xc0602107: agp_amd64_init+0x0/0xa7()
Calling initcall 0xc06021ae: agp_efficeon_init+0x0/0x39()
Calling initcall 0xc06021e7: agp_intel_init+0x0/0x24()
Calling initcall 0xc060220b: agp_nvidia_init+0x0/0x24()
Calling initcall 0xc060222f: agp_sis_init+0x0/0x24()
Calling initcall 0xc0602253: agp_serverworks_init+0x0/0x24()
Calling initcall 0xc0602277: agp_via_init+0x0/0x24()
Calling initcall 0xc060229b: cn_proc_init+0x0/0x31()
Calling initcall 0xc0602714: serial8250_init+0x0/0x112()
Serial: 8250/16550 driver $Revision: 1.90 $ 4 ports, IRQ sharing enabled �serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
Calling initcall 0xc0602826: serial8250_pnp_init+0x0/0xf()
00:08: ttyS0 at I/O 0x3f8 (irq = 4) is a 16550A
Calling initcall 0xc0602835: serial8250_pci_init+0x0/0x16()
Calling initcall 0xc0602e34: isa_bus_init+0x0/0x33()
Calling initcall 0xc02b39d9: topology_sysfs_init+0x0/0x3d()
Calling initcall 0xc0602ecd: rd_init+0x0/0x18d()
RAMDISK driver initialized: 16 RAM disks of 16384K size 4096 blocksize Calling initcall 0xc06030ac: loop_init+0x0/0x27a()
loop: loaded (max 8 devices)
Calling initcall 0xc0603326: init_cryptoloop+0x0/0x27()
Calling initcall 0xc060334d: e1000_init_module+0x0/0x80()
Intel(R) PRO/1000 Network Driver - version 7.3.20-k2-NAPI
Copyright (c) 1999-2006 Intel Corporation.
Calling initcall 0xc06033cd: e100_init_module+0x0/0x5a()
e100: Intel(R) PRO/100 Network Driver, 3.5.17-k2-NAPI
e100: Copyright(c) 1999-2006 Intel Corporation
Calling initcall 0xc0603427: tg3_init+0x0/0x16()
Calling initcall 0xc060343d: skge_init_module+0x0/0x16()
Calling initcall 0xc0603494: net_olddevs_init+0x0/0x89()
Calling initcall 0xc060351d: loopback_init+0x0/0xf()
Calling initcall 0xc060352c: init_nic+0x0/0x2c()forcedeth.c: Reverse Engineered nForce ethernet driver. Version 0.59.
ACPI: PCI Interrupt Link [APCH] enabled at IRQ 23
ACPI: PCI Interrupt 0000:00:0a.0[A] -> Link [APCH] -> GSI 23 (level, low) -> IRQ 16
PCI: Setting latency timer of device 0000:00:0a.0 to 64
forcedeth: using HIGHDMA
eth0: forcedeth.c: subsystem: 01043:8141 bound to 0000:00:0a.0
Calling initcall 0xc0603558: cp_init+0x0/0x16()
8139cp: 10/100 PCI Ethernet driver v1.3 (Mar 22, 2004)
8139cp 0000:05:07.0: This (id 10ec:8139 rev 10) is not an 8139C+ compatible chip 8139cp 0000:05:07.0: Try the "8139too" driver instead.
Calling initcall 0xc060356e: rtl8139_init_module+0x0/0x16()
8139too Fast Ethernet driver 0.9.28
ACPI: PCI Interrupt Link [APC2] enabled at IRQ 17
ACPI: PCI Interrupt 0000:05:07.0[A] -> Link [APC2] -> GSI 17 (level, low) -> IRQ 17
eth1: RealTek RTL8139 at 0xa000, 00:c0:df:03:68:5d, IRQ 17
eth1: Identified 8139 chip type 'RTL-8139B'
Calling initcall 0xc0603584: aec62xx_ide_init+0x0/0x16()
Calling initcall 0xc060359a: ali15x3_ide_init+0x0/0x16()
Calling initcall 0xc06035b0: amd74xx_ide_init+0x0/0x16()
Calling initcall 0xc06035c6: atiixp_ide_init+0x0/0x16()
Calling initcall 0xc06035dc: cmd64x_ide_init+0x0/0x16()
Calling initcall 0xc06035f2: cs5520_ide_init+0x0/0x16()
Calling initcall 0xc0603608: cs5530_ide_init+0x0/0x16()
Calling initcall 0xc060361e: cs5535_ide_init+0x0/0x16()
Calling initcall 0xc0603634: hpt34x_ide_init+0x0/0x16()
Calling initcall 0xc060364a: hpt366_ide_init+0x0/0x16()
Calling initcall 0xc0603660: it821x_ide_init+0x0/0x16()
Calling initcall 0xc0603676: pdc202xx_ide_init+0x0/0x16()
Calling initcall 0xc060368c: pdc202new_ide_init+0x0/0x16()
Calling initcall 0xc06036a2: piix_ide_init+0x0/0xba()
Calling initcall 0xc060375c: rz1000_ide_init+0x0/0x16()
Calling initcall 0xc0603772: svwks_ide_init+0x0/0x16()
Calling initcall 0xc0603788: siimage_ide_init+0x0/0x16()
Calling initcall 0xc060379e: sis5513_ide_init+0x0/0x16()
Calling initcall 0xc06037b4: triflex_ide_init+0x0/0x16()
Calling initcall 0xc06037ca: via_ide_init+0x0/0x16()
Calling initcall 0xc0603801: generic_ide_init+0x0/0x16()
Calling initcall 0xc0603f0a: ide_init+0x0/0x8a()
Uniform Multi-Platform E-IDE driver Revision: 7.00alpha2
ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx
NFORCE-CK804: IDE controller at PCI slot 0000:00:06.0
NFORCE-CK804: chipset revision 242
NFORCE-CK804: not 100% native mode: will probe irqs later
NFORCE-CK804: 0000:00:06.0 (rev f2) UDMA133 controller
ide0: BM-DMA at 0xf000-0xf007, BIOS settings: hda:DMA, hdb:DMA
ide1: BM-DMA at 0xf008-0xf00f, BIOS settings: hdc:DMA, hdd:DMAProbing IDE interface ide0...
hda: MAXTOR 6L040J2, ATA DISK drive
hdb: ST380011A, ATA DISK drive
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14
Probing IDE interface ide1...
Calling initcall 0xc06046c5: ide_generic_init+0x0/0x11()
Probing IDE interface ide1...
Calling initcall 0xc06046d6: idedisk_init+0x0/0xf()
hda: max request size: 128KiB
hda: 78177792 sectors (40027 MB) w/1818KiB Cache, CHS=65535/16/63, UDMA(133)
hda: cache flushes supported
hda: hda1 hda2 hda3 hda4 < hda5 >
hdb: max request size: 512KiB
hdb: 156301488 sectors (80026 MB) w/2048KiB Cache, CHS=16383/255/63, UDMA(100)
hdb: cache flushes supported
hdb: hdb1 hdb2 hdb3 < hdb5 >
Calling initcall 0xc06046e5: idefloppy_init+0x0/0x1c()
ide-floppy driver 0.99.newide
Calling initcall 0xc060495c: spi_transport_init+0x0/0x27()
Calling initcall 0xc0604983: sas_transport_init+0x0/0x9f()
Calling initcall 0xc0604a22: sas_class_init+0x0/0x3d()
Calling initcall 0xc0604a5f: ahc_linux_init+0x0/0x5c()
Calling initcall 0xc0604abb: ahd_linux_init+0x0/0x6e()
Calling initcall 0xc0604b29: aic94xx_init+0x0/0x12e()
aic94xx: Adaptec aic94xx SAS/SATA driver version 1.0.3 loaded
Calling initcall 0xc0604c57: init_sd+0x0/0xd6()
Calling initcall 0xc0604d2d: init_sg+0x0/0x12a()
Calling initcall 0xc0604ecf: ahci_init+0x0/0x16()
Calling initcall 0xc0604ee5: k2_sata_init+0x0/0x16()
Calling initcall 0xc0604efb: piix_init+0x0/0x27()
Calling initcall 0xc0604f22: pdc_ata_init+0x0/0x16()
Calling initcall 0xc0604f38: qs_ata_init+0x0/0x16()
Calling initcall 0xc0604f4e: sil_init+0x0/0x16()
Calling initcall 0xc0604f64: sil24_init+0x0/0x16()
Calling initcall 0xc0604f7a: svia_init+0x0/0x16()
Calling initcall 0xc0604f90: vsc_sata_init+0x0/0x16()
Calling initcall 0xc0604fa6: sis_init+0x0/0x16()
Calling initcall 0xc0604fbc: pdc_sata_init+0x0/0x16()
Calling initcall 0xc0604fd2: nv_init+0x0/0x16()sata_nv 0000:00:07.0: version 3.3
ACPI: PCI Interrupt Link [APSI] enabled at IRQ 22
ACPI: PCI Interrupt 0000:00:07.0[A] -> Link [APSI] -> GSI 22 (level, low) -> IRQ 18 sata_nv 0000:00:07.0: Using ADMA mode
PCI: Setting latency timer of device 0000:00:07.0 to 64
ata1: SATA max UDMA/133 cmd 0xf881c480 ctl 0xf881c4a0 bmdma 0x0001d800 irq 18
ata2: SATA max UDMA/133 cmd 0xf881c580 ctl 0xf881c5a0 bmdma 0x0001d808 irq 18 scsi0 : sata_nv
ata1: SATA link down (SStatus 0 SControl 300)
scsi1 : sata_nv
ata2: SATA link down (SStatus 0 SControl 300)
ACPI: PCI Interrupt Link [APSJ] enabled at IRQ 21
ACPI: PCI Interrupt 0000:00:08.0[A] -> Link [APSJ] -> GSI 21 (level, low) -> IRQ 19 sata_nv 0000:00:08.0: Using ADMA mode
PCI: Setting latency timer of device 0000:00:08.0 to 64
ata3: SATA max UDMA/133 cmd 0xf881e480 ctl 0xf881e4a0 bmdma 0x0001c400 irq 19
ata4: SATA max UDMA/133 cmd 0xf881e580 ctl 0xf881e5a0 bmdma 0x0001c408 irq 19 scsi2 : sata_nv
ata3: SATA link down (SStatus 0 SControl 300)
scsi3 : sata_nv
ata4: SATA link down (SStatus 0 SControl 300)
Calling initcall 0xc0604fe8: uli_init+0x0/0x16()
Calling initcall 0xc0604ffe: mv_init+0x0/0x16()
Calling initcall 0xc0605014: adma_ata_init+0x0/0x16()
Calling initcall 0xc060502a: ali_init+0x0/0x16()
Calling initcall 0xc0605040: amd_init+0x0/0x16()
Calling initcall 0xc0605056: artop_init+0x0/0x16()
Calling initcall 0xc060506c: atiixp_init+0x0/0x16()
Calling initcall 0xc0605082: cmd64x_init+0x0/0x16()
Calling initcall 0xc0605098: cs5520_init+0x0/0x16()
Calling initcall 0xc06050ae: cs5530_init+0x0/0x16()
Calling initcall 0xc06050c4: cs5535_init+0x0/0x16()
Calling initcall 0xc06050da: cy82c693_init+0x0/0x16()
Calling initcall 0xc06050f0: efar_init+0x0/0x16()
Calling initcall 0xc0605106: hpt36x_init+0x0/0x16()
Calling initcall 0xc060511c: hpt37x_init+0x0/0x16()
Calling initcall 0xc0605132: hpt3x2n_init+0x0/0x16()
Calling initcall 0xc0605148: hpt3x3_init+0x0/0x16()
Calling initcall 0xc060515e: isapnp_init+0x0/0xf()
Calling initcall 0xc060516d: it821x_init+0x0/0x16()
Calling initcall 0xc0605183: jmicron_init+0x0/0x16()
Calling initcall 0xc0605199: netcell_init+0x0/0x16()
Calling initcall 0xc06051af: ns87410_init+0x0/0x16()
Calling initcall 0xc06051c5: opti_init+0x0/0x16()
Calling initcall 0xc06051db: optidma_init+0x0/0x16()
Calling initcall 0xc06051f1: marvell_init+0x0/0x16()
Calling initcall 0xc0605207: mpiix_init+0x0/0x16()
Calling initcall 0xc060521d: oldpiix_init+0x0/0x16()
Calling initcall 0xc0605233: pcmcia_init+0x0/0xf()
Calling initcall 0xc0605242: pdc2027x_init+0x0/0x16()
Calling initcall 0xc0605258: pdc202xx_init+0x0/0x16()
Calling initcall 0xc0605451: qdi_init+0x0/0x247()
Calling initcall 0xc0605698: radisys_init+0x0/0x16()
Calling initcall 0xc06056ae: rz1000_init+0x0/0x16()
Calling initcall 0xc06056c4: sc1200_init+0x0/0x16()
Calling initcall 0xc06056da: serverworks_init+0x0/0x16()
Calling initcall 0xc06056f0: sil680_init+0x0/0x16()
Calling initcall 0xc0605706: via_init+0x0/0x16()
Calling initcall 0xc060571c: sl82c105_init+0x0/0x16()
Calling initcall 0xc0605732: winbond_init+0x0/0x331()
Calling initcall 0xc0605a63: sis_init+0x0/0x16()
Calling initcall 0xc0605a79: triflex_init+0x0/0x16()
Calling initcall 0xc0605a8f: ata_generic_init+0x0/0x16()
Calling initcall 0xc0605bb8: nonstatic_sysfs_init+0x0/0xf()
Calling initcall 0xc0605bc7: yenta_socket_init+0x0/0x16()
Calling initcall 0xc0605bdd: kvm_init+0x0/0xd6()
Calling initcall 0xc0605cd7: vmx_init+0x0/0x11()
kvm: no hardware support
initcall at 0xc0605cd7: vmx_init+0x0/0x11(): returned with error code -95 Calling initcall 0xc0605dad: svm_init+0x0/0x11()has_svm: svm not available
kvm: no hardware support
initcall at 0xc0605dad: svm_init+0x0/0x11(): returned with error code -95 Calling initcall 0xc060619b: mon_init+0x0/0x90()
Calling initcall 0xc06062db: usb_usual_init+0x0/0x2e()
usbcore: registered new interface driver libusual
Calling initcall 0xc0606396: i8042_init+0x0/0x321()
PNP: PS/2 Controller [PNP0303:PS2K,PNP0f13:PS2M] at 0x60,0x64 irq 1,12
serio: i8042 KBD port at 0x60,0x64 irq 1
serio: i8042 AUX port at 0x60,0x64 irq 12
Calling initcall 0xc06066b7: serport_init+0x0/0x2c()
Calling initcall 0xc06067e4: mousedev_init+0x0/0xbc()
mice: PS/2 mouse device common for all mice
Calling initcall 0xc06068a0: evdev_init+0x0/0xf()
Calling initcall 0xc06068af: atkbd_init+0x0/0x16()
Calling initcall 0xc06068c5: psmouse_init+0x0/0x59()
input: AT Translated Set 2 keyboard as /class/input/input0
Calling initcall 0xc060691e: md_init+0x0/0xd8()
Calling initcall 0xc0606aaa: ledtrig_ide_init+0x0/0x16()
Calling initcall 0xc0606f79: efivars_init+0x0/0x191()
Calling initcall 0xc060710a: init_cyclone_clocksource+0x0/0x17c()
Calling initcall 0xc060729a: init_acpi_pm_clocksource+0x0/0x173()
Calling initcall 0xc06090ef: flow_cache_init+0x0/0x160()
Calling initcall 0xc06092c5: llc_init+0x0/0x53()
Calling initcall 0xc0609318: snap_init+0x0/0x2c()
Calling initcall 0xc0609344: rif_init+0x0/0x68()
Calling initcall 0xc060943d: blackhole_module_init+0x0/0xf()
Calling initcall 0xc060974e: nfnetlink_init+0x0/0x52()
Netfilter messages via NETLINK v0.30.
Calling initcall 0xc06097a0: nfnetlink_queue_init+0x0/0x88()
Calling initcall 0xc0609828: nfnetlink_log_init+0x0/0x8d()
Calling initcall 0xc060a784: init_syncookies+0x0/0x16()
Calling initcall 0xc0414dd7: ipv4_netfilter_init+0x0/0xf()
Calling initcall 0xc060a79a: bictcp_register+0x0/0xf()
TCP bic registered
Calling initcall 0xc060a9dd: xfrm_user_init+0x0/0x49()
Initializing XFRM netlink socket
Calling initcall 0xc060aa26: af_unix_init+0x0/0x64()
NET: Registered protocol family 1
Calling initcall 0xc060aa8a: packet_init+0x0/0x4c()
NET: Registered protocol family 17
Calling initcall 0xc060aad6: ipsec_pfkey_init+0x0/0x80()
NET: Registered protocol family 15
Calling initcall 0xc05ee9cb: amd_exit_cpu+0x0/0x11()
Calling initcall 0xc05eea0f: nsc_exit_cpu+0x0/0x11()
Calling initcall 0xc05ee9ed: cyrix_exit_cpu+0x0/0x11()
Calling initcall 0xc05eea31: centaur_exit_cpu+0x0/0x11()
Calling initcall 0xc05eea53: transmeta_exit_cpu+0x0/0x11()
Calling initcall 0xc05eea86: rise_exit_cpu+0x0/0x11()
Calling initcall 0xc05eeaa8: nexgen_exit_cpu+0x0/0x11()
Calling initcall 0xc05eeaca: umc_exit_cpu+0x0/0x11()
Calling initcall 0xc05ef229: powernow_init+0x0/0x10a()
Calling initcall 0xc011191d: powernowk8_init+0x0/0x78()
powernow-k8: Found 2 AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ processors (version 2.00.00)
powernow-k8: MP systems not supported by PSB BIOS structure
powernow-k8: MP systems not supported by PSB BIOS structure
Calling initcall 0xc05f003b: centrino_init+0x0/0x9e()
Calling initcall 0xc05f3aac: init_lapic_nmi_sysfs+0x0/0x33()
Calling initcall 0xc05f387b: check_nmi_watchdog+0x0/0x20a()
Calling initcall 0xc05f3d26: io_apic_bug_finalize+0x0/0x1a()
Calling initcall 0xc05f6bd4: print_ipi_mode+0x0/0x2d()
Using IPI No-Shortcut mode
Calling initcall 0xc05f8095: clocksource_done_booting+0x0/0x11()
Calling initcall 0xc014e8aa<6>Time: acpi_pm clocksource has been installed.
: software_resume+0x0/0x123()
initcall at 0xc014e8aa: software_resume+0x0/0x123(): returned with error code -2 Calling initcall 0xc0433184: debugfs_kprobe_init+0x0/0x56()
Calling initcall 0xc05f8941: taskstats_init+0x0/0x46()
Calling initcall 0xc05f9175: fail_page_alloc_debugfs+0x0/0x8f()
Calling initcall 0xc05fa4cd: failslab_debugfs+0x0/0x59()
Calling initcall 0xc05fcd31: fail_make_request_debugfs+0x0/0x14()
Calling initcall 0xc05fd16a: random32_reseed+0x0/0x4f()
Calling initcall 0xc0278ff8: acpi_poweroff_init+0x0/0x50()
Calling initcall 0xc05fef2e: acpi_wakeup_device_init+0x0/0x9c()
Calling initcall 0xc0279e25: acpi_sleep_proc_init+0x0/0x61()
Calling initcall 0xc060137e: seqgen_init+0x0/0xe()
Calling initcall 0xc0602949: early_uart_console_switch+0x0/0x7d()
Calling initcall 0xc0604e57: wait_scan_init+0x0/0xc()
Calling initcall 0xc0609f5c: tcp_congestion_default+0x0/0xf()
input: ImPS/2 Generic Wheel Mouse as /class/input/input1
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
kjournald starting. Commit interval 5 seconds
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.
Freeing unused kernel memory: 308k freed
Write protecting the kernel read-only data: 1254k
md: Autodetecting RAID arrays.
md: autorun ...
md: ... autorun DONE.
EXT3 FS on hda1, internal journal
kjournald starting. Commit interval 5 seconds
EXT3 FS on hda2, internal journal
EXT3-fs: mounted filesystem with ordered data mode.
audit(1172567767.742:2): audit_pid=1725 old=0 by auid=4294967295 subj=kernel
Fedora Core release 4 (Stentz)
Kernel 2.6.21-rc1-syslet-v5 on an i686
neptune login: NETDEV WATCHDOG: eth1: transmit timed out
eth1: Got tx_timeout. irq: 00000000
eth1: Ring at 37f82000
eth1: Dumping tx registers
0: 00000000 000000ff 00000003 020a03ca 00000000 00000000 00000000 00000000
20: 06255300 ff701365 00000000 00000000 00000000 00000000 00000000 00000000
40: 0420e20e 0000a855 00002e20 00000000 00000000 00000000 00000000 00000000
60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
80: 003b0f3c 00000001 00000000 007f0028 0000061c 00000001 00000000 00007fb4
a0: 0014050f 00000016 dcd41300 00001241 005e0001 00000100 ffffffff 0000ffff
c0: 10000002 00000001 00000001 00000001 00000001 00000001 00000001 00000001
e0: 00000001 00000001 00000001 00000001 00000001 00000001 00000001 00000001
100: 37f82800 37f82000 007f00ff 00008000 00010032 00000000 0000000b 37f82800
120: 37f820e0 00000000 00000000 37f87494 8000061c 37f8280c 37f8200c 0fe08000
140: 00304120 80002600 00000000 00000000 00000000 00000000 00000000 00000000
160: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
180: 00000016 00000008 0994796d 00008103 0000012a 00007800 0994000f 00000003
1a0: 00000016 00000008 0994796d 00008103 0000012a 00007800 0994000f 00000003
1c0: 00000016 00000008 0994796d 00008103 0000012a 00007800 0994000f 00000003
1e0: 00000016 00000008 0994796d 00008103 0000012a 00007800 0994000f 00000003
200: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
220: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
240: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
260: 00000000 00000000 fe020001 00000100 00000000 00000000 7e020001 00000100
eth1: Dumping tx ring
000: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 004: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 008: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 00c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 010: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 014: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 018: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 01c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 020: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 024: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 028: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 02c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 030: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 034: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 038: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 03c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 040: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 044: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 048: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 04c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 050: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 054: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 058: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 05c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 060: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 064: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 068: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 06c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 070: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 074: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 078: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 07c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 080: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 084: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 088: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 08c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 090: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 094: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 098: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 09c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0a0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0a4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0a8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0ac: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0b0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0b4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0b8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0bc: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0c0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0c4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0c8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0cc: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0d0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0d4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0d8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0dc: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0e0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0e4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0e8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0ec: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0f0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0f4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0f8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0fc: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000
eth1: tx_timeout: dead entries!
NETDEV WATCHDOG: eth1: transmit timed out
eth1: Got tx_timeout. irq: 00000000
eth1: Ring at 37f82000
eth1: Dumping tx registers
0: 00000000 000000ff 00000003 007903ca 00000000 00000000 00000000 00000000
20: 06255300 ff701365 00000000 00000000 00000000 00000000 00000000 00000000
40: 0420e20e 0000a855 00002e20 00000000 00000000 00000000 00000000 00000000
60: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
80: 003b0f3c 00000001 00000000 007f0028 0000061c 00000001 00000000 00007fb4
a0: 0014050f 00000016 dcd41300 00001241 005e0001 00000100 ffffffff 0000ffff
c0: 10000002 00000001 00000001 00000001 00000001 00000001 00000001 00000001
e0: 00000001 00000001 00000001 00000001 00000001 00000001 00000001 00000001
100: 37f82800 37f82000 007f00ff 00008000 00010032 00000000 00000022 37f82800
120: 37f820e0 00000000 00000000 37f87494 8000061c 37f8280c 37f8200c 0fe08000
140: 00304120 80002600 00000000 00000000 00000000 00000000 00000000 00000000
160: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
180: 00000016 00000008 0994796d 00008103 0000012a 00007800 0994000f 00000003
1a0: 00000016 00000008 0994796d 00008103 0000012a 00007800 0994000f 00000003
1c0: 00000016 00000008 0994796d 00008103 0000012a 00007800 0994000f 00000003
1e0: 00000016 00000008 0994796d 00008103 0000012a 00007800 0994000f 00000003
200: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
220: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
240: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
260: 00000000 00000000 fe020001 00000100 00000000 00000000 7e020001 00000100
eth1: Dumping tx ring
000: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 004: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 008: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 00c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 010: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 014: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 018: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 01c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 020: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 024: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 028: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 02c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 030: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 034: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 038: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 03c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 040: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 044: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 048: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 04c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 050: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 054: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 058: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 05c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 060: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 064: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 068: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 06c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 070: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 074: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 078: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 07c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 080: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 084: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 088: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 08c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 090: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 094: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 098: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 09c: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0a0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0a4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0a8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0ac: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0b0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0b4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0b8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0bc: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0c0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0c4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0c8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0cc: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0d0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0d4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0d8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0dc: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0e0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0e4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0e8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0ec: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0f0: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0f4: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0f8: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 0fc: 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000 // 00000000 00000000 00000000
eth1: tx_timeout: dead entries!
Re: regression: forcedeth.c hang
update: Jeff sent me 3 pending forcedeth.c fixes, and they indeed fix the regression. The one that fixed it is:
----------------->
The napi poll routine was missing the call to the optimized rx process routine. This patch adds the missing call for the optimized path.
drivers/net/forcedeth.c +7 -3
@@ -3104,13 +3104,17 @@struct fe_priv *np =netdev_priv (dev);u8 __iomem *base =get_hwbase (dev);unsigned long flags; +int retcode; -if (np->desc_ver ==DESC_VER_1 || np->desc_ver ==DESC_VER_2 ) +if (np->desc_ver ==DESC_VER_1 || np->desc_ver ==DESC_VER_2 ) { pkts =nv_rx_process (dev, limit); -else + retcode =nv_alloc_rx (dev); + }else { pkts =nv_rx_process_optimized (dev, limit); + retcode =nv_alloc_rx_optimized (dev); + } -if (nv_alloc_rx (dev)) { +if (retcode) {spin_lock_irqsave (&np->lock, flags);if (!np->in_shutdown)mod_timer (&np->oom_kick, jiffies +OOM_REFILL );
Re: regression: forcedeth.c hang
Quoted 3 lines · Ingo Molnar
update: Jeff sent me 3 pending
forcedeth.cfixes, and they indeed fix the regression. The one that fixed it is:
Ok, that was included in the bunch I just pulled and pushed out, so hopefully this one is resolved. Pls verify.
Linus
Re: regression: forcedeth.c hang
Quoted 7 lines · Linus Torvalds
Quoted 3 lines · Ingo Molnar
update: Jeff sent me 3 pending
forcedeth.cfixes, and they indeed fix the regression. The one that fixed it is:Ok, that was included in the bunch I just pulled and pushed out, so hopefully this one is resolved. Pls verify.
yep, can confirm that it's now fixed upstream too.
Ingo
RE: 2.6.21-rc1: known regressions (part 1)
In reply to Adrian BunkArkadiusz,
Could try the attached patch to see if it solves the problem? If not, please send the output of acpidump command and log.
Regards.
Konstantin.
Quoted 6 lines
-----Original Message-----
From: Adrian Bunk [mailto:[email protected]]
Sent: Sunday, February 25, 2007 8:53 PM
To: Linus Torvalds; Andrew Morton
Cc: Linux Kernel Mailing List; Pavel Machek; Marcel Holtmann; linux- [email protected]; Michael S. Tsirkin; Ingo Molnar; [email protected];
linux-
Quoted 2 lines
[email protected]; Yu, Luming; Arkadiusz Miskiewicz; Karasyov, Konstantin A; [email protected]; Thomas Meyer;
Andrew;
Quoted 2 lines
Janosch Machowinski; Lebedev, Vladimir P; Lukas Hejtmanek; [email protected]; [email protected]; Meelis Roos; Alan Cox;
Fabio
Quoted 1 line
Comolli; Jean-Luc Coulon; Markus Trippelsdorf; Tejun Heo; Rafael J.
Wysocki
Quoted 3 lines
Subject: 2.6.21-rc1: known regressions (part 1)
This email lists some known regressions in 2.6.21-rc1 compared to
2.6.20
Quoted 5 lines
that are not yet fixed in Linus' tree.
If you find your name in the Cc header, you are either submitter of one of the bugs, maintainer of an affectected subsystem or driver, a patch of you caused a breakage or I'm considering you in any other way
possibly
Quoted 3 lines
involved with one or more of these issues.
Due to the huge amount of recipients, please trim the Cc when
answering.
Quoted 3 lines
Subject : HP nx6325 notebook: usb mouse stops working after suspend
to
Quoted 8 lines
ram
References : http://lkml.org/lkml/2007/2/21/413
Submitter : Arkadiusz Miskiewicz <[email protected]>Caused-By Konstantin Karasyov <[email protected]>commit 0a6139027f3986162233adc17285151e78b39cacStatus : unknown
drivers/acpi/power.c +9 -7
@@ -436,8 +436,6 @@ int acpi_power_transition(struct acpi_device *device, int state) cl = &device->power.states[device->power.state].resources; tl = &device->power.states[state].resources; - device->power.state =ACPI_STATE_UNKNOWN ; -if (!cl->count && !tl->count) { result = -ENODEV ; goto end;
@@ -468,12 +466,15 @@ int acpi_power_transition(struct acpi_device *device, int state) goto end; } -/* We shouldn't change the state till all above operations succeed */ - device->power.state = state; - end: -if (result) + end: +if (result) { + device->power.state =ACPI_STATE_UNKNOWN ; printk(KERN_WARNING PREFIX "Transitioning device [%s] to D%d\n", device->pnp.bus_id, state); + }else { +/* We shouldn't change the state till all above operations succeed */ + device->power.state = state; + }return result; }
@@ -690,7 +691,8 @@ static int acpi_power_resume(struct acpi_device *device)if ((resource->state ==ACPI_POWER_RESOURCE_STATE_ON ) &&list_empty (&resource->reference)) {mutex_unlock (&resource->resource_lock); - result =acpi_power_off_device (device->handle,NULL ); +// result = acpi_power_off_device(device->handle, NULL); +printk ("RESUME: power resource %s found to be OFF\n" , device->pnp.bus_id);return result; }
2.6.21-rc1: known regressions (part 2)
In reply to Linus TorvaldsThis email lists some known regressions in 2.6.21-rc1 compared to 2.6.20 that are not yet fixed in Linus' tree.
If you find your name in the Cc header, you are either submitter of one of the bugs, maintainer of an affectected subsystem or driver, a patch of you caused a breakage or I'm considering you in any other way possibly involved with one or more of these issues.
Due to the huge amount of recipients, please trim the Cc when answering.
Subject : ThinkPad T60: system doesn't come out of suspend to RAM
(CONFIG_NO_HZ)
References : http://lkml.org/lkml/2007/2/22/391
Submitter : Michael S. Tsirkin <[email protected]>
Thomas Gleixner <[email protected]>
Status : unknown
Subject : kernel BUG at kernel/time/tick-sched.c:168 (CONFIG_NO_HZ)
References : http://lkml.org/lkml/2007/2/16/346
Submitter : Michal Piotrowski <[email protected]>
Status : problem is being debugged
Subject : BUG: soft lockup detected on CPU#0
NOHZ: local_softirq_pending 20
References : http://lkml.org/lkml/2007/2/20/257
Submitter : Michal Piotrowski <[email protected]>
Ingo Molnar <[email protected]>
Status : problem is being debugged
Subject : i386: no boot with nmi_watchdog=1 (clockevents)
References : http://lkml.org/lkml/2007/2/21/208
Submitter : Daniel Walker <[email protected]>
commit e9e2cdb412412326c4827fc78ba27f410d837e6e
Status : problem is being debugged
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 11 lines · Adrian Bunk
This email lists some known regressions in 2.6.21-rc1 compared to 2.6.20 that are not yet fixed in Linus' tree.
If you find your name in the Cc header, you are either submitter of one of the bugs, maintainer of an affectected subsystem or driver, a patch of you caused a breakage or I'm considering you in any other way possibly involved with one or more of these issues.
Due to the huge amount of recipients, please trim the Cc when answering.
Quoted 7 lines
Subject : ThinkPad T60: system doesn't come out of suspend to RAM
(CONFIG_NO_HZ)References : http://lkml.org/lkml/2007/2/22/391
Submitter : Michael S. Tsirkin <[email protected]>
Thomas Gleixner <[email protected]>Handled-By Ingo Molnar <[email protected]>Status : unknown
x60 doesn't resume from S2R either, it doesn't matter if CONFIG_NO_HZ is set or not though. 2.6.20 worked fine.
Signature · 1 line
Jens Axboe
Re: 2.6.21-rc1: known regressions (part 2)
Hi!
Quoted 19 lines
Quoted 11 lines
This email lists some known regressions in 2.6.21-rc1 compared to 2.6.20 that are not yet fixed in Linus' tree.
If you find your name in the Cc header, you are either submitter of one of the bugs, maintainer of an affectected subsystem or driver, a patch of you caused a breakage or I'm considering you in any other way possibly involved with one or more of these issues.
Due to the huge amount of recipients, please trim the Cc when answering.
Quoted 7 lines
Subject : ThinkPad T60: system doesn't come out of suspend to RAM
(CONFIG_NO_HZ)References : http://lkml.org/lkml/2007/2/22/391
Submitter : Michael S. Tsirkin <[email protected]>
Thomas Gleixner <[email protected]>Handled-By Ingo Molnar <[email protected]>Status : unknown
Quoted 2 lines
x60 doesn't resume from S2R either, it doesn't matter if
CONFIG_NO_HZis set or not though. 2.6.20 worked fine.
It somehow works for me. As long as I do not play with bluetooth and suspend to disk...
Pavel
Signature · 2 lines
(english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 21 lines · Pavel Machek
Hi!
Quoted 19 lines
Quoted 18 lines
This email lists some known regressions in 2.6.21-rc1 compared to 2.6.20 that are not yet fixed in Linus' tree.
If you find your name in the Cc header, you are either submitter of one of the bugs, maintainer of an affectected subsystem or driver, a patch of you caused a breakage or I'm considering you in any other way possibly involved with one or more of these issues.
Due to the huge amount of recipients, please trim the Cc when answering.
Subject : ThinkPad T60: system doesn't come out of suspend to RAM
(CONFIG_NO_HZ)References : http://lkml.org/lkml/2007/2/22/391
Submitter : Michael S. Tsirkin <[email protected]>
Thomas Gleixner <[email protected]>Handled-By Ingo Molnar <[email protected]>Status : unknown
Quoted 5 lines
Quoted 2 lines
x60 doesn't resume from S2R either, it doesn't matter if
CONFIG_NO_HZis set or not though. 2.6.20 worked fine.It somehow works for me. As long as I do not play with bluetooth and suspend to disk...
It locks solid here on resume, going back to 2.6.20 makes it work perfectly again. In between 2.6.20 and 2.6.21-rc1 some ACPI change broke resume, but that got fixed. Some other change later snuck in that broke it AGAIN for me, sigh.
I don't use bluetooth nor suspend to disk.
Signature · 1 line
Jens Axboe
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 6 lines · Jens Axboe
Quoted 5 lines
Quoted 2 lines
x60 doesn't resume from S2R either, it doesn't matter if
CONFIG_NO_HZis set or not though. 2.6.20 worked fine.It somehow works for me. As long as I do not play with bluetooth and suspend to disk...
Quoted 6 lines
It locks solid here on resume, going back to 2.6.20 makes it work perfectly again. In between 2.6.20 and 2.6.21-rc1 some ACPI change broke resume, but that got fixed. Some other change later snuck in that broke it AGAIN for me, sigh.
I don't use bluetooth nor suspend to disk.
resume is stock on my T60 too. So you mean v2.6.21-rc1 vanilla works fine? Do you know a commit ID that works for sure? I'd like to bisect this, but this way i might just find that ACPI change that got already fixed later on (and then got re-broken).
Ingo
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 14 lines · Ingo Molnar
Quoted 11 lines · Jens Axboe
Quoted 5 lines
Quoted 2 lines
x60 doesn't resume from S2R either, it doesn't matter if
CONFIG_NO_HZis set or not though. 2.6.20 worked fine.It somehow works for me. As long as I do not play with bluetooth and suspend to disk...
It locks solid here on resume, going back to 2.6.20 makes it work perfectly again. In between 2.6.20 and 2.6.21-rc1 some ACPI change broke resume, but that got fixed. Some other change later snuck in that broke it AGAIN for me, sigh.
Quoted 4 lines
Quoted 1 line
I don't use bluetooth nor suspend to disk.
resume is stock on my T60 too. So you mean v2.6.21-rc1 vanilla works fine? Do you know a commit ID that works for sure? I'd like to bisect
Nope, 2.6.21-rc1 vanilla does not work. 2.6.20 works. 2.6.20-gitX worked until some acpi change broke it, the below patch fixed that for me. That got merged in a later 2.6.20-gitY, but then some other patch broke it again so that 2.6.21-rc1 is broken. Not much luck there :-)
So it looks like:
- c5a7156959e89b32260ad6072bbf5077bcdfbeee broke 2.6.20-git
- f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38 should fix that.
- Something later than f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38 broke it again.
Quoted 2 lines
this, but this way i might just find that ACPI change that got already fixed later on (and then got re-broken).
Yeah, it gets trickier. I'll try f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38 now and see if that works, then bisect to 2.6.21-rc1 to find the other offender. I hope the other offender didn't get added before f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38, we'll see :-)
Signature · 1 line
Jens Axboe
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 32 lines · Jens Axboe
Quoted 14 lines · Ingo Molnar
Quoted 11 lines · Jens Axboe
Quoted 5 lines
Quoted 2 lines
x60 doesn't resume from S2R either, it doesn't matter if
CONFIG_NO_HZis set or not though. 2.6.20 worked fine.It somehow works for me. As long as I do not play with bluetooth and suspend to disk...
It locks solid here on resume, going back to 2.6.20 makes it work perfectly again. In between 2.6.20 and 2.6.21-rc1 some ACPI change broke resume, but that got fixed. Some other change later snuck in that broke it AGAIN for me, sigh.
Quoted 4 lines
Quoted 1 line
I don't use bluetooth nor suspend to disk.
resume is stock on my T60 too. So you mean v2.6.21-rc1 vanilla works fine? Do you know a commit ID that works for sure? I'd like to bisect
Nope, 2.6.21-rc1 vanilla does not work. 2.6.20 works. 2.6.20-gitX worked until some acpi change broke it, the below patch fixed that for me. That got merged in a later 2.6.20-gitY, but then some other patch broke it again so that 2.6.21-rc1 is broken. Not much luck there :-)
So it looks like:
-
c5a7156959e89b32260ad6072bbf5077bcdfbeeebroke 2.6.20-git
-f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38should fix that.
- Something later thanf3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38broke it again.
Quoted 8 lines
Quoted 2 lines
this, but this way i might just find that ACPI change that got already fixed later on (and then got re-broken).
Yeah, it gets trickier. I'll try
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38now and see if that works, then bisect to 2.6.21-rc1 to find the other offender. I hope the other offender didn't get added beforef3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38, we'll see :-)
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38 works for me, starting bisect.
Signature · 1 line
Jens Axboe
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 36 lines · Jens Axboe
Quoted 35 lines · Jens Axboe
Quoted 14 lines · Ingo Molnar
Quoted 11 lines · Jens Axboe
Quoted 5 lines
Quoted 2 lines
x60 doesn't resume from S2R either, it doesn't matter if
CONFIG_NO_HZis set or not though. 2.6.20 worked fine.It somehow works for me. As long as I do not play with bluetooth and suspend to disk...
It locks solid here on resume, going back to 2.6.20 makes it work perfectly again. In between 2.6.20 and 2.6.21-rc1 some ACPI change broke resume, but that got fixed. Some other change later snuck in that broke it AGAIN for me, sigh.
Quoted 4 lines
Quoted 1 line
I don't use bluetooth nor suspend to disk.
resume is stock on my T60 too. So you mean v2.6.21-rc1 vanilla works fine? Do you know a commit ID that works for sure? I'd like to bisect
Nope, 2.6.21-rc1 vanilla does not work. 2.6.20 works. 2.6.20-gitX worked until some acpi change broke it, the below patch fixed that for me. That got merged in a later 2.6.20-gitY, but then some other patch broke it again so that 2.6.21-rc1 is broken. Not much luck there :-)
So it looks like:
-
c5a7156959e89b32260ad6072bbf5077bcdfbeeebroke 2.6.20-git
-f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38should fix that.
- Something later thanf3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38broke it again.Quoted 2 lines
this, but this way i might just find that ACPI change that got already fixed later on (and then got re-broken).
Quoted 7 lines
Quoted 5 lines
Yeah, it gets trickier. I'll try
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38now and see if that works, then bisect to 2.6.21-rc1 to find the other offender. I hope the other offender didn't get added beforef3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38, we'll see :-)
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38works for me, starting bisect.
Which got me nowhere, after bisecting down from 1213 revisions to nothing. f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38 certainly works, just verified again. Trying only acpi related changes now...
Signature · 1 line
Jens Axboe
Re: 2.6.21-rc1: known regressions (part 2)
In reply to Jens AxboeQuoted 1 line · Jens Axboe
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38works for me, [...]
update: f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38 works for me too, and 01363220f5d23ef68276db8974e46a502e43d01d is broken. I too will attempt to bisect this.
Ingo
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 3 lines · Ingo Molnar
update:
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38works for me too, and01363220f5d23ef68276db8974e46a502e43d01dis broken. I too will attempt to bisect this.
hm. There's some weird bisection artifact here. Here are the commits i tested, in git-log order:
#1 commit 01363220f5d23ef68276db8974e46a502e43d01d bad #2 commit ee404566f97f9254433399fbbcfa05390c7c55f7 bad #3 commit f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38 good #4 commit c827ba4cb49a30ce581201fd0ba2be77cde412c7 bad
if i tell git-bisect that #1 is bad and #3 is good, then it offers me #2
- that's OK. But when i tell it that #2 is bad, it offers #4 - which is out of order! The bisection goes off into la-la land after that and never gets back to a commit that is /after/ the good commit. How is this possible? (I upgraded from git-1.4.4 to 1.5.0 to make sure this isnt some git bug that's already fixed.)
i'll try to straighten this out manually, perhaps #3 is in some merge branch that confuses bisection. Or maybe i misunderstood how git-bisect works.
Ingo
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 15 lines · Ingo Molnar
hm. There's some weird bisection artifact here. Here are the commits i tested, in git-log order:
#1 commit
01363220f5d23ef68276db8974e46a502e43d01dbad #2 commitee404566f97f9254433399fbbcfa05390c7c55f7bad #3 commitf3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38good #4 commitc827ba4cb49a30ce581201fd0ba2be77cde412c7badif i tell git-bisect that #1 is bad and #3 is good, then it offers me #2 - that's OK. But when i tell it that #2 is bad, it offers #4 - which is out of order! The bisection goes off into la-la land after that and never gets back to a commit that is /after/ the good commit. How is this possible? (I upgraded from git-1.4.4 to 1.5.0 to make sure this isnt some git bug that's already fixed.)
Quoted 3 lines
i'll try to straighten this out manually, perhaps #3 is in some merge branch that confuses bisection. Or maybe i misunderstood how git-bisect works.
git-bisect gets royally confused on those ACPI merge branches around commit c0cd79d11412969b6b8fa1624cdc1277db82e2fe. Here are my test results so far:
commit 01363220f5d23ef68276db8974e46a502e43d01d: bad commit 255f0385c8e0d6b9005c0e09fffb5bd852f3b506: bad commit c0cd79d11412969b6b8fa1624cdc1277db82e2fe: bad commit c24e912b61b1ab2301c59777134194066b06465c: good commit e9e2cdb412412326c4827fc78ba27f410d837e6e: bad commit 79bf2bb335b85db25d27421c798595a2fa2a0e82: bad commit fc955f670c0a66aca965605dae797e747b2bef7d: good commit 70c0846e430881967776582e13aefb81407919f1: good commit 414f827c46973ba39320cfb43feb55a0eeb9b4e8: bad commit f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38: good commit 5f0b1437e0708772b6fecae5900c01c3b5f9b512: bad commit b878ca5d37953ad1c4578b225a13a3c3e7e743b7: bad commit c2902c8ae06762d941fab64198467f78cab6f8cd: bad commit 12e74f7d430655f541b85018ea62bcd669094bd7: bad commit 3388c37e04ec0e35ebc1b4c732fdefc9ea938f3b: bad commit 9f4bd5dde81b5cb94e4f52f2f05825aa0422f1ff: bad
the results are totally reproducible (i re-tried a few of both the good and the bad commits), i.e. it's not a sporadic condition. Also, a number of the 'bad' commits have no dynticks stuff in them at all, so i'd exclude dynticks.
could someone suggest a sane way to go with this? Perhaps suggest specific commit IDs to test?
Ingo
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 43 lines · Ingo Molnar
Quoted 15 lines · Ingo Molnar
hm. There's some weird bisection artifact here. Here are the commits i tested, in git-log order:
#1 commit
01363220f5d23ef68276db8974e46a502e43d01dbad #2 commitee404566f97f9254433399fbbcfa05390c7c55f7bad #3 commitf3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38good #4 commitc827ba4cb49a30ce581201fd0ba2be77cde412c7badif i tell git-bisect that #1 is bad and #3 is good, then it offers me #2 - that's OK. But when i tell it that #2 is bad, it offers #4 - which is out of order! The bisection goes off into la-la land after that and never gets back to a commit that is /after/ the good commit. How is this possible? (I upgraded from git-1.4.4 to 1.5.0 to make sure this isnt some git bug that's already fixed.)
Quoted 3 lines
i'll try to straighten this out manually, perhaps #3 is in some merge branch that confuses bisection. Or maybe i misunderstood how git-bisect works.
git-bisect gets royally confused on those ACPI merge branches around commit
c0cd79d11412969b6b8fa1624cdc1277db82e2fe. Here are my test results so far:commit
01363220f5d23ef68276db8974e46a502e43d01d: bad commit255f0385c8e0d6b9005c0e09fffb5bd852f3b506: bad commitc0cd79d11412969b6b8fa1624cdc1277db82e2fe: bad commitc24e912b61b1ab2301c59777134194066b06465c: good commite9e2cdb412412326c4827fc78ba27f410d837e6e: bad commit79bf2bb335b85db25d27421c798595a2fa2a0e82: bad commitfc955f670c0a66aca965605dae797e747b2bef7d: good commit70c0846e430881967776582e13aefb81407919f1: good commit414f827c46973ba39320cfb43feb55a0eeb9b4e8: bad commitf3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38: good commit5f0b1437e0708772b6fecae5900c01c3b5f9b512: bad commitb878ca5d37953ad1c4578b225a13a3c3e7e743b7: bad commitc2902c8ae06762d941fab64198467f78cab6f8cd: bad commit12e74f7d430655f541b85018ea62bcd669094bd7: bad commit3388c37e04ec0e35ebc1b4c732fdefc9ea938f3b: bad commit9f4bd5dde81b5cb94e4f52f2f05825aa0422f1ff: bad
Quoted 7 lines
the results are totally reproducible (i re-tried a few of both the good and the bad commits), i.e. it's not a sporadic condition. Also, a number of the 'bad' commits have no dynticks stuff in them at all, so i'd exclude dynticks.
could someone suggest a sane way to go with this? Perhaps suggest specific commit IDs to test?
Hm, does 2.6.20-mm2 work? If not, you can bisect the broken-out sereis with quilt.
Rafael
Re: 2.6.21-rc1: known regressions (part 2)
In reply to Ingo MolnarQuoted 4 lines · Ingo Molnar
git-bisect gets royally confused on those ACPI merge branches around commit
c0cd79d11412969b6b8fa1624cdc1277db82e2fe. Here are my test results so far:
Looks like git bisect worked for you, and wasn't confused at all. You started out with 2931 commits between your first known-bad and known-good commits, which means that you usually end up having to check "log2(n)+1" kernels, ie I'd have expected you to have to do 12-13 bisection attempts to cut it down to one.
You seem to have done 14 (you list 16 commits, two of which are the starting points), which is right in that range. The reason you sometimes get more is:
- you "help" git bisect by choosing other commits than the optimal ones.
- with bad luck, it can be hard to get really close to "half the commits" in the reachability analysis, especially if you have lots of merges (and *especially* if you have octopus merges that merge more than two branches of development). For example, say that you have something like
a | +---+---+---+---+ | | | | | b c d e f
where you have six commits - you can't test any "combinations" at all, since they are all independent, so "git bisect" cannot test them three and three to cut down the time, so if you don't know which one is bad, you'll basically end up testing them all.
The bad luck case never really happens to that extreme in practice, and even when it does you can sometimes be lucky and just hit on the bug early (so "bad luck" may end up being "good luck" after all), but it explains why you can get more - or less - than log2(n)+1 attempts. More commonly one more.
A much *bigger* problem is if you mark something good or bad that isn't really. Ie if the bug comes and goes (it might be timing-dependent, for example), the problem will be that you'll always narrow things down (that's what bisection does), but you may not narrow it down to the right thing!
We've had that happen several times. If the bug (for example) means that suspend *often* breaks, but sometimes works just by luck, you might mark a kernel "good" when it really wasn't and then "git bisect" will *really* go out in the weeds, and won't even try to test the commits that may have introduced the bug, because you told it that those commits resulted in a good kernel..
Quoted 8 lines
commit
01363220f5d23ef68276db8974e46a502e43d01d: bad commit255f0385c8e0d6b9005c0e09fffb5bd852f3b506: bad commitc0cd79d11412969b6b8fa1624cdc1277db82e2fe: bad commitc24e912b61b1ab2301c59777134194066b06465c: good commite9e2cdb412412326c4827fc78ba27f410d837e6e: bad commit79bf2bb335b85db25d27421c798595a2fa2a0e82: bad commitfc955f670c0a66aca965605dae797e747b2bef7d: good commit70c0846e430881967776582e13aefb81407919f1: good
Quoted 8 lines
commit
414f827c46973ba39320cfb43feb55a0eeb9b4e8: bad commitf3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38: good commit5f0b1437e0708772b6fecae5900c01c3b5f9b512: bad commitb878ca5d37953ad1c4578b225a13a3c3e7e743b7: bad commitc2902c8ae06762d941fab64198467f78cab6f8cd: bad commit12e74f7d430655f541b85018ea62bcd669094bd7: bad commit3388c37e04ec0e35ebc1b4c732fdefc9ea938f3b: bad commit9f4bd5dde81b5cb94e4f52f2f05825aa0422f1ff: bad
Looks like it's claiming that 9f4bd5dde81b5cb94e4f52f2f05825aa0422f1ff is the bad commit. Which is extremely unlikely, since it only seems to affect the emu10k sound driver, which I don't think even exists on any ThinkPad laptops (correct me if I'm wrong).
Btw, you seem to have re-ordered the commits - the above is not the order you did the bisection in. The known-good commit (f3ccb06..) is in the middle. That's totally bogus. Please use the git bisection log (see .git/BISECT_LOG), and don't think that you know some "better" order. You really don't.
Quoted 7 lines
the results are totally reproducible (i re-tried a few of both the good and the bad commits), i.e. it's not a sporadic condition. Also, a number of the 'bad' commits have no dynticks stuff in them at all, so i'd exclude dynticks.
could someone suggest a sane way to go with this? Perhaps suggest specific commit IDs to test?
You claim that 9f4bd5dd is bad, but you indirectly claim that its direct parent (5986a2ec) is good by saying that f3ccb06f is good. This is why "git bisect" will claim that 9f4bd5dd must be the bad commit.
I would suggest testing commit 5986a2ec explicitly. If that one is good, then, since you claim that 9f4bd5dd is bad, then yes, 9f4bd5dd *is* the bad commit (because 5986a2ec is its direct parent).
But most likely, 9f4bd5dd is actually already bad, and what you are seeing is two *different* bugs that just have the same symptoms ("suspend doesn't work").
What happens is that you've chased them *both*, and you cannot bisect that kind of behaviour totally automatically and mindlessly, simply because when you say "git bisect bad", that means that *one* of the bugs is active, but not necessarily both of them. So you may well be marking kernels that are "good" (as far as the other bug is concerned) as bad - and that just means that bisection won't even test them.
When that happens, you need to basically
- be able to separate the bugs out some way (so that you can still mark a non-working kernel "good" if it's good *with*respect*to* the particular bug you're chasing)
This is often practically impossible, _especially_ with suspend, where the behaviour is so unhelpful that it's usually not possible to separate out "ACPI is broken" from "one particular device driver is broken", because they both have exactly the same symptoms: the machine doesn't resume.
HOWEVER. Even if you can't actually separate the bugs out, you can usually find where *one* of the bugs starts, and that point you can generally find the fix for it too. In this case, we already know one of the bugs: it's the ACPI bug that was apparently fixed by f3ccb06f3 (or maybe another one in that series).
Once you have that, you now actually have a way to "correct" for that known bug, and by correcting for the known bug, you now *can* separate the behaviour of the two bugs:
- You can now re-do a totally mindless git bisection for the *other* bug, but what you now need to do is that at each bisection step, you look at whether the bisection point has the known bug, and if so, you apply the known fix for that known bug, and thus you can test the kernel *without* the interaction of the bug you already found.
This makes bisection a lot less automated (you have to apply the "fix" for the other bug at each step), but it still allows "total automation" in the sense that you don't actually need to know at all what you're looking for:
you're just following a known pattern, and you're basically just correcting for the effects of another bug that you're no longer interested in, since you already know what the fix for that bug was.
The other alternative is to actually have a clue what you're searching for, and/or look deeply at where the fix was merged, and trying to narrow things down by actually understanding the problem. But at that point, bisection won't much help you, except perhaps as a way to find a mid-way point to test out theories with ("which drivers that I actually use have changed in between" kinds of experiments where you simply undo part of the changes entirely, and bisection ends up being just a way to pick points that are hopefully "interestingly far apart").
Linus
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 5 lines · Linus Torvalds
Once you have that, you now actually have a way to "correct" for that known bug, and by correcting for the known bug, you now *can* separate the behaviour of the two bugs:
Quoted 8 lines
- You can now re-do a totally mindless git bisection for the *other* bug, but what you now need to do is that at each bisection step, you look at whether the bisection point has the known bug, and if so, you apply the known fix for that known bug, and thus you can test the kernel *without* the interaction of the bug you already found.
This makes bisection a lot less automated (you have to apply the "fix" for the other bug at each step)
Side note: it's still usually fairly easy. Especially if you have a known fix for the other bug, you can usually just do the equivalent of
git cherry-pick <fixcommit>
at each point during this bisect (or just have a known patch that you keep applying and un-applying), and you're largely done.
Of course, if the area with the fix keeps changing, or if the fix is really intrusive and nasty, this gets hairy, but at least in this case the patch is fairly trivial and it shouldn't cause any trouble at all to do this.
The only real down-side is just the mindless extra work, and the possible added confusion you get from modifying the history at the points you're testing. "git bisect" is not necessarily happy about auto-picking a new bisection point with a dirty tree, for example, so before you mark something "good" or "bad", you should generally try to do so with a clean git tree (ie if you apply a patch at each stage, do "git reset --hard" to remove the patch before you do the "git bisect bad/good" stage).
Similarly, especially at the end of the bisection run, if you actually use "git cherry-pick" to *add* a commit, the bisection will now take that added commit into account when trying to pick the next commit to check, which is not what you really want. It probably doesn't matter that much during the early stages (when bisection is really jumping around wildly anyway, and one commit more or less doesn't really matter), but again, it might be a good idea to make a habit of undoing the cherry-pick, the same way you'd undo a patch (eg "git reset --hard HEAD^" would do it, if you have exactly one cherry-pick that you tested).
Linus
Re: 2.6.21-rc1: known regressions (part 2)
In reply to Linus TorvaldsQuoted 3 lines · Linus Torvalds
Btw, you seem to have re-ordered the commits - the above is not the order you did the bisection in. The known-good commit (f3ccb06..) is in the middle. [...]
no - i simply picked them by hand, based on looking at gittk output, because bisection did not appear to find anything useful:
9f4bd5dde81b5cb94e4f52f2f05825aa0422f1ff is first bad commit
And via that method i found a couple of more 'good' points - which git-bisect never picked up by itself. (and i did 3-4 separate git-bisect sessions, one of them was a "git-bisect start drivers/acpi/" - which is the main area of suspicion). I looked at git-bisect visualize more than once, and i've attached one of the bisection logs below.
i also think i know what happens. Firstly, my testing is reliable, as i mentioned it in the other mail i frequently re-visited commits to make sure that none of my bad/good decisions is spurios - but no, the test results are extremely reproducable: either the laptop resumes properly after flashing its disk light or it does not.
the problem i think is that i simply took git-bisect's behavior for granted (i used it many times already) but forgot about a very basic
precondition: git-bisect will find only a /single/ good->bad transition.
If there is a bad->good transition combined with a good->bad transition then git-bisect will think it's the same 'badness', while it's a /former/ badness that it is honing in on - totally sending the bisection off into la-la-land.
so as i mentioned it in the first mail: i /know/ that this commit is a bad->good transition point:
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38
/and i only want to test commits that include this commit/ - because i know that without this commit git-bisect confuses the /other/ breakage with the new breakage. In the bisection log below, this choice of git-bisect:
ee404566f97f9254433399fbbcfa05390c7c55f7
is 'bad' according to testing, but that's 'another' badness - and i missed it.
Now, having slept on it, the solution is very simple: whenever git-bisect picks a commit for which the following command comes up empty:
git-log | grep f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38
then i'll mark it "git-bisect good" - artificially marking the older badness as a 'good' area. That way git-bisect will find the right good->bad transition point.
btw., that's why i tried to pick up commits by hand, making sure that commit f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38 is always included - but got lost in the maze of the commit graph, and didnt realize that there is a simple solution. Nevertheless i wanted to dump the information i already gathered. Those commits were totally out of order, etc. - they were picked by a poor human who is much worse at walking graphs than git-bisect ;-)
Ingo
git-bisect start
# bad: [01363220f5d23ef68276db8974e46a502e43d01d] [PARISC] clocksource: Move update_cr16_clocksource later in boot git-bisect bad 01363220f5d23ef68276db8974e46a502e43d01d
# good: [f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38] ACPI: Disable wake GPEs only once.
git-bisect good f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38
# bad: [ee404566f97f9254433399fbbcfa05390c7c55f7] sysctl: mips/au1000: remove sys_sysctl support
git-bisect bad ee404566f97f9254433399fbbcfa05390c7c55f7
# bad: [c827ba4cb49a30ce581201fd0ba2be77cde412c7] Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6 git-bisect bad c827ba4cb49a30ce581201fd0ba2be77cde412c7
# bad: [68a696a01f482859a9fe937249e8b3d44252b610] Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-tc
git-bisect bad 68a696a01f482859a9fe937249e8b3d44252b610
# bad: [1c433fbda4896a6455d97b66a4f2646cbdd52a8c] [ALSA] soc - 0.13 ASoC headers
git-bisect bad 1c433fbda4896a6455d97b66a4f2646cbdd52a8c
# bad: [048b945077bdc7e8dff5d5810ff2a0ced3590ca9] [ALSA] echoaudio, add TLV support
git-bisect bad 048b945077bdc7e8dff5d5810ff2a0ced3590ca9
# bad: [c07584c83287ae5a13cc836f69a1d824ad068c66] [ALSA] hda-codec - Add support for Medion laptops
git-bisect bad c07584c83287ae5a13cc836f69a1d824ad068c66
# bad: [dbc6b6ad767c86907db373e85139b0e975ba7599] [ALSA] ASoC codecs: generic AC97 support
git-bisect bad dbc6b6ad767c86907db373e85139b0e975ba7599
# bad: [b66b3cfe6c2f6560f351278883a325b6ebc478f5] [ALSA] hda_intel: increase maximum DMA buffer size to 1024MB git-bisect bad b66b3cfe6c2f6560f351278883a325b6ebc478f5
# bad: [12b131c4cf3eb1dc8a60082a434b7b100774c2e7] [ALSA] allow registering an alsa device with struct device pointer git-bisect bad 12b131c4cf3eb1dc8a60082a434b7b100774c2e7
# bad: [e4f8e656d8c152c08cd44d0e3c21f009fab09952] [ALSA] usb-audio: allow pausing
git-bisect bad e4f8e656d8c152c08cd44d0e3c21f009fab09952
# bad: [1700f3080d98323e91864d67cb9f6d46f818ccf0] [ALSA] usb-audio: merge playback/capture hardware information structs git-bisect bad 1700f3080d98323e91864d67cb9f6d46f818ccf0
# bad: [9f4bd5dde81b5cb94e4f52f2f05825aa0422f1ff] [ALSA] snd-emu10k1: Added support for emu1010, including E-Mu 1212m and E-Mu 1820m git-bisect bad 9f4bd5dde81b5cb94e4f52f2f05825aa0422f1ff
Re: 2.6.21-rc1: known regressions (part 2)
In reply to Linus TorvaldsQuoted 3 lines · Linus Torvalds
But most likely,
9f4bd5ddis actually already bad, and what you are seeing is two *different* bugs that just have the same symptoms ("suspend doesn't work").
the situation is simpler than that: there is a /known/ bug, and i marked the bugfix commit as 'good'. I never met such a multiple-bugs scenario before and forgot that git-bisect could easily pick a tree without this essential bugfix and would not be able to make a distinction between the two types of badness.
I'll try what i've described in the previous mail: mark all bisection points that do not include f3ccb06f as 'good' - thus 'merging' the known-bad area with the first known-good commit, and thus eliminating it from the bisection space.
(but it might also be useful to have a "git-bisect must-include" kind of command that would allow this to be automated: mark a particular tree as an essential component of the search space.)
Ingo
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 4 lines · Ingo Molnar
I'll try what i've described in the previous mail: mark all bisection points that do not include
f3ccb06fas 'good' - thus 'merging' the known-bad area with the first known-good commit, and thus eliminating it from the bisection space.
this got me quite a bit further:
git-bisect start
git-bisect bad 01363220f5d23ef68276db8974e46a502e43d01d
git-bisect good f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38
git-bisect fake-good ee404566f97f9254433399fbbcfa05390c7c55f7
git-bisect bad d43a338e395371733a80ec473b40baac5f74d768
git-bisect bad 255f0385c8e0d6b9005c0e09fffb5bd852f3b506
git-bisect fake-good f99c6bb6e2e9c35bd3dc0b1d0faa28bd6970930d git-bisect fake-good 0187f221e96e3436d552c0c7143f183eb82fb658
git-bisect bad 81450b73dde07f473a4a7208b209b4c8b7251d90
git-bisect fake-good ef29498655b18d2bfd69048e20835d19333981ab git-bisect fake-good 8a03d9a498eaf02c8a118752050a5154852c13bf
git-bisect good 5c95d3f5783ab184f64b7848f0a871352c35c3cf git-bisect good ecb5f7521a309cb9c5fc0832b9705cd2a03d7d45 git-bisect good 0539771d7236b425f285652f6f297cc7939c8f9a
81450b73dde07f473a4a7208b209b4c8b7251d90 is first bad commit
[ note: by having the "git-bisect must-have-bugfix f3ccb06f"
functionality i mentioned in the previous mail git-bisect could have eliminated the fake-good steps. ]
it's not a resolution of this regression yet, because this commit is a merge with upstream:
| commit 81450b73dde07f473a4a7208b209b4c8b7251d90 | Merge: 8a03d9a... 0539771... | Author: Len Brown <[email protected]> | Date: Fri Feb 16 18:52:41 2007 -0500 | | Pull misc-for-upstream into release branch
which means that the fix in Len's tree got broken by merging with upstream. Note: this 'upstream' in isolation is broken too, due to not having that essential fix from Len's tree!
So we quite likely have /two/ bugs, any of which breaks resume (which breakage looks the same, so no way to isolate them via testing).
I'll now try the following: i'll try to manually apply Len's fix to every tree that git-bisect offers me, in the hope of being able to isolate the /other/ bug.
[ But really, i'm not expecting any miracles because this is way out of
league for git-bisect which really depends on only having a binary space to search for. ]
Ingo
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 7 lines · Ingo Molnar
I'll now try the following: i'll try to manually apply Len's fix to every tree that git-bisect offers me, in the hope of being able to isolate the /other/ bug.
[ But really, i'm not expecting any miracles because this is way out of
league for git-bisect which really depends on only having a binary space to search for. ]
this method pointed out the real bug that we are interested in:
| 774c47f1d78e373a6bd2964f4e278d1ce26c21cb is first bad commit | commit 774c47f1d78e373a6bd2964f4e278d1ce26c21cb | Author: Avi Kivity <[email protected]> | Date: Mon Feb 12 00:54:47 2007 -0800 | [PATCH] KVM: cpu hotplug support
undoing the 774c47f1 patch from HEAD gave me a working resume. I'll send a fix for this KVM breakage in a separate mail.
here's how the bisection went:
bad: [01363220f5d23ef68276db8974e46a502e43d01d] [PARISC] clocksource:
good: [fa285a3d7924a0e3782926e51f16865c5129a2f7] Linux 2.6.20 +good: [bcdb81ae29091f6a66369aabfd8324e4a53d05dc] knfsd: SUNRPC: add a
bad: [920841d8d1d61bc12b43f95a579a5374f6d98f81] Merge branch 'for-linus' +bad: [86a71dbd3e81e8870d0f0e56b87875f57e58222b] sysctl: hide the sysctl +bad: [719c91ccadd3ed26570dbb29d54166914832eee9] [POWERPC] Use udbg_early +bad: [ebaf0c6032f525ddb0158fb59848d41899dce8cd] Merge branch 'for-linus' +good: [8cd133073f9b5cd335c0b2e4740aceb025d50ca9] kvm: Fix mismatch between +bad: [5b8e8ee6c65a34d8aafaeb8e2eaa97e496c2567c] ps3: add shutdown to +bad: [a524d946bdced73c5fbe60170fb33611491c4211] tgafb: sync-on-green +bad: [a268422de8bf1b4c0cb97987b6c329c9f6a3da4b] fbdev driver for S3
+good: [8d0be2b3bf4a55606967d7d84e56c52521e94333] KVM: VMX: add vcpu_clear() +bad: [59ae6c6b87711ceb2d1ea5f9e08bb13aee947a29] KVM: Host suspend/resume +bad: [774c47f1d78e373a6bd2964f4e278d1ce26c21cb] KVM: cpu hotplug support
the commits prefixed with '+' were the ones where i had to hand-merge the f3ccb06f commit to. Near the end of the bisection it nicely honed in on the group of KVM changes that included the bad commit.
but the conclusion is clear: if multiple bugs are present in the search area then it gets quite difficult to sort it out via git-bisect - but it's not impossible either. The following git-bisect enhancement could have made things easier for me:
git-bisect mark-must-have <tree>
which would mark <tree> as a must-have fix and would attempt to merge it to whatever bisection point it ends up with - if that bisection point does not have <tree> included already. (Maybe not even the full tree but only one particular commit ID.) In this particular case that merge, when it had to be done, was always 'clean'.
Ingo
PATCH 1/1 KVM: T60 resume fix
Subject: [patch] KVM: T60 resume fix
From: Ingo Molnar <[email protected]>
my T60 laptop does not resume correctly due to KVM attempting to send an IPI to a CPU that might be down (or not up yet). (Doing so also triggers the send_IPI_mask_bitmask() warning in arch/i386/kernel/smp.c, line 732.)
with this fix applied my laptop does not hang during resume.
[ KVM will have to disable/enable virtualization on the CPU itself that
goes down / comes up, not via an IPI sent from the requesting CPU. ]
--- drivers/kvm/kvm_main.c | 6 ------ 1 file changed, 6 deletions(-)
drivers/kvm/kvm_main.c +0 -6
@@ -2083,12 +2083,6 @@ static int kvm_cpu_hotplug(struct notificase CPU_DEAD :case CPU_UP_CANCELED :decache_vcpus_on_cpu (cpu); -smp_call_function_single (cpu, kvm_arch_ops->hardware_disable, -NULL ,0 ,1 ); -break ; -case CPU_UP_PREPARE : -smp_call_function_single (cpu, kvm_arch_ops->hardware_enable, -NULL ,0 ,1 );break ; }return NOTIFY_OK ;
Re: [patch] KVM: T60 resume fix
Quoted 9 lines
Quoting Ingo Molnar <[email protected]>:
Subject: [patch] KVM: T60 resume fix
From: Ingo Molnar <[email protected]>my T60 laptop does not resume correctly due to KVM attempting to send an IPI to a CPU that might be down (or not up yet). (Doing so also triggers the
send_IPI_mask_bitmask()warning inarch/i386/kernel/smp.c, line 732.)
Quoted 6 lines
with this fix applied my laptop does not hang during resume.
[ KVM will have to disable/enable virtualization on the CPU itself that
goes down / comes up, not via an IPI sent from the requesting CPU. ]Signed-off-by Ingo Molnar <[email protected]>
Since I don't normally have kvm loaded, this patch is unlikely to help me, is that right?
Signature · 1 line
MST
Re: [patch] KVM: T60 resume fix
Quoted 11 lines · Michael S. Tsirkin
Quoted 11 lines
Quoting Ingo Molnar <[email protected]>:
Subject: [patch] KVM: T60 resume fix
From: Ingo Molnar <[email protected]>my T60 laptop does not resume correctly due to KVM attempting to send an IPI to a CPU that might be down (or not up yet). (Doing so also triggers the
send_IPI_mask_bitmask()warning inarch/i386/kernel/smp.c, line 732.)with this fix applied my laptop does not hang during resume.
Quoted 10 lines
Quoted 5 lines
[ KVM will have to disable/enable virtualization on the CPU itself that
goes down / comes up, not via an IPI sent from the requesting CPU. ]Signed-off-by Ingo Molnar <[email protected]>Since I don't normally have kvm loaded, this patch is unlikely to help me, is that right?
That is correct.
Signature · 1 line
Do not meddle in the internals of kernels, for they are subtle and quick to panic.
Re: [patch] KVM: T60 resume fix
In reply to Ingo MolnarQuoted 26 lines · Ingo Molnar
Subject: [patch] KVM: T60 resume fix
From: Ingo Molnar <[email protected]>my T60 laptop does not resume correctly due to KVM attempting to send an IPI to a CPU that might be down (or not up yet). (Doing so also triggers the
send_IPI_mask_bitmask()warning inarch/i386/kernel/smp.c, line 732.)with this fix applied my laptop does not hang during resume.
[ KVM will have to disable/enable virtualization on the CPU itself that
goes down / comes up, not via an IPI sent from the requesting CPU. ]Signed-off-by Ingo Molnar <[email protected]>--- drivers/kvm/kvm_main.c | 6 ------ 1 file changed, 6 deletions(-)Index:
linux/drivers/kvm/kvm_main.c
===================================================================drivers/kvm/kvm_main.c +0
-0@@ -2083,12 +2083,6 @@ static int kvm_cpu_hotplug(struct notificase CPU_DEAD :case CPU_UP_CANCELED :
drivers/kvm/kvm_main.c static int kvm_cpu_hotplug(struct notifi · line 2088
Quoted 10 lines
drivers/kvm/kvm_main.c +0
-6decache_vcpus_on_cpu (cpu); -smp_call_function_single (cpu, kvm_arch_ops->hardware_disable, -NULL ,0 ,1 ); -break ; -case CPU_UP_PREPARE : -smp_call_function_single (cpu, kvm_arch_ops->hardware_enable, -NULL ,0 ,1 );break ; }return NOTIFY_OK ;
That is already CPU_ONLINE in my tree (and in the pull request sent to Linus a couple of days ago).
Signature · 1 line
Do not meddle in the internals of kernels, for they are subtle and quick to panic.
Re: [patch] KVM: T60 resume fix
Quoted 31 lines · On Sat, 03 Mar 2007 10:21:38 +0200 Avi Kivity <[email protected]> wrote:
Quoted 30 lines · Ingo Molnar
Subject: [patch] KVM: T60 resume fix
From: Ingo Molnar <[email protected]>my T60 laptop does not resume correctly due to KVM attempting to send an IPI to a CPU that might be down (or not up yet). (Doing so also triggers the
send_IPI_mask_bitmask()warning inarch/i386/kernel/smp.c, line 732.)with this fix applied my laptop does not hang during resume.
[ KVM will have to disable/enable virtualization on the CPU itself that
goes down / comes up, not via an IPI sent from the requesting CPU. ]Signed-off-by Ingo Molnar <[email protected]>--- drivers/kvm/kvm_main.c | 6 ------ 1 file changed, 6 deletions(-)Index:
linux/drivers/kvm/kvm_main.c
===================================================================drivers/kvm/kvm_main.c +0
-4@@ -2083,12 +2083,6 @@ static int kvm_cpu_hotplug(struct notificase CPU_DEAD :case CPU_UP_CANCELED :decache_vcpus_on_cpu (cpu); -smp_call_function_single (cpu, kvm_arch_ops->hardware_disable, -NULL ,0 ,1 ); -break ; -case CPU_UP_PREPARE :
Quoted 8 lines
drivers/kvm/kvm_main.c static int kvm_cpu_hotplug(struct notifi · line 2088
Quoted 6 lines
drivers/kvm/kvm_main.c +0
-2-smp_call_function_single (cpu, kvm_arch_ops->hardware_enable, -NULL ,0 ,1 );break ; }return NOTIFY_OK ;That is already
CPU_ONLINEin my tree
I noticed ;)
So this mean that Ingo's bug should already be fixed there. And in rc2-mm1.
Quoted 2 lines
(and in the pull request sent to
Linus a couple of days ago).
Resend, please.
Re: [patch] KVM: T60 resume fix
Could you un-CC: [email protected] from this thread, please?
Re: [patch] KVM: T60 resume fix
In reply to Avi KivityQuoted 5 lines · Avi Kivity
Quoted 5 lines
my T60 laptop does not resume correctly due to KVM attempting to send an IPI to a CPU that might be down (or not up yet). (Doing so also triggers the
send_IPI_mask_bitmask()warning inarch/i386/kernel/smp.c, line 732.)
Quoted 8 lines
Quoted 5 lines
with this fix applied my laptop does not hang during resume.
[ KVM will have to disable/enable virtualization on the CPU itself
that goes down / comes up, not via an IPI sent from the requesting
CPU. ]That is already
CPU_ONLINEin my tree (and in the pull request sent to Linus a couple of days ago).
that solves the resume problem - but doesnt solve the CPU_DEAD issue of sending an IPI to an already offline CPU. Might be a better idea to do it in CPU_DOWN_PREPARE? (and then to also add a CPU_DOWN_FAILED branch?)
Ingo
Re: [patch] KVM: T60 resume fix
Quoted 16 lines · Ingo Molnar
Quoted 11 lines · Avi Kivity
Quoted 11 lines
my T60 laptop does not resume correctly due to KVM attempting to send an IPI to a CPU that might be down (or not up yet). (Doing so also triggers the
send_IPI_mask_bitmask()warning inarch/i386/kernel/smp.c, line 732.)with this fix applied my laptop does not hang during resume.
[ KVM will have to disable/enable virtualization on the CPU itself
that goes down / comes up, not via an IPI sent from the requesting
CPU. ]
Quoted 9 lines
Quoted 3 lines
That is already
CPU_ONLINEin my tree (and in the pull request sent to Linus a couple of days ago).that solves the resume problem - but doesnt solve the
CPU_DEADissue of sending an IPI to an already offline CPU. Might be a better idea to do it inCPU_DOWN_PREPARE? (and then to also add aCPU_DOWN_FAILEDbranch?)
Mainline now has DOWN_PREPARE and UP_CANCELED calling ->hardware_disable(), and ONLINE calling ->hardware_enabled(). What tree are you looking at?
[but I do see the need for DOWN_FAILED now. Off to find a resumable machine...]
Signature · 1 line
Do not meddle in the internals of kernels, for they are subtle and quick to panic.
Re: [patch] KVM: T60 resume fix
Quoted 11 lines · Avi Kivity
Quoted 7 lines
Quoted 2 lines
That is already
CPU_ONLINEin my tree (and in the pull request sent to Linus a couple of days ago).that solves the resume problem - but doesnt solve the
CPU_DEADissue of sending an IPI to an already offline CPU. Might be a better idea to do it inCPU_DOWN_PREPARE? (and then to also add aCPU_DOWN_FAILEDbranch?)Mainline now has
DOWN_PREPAREandUP_CANCELEDcalling ->hardware_disable(), and ONLINE calling ->hardware_enabled(). What tree are you looking at?
oh, i just hand-fixed it. I'll check current-git now.
Quoted 2 lines
[but I do see the need for
DOWN_FAILEDnow. Off to find a resumable machine...]
yeah, both DOWN_FAILED and UP_FAILED might trigger when some other bug prevents a resume.
Ingo
Re: [patch] KVM: T60 resume fix
Quoted 5 lines · Ingo Molnar
Quoted 3 lines
Mainline now has
DOWN_PREPAREandUP_CANCELEDcalling ->hardware_disable(), and ONLINE calling ->hardware_enabled(). What tree are you looking at?oh, i just hand-fixed it. I'll check current-git now.
suspend/resume works fine now and there are no warning messages whatsoever (with suspend simulation). Thanks Avi!
Ingo
Re: [patch] KVM: T60 resume fix
Quoted 4 lines · Ingo Molnar
suspend/resume works fine now and there are no warning messages whatsoever (with suspend simulation). Thanks Avi!
Where do I find this suspend simulation? Sounds like a great suspend debugging tool.
Signature · 1 line
Do not meddle in the internals of kernels, for they are subtle and quick to panic.
Re: [patch] KVM: T60 resume fix
Quoted 5 lines · Avi Kivity
Quoted 2 lines
suspend/resume works fine now and there are no warning messages whatsoever (with suspend simulation). Thanks Avi!
Where do I find this suspend simulation? Sounds like a great suspend debugging tool.
it's just the simple hack below.
Ingo
------------------------>
Subject: [patch] suspend debugging: simulate suspend-to-RAM
From: Ingo Molnar <[email protected]>
most resume bugs are due to the kernel hanging or crashing while trying to resume a specific device. It is extremely hard to debug such hangs because often when the hang happens there's no console available yet.
Make debugging such bugs easier by offering a resume mode that does not actually call into the BIOS to turn off the machine. This, in combination with earlyprintk=serial,ttyS0,115200,keep , CONFIG_PM_DEBUG=y, CONFIG_DISABLE_CONSOLE_SUSPEND=y and /sys/power/filter enables me to have a fully functional serial console during the full suspend/resume cycle.
I debugged two suspend bugs in the -rt kernel this way already, so it's pretty useful.
--- Documentation/kernel-parameters.txt | 4 ++++ drivers/acpi/sleep/main.c | 15 ++++++++++++++- include/linux/acpi.h | 1 + kernel/sysctl.c | 8 ++++++++ 4 files changed, 27 insertions(+), 1 deletion(-)
Documentation/kernel-parameters.txt +4 -0
@@ -163,6 +163,10 @@ and is between 256 and 4096 characters. acpi_osi= [HW,ACPI] empty param disables _OSI + acpi_simulate_suspend_to_ram + [KNL] Do not call into BIOS to do suspend-to-RAM + Format: <0/1> + acpi_serialize [HW,ACPI] force serialization of AML methods acpi_skip_timer_override [HW,ACPI]
drivers/acpi/sleep/main.c +14 -1
@@ -35,6 +35,14 @@ static u32 acpi_suspend_states[] = {static int init_8259A_after_S1; +/* +* simulate entry into the BIOS - this way the system will not +* be turned off for real, and the kernel's resume functionality +* can be debugged while still having some system capabilities +* left. This is especially useful in combination with /sys/power/filter. +*/ +int acpi_simulate_suspend_to_ram; +/** * acpi_pm_prepare - Do preliminary suspend work. * @pm_state: suspend state we're entering.
@@ -91,7 +99,12 @@ static int acpi_pm_enter(suspend_state_tbreak ;case PM_SUSPEND_MEM : -do_suspend_lowlevel (); +if (unlikely (acpi_simulate_suspend_to_ram)) { +printk (KERN_INFO "ACPI: simulating suspend-to-RAM: " +"not calling BIOS.\n" ); + }else { +do_suspend_lowlevel (); + }break ;case PM_SUSPEND_DISK :
include/linux/acpi.h +1 -0
@@ -123,6 +123,7 @@ extern int pci_mmcfg_config_num;extern int sbf_port;extern unsigned long acpi_video_flags; +extern int acpi_simulate_suspend_to_ram;#else /* !CONFIG_ACPI */
kernel/sysctl.c +8 -0
@@ -581,6 +581,14 @@ static ctl_table kern_table[] = { .mode = 0644, .proc_handler = &proc_doulongvec_minmax, }, + { + .ctl_name = CTL_UNNUMBERED, + .procname = "acpi_simulate_suspend_to_ram", + .data = &acpi_simulate_suspend_to_ram, + .maxlen = sizeof (int), + .mode = 0644, + .proc_handler = &proc_dointvec, + },#endif #ifdef CONFIG_IA64 {
Re: [patch] KVM: T60 resume fix
Quoted 12 lines · Ingo Molnar
Quoted 4 lines · Avi Kivity
Quoted 2 lines
suspend/resume works fine now and there are no warning messages whatsoever (with suspend simulation). Thanks Avi!
Where do I find this suspend simulation? Sounds like a great suspend debugging tool.
it's just the simple hack below.
Thanks, I'll put it to good use. Are you planning to upstream it? Not for 2.6.21, presumably ;)
Signature · 1 line
error compiling committee.c: too many arguments to function
Re: [patch] KVM: T60 resume fix
Quoted 4 lines · Avi Kivity
Quoted 1 line
it's just the simple hack below.
Thanks, I'll put it to good use. Are you planning to upstream it? Not for 2.6.21, presumably ;)
it needs an essential cleanup: instead of modifying 'mem' behavior, it should be a 'testmem' thing and no acpi_ flag.
Ingo
Re: [patch] KVM: T60 resume fix
In reply to Avi KivityQuoted 14 lines
Quoting Avi Kivity <[email protected]>:
Subject: Re: [patch] KVM: T60 resume fixQuoted 10 lines · Ingo Molnar
Quoted 6 lines · Avi Kivity
Quoted 3 lines
suspend/resume works fine now and there are no warning messages whatsoever (with suspend simulation). Thanks Avi!
Where do I find this suspend simulation? Sounds like a great suspend debugging tool.
Quoted 7 lines
Quoted 4 lines
it's just the simple hack below.
Thanks, I'll put it to good use. Are you planning to upstream it? Not for 2.6.21, presumably ;)
I think Pavel wants it triggerable through /sys/power/state:
http://lkml.org/lkml/2007/1/25/99
Signature · 1 line
MST
Re: [patch] KVM: T60 resume fix
In reply to Ingo MolnarQuoted 2 lines
suspend/resume works fine now and there are no warning messages whatsoever (with suspend simulation). Thanks Avi!
I just tried Ingo's .config and it hangs on resume for me (with suspend to memory).
Signature · 1 line
MST
Re: [patch] KVM: T60 resume fix
Quoted 5 lines · Michael S. Tsirkin
Quoted 2 lines
suspend/resume works fine now and there are no warning messages whatsoever (with suspend simulation). Thanks Avi!
I just tried Ingo's .config and it hangs on resume for me (with suspend to memory).
could you try 's2ram' from http://suspend.sf.net ? It's basically equivalent to 'echo mem > /sys/power/state', but you can usually also see the reason why it doesnt resume, on the vga console. (by default the kernel doesnt resume the t60's vga properly)
on my box resume works, but it's incredibly slow. Takes a few minutes to have total effect.
Ingo
Re: [patch] KVM: T60 resume fix
Quoted 9 lines
Quoting Ingo Molnar <[email protected]>:
Subject: Re: [patch] KVM: T60 resume fixQuoted 3 lines · Michael S. Tsirkin
Quoted 2 lines
suspend/resume works fine now and there are no warning messages whatsoever (with suspend simulation). Thanks Avi!
Quoted 7 lines
Quoted 2 lines
I just tried Ingo's .config and it hangs on resume for me (with suspend to memory).
could you try 's2ram' from http://suspend.sf.net ? It's basically equivalent to 'echo mem >
/sys/power/state', but you can usually also see the reason why it doesnt resume, on the vga console. (by default the kernel doesnt resume the t60's vga properly)
OK, I'll give it a try. Do I have to shut down X or is it enough to switch to another VT?
Quoted 1 line
on my box resume works, but it's incredibly slow.
I guess it is possible that what I mistook for a hang was actually an incredibly slow system, and that it would resume, eventually. I waited for 5 min and gave up.
Quoted 1 line
Takes a few minutes to have total effect.
I have same here with my old .config (2-3 min).
However, after resume was completed, system would hang on the *next* suspend to ram.
Ingo, do you see this behaviour, or can you suspend/resume any number of times?
Signature · 1 line
MST
Re: [patch] KVM: T60 resume fix
Quoted 7 lines · Michael S. Tsirkin
Quoted 4 lines
could you try 's2ram' from http://suspend.sf.net ? It's basically equivalent to 'echo mem >
/sys/power/state', but you can usually also see the reason why it doesnt resume, on the vga console. (by default the kernel doesnt resume the t60's vga properly)OK, I'll give it a try. Do I have to shut down X or is it enough to switch to another VT?
s2ram takes care of that on your behalf.
Quoted 5 lines
Quoted 1 line
on my box resume works, but it's incredibly slow.
I guess it is possible that what I mistook for a hang was actually an incredibly slow system, and that it would resume, eventually. I waited for 5 min and gave up.
5 min should be enough to have the box pingable again.
Quoted 5 lines
However, after resume was completed, system would hang on the *next* suspend to ram.
Ingo, do you see this behaviour, or can you suspend/resume any number of times?
havent tried that yet - first trying to figure out why the first resume misbehaves ;)
Ingo
Re: [patch] KVM: T60 resume fix
In reply to Ingo MolnarQuoted 1 line
with this fix applied my laptop does not hang during resume.
On the off chance that this is relevant, could you post your .config please?
Signature · 1 line
MST
Re: [patch] KVM: T60 resume fix
Quoted 4 lines · Michael S. Tsirkin
Quoted 1 line
with this fix applied my laptop does not hang during resume.
On the off chance that this is relevant, could you post your .config please?
sure - find it below.
Ingo
#
# Automatically generated make config: don't edit # Linux kernel version: 2.6.21
# Mon Mar 5 11:15:42 2007
#CONFIG_X86_32=yCONFIG_GENERIC_TIME=y CONFIG_CLOCKSOURCE_WATCHDOG=y CONFIG_GENERIC_CLOCKEVENTS=y CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y CONFIG_LOCKDEP_SUPPORT=y CONFIG_STACKTRACE_SUPPORT=y CONFIG_SEMAPHORE_SLEEPERS=yCONFIG_X86=yCONFIG_MMU=yCONFIG_ZONE_DMA=yCONFIG_ASYNC_SUPPORT=yCONFIG_GENERIC_ISA_DMA=yCONFIG_GENERIC_IOMAP=yCONFIG_GENERIC_BUG=yCONFIG_GENERIC_HWEIGHT=y CONFIG_ARCH_MAY_HAVE_PC_FDC=yCONFIG_DMI=y CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
#
# Code maturity level options
#CONFIG_EXPERIMENTAL=yCONFIG_LOCK_KERNEL=yCONFIG_INIT_ENV_ARG_LIMIT=32
#
# General setup
#CONFIG_LOCALVERSION=""
# CONFIG_LOCALVERSION_AUTO is not setCONFIG_SWAP=yCONFIG_SYSVIPC=y
# CONFIG_IPC_NS is not setCONFIG_SYSVIPC_SYSCTL=yCONFIG_POSIX_MQUEUE=yCONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not setCONFIG_TASKSTATS=yCONFIG_TASK_DELAY_ACCT=y
# CONFIG_TASK_XACCT is not set
# CONFIG_UTS_NS is not setCONFIG_AUDIT=yCONFIG_AUDITSYSCALL=y
# CONFIG_IKCONFIG is not setCONFIG_CPUSETS=yCONFIG_SYSFS_DEPRECATED=yCONFIG_RELAY=yCONFIG_INITRAMFS_SOURCE=""CONFIG_CC_OPTIMIZE_FOR_SIZE=yCONFIG_SYSCTL=y
# CONFIG_EMBEDDED is not setCONFIG_UID16=yCONFIG_SYSCTL_SYSCALL=yCONFIG_KALLSYMS=yCONFIG_KALLSYMS_ALL=yCONFIG_KALLSYMS_EXTRA_PASS=yCONFIG_HOTPLUG=yCONFIG_PRINTK=yCONFIG_BUG=yCONFIG_ELF_CORE=yCONFIG_BASE_FULL=yCONFIG_FUTEX=yCONFIG_EPOLL=yCONFIG_SHMEM=yCONFIG_SLAB=yCONFIG_VM_EVENT_COUNTERS=yCONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not setCONFIG_BASE_SMALL=0
# CONFIG_SLOB is not set
#
# Loadable module support
#CONFIG_MODULES=yCONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not setCONFIG_MODVERSIONS=yCONFIG_MODULE_SRCVERSION_ALL=yCONFIG_KMOD=yCONFIG_STOP_MACHINE=y
#
# Block layer
#CONFIG_BLOCK=yCONFIG_LBD=yCONFIG_BLK_DEV_IO_TRACE=yCONFIG_LSF=y
#
# IO Schedulers
#CONFIG_IOSCHED_NOOP=yCONFIG_IOSCHED_AS=yCONFIG_IOSCHED_DEADLINE=yCONFIG_IOSCHED_CFQ=y
# CONFIG_DEFAULT_AS is not setCONFIG_DEFAULT_DEADLINE=y
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not setCONFIG_DEFAULT_IOSCHED="deadline"
#
# Processor type and features
#
# CONFIG_TICK_ONESHOT is not set
# CONFIG_NO_HZ is not set
# CONFIG_HIGH_RES_TIMERS is not setCONFIG_SMP=y
# CONFIG_X86_PC is not set
# 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 setCONFIG_X86_GENERICARCH=y
# CONFIG_X86_ES7000 is not setCONFIG_PARAVIRT=yCONFIG_VMI=yCONFIG_X86_CYCLONE_TIMER=y
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not setCONFIG_M686=y
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
# CONFIG_MCORE2 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_MGEODE_LX is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not setCONFIG_X86_GENERIC=yCONFIG_X86_CMPXCHG=yCONFIG_X86_L1_CACHE_SHIFT=7CONFIG_RWSEM_XCHGADD_ALGORITHM=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not setCONFIG_GENERIC_CALIBRATE_DELAY=yCONFIG_X86_PPRO_FENCE=yCONFIG_X86_WP_WORKS_OK=yCONFIG_X86_INVLPG=yCONFIG_X86_BSWAP=yCONFIG_X86_POPAD_OK=yCONFIG_X86_CMPXCHG64=yCONFIG_X86_GOOD_APIC=yCONFIG_X86_INTEL_USERCOPY=yCONFIG_X86_USE_PPRO_CHECKSUM=yCONFIG_X86_TSC=yCONFIG_HPET_TIMER=yCONFIG_HPET_EMULATE_RTC=yCONFIG_NR_CPUS=32CONFIG_SCHED_SMT=yCONFIG_SCHED_MC=y
# CONFIG_PREEMPT_NONE is not set
# CONFIG_PREEMPT_VOLUNTARY is not setCONFIG_PREEMPT=yCONFIG_PREEMPT_BKL=yCONFIG_X86_LOCAL_APIC=yCONFIG_X86_IO_APIC=yCONFIG_X86_MCE=y
# CONFIG_X86_MCE_NONFATAL is not setCONFIG_X86_MCE_P4THERMAL=yCONFIG_VM86=yCONFIG_TOSHIBA=mCONFIG_I8K=m
# CONFIG_X86_REBOOTFIXUPS is not setCONFIG_MICROCODE=mCONFIG_MICROCODE_OLD_INTERFACE=yCONFIG_X86_MSR=mCONFIG_X86_CPUID=m
#
# Firmware Drivers
#CONFIG_EDD=mCONFIG_EFI_VARS=yCONFIG_DELL_RBU=mCONFIG_DCDBAS=m
# CONFIG_NOHIGHMEM is not setCONFIG_HIGHMEM4G=y
# CONFIG_HIGHMEM64G is not setCONFIG_PAGE_OFFSET=0xC0000000CONFIG_HIGHMEM=yCONFIG_ARCH_POPULATES_NODE_MAP=yCONFIG_SELECT_MEMORY_MODEL=yCONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not setCONFIG_FLATMEM=yCONFIG_FLAT_NODE_MEM_MAP=y
# CONFIG_SPARSEMEM_STATIC is not setCONFIG_SPLIT_PTLOCK_CPUS=4CONFIG_RESOURCES_64BIT=yCONFIG_ZONE_DMA_FLAG=1
# CONFIG_HIGHPTE is not set
# CONFIG_MATH_EMULATION is not setCONFIG_MTRR=yCONFIG_EFI=y
# CONFIG_IRQBALANCE is not setCONFIG_BOOT_IOREMAP=y
# CONFIG_SECCOMP is not set
# CONFIG_HZ_100 is not set
# CONFIG_HZ_250 is not set
# CONFIG_HZ_300 is not setCONFIG_HZ_1000=yCONFIG_HZ=1000CONFIG_KEXEC=y
# CONFIG_CRASH_DUMP is not setCONFIG_PHYSICAL_START=0x100000
# CONFIG_RELOCATABLE is not setCONFIG_PHYSICAL_ALIGN=0x100000CONFIG_HOTPLUG_CPU=yCONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y
#
# Power management options (ACPI, APM)
#CONFIG_PM=yCONFIG_PM_LEGACY=yCONFIG_PM_DEBUG=yCONFIG_DISABLE_CONSOLE_SUSPEND=yCONFIG_PM_TRACE=yCONFIG_PM_SYSFS_DEPRECATED=yCONFIG_SOFTWARE_SUSPEND=yCONFIG_PM_STD_PARTITION=""CONFIG_SUSPEND_SMP=y
#
# ACPI (Advanced Configuration and Power Interface) Support #CONFIG_ACPI=yCONFIG_ACPI_SLEEP=yCONFIG_ACPI_SLEEP_PROC_FS=y
# CONFIG_ACPI_SLEEP_PROC_SLEEP is not set CONFIG_ACPI_PROCFS=yCONFIG_ACPI_AC=mCONFIG_ACPI_BATTERY=mCONFIG_ACPI_BUTTON=mCONFIG_ACPI_VIDEO=mCONFIG_ACPI_FAN=yCONFIG_ACPI_DOCK=m
# CONFIG_ACPI_BAY is not set CONFIG_ACPI_PROCESSOR=yCONFIG_ACPI_HOTPLUG_CPU=yCONFIG_ACPI_THERMAL=yCONFIG_ACPI_ASUS=mCONFIG_ACPI_IBM=mCONFIG_ACPI_TOSHIBA=m CONFIG_ACPI_BLACKLIST_YEAR=1999
# CONFIG_ACPI_DEBUG is not setCONFIG_ACPI_EC=yCONFIG_ACPI_POWER=yCONFIG_ACPI_SYSTEM=yCONFIG_X86_PM_TIMER=yCONFIG_ACPI_CONTAINER=yCONFIG_ACPI_SBS=m
#
# APM (Advanced Power Management) BIOS Support
#CONFIG_APM=y
# CONFIG_APM_IGNORE_USER_SUSPEND is not set
# CONFIG_APM_DO_ENABLE is not setCONFIG_APM_CPU_IDLE=y
# CONFIG_APM_DISPLAY_BLANK is not setCONFIG_APM_RTC_IS_GMT=y
# CONFIG_APM_ALLOW_INTS is not set
# CONFIG_APM_REAL_MODE_POWER_OFF is not set
#
# CPU Frequency scaling
#CONFIG_CPU_FREQ=yCONFIG_CPU_FREQ_TABLE=y CONFIG_CPU_FREQ_DEBUG=y CONFIG_CPU_FREQ_STAT=m CONFIG_CPU_FREQ_STAT_DETAILS=y
# CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE is not set CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE=y CONFIG_CPU_FREQ_GOV_PERFORMANCE=y CONFIG_CPU_FREQ_GOV_POWERSAVE=m CONFIG_CPU_FREQ_GOV_USERSPACE=y CONFIG_CPU_FREQ_GOV_ONDEMAND=m CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m
#
# CPUFreq processor drivers
#CONFIG_X86_ACPI_CPUFREQ=m
# CONFIG_X86_POWERNOW_K6 is not setCONFIG_X86_POWERNOW_K7=yCONFIG_X86_POWERNOW_K7_ACPI=yCONFIG_X86_POWERNOW_K8=yCONFIG_X86_POWERNOW_K8_ACPI=y
# CONFIG_X86_GX_SUSPMOD is not setCONFIG_X86_SPEEDSTEP_CENTRINO=yCONFIG_X86_SPEEDSTEP_CENTRINO_ACPI=yCONFIG_X86_SPEEDSTEP_CENTRINO_TABLE=yCONFIG_X86_SPEEDSTEP_ICH=yCONFIG_X86_SPEEDSTEP_SMI=yCONFIG_X86_P4_CLOCKMOD=m
# CONFIG_X86_CPUFREQ_NFORCE2 is not setCONFIG_X86_LONGRUN=y
# CONFIG_X86_LONGHAUL is not set
# CONFIG_X86_E_POWERSAVER is not set
#
# shared options # # CONFIG_X86_ACPI_CPUFREQ_PROC_INTF is not set CONFIG_X86_SPEEDSTEP_LIB=y # CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK is not set
#
# Bus options (PCI, PCMCIA, EISA, MCA, ISA) #CONFIG_PCI=y
# CONFIG_PCI_GOBIOS is not set
# CONFIG_PCI_GOMMCONFIG is not set
# CONFIG_PCI_GODIRECT is not set CONFIG_PCI_GOANY=yCONFIG_PCI_BIOS=yCONFIG_PCI_DIRECT=yCONFIG_PCI_MMCONFIG=yCONFIG_PCIEPORTBUS=y CONFIG_HOTPLUG_PCI_PCIE=m
# CONFIG_HOTPLUG_PCI_PCIE_POLL_EVENT_MODE is not set CONFIG_PCIEAER=yCONFIG_PCI_MSI=y
# CONFIG_PCI_DEBUG is not set CONFIG_HT_IRQ=yCONFIG_ISA_DMA_API=yCONFIG_ISA=y
# CONFIG_EISA is not set
# CONFIG_MCA is not set
# CONFIG_SCx200 is not setCONFIG_K8_NB=y
#
# PCCARD (PCMCIA/CardBus) support
#CONFIG_PCCARD=y
# CONFIG_PCMCIA_DEBUG is not setCONFIG_PCMCIA=yCONFIG_PCMCIA_LOAD_CIS=yCONFIG_PCMCIA_IOCTL=yCONFIG_CARDBUS=y
#
# PC-card bridges
#CONFIG_YENTA=yCONFIG_YENTA_O2=yCONFIG_YENTA_RICOH=yCONFIG_YENTA_TI=yCONFIG_YENTA_ENE_TUNE=yCONFIG_YENTA_TOSHIBA=yCONFIG_PD6729=mCONFIG_I82092=m
# CONFIG_I82365 is not set
# CONFIG_TCIC is not setCONFIG_PCMCIA_PROBE=yCONFIG_PCCARD_NONSTATIC=y
#
# PCI Hotplug Support
#CONFIG_HOTPLUG_PCI=yCONFIG_HOTPLUG_PCI_FAKE=mCONFIG_HOTPLUG_PCI_COMPAQ=m
# CONFIG_HOTPLUG_PCI_COMPAQ_NVRAM is not setCONFIG_HOTPLUG_PCI_IBM=mCONFIG_HOTPLUG_PCI_ACPI=mCONFIG_HOTPLUG_PCI_ACPI_IBM=m
# CONFIG_HOTPLUG_PCI_CPCI is not set
# CONFIG_HOTPLUG_PCI_SHPC is not set
#
# Executable file formats
#CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_AOUT is not setCONFIG_BINFMT_MISC=y
#
# Networking
#CONFIG_NET=y
#
# Networking options
#
# CONFIG_NETDEBUG is not setCONFIG_PACKET=yCONFIG_PACKET_MMAP=yCONFIG_UNIX=yCONFIG_XFRM=yCONFIG_XFRM_USER=y
# CONFIG_XFRM_SUB_POLICY is not set
# CONFIG_XFRM_MIGRATE is not setCONFIG_NET_KEY=y
# CONFIG_NET_KEY_MIGRATE is not setCONFIG_INET=yCONFIG_IP_MULTICAST=yCONFIG_IP_ADVANCED_ROUTER=yCONFIG_ASK_IP_FIB_HASH=y
# CONFIG_IP_FIB_TRIE is not setCONFIG_IP_FIB_HASH=yCONFIG_IP_MULTIPLE_TABLES=yCONFIG_IP_ROUTE_MULTIPATH=y
# CONFIG_IP_ROUTE_MULTIPATH_CACHED is not setCONFIG_IP_ROUTE_VERBOSE=y
# CONFIG_IP_PNP is not setCONFIG_NET_IPIP=mCONFIG_NET_IPGRE=mCONFIG_NET_IPGRE_BROADCAST=yCONFIG_IP_MROUTE=yCONFIG_IP_PIMSM_V1=yCONFIG_IP_PIMSM_V2=y
# CONFIG_ARPD is not setCONFIG_SYN_COOKIES=yCONFIG_INET_AH=mCONFIG_INET_ESP=mCONFIG_INET_IPCOMP=mCONFIG_INET_XFRM_TUNNEL=mCONFIG_INET_TUNNEL=mCONFIG_INET_XFRM_MODE_TRANSPORT=mCONFIG_INET_XFRM_MODE_TUNNEL=mCONFIG_INET_XFRM_MODE_BEET=mCONFIG_INET_DIAG=mCONFIG_INET_TCP_DIAG=mCONFIG_TCP_CONG_ADVANCED=yCONFIG_TCP_CONG_BIC=yCONFIG_TCP_CONG_CUBIC=mCONFIG_TCP_CONG_WESTWOOD=mCONFIG_TCP_CONG_HTCP=mCONFIG_TCP_CONG_HSTCP=mCONFIG_TCP_CONG_HYBLA=mCONFIG_TCP_CONG_VEGAS=mCONFIG_TCP_CONG_SCALABLE=mCONFIG_TCP_CONG_LP=mCONFIG_TCP_CONG_VENO=mCONFIG_DEFAULT_BIC=y
# CONFIG_DEFAULT_CUBIC is not set
# CONFIG_DEFAULT_HTCP is not set
# CONFIG_DEFAULT_VEGAS is not set
# CONFIG_DEFAULT_WESTWOOD is not set
# CONFIG_DEFAULT_RENO is not setCONFIG_DEFAULT_TCP_CONG="bic"CONFIG_TCP_MD5SIG=y
#
# IP: Virtual Server Configuration
#CONFIG_IP_VS=m
# CONFIG_IP_VS_DEBUG is not setCONFIG_IP_VS_TAB_BITS=12
#
# IPVS transport protocol load balancing support
#CONFIG_IP_VS_PROTO_TCP=yCONFIG_IP_VS_PROTO_UDP=yCONFIG_IP_VS_PROTO_ESP=yCONFIG_IP_VS_PROTO_AH=y
#
# IPVS scheduler
#CONFIG_IP_VS_RR=mCONFIG_IP_VS_WRR=mCONFIG_IP_VS_LC=mCONFIG_IP_VS_WLC=mCONFIG_IP_VS_LBLC=mCONFIG_IP_VS_LBLCR=mCONFIG_IP_VS_DH=mCONFIG_IP_VS_SH=mCONFIG_IP_VS_SED=mCONFIG_IP_VS_NQ=m
#
# IPVS application helper
#CONFIG_IP_VS_FTP=mCONFIG_IPV6=mCONFIG_IPV6_PRIVACY=yCONFIG_IPV6_ROUTER_PREF=yCONFIG_IPV6_ROUTE_INFO=yCONFIG_INET6_AH=mCONFIG_INET6_ESP=mCONFIG_INET6_IPCOMP=m
# CONFIG_IPV6_MIP6 is not setCONFIG_INET6_XFRM_TUNNEL=mCONFIG_INET6_TUNNEL=mCONFIG_INET6_XFRM_MODE_TRANSPORT=mCONFIG_INET6_XFRM_MODE_TUNNEL=mCONFIG_INET6_XFRM_MODE_BEET=mCONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=mCONFIG_IPV6_SIT=mCONFIG_IPV6_TUNNEL=m
# CONFIG_IPV6_MULTIPLE_TABLES is not setCONFIG_NETLABEL=yCONFIG_NETWORK_SECMARK=yCONFIG_NETFILTER=y
# CONFIG_NETFILTER_DEBUG is not setCONFIG_BRIDGE_NETFILTER=y
#
# Core Netfilter Configuration
#CONFIG_NETFILTER_NETLINK=yCONFIG_NETFILTER_NETLINK_QUEUE=yCONFIG_NETFILTER_NETLINK_LOG=yCONFIG_NF_CONNTRACK_ENABLED=mCONFIG_NF_CONNTRACK_SUPPORT=y
# CONFIG_IP_NF_CONNTRACK_SUPPORT is not setCONFIG_NF_CONNTRACK=mCONFIG_NF_CT_ACCT=yCONFIG_NF_CONNTRACK_MARK=yCONFIG_NF_CONNTRACK_SECMARK=yCONFIG_NF_CONNTRACK_EVENTS=yCONFIG_NF_CT_PROTO_GRE=mCONFIG_NF_CT_PROTO_SCTP=mCONFIG_NF_CONNTRACK_AMANDA=mCONFIG_NF_CONNTRACK_FTP=mCONFIG_NF_CONNTRACK_H323=mCONFIG_NF_CONNTRACK_IRC=mCONFIG_NF_CONNTRACK_NETBIOS_NS=mCONFIG_NF_CONNTRACK_PPTP=m
# CONFIG_NF_CONNTRACK_SANE is not setCONFIG_NF_CONNTRACK_SIP=mCONFIG_NF_CONNTRACK_TFTP=mCONFIG_NF_CT_NETLINK=mCONFIG_NETFILTER_XTABLES=mCONFIG_NETFILTER_XT_TARGET_CLASSIFY=mCONFIG_NETFILTER_XT_TARGET_CONNMARK=mCONFIG_NETFILTER_XT_TARGET_DSCP=mCONFIG_NETFILTER_XT_TARGET_MARK=mCONFIG_NETFILTER_XT_TARGET_NFQUEUE=mCONFIG_NETFILTER_XT_TARGET_NFLOG=mCONFIG_NETFILTER_XT_TARGET_NOTRACK=mCONFIG_NETFILTER_XT_TARGET_SECMARK=mCONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m
# CONFIG_NETFILTER_XT_TARGET_TCPMSS is not setCONFIG_NETFILTER_XT_MATCH_COMMENT=mCONFIG_NETFILTER_XT_MATCH_CONNBYTES=mCONFIG_NETFILTER_XT_MATCH_CONNMARK=mCONFIG_NETFILTER_XT_MATCH_CONNTRACK=mCONFIG_NETFILTER_XT_MATCH_DCCP=mCONFIG_NETFILTER_XT_MATCH_DSCP=mCONFIG_NETFILTER_XT_MATCH_ESP=mCONFIG_NETFILTER_XT_MATCH_HELPER=mCONFIG_NETFILTER_XT_MATCH_LENGTH=mCONFIG_NETFILTER_XT_MATCH_LIMIT=mCONFIG_NETFILTER_XT_MATCH_MAC=mCONFIG_NETFILTER_XT_MATCH_MARK=mCONFIG_NETFILTER_XT_MATCH_POLICY=mCONFIG_NETFILTER_XT_MATCH_MULTIPORT=mCONFIG_NETFILTER_XT_MATCH_PHYSDEV=mCONFIG_NETFILTER_XT_MATCH_PKTTYPE=mCONFIG_NETFILTER_XT_MATCH_QUOTA=mCONFIG_NETFILTER_XT_MATCH_REALM=mCONFIG_NETFILTER_XT_MATCH_SCTP=mCONFIG_NETFILTER_XT_MATCH_STATE=mCONFIG_NETFILTER_XT_MATCH_STATISTIC=mCONFIG_NETFILTER_XT_MATCH_STRING=mCONFIG_NETFILTER_XT_MATCH_TCPMSS=mCONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m
#
# IP: Netfilter Configuration
#CONFIG_NF_CONNTRACK_IPV4=mCONFIG_NF_CONNTRACK_PROC_COMPAT=yCONFIG_IP_NF_QUEUE=mCONFIG_IP_NF_IPTABLES=mCONFIG_IP_NF_MATCH_IPRANGE=mCONFIG_IP_NF_MATCH_TOS=mCONFIG_IP_NF_MATCH_RECENT=mCONFIG_IP_NF_MATCH_ECN=mCONFIG_IP_NF_MATCH_AH=mCONFIG_IP_NF_MATCH_TTL=mCONFIG_IP_NF_MATCH_OWNER=mCONFIG_IP_NF_MATCH_ADDRTYPE=mCONFIG_IP_NF_FILTER=mCONFIG_IP_NF_TARGET_REJECT=mCONFIG_IP_NF_TARGET_LOG=mCONFIG_IP_NF_TARGET_ULOG=mCONFIG_NF_NAT=mCONFIG_NF_NAT_NEEDED=yCONFIG_IP_NF_TARGET_MASQUERADE=mCONFIG_IP_NF_TARGET_REDIRECT=mCONFIG_IP_NF_TARGET_NETMAP=mCONFIG_IP_NF_TARGET_SAME=mCONFIG_NF_NAT_SNMP_BASIC=mCONFIG_NF_NAT_PROTO_GRE=mCONFIG_NF_NAT_FTP=mCONFIG_NF_NAT_IRC=mCONFIG_NF_NAT_TFTP=mCONFIG_NF_NAT_AMANDA=mCONFIG_NF_NAT_PPTP=mCONFIG_NF_NAT_H323=mCONFIG_NF_NAT_SIP=mCONFIG_IP_NF_MANGLE=mCONFIG_IP_NF_TARGET_TOS=mCONFIG_IP_NF_TARGET_ECN=mCONFIG_IP_NF_TARGET_TTL=mCONFIG_IP_NF_TARGET_CLUSTERIP=mCONFIG_IP_NF_RAW=mCONFIG_IP_NF_ARPTABLES=mCONFIG_IP_NF_ARPFILTER=mCONFIG_IP_NF_ARP_MANGLE=m
#
# IPv6: Netfilter Configuration (EXPERIMENTAL)
#CONFIG_NF_CONNTRACK_IPV6=mCONFIG_IP6_NF_QUEUE=mCONFIG_IP6_NF_IPTABLES=mCONFIG_IP6_NF_MATCH_RT=mCONFIG_IP6_NF_MATCH_OPTS=mCONFIG_IP6_NF_MATCH_FRAG=mCONFIG_IP6_NF_MATCH_HL=mCONFIG_IP6_NF_MATCH_OWNER=mCONFIG_IP6_NF_MATCH_IPV6HEADER=mCONFIG_IP6_NF_MATCH_AH=m
# CONFIG_IP6_NF_MATCH_MH is not setCONFIG_IP6_NF_MATCH_EUI64=mCONFIG_IP6_NF_FILTER=mCONFIG_IP6_NF_TARGET_LOG=mCONFIG_IP6_NF_TARGET_REJECT=mCONFIG_IP6_NF_MANGLE=mCONFIG_IP6_NF_TARGET_HL=mCONFIG_IP6_NF_RAW=m
#
# DECnet: Netfilter Configuration
#
# CONFIG_DECNET_NF_GRABULATOR is not set
#
# Bridge: Netfilter Configuration
#CONFIG_BRIDGE_NF_EBTABLES=mCONFIG_BRIDGE_EBT_BROUTE=mCONFIG_BRIDGE_EBT_T_FILTER=mCONFIG_BRIDGE_EBT_T_NAT=mCONFIG_BRIDGE_EBT_802_3=mCONFIG_BRIDGE_EBT_AMONG=mCONFIG_BRIDGE_EBT_ARP=mCONFIG_BRIDGE_EBT_IP=mCONFIG_BRIDGE_EBT_LIMIT=mCONFIG_BRIDGE_EBT_MARK=mCONFIG_BRIDGE_EBT_PKTTYPE=mCONFIG_BRIDGE_EBT_STP=mCONFIG_BRIDGE_EBT_VLAN=mCONFIG_BRIDGE_EBT_ARPREPLY=mCONFIG_BRIDGE_EBT_DNAT=mCONFIG_BRIDGE_EBT_MARK_T=mCONFIG_BRIDGE_EBT_REDIRECT=mCONFIG_BRIDGE_EBT_SNAT=mCONFIG_BRIDGE_EBT_LOG=mCONFIG_BRIDGE_EBT_ULOG=m
#
# DCCP Configuration (EXPERIMENTAL)
#CONFIG_IP_DCCP=mCONFIG_INET_DCCP_DIAG=mCONFIG_IP_DCCP_ACKVEC=y
#
# DCCP CCIDs Configuration (EXPERIMENTAL)
#CONFIG_IP_DCCP_CCID2=m
# CONFIG_IP_DCCP_CCID2_DEBUG is not setCONFIG_IP_DCCP_CCID3=mCONFIG_IP_DCCP_TFRC_LIB=m
# CONFIG_IP_DCCP_CCID3_DEBUG is not setCONFIG_IP_DCCP_CCID3_RTO=100
#
# DCCP Kernel Hacking
#
# CONFIG_IP_DCCP_DEBUG is not set
# CONFIG_NET_DCCPPROBE is not set
#
# SCTP Configuration (EXPERIMENTAL)
#CONFIG_IP_SCTP=m
# CONFIG_SCTP_DBG_MSG is not set
# CONFIG_SCTP_DBG_OBJCNT is not set
# CONFIG_SCTP_HMAC_NONE is not set
# CONFIG_SCTP_HMAC_SHA1 is not setCONFIG_SCTP_HMAC_MD5=y
#
# TIPC Configuration (EXPERIMENTAL)
#CONFIG_TIPC=m
# CONFIG_TIPC_ADVANCED is not set
# CONFIG_TIPC_DEBUG is not setCONFIG_ATM=mCONFIG_ATM_CLIP=m
# CONFIG_ATM_CLIP_NO_ICMP is not setCONFIG_ATM_LANE=m
# CONFIG_ATM_MPOA is not setCONFIG_ATM_BR2684=m
# CONFIG_ATM_BR2684_IPFILTER is not setCONFIG_BRIDGE=mCONFIG_VLAN_8021Q=mCONFIG_DECNET=mCONFIG_DECNET_ROUTER=yCONFIG_LLC=y
# CONFIG_LLC2 is not setCONFIG_IPX=m
# CONFIG_IPX_INTERN is not setCONFIG_ATALK=mCONFIG_DEV_APPLETALK=m
# CONFIG_LTPC is not set
# CONFIG_COPS is not setCONFIG_IPDDP=mCONFIG_IPDDP_ENCAP=yCONFIG_IPDDP_DECAP=y
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_ECONET is not setCONFIG_WAN_ROUTER=m
#
# QoS and/or fair queueing
#CONFIG_NET_SCHED=yCONFIG_NET_SCH_FIFO=y
# CONFIG_NET_SCH_CLK_JIFFIES is not setCONFIG_NET_SCH_CLK_GETTIMEOFDAY=y
# CONFIG_NET_SCH_CLK_CPU is not set
#
# Queueing/Scheduling
#CONFIG_NET_SCH_CBQ=mCONFIG_NET_SCH_HTB=mCONFIG_NET_SCH_HFSC=mCONFIG_NET_SCH_ATM=mCONFIG_NET_SCH_PRIO=mCONFIG_NET_SCH_RED=mCONFIG_NET_SCH_SFQ=mCONFIG_NET_SCH_TEQL=mCONFIG_NET_SCH_TBF=mCONFIG_NET_SCH_GRED=mCONFIG_NET_SCH_DSMARK=mCONFIG_NET_SCH_NETEM=mCONFIG_NET_SCH_INGRESS=m
#
# Classification
#CONFIG_NET_CLS=yCONFIG_NET_CLS_BASIC=mCONFIG_NET_CLS_TCINDEX=mCONFIG_NET_CLS_ROUTE4=mCONFIG_NET_CLS_ROUTE=yCONFIG_NET_CLS_FW=mCONFIG_NET_CLS_U32=mCONFIG_CLS_U32_PERF=yCONFIG_CLS_U32_MARK=yCONFIG_NET_CLS_RSVP=mCONFIG_NET_CLS_RSVP6=mCONFIG_NET_EMATCH=yCONFIG_NET_EMATCH_STACK=32CONFIG_NET_EMATCH_CMP=mCONFIG_NET_EMATCH_NBYTE=mCONFIG_NET_EMATCH_U32=mCONFIG_NET_EMATCH_META=mCONFIG_NET_EMATCH_TEXT=mCONFIG_NET_CLS_ACT=yCONFIG_NET_ACT_POLICE=mCONFIG_NET_ACT_GACT=mCONFIG_GACT_PROB=yCONFIG_NET_ACT_MIRRED=mCONFIG_NET_ACT_IPT=mCONFIG_NET_ACT_PEDIT=mCONFIG_NET_ACT_SIMP=mCONFIG_NET_CLS_IND=yCONFIG_NET_ESTIMATOR=y
#
# Network testing
#CONFIG_NET_PKTGEN=m
# CONFIG_NET_TCPPROBE is not set
# CONFIG_HAMRADIO is not setCONFIG_IRDA=m
#
# IrDA protocols
#CONFIG_IRLAN=mCONFIG_IRNET=mCONFIG_IRCOMM=m
# CONFIG_IRDA_ULTRA is not set
#
# IrDA options
#CONFIG_IRDA_CACHE_LAST_LSAP=yCONFIG_IRDA_FAST_RR=y
# CONFIG_IRDA_DEBUG is not set
#
# Infrared-port device drivers
#
#
# SIR device drivers
#CONFIG_IRTTY_SIR=m
#
# Dongle support
#CONFIG_DONGLE=yCONFIG_ESI_DONGLE=mCONFIG_ACTISYS_DONGLE=mCONFIG_TEKRAM_DONGLE=mCONFIG_TOIM3232_DONGLE=mCONFIG_LITELINK_DONGLE=mCONFIG_MA600_DONGLE=mCONFIG_GIRBIL_DONGLE=mCONFIG_MCP2120_DONGLE=mCONFIG_OLD_BELKIN_DONGLE=mCONFIG_ACT200L_DONGLE=m
#
# Old SIR device drivers
#
#
# Old Serial dongle support
#
#
# FIR device drivers
#CONFIG_USB_IRDA=mCONFIG_SIGMATEL_FIR=mCONFIG_NSC_FIR=mCONFIG_WINBOND_FIR=mCONFIG_TOSHIBA_FIR=mCONFIG_SMC_IRCC_FIR=mCONFIG_ALI_FIR=mCONFIG_VLSI_FIR=mCONFIG_VIA_FIR=mCONFIG_MCS_FIR=mCONFIG_BT=mCONFIG_BT_L2CAP=mCONFIG_BT_SCO=mCONFIG_BT_RFCOMM=mCONFIG_BT_RFCOMM_TTY=yCONFIG_BT_BNEP=mCONFIG_BT_BNEP_MC_FILTER=yCONFIG_BT_BNEP_PROTO_FILTER=yCONFIG_BT_CMTP=mCONFIG_BT_HIDP=m
#
# Bluetooth device drivers
#CONFIG_BT_HCIUSB=mCONFIG_BT_HCIUSB_SCO=yCONFIG_BT_HCIUART=mCONFIG_BT_HCIUART_H4=yCONFIG_BT_HCIUART_BCSP=yCONFIG_BT_HCIBCM203X=mCONFIG_BT_HCIBPA10X=mCONFIG_BT_HCIBFUSB=mCONFIG_BT_HCIDTL1=mCONFIG_BT_HCIBT3C=mCONFIG_BT_HCIBLUECARD=mCONFIG_BT_HCIBTUART=mCONFIG_BT_HCIVHCI=mCONFIG_IEEE80211=m
# CONFIG_IEEE80211_DEBUG is not setCONFIG_IEEE80211_CRYPT_WEP=mCONFIG_IEEE80211_CRYPT_CCMP=mCONFIG_IEEE80211_CRYPT_TKIP=mCONFIG_IEEE80211_SOFTMAC=mCONFIG_IEEE80211_SOFTMAC_DEBUG=yCONFIG_WIRELESS_EXT=yCONFIG_FIB_RULES=y
#
# Device Drivers
#
#
# Generic Driver Options
#CONFIG_STANDALONE=yCONFIG_PREVENT_FIRMWARE_BUILD=yCONFIG_FW_LOADER=y
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
#
# Connector - unified userspace <-> kernelspace linker #CONFIG_CONNECTOR=yCONFIG_PROC_EVENTS=y
#
# Memory Technology Devices (MTD)
#CONFIG_MTD=m
# CONFIG_MTD_DEBUG is not setCONFIG_MTD_CONCAT=mCONFIG_MTD_PARTITIONS=yCONFIG_MTD_REDBOOT_PARTS=mCONFIG_MTD_REDBOOT_DIRECTORY_BLOCK=-1
# CONFIG_MTD_REDBOOT_PARTS_UNALLOCATED is not set
# CONFIG_MTD_REDBOOT_PARTS_READONLY is not set
#
# User Modules And Translation Layers
#CONFIG_MTD_CHAR=mCONFIG_MTD_BLKDEVS=mCONFIG_MTD_BLOCK=mCONFIG_MTD_BLOCK_RO=mCONFIG_FTL=mCONFIG_NFTL=mCONFIG_NFTL_RW=yCONFIG_INFTL=mCONFIG_RFD_FTL=m
# CONFIG_SSFDC is not set
#
# RAM/ROM/Flash chip drivers
#CONFIG_MTD_CFI=mCONFIG_MTD_JEDECPROBE=mCONFIG_MTD_GEN_PROBE=m
# CONFIG_MTD_CFI_ADV_OPTIONS is not setCONFIG_MTD_MAP_BANK_WIDTH_1=yCONFIG_MTD_MAP_BANK_WIDTH_2=yCONFIG_MTD_MAP_BANK_WIDTH_4=y
# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set
# CONFIG_MTD_MAP_BANK_WIDTH_32 is not setCONFIG_MTD_CFI_I1=yCONFIG_MTD_CFI_I2=y
# CONFIG_MTD_CFI_I4 is not set
# CONFIG_MTD_CFI_I8 is not setCONFIG_MTD_CFI_INTELEXT=mCONFIG_MTD_CFI_AMDSTD=mCONFIG_MTD_CFI_STAA=mCONFIG_MTD_CFI_UTIL=mCONFIG_MTD_RAM=mCONFIG_MTD_ROM=mCONFIG_MTD_ABSENT=m
# CONFIG_MTD_OBSOLETE_CHIPS is not set
#
# Mapping drivers for chip access
#CONFIG_MTD_COMPLEX_MAPPINGS=y
# CONFIG_MTD_PHYSMAP is not set
# CONFIG_MTD_PNC2000 is not setCONFIG_MTD_SC520CDP=mCONFIG_MTD_NETSC520=mCONFIG_MTD_TS5500=m
# CONFIG_MTD_SBC_GXX is not set
# CONFIG_MTD_AMD76XROM is not set
# CONFIG_MTD_ICHXROM is not set
# CONFIG_MTD_ESB2ROM is not set
# CONFIG_MTD_CK804XROM is not setCONFIG_MTD_SCB2_FLASH=m
# CONFIG_MTD_NETtel is not set
# CONFIG_MTD_DILNETPC is not set
# CONFIG_MTD_L440GX is not setCONFIG_MTD_PCI=m
# CONFIG_MTD_PLATRAM is not set
#
# Self-contained MTD device drivers
#CONFIG_MTD_PMC551=m
# CONFIG_MTD_PMC551_BUGFIX is not set
# CONFIG_MTD_PMC551_DEBUG is not set
# CONFIG_MTD_SLRAM is not set
# CONFIG_MTD_PHRAM is not setCONFIG_MTD_MTDRAM=mCONFIG_MTDRAM_TOTAL_SIZE=4096CONFIG_MTDRAM_ERASE_SIZE=128CONFIG_MTD_BLOCK2MTD=m
#
# Disk-On-Chip Device Drivers
#
# CONFIG_MTD_DOC2000 is not set
# CONFIG_MTD_DOC2001 is not set
# CONFIG_MTD_DOC2001PLUS is not set
#
# NAND Flash Device Drivers
#CONFIG_MTD_NAND=m
# CONFIG_MTD_NAND_VERIFY_WRITE is not set CONFIG_MTD_NAND_ECC_SMC=y CONFIG_MTD_NAND_IDS=m CONFIG_MTD_NAND_DISKONCHIP=m
# CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0
# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set # CONFIG_MTD_NAND_CAFE is not set CONFIG_MTD_NAND_CS553X=m CONFIG_MTD_NAND_NANDSIM=m
#
# OneNAND Flash Device Drivers
#
# CONFIG_MTD_ONENAND is not set
#
# Parallel port support
#CONFIG_PARPORT=mCONFIG_PARPORT_PC=mCONFIG_PARPORT_SERIAL=m
# CONFIG_PARPORT_PC_FIFO is not set
# CONFIG_PARPORT_PC_SUPERIO is not setCONFIG_PARPORT_PC_PCMCIA=m
# CONFIG_PARPORT_GSC is not set
# CONFIG_PARPORT_AX88796 is not setCONFIG_PARPORT_1284=yCONFIG_PARPORT_NOT_PC=y
#
# Plug and Play support
#CONFIG_PNP=y
# CONFIG_PNP_DEBUG is not set
#
# Protocols
#CONFIG_ISAPNP=y
# CONFIG_PNPBIOS is not setCONFIG_PNPACPI=y
#
# Block devices
#CONFIG_BLK_DEV_FD=m
# CONFIG_BLK_DEV_XD is not setCONFIG_PARIDE=m
#
# Parallel IDE high-level drivers
#CONFIG_PARIDE_PD=mCONFIG_PARIDE_PCD=mCONFIG_PARIDE_PF=mCONFIG_PARIDE_PT=mCONFIG_PARIDE_PG=m
#
# Parallel IDE protocol modules
#CONFIG_PARIDE_ATEN=mCONFIG_PARIDE_BPCK=mCONFIG_PARIDE_BPCK6=mCONFIG_PARIDE_COMM=mCONFIG_PARIDE_DSTR=mCONFIG_PARIDE_FIT2=mCONFIG_PARIDE_FIT3=mCONFIG_PARIDE_EPAT=mCONFIG_PARIDE_EPATC8=yCONFIG_PARIDE_EPIA=mCONFIG_PARIDE_FRIQ=mCONFIG_PARIDE_FRPW=mCONFIG_PARIDE_KBIC=mCONFIG_PARIDE_KTTI=mCONFIG_PARIDE_ON20=mCONFIG_PARIDE_ON26=mCONFIG_BLK_CPQ_DA=mCONFIG_BLK_CPQ_CISS_DA=mCONFIG_CISS_SCSI_TAPE=yCONFIG_BLK_DEV_DAC960=mCONFIG_BLK_DEV_UMEM=m
# CONFIG_BLK_DEV_COW_COMMON is not setCONFIG_BLK_DEV_LOOP=yCONFIG_BLK_DEV_CRYPTOLOOP=yCONFIG_BLK_DEV_NBD=mCONFIG_BLK_DEV_SX8=mCONFIG_BLK_DEV_UB=mCONFIG_BLK_DEV_RAM=yCONFIG_BLK_DEV_RAM_COUNT=16CONFIG_BLK_DEV_RAM_SIZE=16384CONFIG_BLK_DEV_RAM_BLOCKSIZE=4096CONFIG_BLK_DEV_INITRD=yCONFIG_CDROM_PKTCDVD=mCONFIG_CDROM_PKTCDVD_BUFFERS=8
# CONFIG_CDROM_PKTCDVD_WCACHE is not setCONFIG_ATA_OVER_ETH=m
#
# Misc devices
#CONFIG_IBM_ASM=m
# CONFIG_SGI_IOC4 is not setCONFIG_TIFM_CORE=mCONFIG_TIFM_7XX1=m
# CONFIG_ASUS_LAPTOP is not setCONFIG_MSI_LAPTOP=m
# CONFIG_SONY_LAPTOP is not set
#
# ATA/ATAPI/MFM/RLL support
#CONFIG_IDE=yCONFIG_BLK_DEV_IDE=y
#
# Please see Documentation/ide.txt for help/info on IDE drives #
# CONFIG_BLK_DEV_IDE_SATA is not set
# CONFIG_BLK_DEV_HD_IDE is not set CONFIG_BLK_DEV_IDEDISK=yCONFIG_IDEDISK_MULTI_MODE=yCONFIG_BLK_DEV_IDECS=m
# CONFIG_BLK_DEV_DELKIN is not set CONFIG_BLK_DEV_IDECD=m
# CONFIG_BLK_DEV_IDETAPE is not set CONFIG_BLK_DEV_IDEFLOPPY=yCONFIG_BLK_DEV_IDESCSI=m
# CONFIG_BLK_DEV_IDEACPI is not set CONFIG_IDE_TASK_IOCTL=y
#
# IDE chipset support/bugfixes
#CONFIG_IDE_GENERIC=yCONFIG_BLK_DEV_CMD640=yCONFIG_BLK_DEV_CMD640_ENHANCED=yCONFIG_BLK_DEV_IDEPNP=yCONFIG_BLK_DEV_IDEPCI=yCONFIG_IDEPCI_SHARE_IRQ=y
# CONFIG_BLK_DEV_OFFBOARD is not setCONFIG_BLK_DEV_GENERIC=y
# CONFIG_BLK_DEV_OPTI621 is not setCONFIG_BLK_DEV_RZ1000=yCONFIG_BLK_DEV_IDEDMA_PCI=y
# CONFIG_BLK_DEV_IDEDMA_FORCED is not setCONFIG_IDEDMA_PCI_AUTO=y
# CONFIG_IDEDMA_ONLYDISK is not setCONFIG_BLK_DEV_AEC62XX=yCONFIG_BLK_DEV_ALI15X3=y
# CONFIG_WDC_ALI15X3 is not setCONFIG_BLK_DEV_AMD74XX=yCONFIG_BLK_DEV_ATIIXP=yCONFIG_BLK_DEV_CMD64X=yCONFIG_BLK_DEV_TRIFLEX=y
# CONFIG_BLK_DEV_CY82C693 is not setCONFIG_BLK_DEV_CS5520=yCONFIG_BLK_DEV_CS5530=yCONFIG_BLK_DEV_CS5535=yCONFIG_BLK_DEV_HPT34X=y
# CONFIG_HPT34X_AUTODMA is not setCONFIG_BLK_DEV_HPT366=yCONFIG_BLK_DEV_JMICRON=m
# CONFIG_BLK_DEV_SC1200 is not setCONFIG_BLK_DEV_PIIX=y
# CONFIG_BLK_DEV_IT8213 is not setCONFIG_BLK_DEV_IT821X=y
# CONFIG_BLK_DEV_NS87415 is not setCONFIG_BLK_DEV_PDC202XX_OLD=y
# CONFIG_PDC202XX_BURST is not setCONFIG_BLK_DEV_PDC202XX_NEW=yCONFIG_BLK_DEV_SVWKS=yCONFIG_BLK_DEV_SIIMAGE=yCONFIG_BLK_DEV_SIS5513=y
# CONFIG_BLK_DEV_SLC90E66 is not set
# CONFIG_BLK_DEV_TRM290 is not setCONFIG_BLK_DEV_VIA82CXXX=y
# CONFIG_BLK_DEV_TC86C001 is not set
# CONFIG_IDE_ARM is not set
# CONFIG_IDE_CHIPSETS is not setCONFIG_BLK_DEV_IDEDMA=y
# CONFIG_IDEDMA_IVB is not setCONFIG_IDEDMA_AUTO=y
# CONFIG_BLK_DEV_HD is not set
#
# SCSI device support
#CONFIG_RAID_ATTRS=mCONFIG_SCSI=yCONFIG_SCSI_TGT=mCONFIG_SCSI_NETLINK=yCONFIG_SCSI_PROC_FS=y
#
# SCSI support type (disk, tape, CD-ROM)
#CONFIG_BLK_DEV_SD=yCONFIG_CHR_DEV_ST=mCONFIG_CHR_DEV_OSST=mCONFIG_BLK_DEV_SR=mCONFIG_BLK_DEV_SR_VENDOR=yCONFIG_CHR_DEV_SG=yCONFIG_CHR_DEV_SCH=m
#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs #CONFIG_SCSI_MULTI_LUN=yCONFIG_SCSI_CONSTANTS=yCONFIG_SCSI_LOGGING=y
# CONFIG_SCSI_SCAN_ASYNC is not set
#
# SCSI Transports
#CONFIG_SCSI_SPI_ATTRS=yCONFIG_SCSI_FC_ATTRS=mCONFIG_SCSI_ISCSI_ATTRS=mCONFIG_SCSI_SAS_ATTRS=yCONFIG_SCSI_SAS_LIBSAS=y
# CONFIG_SCSI_SAS_LIBSAS_DEBUG is not set
#
# SCSI low-level drivers
#CONFIG_ISCSI_TCP=mCONFIG_BLK_DEV_3W_XXXX_RAID=mCONFIG_SCSI_3W_9XXX=m
# CONFIG_SCSI_7000FASST is not setCONFIG_SCSI_ACARD=mCONFIG_SCSI_AHA152X=mCONFIG_SCSI_AHA1542=mCONFIG_SCSI_AACRAID=mCONFIG_SCSI_AIC7XXX=yCONFIG_AIC7XXX_CMDS_PER_DEVICE=4CONFIG_AIC7XXX_RESET_DELAY_MS=1000
# CONFIG_AIC7XXX_DEBUG_ENABLE is not setCONFIG_AIC7XXX_DEBUG_MASK=0
# CONFIG_AIC7XXX_REG_PRETTY_PRINT is not setCONFIG_SCSI_AIC7XXX_OLD=mCONFIG_SCSI_AIC79XX=yCONFIG_AIC79XX_CMDS_PER_DEVICE=4CONFIG_AIC79XX_RESET_DELAY_MS=1000
# CONFIG_AIC79XX_ENABLE_RD_STRM is not set
# CONFIG_AIC79XX_DEBUG_ENABLE is not setCONFIG_AIC79XX_DEBUG_MASK=0
# CONFIG_AIC79XX_REG_PRETTY_PRINT is not setCONFIG_SCSI_AIC94XX=y
# CONFIG_AIC94XX_DEBUG is not set
# CONFIG_SCSI_DPT_I2O is not setCONFIG_SCSI_ADVANSYS=m
# CONFIG_SCSI_IN2000 is not setCONFIG_SCSI_ARCMSR=mCONFIG_MEGARAID_NEWGEN=yCONFIG_MEGARAID_MM=mCONFIG_MEGARAID_MAILBOX=mCONFIG_MEGARAID_LEGACY=mCONFIG_MEGARAID_SAS=mCONFIG_SCSI_HPTIOP=mCONFIG_SCSI_BUSLOGIC=m
# CONFIG_SCSI_OMIT_FLASHPOINT is not set
# CONFIG_SCSI_DMX3191D is not set
# CONFIG_SCSI_DTC3280 is not set
# CONFIG_SCSI_EATA is not setCONFIG_SCSI_FUTURE_DOMAIN=mCONFIG_SCSI_GDTH=m
# CONFIG_SCSI_GENERIC_NCR5380 is not set
# CONFIG_SCSI_GENERIC_NCR5380_MMIO is not setCONFIG_SCSI_IPS=mCONFIG_SCSI_INITIO=mCONFIG_SCSI_INIA100=mCONFIG_SCSI_PPA=mCONFIG_SCSI_IMM=m
# CONFIG_SCSI_IZIP_EPP16 is not set
# CONFIG_SCSI_IZIP_SLOW_CTR is not set
# CONFIG_SCSI_NCR53C406A is not setCONFIG_SCSI_STEX=mCONFIG_SCSI_SYM53C8XX_2=mCONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64CONFIG_SCSI_SYM53C8XX_MMIO=y
# CONFIG_SCSI_IPR is not set
# CONFIG_SCSI_PAS16 is not set
# CONFIG_SCSI_PSI240I is not set
# CONFIG_SCSI_QLOGIC_FAS is not setCONFIG_SCSI_QLOGIC_1280=mCONFIG_SCSI_QLA_FC=mCONFIG_SCSI_QLA_ISCSI=mCONFIG_SCSI_LPFC=m
# CONFIG_SCSI_SEAGATE is not set
# CONFIG_SCSI_SYM53C416 is not set
CONFIG_SCSI_DC395x=mCONFIG_SCSI_DC390T=m
# CONFIG_SCSI_T128 is not set
# CONFIG_SCSI_U14_34F is not set
# CONFIG_SCSI_ULTRASTOR is not set
# CONFIG_SCSI_NSP32 is not set
# CONFIG_SCSI_DEBUG is not setCONFIG_SCSI_SRP=m
#
# PCMCIA SCSI adapter support
#CONFIG_PCMCIA_AHA152X=mCONFIG_PCMCIA_FDOMAIN=mCONFIG_PCMCIA_NINJA_SCSI=mCONFIG_PCMCIA_QLOGIC=mCONFIG_PCMCIA_SYM53C500=m
#
# Serial ATA (prod) and Parallel ATA (experimental) drivers #CONFIG_ATA=y
# CONFIG_ATA_NONSTANDARD is not set CONFIG_SATA_AHCI=yCONFIG_SATA_SVW=yCONFIG_ATA_PIIX=yCONFIG_SATA_MV=yCONFIG_SATA_NV=yCONFIG_PDC_ADMA=yCONFIG_SATA_QSTOR=yCONFIG_SATA_PROMISE=yCONFIG_SATA_SX4=yCONFIG_SATA_SIL=yCONFIG_SATA_SIL24=yCONFIG_SATA_SIS=yCONFIG_SATA_ULI=yCONFIG_SATA_VIA=yCONFIG_SATA_VITESSE=y
# CONFIG_SATA_INIC162X is not set CONFIG_SATA_INTEL_COMBINED=yCONFIG_SATA_ACPI=yCONFIG_PATA_ALI=yCONFIG_PATA_AMD=yCONFIG_PATA_ARTOP=yCONFIG_PATA_ATIIXP=yCONFIG_PATA_CMD64X=yCONFIG_PATA_CS5520=yCONFIG_PATA_CS5530=yCONFIG_PATA_CS5535=yCONFIG_PATA_CYPRESS=yCONFIG_PATA_EFAR=yCONFIG_ATA_GENERIC=yCONFIG_PATA_HPT366=yCONFIG_PATA_HPT37X=yCONFIG_PATA_HPT3X2N=yCONFIG_PATA_HPT3X3=yCONFIG_PATA_ISAPNP=yCONFIG_PATA_IT821X=y
# CONFIG_PATA_IT8213 is not set CONFIG_PATA_JMICRON=yCONFIG_PATA_LEGACY=mCONFIG_PATA_TRIFLEX=yCONFIG_PATA_MARVELL=yCONFIG_PATA_MPIIX=yCONFIG_PATA_OLDPIIX=yCONFIG_PATA_NETCELL=yCONFIG_PATA_NS87410=yCONFIG_PATA_OPTI=yCONFIG_PATA_OPTIDMA=yCONFIG_PATA_PCMCIA=yCONFIG_PATA_PDC_OLD=yCONFIG_PATA_QDI=yCONFIG_PATA_RADISYS=yCONFIG_PATA_RZ1000=yCONFIG_PATA_SC1200=yCONFIG_PATA_SERVERWORKS=yCONFIG_PATA_PDC2027X=yCONFIG_PATA_SIL680=yCONFIG_PATA_SIS=yCONFIG_PATA_VIA=yCONFIG_PATA_WINBOND=yCONFIG_PATA_WINBOND_VLB=y
#
# Old CD-ROM drivers (not SCSI, not IDE)
#
# CONFIG_CD_NO_IDESCSI is not set
#
# Multi-device support (RAID and LVM)
#CONFIG_MD=yCONFIG_BLK_DEV_MD=yCONFIG_MD_LINEAR=mCONFIG_MD_RAID0=mCONFIG_MD_RAID1=mCONFIG_MD_RAID10=mCONFIG_MD_RAID456=mCONFIG_MD_RAID5_RESHAPE=yCONFIG_MD_MULTIPATH=mCONFIG_MD_FAULTY=mCONFIG_BLK_DEV_DM=m
# CONFIG_DM_DEBUG is not setCONFIG_DM_CRYPT=mCONFIG_DM_SNAPSHOT=mCONFIG_DM_MIRROR=mCONFIG_DM_ZERO=mCONFIG_DM_MULTIPATH=mCONFIG_DM_MULTIPATH_EMC=m
#
# Fusion MPT device support
#CONFIG_FUSION=yCONFIG_FUSION_SPI=mCONFIG_FUSION_FC=mCONFIG_FUSION_SAS=mCONFIG_FUSION_MAX_SGE=40CONFIG_FUSION_CTL=mCONFIG_FUSION_LAN=m
#
# IEEE 1394 (FireWire) support
#CONFIG_IEEE1394=m
#
# Subsystem Options
#
# CONFIG_IEEE1394_VERBOSEDEBUG is not setCONFIG_IEEE1394_EXTRA_CONFIG_ROMS=yCONFIG_IEEE1394_CONFIG_ROM_IP1394=y
#
# Device Drivers
#CONFIG_IEEE1394_PCILYNX=mCONFIG_IEEE1394_OHCI1394=m
#
# Protocol Drivers
#CONFIG_IEEE1394_VIDEO1394=mCONFIG_IEEE1394_SBP2=m
# CONFIG_IEEE1394_SBP2_PHYS_DMA is not setCONFIG_IEEE1394_ETH1394=mCONFIG_IEEE1394_DV1394=mCONFIG_IEEE1394_RAWIO=m
#
# I2O device support
#CONFIG_I2O=m
# CONFIG_I2O_LCT_NOTIFY_ON_CHANGES is not setCONFIG_I2O_EXT_ADAPTEC=yCONFIG_I2O_CONFIG=mCONFIG_I2O_CONFIG_OLD_IOCTL=yCONFIG_I2O_BUS=mCONFIG_I2O_BLOCK=mCONFIG_I2O_SCSI=mCONFIG_I2O_PROC=m
#
# Macintosh device drivers
#
# CONFIG_MAC_EMUMOUSEBTN is not set
#
# Network device support
#CONFIG_NETDEVICES=yCONFIG_IFB=mCONFIG_DUMMY=mCONFIG_BONDING=mCONFIG_EQUALIZER=mCONFIG_TUN=mCONFIG_NET_SB1000=m
#
# ARCnet devices
#
# CONFIG_ARCNET is not set
#
# PHY device support
#CONFIG_PHYLIB=m
#
# MII PHY device drivers
#CONFIG_MARVELL_PHY=mCONFIG_DAVICOM_PHY=mCONFIG_QSEMI_PHY=mCONFIG_LXT_PHY=mCONFIG_CICADA_PHY=mCONFIG_VITESSE_PHY=mCONFIG_SMSC_PHY=mCONFIG_BROADCOM_PHY=mCONFIG_FIXED_PHY=mCONFIG_FIXED_MII_10_FDX=yCONFIG_FIXED_MII_100_FDX=y
#
# Ethernet (10 or 100Mbit)
#CONFIG_NET_ETHERNET=yCONFIG_MII=yCONFIG_HAPPYMEAL=mCONFIG_SUNGEM=mCONFIG_CASSINI=mCONFIG_NET_VENDOR_3COM=y
# CONFIG_EL1 is not set
# CONFIG_EL2 is not set
# CONFIG_ELPLUS is not set
# CONFIG_EL16 is not setCONFIG_EL3=m
# CONFIG_3C515 is not setCONFIG_VORTEX=mCONFIG_TYPHOON=m
# CONFIG_LANCE is not setCONFIG_NET_VENDOR_SMC=y
# CONFIG_WD80x3 is not setCONFIG_ULTRA=m
# CONFIG_SMC9194 is not set
# CONFIG_NET_VENDOR_RACAL is not set
#
# Tulip family network device support
#CONFIG_NET_TULIP=yCONFIG_DE2104X=mCONFIG_TULIP=m
# CONFIG_TULIP_MWI is not setCONFIG_TULIP_MMIO=y
# CONFIG_TULIP_NAPI is not setCONFIG_DE4X5=mCONFIG_WINBOND_840=mCONFIG_DM9102=mCONFIG_ULI526X=mCONFIG_PCMCIA_XIRCOM=m
# CONFIG_AT1700 is not set
# CONFIG_DEPCA is not set
# CONFIG_HP100 is not setCONFIG_NET_ISA=y
# CONFIG_E2100 is not setCONFIG_EWRK3=m
# CONFIG_EEXPRESS is not set
# CONFIG_EEXPRESS_PRO is not set
# CONFIG_HPLAN_PLUS is not set
# CONFIG_HPLAN is not set
# CONFIG_LP486E is not set
# CONFIG_ETH16I is not setCONFIG_NE2000=m
# CONFIG_ZNET is not set
# CONFIG_SEEQ8005 is not setCONFIG_NET_PCI=yCONFIG_PCNET32=mCONFIG_PCNET32_NAPI=yCONFIG_AMD8111_ETH=mCONFIG_AMD8111E_NAPI=yCONFIG_ADAPTEC_STARFIRE=mCONFIG_ADAPTEC_STARFIRE_NAPI=y
# CONFIG_AC3200 is not set
# CONFIG_APRICOT is not setCONFIG_B44=mCONFIG_FORCEDETH=yCONFIG_FORCEDETH_NAPI=y
# CONFIG_CS89x0 is not set
# CONFIG_DGRS is not set
# CONFIG_EEPRO100 is not setCONFIG_E100=yCONFIG_FEALNX=mCONFIG_NATSEMI=mCONFIG_NE2K_PCI=mCONFIG_8139CP=yCONFIG_8139TOO=yCONFIG_8139TOO_PIO=y
# CONFIG_8139TOO_TUNE_TWISTER is not set
# CONFIG_8139TOO_8129 is not set
# CONFIG_8139_OLD_RX_RESET is not setCONFIG_SIS900=mCONFIG_EPIC100=mCONFIG_SUNDANCE=m
# CONFIG_SUNDANCE_MMIO is not setCONFIG_TLAN=mCONFIG_VIA_RHINE=mCONFIG_VIA_RHINE_MMIO=yCONFIG_VIA_RHINE_NAPI=y
# CONFIG_SC92031 is not setCONFIG_NET_POCKET=yCONFIG_ATP=mCONFIG_DE600=mCONFIG_DE620=m
#
# Ethernet (1000 Mbit)
#CONFIG_ACENIC=m
# CONFIG_ACENIC_OMIT_TIGON_I is not setCONFIG_DL2K=mCONFIG_E1000=yCONFIG_E1000_NAPI=y
# CONFIG_E1000_DISABLE_PACKET_SPLIT is not setCONFIG_NS83820=mCONFIG_HAMACHI=mCONFIG_YELLOWFIN=mCONFIG_R8169=mCONFIG_R8169_NAPI=yCONFIG_R8169_VLAN=yCONFIG_SIS190=mCONFIG_SKGE=yCONFIG_SKY2=m
# CONFIG_SK98LIN is not setCONFIG_VIA_VELOCITY=mCONFIG_TIGON3=yCONFIG_BNX2=mCONFIG_QLA3XXX=m
# CONFIG_ATL1 is not set
#
# Ethernet (10000 Mbit)
#CONFIG_CHELSIO_T1=mCONFIG_CHELSIO_T1_1G=yCONFIG_CHELSIO_T1_NAPI=y
# CONFIG_CHELSIO_T3 is not setCONFIG_IXGB=mCONFIG_IXGB_NAPI=yCONFIG_S2IO=mCONFIG_S2IO_NAPI=yCONFIG_MYRI10GE=mCONFIG_NETXEN_NIC=m
#
# Token Ring devices
#CONFIG_TR=y
# CONFIG_IBMTR is not setCONFIG_IBMOL=mCONFIG_IBMLS=mCONFIG_3C359=m
# CONFIG_TMS380TR is not set
# CONFIG_SMCTR is not set
#
# Wireless LAN (non-hamradio)
#CONFIG_NET_RADIO=yCONFIG_NET_WIRELESS_RTNETLINK=y
#
# Obsolete Wireless cards support (pre-802.11)
#
# CONFIG_STRIP is not set
# CONFIG_ARLAN is not set
# CONFIG_WAVELAN is not setCONFIG_PCMCIA_WAVELAN=mCONFIG_PCMCIA_NETWAVE=m
#
# Wireless 802.11 Frequency Hopping cards support
#
# CONFIG_PCMCIA_RAYCS is not set
#
# Wireless 802.11b ISA/PCI cards support
#CONFIG_IPW2100=mCONFIG_IPW2100_MONITOR=y
# CONFIG_IPW2100_DEBUG is not setCONFIG_IPW2200=mCONFIG_IPW2200_MONITOR=yCONFIG_IPW2200_RADIOTAP=yCONFIG_IPW2200_PROMISCUOUS=yCONFIG_IPW2200_QOS=y
# CONFIG_IPW2200_DEBUG is not setCONFIG_AIRO=mCONFIG_HERMES=mCONFIG_PLX_HERMES=mCONFIG_TMD_HERMES=mCONFIG_NORTEL_HERMES=mCONFIG_PCI_HERMES=mCONFIG_ATMEL=mCONFIG_PCI_ATMEL=m
#
# Wireless 802.11b Pcmcia/Cardbus cards support
#CONFIG_PCMCIA_HERMES=mCONFIG_PCMCIA_SPECTRUM=mCONFIG_AIRO_CS=mCONFIG_PCMCIA_ATMEL=mCONFIG_PCMCIA_WL3501=m
#
# Prism GT/Duette 802.11(a/b/g) PCI/Cardbus support #CONFIG_PRISM54=mCONFIG_USB_ZD1201=mCONFIG_HOSTAP=mCONFIG_HOSTAP_FIRMWARE=y CONFIG_HOSTAP_FIRMWARE_NVRAM=y CONFIG_HOSTAP_PLX=mCONFIG_HOSTAP_PCI=mCONFIG_HOSTAP_CS=mCONFIG_BCM43XX=mCONFIG_BCM43XX_DEBUG=yCONFIG_BCM43XX_DMA=yCONFIG_BCM43XX_PIO=y CONFIG_BCM43XX_DMA_AND_PIO_MODE=y
# CONFIG_BCM43XX_DMA_MODE is not set
# CONFIG_BCM43XX_PIO_MODE is not set CONFIG_ZD1211RW=m
# CONFIG_ZD1211RW_DEBUG is not set CONFIG_NET_WIRELESS=y
#
# PCMCIA network device support
#CONFIG_NET_PCMCIA=yCONFIG_PCMCIA_3C589=mCONFIG_PCMCIA_3C574=mCONFIG_PCMCIA_FMVJ18X=mCONFIG_PCMCIA_PCNET=mCONFIG_PCMCIA_NMCLAN=mCONFIG_PCMCIA_SMC91C92=mCONFIG_PCMCIA_XIRC2PS=mCONFIG_PCMCIA_AXNET=mCONFIG_PCMCIA_IBMTR=m
#
# Wan interfaces
#
# CONFIG_WAN is not set
#
# ATM drivers
#
# CONFIG_ATM_DUMMY is not setCONFIG_ATM_TCP=mCONFIG_ATM_LANAI=mCONFIG_ATM_ENI=m
# CONFIG_ATM_ENI_DEBUG is not set
# CONFIG_ATM_ENI_TUNE_BURST is not setCONFIG_ATM_FIRESTREAM=m
# CONFIG_ATM_ZATM is not setCONFIG_ATM_NICSTAR=m
# CONFIG_ATM_NICSTAR_USE_SUNI is not set
# CONFIG_ATM_NICSTAR_USE_IDT77105 is not setCONFIG_ATM_IDT77252=m
# CONFIG_ATM_IDT77252_DEBUG is not set
# CONFIG_ATM_IDT77252_RCV_ALL is not setCONFIG_ATM_IDT77252_USE_SUNI=yCONFIG_ATM_AMBASSADOR=m
# CONFIG_ATM_AMBASSADOR_DEBUG is not setCONFIG_ATM_HORIZON=m
# CONFIG_ATM_HORIZON_DEBUG is not set
# CONFIG_ATM_IA is not setCONFIG_ATM_FORE200E_MAYBE=m
# CONFIG_ATM_FORE200E_PCA is not setCONFIG_ATM_HE=m
# CONFIG_ATM_HE_USE_SUNI is not setCONFIG_FDDI=y
# CONFIG_DEFXX is not setCONFIG_SKFP=m
# CONFIG_HIPPI is not setCONFIG_PLIP=mCONFIG_PPP=mCONFIG_PPP_MULTILINK=yCONFIG_PPP_FILTER=yCONFIG_PPP_ASYNC=mCONFIG_PPP_SYNC_TTY=mCONFIG_PPP_DEFLATE=m
# CONFIG_PPP_BSDCOMP is not setCONFIG_PPP_MPPE=mCONFIG_PPPOE=mCONFIG_PPPOATM=mCONFIG_SLIP=mCONFIG_SLIP_COMPRESSED=yCONFIG_SLHC=mCONFIG_SLIP_SMART=y
# CONFIG_SLIP_MODE_SLIP6 is not setCONFIG_NET_FC=y
# CONFIG_SHAPER is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set
#
# ISDN subsystem
#CONFIG_ISDN=m
#
# Old ISDN4Linux
#CONFIG_ISDN_I4L=mCONFIG_ISDN_PPP=yCONFIG_ISDN_PPP_VJ=yCONFIG_ISDN_MPP=yCONFIG_IPPP_FILTER=y
# CONFIG_ISDN_PPP_BSDCOMP is not setCONFIG_ISDN_AUDIO=yCONFIG_ISDN_TTY_FAX=y
#
# ISDN feature submodules
#CONFIG_ISDN_DIVERSION=m
#
# ISDN4Linux hardware drivers
#
#
# Passive cards
#CONFIG_ISDN_DRV_HISAX=m
#
# D-channel protocol features
#CONFIG_HISAX_EURO=yCONFIG_DE_AOC=yCONFIG_HISAX_NO_SENDCOMPLETE=yCONFIG_HISAX_NO_LLC=yCONFIG_HISAX_NO_KEYPAD=yCONFIG_HISAX_1TR6=yCONFIG_HISAX_NI1=yCONFIG_HISAX_MAX_CARDS=8
#
# HiSax supported cards
#
# CONFIG_HISAX_16_0 is not setCONFIG_HISAX_16_3=yCONFIG_HISAX_TELESPCI=yCONFIG_HISAX_S0BOX=y
# CONFIG_HISAX_AVM_A1 is not setCONFIG_HISAX_FRITZPCI=yCONFIG_HISAX_AVM_A1_PCMCIA=yCONFIG_HISAX_ELSA=y
# CONFIG_HISAX_IX1MICROR2 is not setCONFIG_HISAX_DIEHLDIVA=y
# CONFIG_HISAX_ASUSCOM is not set
# CONFIG_HISAX_TELEINT is not set
# CONFIG_HISAX_HFCS is not setCONFIG_HISAX_SEDLBAUER=y
# CONFIG_HISAX_SPORTSTER is not set
# CONFIG_HISAX_MIC is not setCONFIG_HISAX_NETJET=yCONFIG_HISAX_NETJET_U=yCONFIG_HISAX_NICCY=y
# CONFIG_HISAX_ISURF is not set
# CONFIG_HISAX_HSTSAPHIR is not setCONFIG_HISAX_BKM_A4T=yCONFIG_HISAX_SCT_QUADRO=yCONFIG_HISAX_GAZEL=yCONFIG_HISAX_HFC_PCI=yCONFIG_HISAX_W6692=yCONFIG_HISAX_HFC_SX=yCONFIG_HISAX_ENTERNOW_PCI=y
# CONFIG_HISAX_DEBUG is not set
#
# HiSax PCMCIA card service modules
#CONFIG_HISAX_SEDLBAUER_CS=mCONFIG_HISAX_ELSA_CS=mCONFIG_HISAX_AVM_A1_CS=mCONFIG_HISAX_TELES_CS=m
#
# HiSax sub driver modules
#CONFIG_HISAX_ST5481=m
# CONFIG_HISAX_HFCUSB is not setCONFIG_HISAX_HFC4S8S=mCONFIG_HISAX_FRITZ_PCIPNP=mCONFIG_HISAX_HDLC=y
#
# Active cards
#
# CONFIG_ISDN_DRV_ICN is not set
# CONFIG_ISDN_DRV_PCBIT is not set
# CONFIG_ISDN_DRV_SC is not set
# CONFIG_ISDN_DRV_ACT2000 is not set
#
# Siemens Gigaset
#CONFIG_ISDN_DRV_GIGASET=mCONFIG_GIGASET_BASE=mCONFIG_GIGASET_M105=m
# CONFIG_GIGASET_M101 is not set
# CONFIG_GIGASET_DEBUG is not set
# CONFIG_GIGASET_UNDOCREQ is not set
#
# CAPI subsystem
#CONFIG_ISDN_CAPI=mCONFIG_ISDN_DRV_AVMB1_VERBOSE_REASON=yCONFIG_ISDN_CAPI_MIDDLEWARE=yCONFIG_ISDN_CAPI_CAPI20=mCONFIG_ISDN_CAPI_CAPIFS_BOOL=yCONFIG_ISDN_CAPI_CAPIFS=mCONFIG_ISDN_CAPI_CAPIDRV=m
#
# CAPI hardware drivers
#
#
# Active AVM cards
#CONFIG_CAPI_AVM=y
# CONFIG_ISDN_DRV_AVMB1_B1ISA is not setCONFIG_ISDN_DRV_AVMB1_B1PCI=mCONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
# CONFIG_ISDN_DRV_AVMB1_T1ISA is not setCONFIG_ISDN_DRV_AVMB1_B1PCMCIA=mCONFIG_ISDN_DRV_AVMB1_AVM_CS=mCONFIG_ISDN_DRV_AVMB1_T1PCI=mCONFIG_ISDN_DRV_AVMB1_C4=m
#
# Active Eicon DIVA Server cards
#CONFIG_CAPI_EICON=yCONFIG_ISDN_DIVAS=mCONFIG_ISDN_DIVAS_BRIPCI=yCONFIG_ISDN_DIVAS_PRIPCI=yCONFIG_ISDN_DIVAS_DIVACAPI=mCONFIG_ISDN_DIVAS_USERIDI=mCONFIG_ISDN_DIVAS_MAINT=m
#
# Telephony Support
#
# CONFIG_PHONE is not set
#
# Input device support
#CONFIG_INPUT=yCONFIG_INPUT_FF_MEMLESS=y
#
# Userland interfaces
#CONFIG_INPUT_MOUSEDEV=y
# CONFIG_INPUT_MOUSEDEV_PSAUX is not setCONFIG_INPUT_MOUSEDEV_SCREEN_X=1024CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768CONFIG_INPUT_JOYDEV=m
# CONFIG_INPUT_TSDEV is not setCONFIG_INPUT_EVDEV=y
# CONFIG_INPUT_EVBUG is not set
#
# Input Device Drivers
#CONFIG_INPUT_KEYBOARD=yCONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_LKKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not setCONFIG_KEYBOARD_STOWAWAY=mCONFIG_INPUT_MOUSE=yCONFIG_MOUSE_PS2=yCONFIG_MOUSE_SERIAL=m
# CONFIG_MOUSE_INPORT is not set
# CONFIG_MOUSE_LOGIBM is not set
# CONFIG_MOUSE_PC110PAD is not setCONFIG_MOUSE_VSXXXAA=mCONFIG_INPUT_JOYSTICK=yCONFIG_JOYSTICK_ANALOG=mCONFIG_JOYSTICK_A3D=mCONFIG_JOYSTICK_ADI=mCONFIG_JOYSTICK_COBRA=mCONFIG_JOYSTICK_GF2K=mCONFIG_JOYSTICK_GRIP=mCONFIG_JOYSTICK_GRIP_MP=mCONFIG_JOYSTICK_GUILLEMOT=mCONFIG_JOYSTICK_INTERACT=mCONFIG_JOYSTICK_SIDEWINDER=mCONFIG_JOYSTICK_TMDC=mCONFIG_JOYSTICK_IFORCE=mCONFIG_JOYSTICK_IFORCE_USB=yCONFIG_JOYSTICK_IFORCE_232=yCONFIG_JOYSTICK_WARRIOR=mCONFIG_JOYSTICK_MAGELLAN=mCONFIG_JOYSTICK_SPACEORB=mCONFIG_JOYSTICK_SPACEBALL=mCONFIG_JOYSTICK_STINGER=mCONFIG_JOYSTICK_TWIDJOY=mCONFIG_JOYSTICK_DB9=mCONFIG_JOYSTICK_GAMECON=mCONFIG_JOYSTICK_TURBOGRAFX=mCONFIG_JOYSTICK_JOYDUMP=mCONFIG_INPUT_TOUCHSCREEN=yCONFIG_TOUCHSCREEN_GUNZE=mCONFIG_TOUCHSCREEN_ELO=mCONFIG_TOUCHSCREEN_MTOUCH=mCONFIG_TOUCHSCREEN_MK712=mCONFIG_TOUCHSCREEN_PENMOUNT=mCONFIG_TOUCHSCREEN_TOUCHRIGHT=mCONFIG_TOUCHSCREEN_TOUCHWIN=mCONFIG_TOUCHSCREEN_UCB1400=mCONFIG_INPUT_MISC=yCONFIG_INPUT_PCSPKR=mCONFIG_INPUT_WISTRON_BTNS=m
# CONFIG_INPUT_ATLAS_BTNS is not setCONFIG_INPUT_UINPUT=m
#
# Hardware I/O ports
#CONFIG_SERIO=yCONFIG_SERIO_I8042=yCONFIG_SERIO_SERPORT=y
# CONFIG_SERIO_CT82C710 is not set
# CONFIG_SERIO_PARKBD is not set
# CONFIG_SERIO_PCIPS2 is not setCONFIG_SERIO_LIBPS2=yCONFIG_SERIO_RAW=mCONFIG_GAMEPORT=mCONFIG_GAMEPORT_NS558=mCONFIG_GAMEPORT_L4=mCONFIG_GAMEPORT_EMU10K1=mCONFIG_GAMEPORT_FM801=m
#
# Character devices
#CONFIG_VT=yCONFIG_VT_CONSOLE=yCONFIG_HW_CONSOLE=yCONFIG_VT_HW_CONSOLE_BINDING=yCONFIG_SERIAL_NONSTANDARD=y
# CONFIG_COMPUTONE is not set
# CONFIG_ROCKETPORT is not setCONFIG_CYCLADES=m
# CONFIG_CYZ_INTR is not set
# CONFIG_DIGIEPCA is not set
# CONFIG_ESPSERIAL is not set
# CONFIG_MOXA_INTELLIO is not set
# CONFIG_MOXA_SMARTIO is not setCONFIG_MOXA_SMARTIO_NEW=m
# CONFIG_ISI is not setCONFIG_SYNCLINK=mCONFIG_SYNCLINKMP=mCONFIG_SYNCLINK_GT=mCONFIG_N_HDLC=m
# CONFIG_SPECIALIX is not set
# CONFIG_SX is not set
# CONFIG_RIO is not set
# CONFIG_STALDRV is not set
#
# Serial drivers
#CONFIG_SERIAL_8250=yCONFIG_SERIAL_8250_CONSOLE=yCONFIG_SERIAL_8250_PCI=yCONFIG_SERIAL_8250_PNP=yCONFIG_SERIAL_8250_CS=mCONFIG_SERIAL_8250_NR_UARTS=32CONFIG_SERIAL_8250_RUNTIME_UARTS=4CONFIG_SERIAL_8250_EXTENDED=yCONFIG_SERIAL_8250_MANY_PORTS=y
# CONFIG_SERIAL_8250_FOURPORT is not set
# CONFIG_SERIAL_8250_ACCENT is not set
# CONFIG_SERIAL_8250_BOCA is not setCONFIG_SERIAL_8250_EXAR_ST16C554=m
# CONFIG_SERIAL_8250_HUB6 is not setCONFIG_SERIAL_8250_SHARE_IRQ=yCONFIG_SERIAL_8250_DETECT_IRQ=yCONFIG_SERIAL_8250_RSA=y
#
# Non-8250 serial port support
#CONFIG_SERIAL_CORE=yCONFIG_SERIAL_CORE_CONSOLE=yCONFIG_SERIAL_JSM=mCONFIG_UNIX98_PTYS=y
# CONFIG_LEGACY_PTYS is not setCONFIG_PRINTER=mCONFIG_LP_CONSOLE=yCONFIG_PPDEV=mCONFIG_TIPAR=m
#
# IPMI
#CONFIG_IPMI_HANDLER=m
# CONFIG_IPMI_PANIC_EVENT is not setCONFIG_IPMI_DEVICE_INTERFACE=mCONFIG_IPMI_SI=mCONFIG_IPMI_WATCHDOG=mCONFIG_IPMI_POWEROFF=m
#
# Watchdog Cards
#CONFIG_WATCHDOG=y
# CONFIG_WATCHDOG_NOWAYOUT is not set
#
# Watchdog Device Drivers
#CONFIG_SOFT_WATCHDOG=m
# CONFIG_ACQUIRE_WDT is not set
# CONFIG_ADVANTECH_WDT is not setCONFIG_ALIM1535_WDT=mCONFIG_ALIM7101_WDT=m
# CONFIG_SC520_WDT is not set
# CONFIG_EUROTECH_WDT is not set
# CONFIG_IB700_WDT is not setCONFIG_IBMASR=m
# CONFIG_WAFER_WDT is not setCONFIG_I6300ESB_WDT=mCONFIG_I8XX_TCO=mCONFIG_ITCO_WDT=mCONFIG_ITCO_VENDOR_SUPPORT=y
# CONFIG_SC1200_WDT is not setCONFIG_PC87413_WDT=m
# CONFIG_60XX_WDT is not set
# CONFIG_SBC8360_WDT is not set
# CONFIG_CPU5_WDT is not set
# CONFIG_SMSC37B787_WDT is not setCONFIG_W83627HF_WDT=mCONFIG_W83697HF_WDT=mCONFIG_W83877F_WDT=mCONFIG_W83977F_WDT=mCONFIG_MACHZ_WDT=m
# CONFIG_SBC_EPX_C3_WATCHDOG is not set
#
# ISA-based Watchdog Cards
#
# CONFIG_PCWATCHDOG is not set
# CONFIG_MIXCOMWD is not set
# CONFIG_WDT is not set
#
# PCI-based Watchdog Cards
#CONFIG_PCIPCWATCHDOG=mCONFIG_WDTPCI=mCONFIG_WDT_501_PCI=y
#
# USB-based Watchdog Cards
#CONFIG_USBPCWATCHDOG=mCONFIG_HW_RANDOM=yCONFIG_HW_RANDOM_INTEL=mCONFIG_HW_RANDOM_AMD=mCONFIG_HW_RANDOM_GEODE=mCONFIG_HW_RANDOM_VIA=mCONFIG_NVRAM=yCONFIG_RTC=yCONFIG_DTLK=mCONFIG_R3964=m
# CONFIG_APPLICOM is not setCONFIG_SONYPI=mCONFIG_AGP=yCONFIG_AGP_ALI=yCONFIG_AGP_ATI=yCONFIG_AGP_AMD=yCONFIG_AGP_AMD64=yCONFIG_AGP_INTEL=yCONFIG_AGP_NVIDIA=yCONFIG_AGP_SIS=yCONFIG_AGP_SWORKS=yCONFIG_AGP_VIA=yCONFIG_AGP_EFFICEON=yCONFIG_DRM=mCONFIG_DRM_TDFX=mCONFIG_DRM_R128=mCONFIG_DRM_RADEON=mCONFIG_DRM_I810=mCONFIG_DRM_I830=mCONFIG_DRM_I915=mCONFIG_DRM_MGA=mCONFIG_DRM_SIS=mCONFIG_DRM_VIA=mCONFIG_DRM_SAVAGE=m
#
# PCMCIA character devices
#
# CONFIG_SYNCLINK_CS is not setCONFIG_CARDMAN_4000=mCONFIG_CARDMAN_4040=mCONFIG_MWAVE=m
CONFIG_PC8736x_GPIO=mCONFIG_NSC_GPIO=mCONFIG_CS5535_GPIO=m
# CONFIG_RAW_DRIVER is not setCONFIG_HPET=y
# CONFIG_HPET_RTC_IRQ is not set
# CONFIG_HPET_MMAP is not setCONFIG_HANGCHECK_TIMER=m
#
# TPM devices
#CONFIG_TCG_TPM=mCONFIG_TCG_TIS=mCONFIG_TCG_NSC=mCONFIG_TCG_ATMEL=mCONFIG_TCG_INFINEON=m
# CONFIG_TELCLOCK is not set
#
# I2C support
#CONFIG_I2C=mCONFIG_I2C_CHARDEV=m
#
# I2C Algorithms
#CONFIG_I2C_ALGOBIT=mCONFIG_I2C_ALGOPCF=mCONFIG_I2C_ALGOPCA=m
#
# I2C Hardware Bus support
#CONFIG_I2C_ALI1535=mCONFIG_I2C_ALI1563=mCONFIG_I2C_ALI15X3=mCONFIG_I2C_AMD756=mCONFIG_I2C_AMD756_S4882=mCONFIG_I2C_AMD8111=mCONFIG_I2C_I801=mCONFIG_I2C_I810=mCONFIG_I2C_PIIX4=mCONFIG_I2C_ISA=mCONFIG_I2C_NFORCE2=m
# CONFIG_I2C_OCORES is not setCONFIG_I2C_PARPORT=mCONFIG_I2C_PARPORT_LIGHT=m
# CONFIG_I2C_PASEMI is not setCONFIG_I2C_PROSAVAGE=mCONFIG_I2C_SAVAGE4=m
# CONFIG_SCx200_ACB is not setCONFIG_I2C_SIS5595=mCONFIG_I2C_SIS630=mCONFIG_I2C_SIS96X=mCONFIG_I2C_STUB=mCONFIG_I2C_VIA=mCONFIG_I2C_VIAPRO=mCONFIG_I2C_VOODOO3=mCONFIG_I2C_PCA_ISA=m
#
# Miscellaneous I2C Chip support
#CONFIG_SENSORS_DS1337=mCONFIG_SENSORS_DS1374=mCONFIG_SENSORS_EEPROM=mCONFIG_SENSORS_PCF8574=mCONFIG_SENSORS_PCA9539=mCONFIG_SENSORS_PCF8591=mCONFIG_SENSORS_MAX6875=m
# CONFIG_I2C_DEBUG_CORE is not set
# CONFIG_I2C_DEBUG_ALGO is not set
# CONFIG_I2C_DEBUG_BUS is not set
# CONFIG_I2C_DEBUG_CHIP is not set
#
# SPI support
#
# CONFIG_SPI is not set
# CONFIG_SPI_MASTER is not set
#
# Dallas's 1-wire bus
#CONFIG_W1=mCONFIG_W1_CON=y
#
# 1-wire Bus Masters
#CONFIG_W1_MASTER_MATROX=mCONFIG_W1_MASTER_DS2490=mCONFIG_W1_MASTER_DS2482=m
#
# 1-wire Slaves
#CONFIG_W1_SLAVE_THERM=mCONFIG_W1_SLAVE_SMEM=mCONFIG_W1_SLAVE_DS2433=mCONFIG_W1_SLAVE_DS2433_CRC=y
#
# Hardware Monitoring support
#CONFIG_HWMON=mCONFIG_HWMON_VID=mCONFIG_SENSORS_ABITUGURU=mCONFIG_SENSORS_ADM1021=mCONFIG_SENSORS_ADM1025=mCONFIG_SENSORS_ADM1026=m
# CONFIG_SENSORS_ADM1029 is not setCONFIG_SENSORS_ADM1031=mCONFIG_SENSORS_ADM9240=mCONFIG_SENSORS_K8TEMP=mCONFIG_SENSORS_ASB100=mCONFIG_SENSORS_ATXP1=mCONFIG_SENSORS_DS1621=mCONFIG_SENSORS_F71805F=mCONFIG_SENSORS_FSCHER=mCONFIG_SENSORS_FSCPOS=mCONFIG_SENSORS_GL518SM=mCONFIG_SENSORS_GL520SM=mCONFIG_SENSORS_IT87=mCONFIG_SENSORS_LM63=mCONFIG_SENSORS_LM75=mCONFIG_SENSORS_LM77=mCONFIG_SENSORS_LM78=mCONFIG_SENSORS_LM80=mCONFIG_SENSORS_LM83=mCONFIG_SENSORS_LM85=mCONFIG_SENSORS_LM87=mCONFIG_SENSORS_LM90=mCONFIG_SENSORS_LM92=mCONFIG_SENSORS_MAX1619=mCONFIG_SENSORS_PC87360=mCONFIG_SENSORS_PC87427=mCONFIG_SENSORS_SIS5595=mCONFIG_SENSORS_SMSC47M1=mCONFIG_SENSORS_SMSC47M192=mCONFIG_SENSORS_SMSC47B397=mCONFIG_SENSORS_VIA686A=mCONFIG_SENSORS_VT1211=mCONFIG_SENSORS_VT8231=mCONFIG_SENSORS_W83781D=mCONFIG_SENSORS_W83791D=mCONFIG_SENSORS_W83792D=mCONFIG_SENSORS_W83793=mCONFIG_SENSORS_W83L785TS=mCONFIG_SENSORS_W83627HF=mCONFIG_SENSORS_W83627EHF=mCONFIG_SENSORS_HDAPS=m
# CONFIG_HWMON_DEBUG_CHIP is not set
#
# Multifunction device drivers
#
# CONFIG_MFD_SM501 is not set
#
# Multimedia devices
#CONFIG_VIDEO_DEV=mCONFIG_VIDEO_V4L1=yCONFIG_VIDEO_V4L1_COMPAT=yCONFIG_VIDEO_V4L2=y
#
# Video Capture Adapters
#
#
# Video Capture Adapters
#
# CONFIG_VIDEO_ADV_DEBUG is not setCONFIG_VIDEO_HELPER_CHIPS_AUTO=yCONFIG_VIDEO_TVAUDIO=mCONFIG_VIDEO_TDA7432=mCONFIG_VIDEO_TDA9840=mCONFIG_VIDEO_TDA9875=mCONFIG_VIDEO_TEA6415C=mCONFIG_VIDEO_TEA6420=mCONFIG_VIDEO_MSP3400=mCONFIG_VIDEO_WM8775=mCONFIG_VIDEO_BT819=mCONFIG_VIDEO_BT856=mCONFIG_VIDEO_KS0127=mCONFIG_VIDEO_OV7670=mCONFIG_VIDEO_SAA7110=mCONFIG_VIDEO_SAA7111=mCONFIG_VIDEO_SAA7114=mCONFIG_VIDEO_SAA711X=mCONFIG_VIDEO_TVP5150=mCONFIG_VIDEO_VPX3220=mCONFIG_VIDEO_CX25840=mCONFIG_VIDEO_CX2341X=mCONFIG_VIDEO_SAA7185=mCONFIG_VIDEO_ADV7170=mCONFIG_VIDEO_ADV7175=m
# CONFIG_VIDEO_VIVI is not setCONFIG_VIDEO_BT848=mCONFIG_VIDEO_BT848_DVB=yCONFIG_VIDEO_SAA6588=m
# CONFIG_VIDEO_PMS is not setCONFIG_VIDEO_BWQCAM=mCONFIG_VIDEO_CQCAM=mCONFIG_VIDEO_W9966=mCONFIG_VIDEO_CPIA=mCONFIG_VIDEO_CPIA_PP=mCONFIG_VIDEO_CPIA_USB=mCONFIG_VIDEO_CPIA2=mCONFIG_VIDEO_SAA5246A=mCONFIG_VIDEO_SAA5249=mCONFIG_TUNER_3036=mCONFIG_VIDEO_STRADIS=mCONFIG_VIDEO_ZORAN_ZR36060=mCONFIG_VIDEO_ZORAN=mCONFIG_VIDEO_ZORAN_BUZ=mCONFIG_VIDEO_ZORAN_DC10=mCONFIG_VIDEO_ZORAN_DC30=mCONFIG_VIDEO_ZORAN_LML33=mCONFIG_VIDEO_ZORAN_LML33R10=mCONFIG_VIDEO_ZORAN_AVS6EYES=mCONFIG_VIDEO_MEYE=mCONFIG_VIDEO_SAA7134=mCONFIG_VIDEO_SAA7134_ALSA=mCONFIG_VIDEO_SAA7134_DVB=mCONFIG_VIDEO_MXB=mCONFIG_VIDEO_DPC=mCONFIG_VIDEO_HEXIUM_ORION=mCONFIG_VIDEO_HEXIUM_GEMINI=mCONFIG_VIDEO_CX88=mCONFIG_VIDEO_CX88_ALSA=mCONFIG_VIDEO_CX88_BLACKBIRD=mCONFIG_VIDEO_CX88_DVB=mCONFIG_VIDEO_CX88_VP3054=mCONFIG_VIDEO_CAFE_CCIC=m
#
# V4L USB devices
#CONFIG_VIDEO_PVRUSB2=m
# CONFIG_VIDEO_PVRUSB2_29XXX is not setCONFIG_VIDEO_PVRUSB2_24XXX=yCONFIG_VIDEO_PVRUSB2_SYSFS=y
# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not setCONFIG_VIDEO_EM28XX=mCONFIG_VIDEO_USBVISION=mCONFIG_VIDEO_USBVIDEO=mCONFIG_USB_VICAM=mCONFIG_USB_IBMCAM=mCONFIG_USB_KONICAWC=mCONFIG_USB_QUICKCAM_MESSENGER=mCONFIG_USB_ET61X251=mCONFIG_VIDEO_OVCAMCHIP=mCONFIG_USB_W9968CF=mCONFIG_USB_OV511=mCONFIG_USB_SE401=mCONFIG_USB_SN9C102=mCONFIG_USB_STV680=mCONFIG_USB_ZC0301=mCONFIG_USB_PWC=m
# CONFIG_USB_PWC_DEBUG is not set
#
# Radio Adapters
#
# CONFIG_RADIO_CADET is not set
# CONFIG_RADIO_RTRACK is not set
# CONFIG_RADIO_RTRACK2 is not set
# CONFIG_RADIO_AZTECH is not set
# CONFIG_RADIO_GEMTEK is not setCONFIG_RADIO_GEMTEK_PCI=mCONFIG_RADIO_MAXIRADIO=mCONFIG_RADIO_MAESTRO=m
# CONFIG_RADIO_SF16FMI is not set
# CONFIG_RADIO_SF16FMR2 is not set
# CONFIG_RADIO_TERRATEC is not set
# CONFIG_RADIO_TRUST is not set
# CONFIG_RADIO_TYPHOON is not set
# CONFIG_RADIO_ZOLTRIX is not setCONFIG_USB_DSBR=m
#
# Digital Video Broadcasting Devices
#CONFIG_DVB=yCONFIG_DVB_CORE=m
# CONFIG_DVB_CORE_ATTACH is not set
#
# Supported SAA7146 based PCI Adapters
#CONFIG_DVB_AV7110=mCONFIG_DVB_AV7110_OSD=yCONFIG_DVB_BUDGET=mCONFIG_DVB_BUDGET_CI=mCONFIG_DVB_BUDGET_AV=mCONFIG_DVB_BUDGET_PATCH=m
#
# Supported USB Adapters
#CONFIG_DVB_USB=m
# CONFIG_DVB_USB_DEBUG is not setCONFIG_DVB_USB_A800=mCONFIG_DVB_USB_DIBUSB_MB=m
# CONFIG_DVB_USB_DIBUSB_MB_FAULTY is not setCONFIG_DVB_USB_DIBUSB_MC=mCONFIG_DVB_USB_DIB0700=mCONFIG_DVB_USB_UMT_010=mCONFIG_DVB_USB_CXUSB=m
# CONFIG_DVB_USB_M920X is not set
# CONFIG_DVB_USB_GL861 is not set
# CONFIG_DVB_USB_AU6610 is not setCONFIG_DVB_USB_DIGITV=mCONFIG_DVB_USB_VP7045=mCONFIG_DVB_USB_VP702X=mCONFIG_DVB_USB_GP8PSK=mCONFIG_DVB_USB_NOVA_T_USB2=mCONFIG_DVB_USB_TTUSB2=mCONFIG_DVB_USB_DTT200U=mCONFIG_DVB_TTUSB_BUDGET=mCONFIG_DVB_TTUSB_DEC=mCONFIG_DVB_CINERGYT2=mCONFIG_DVB_CINERGYT2_TUNING=yCONFIG_DVB_CINERGYT2_STREAM_URB_COUNT=32CONFIG_DVB_CINERGYT2_STREAM_BUF_SIZE=512CONFIG_DVB_CINERGYT2_QUERY_INTERVAL=250CONFIG_DVB_CINERGYT2_ENABLE_RC_INPUT_DEVICE=yCONFIG_DVB_CINERGYT2_RC_QUERY_INTERVAL=100
#
# Supported FlexCopII (B2C2) Adapters
#CONFIG_DVB_B2C2_FLEXCOP=mCONFIG_DVB_B2C2_FLEXCOP_PCI=mCONFIG_DVB_B2C2_FLEXCOP_USB=m
# CONFIG_DVB_B2C2_FLEXCOP_DEBUG is not set
#
# Supported BT878 Adapters
#CONFIG_DVB_BT8XX=m
#
# Supported Pluto2 Adapters
#CONFIG_DVB_PLUTO2=m
#
# Supported DVB Frontends
#
#
# Customise DVB Frontends
#
# CONFIG_DVB_FE_CUSTOMISE is not set
#
# DVB-S (satellite) frontends
#CONFIG_DVB_STV0299=mCONFIG_DVB_CX24110=mCONFIG_DVB_CX24123=mCONFIG_DVB_TDA8083=mCONFIG_DVB_MT312=mCONFIG_DVB_VES1X93=mCONFIG_DVB_S5H1420=mCONFIG_DVB_TDA10086=m
#
# DVB-T (terrestrial) frontends
#CONFIG_DVB_SP8870=mCONFIG_DVB_SP887X=mCONFIG_DVB_CX22700=mCONFIG_DVB_CX22702=mCONFIG_DVB_L64781=mCONFIG_DVB_TDA1004X=mCONFIG_DVB_NXT6000=mCONFIG_DVB_MT352=mCONFIG_DVB_ZL10353=mCONFIG_DVB_DIB3000MB=mCONFIG_DVB_DIB3000MC=mCONFIG_DVB_DIB7000M=mCONFIG_DVB_DIB7000P=m
#
# DVB-C (cable) frontends
#CONFIG_DVB_VES1820=mCONFIG_DVB_TDA10021=mCONFIG_DVB_STV0297=m
#
# ATSC (North American/Korean Terrestrial/Cable DTV) frontends #CONFIG_DVB_NXT200X=mCONFIG_DVB_OR51211=mCONFIG_DVB_OR51132=mCONFIG_DVB_BCM3510=mCONFIG_DVB_LGDT330X=m
#
# Tuners/PLL support
#CONFIG_DVB_PLL=mCONFIG_DVB_TDA826X=m
# CONFIG_DVB_TUNER_QT1010 is not setCONFIG_DVB_TUNER_MT2060=mCONFIG_DVB_TUNER_LGH06XF=m
#
# Miscellaneous devices
#CONFIG_DVB_LNBP21=mCONFIG_DVB_ISL6421=mCONFIG_DVB_TUA6100=mCONFIG_VIDEO_SAA7146=mCONFIG_VIDEO_SAA7146_VV=mCONFIG_VIDEO_TUNER=mCONFIG_VIDEO_BUF=mCONFIG_VIDEO_BUF_DVB=mCONFIG_VIDEO_BTCX=mCONFIG_VIDEO_IR=mCONFIG_VIDEO_TVEEPROM=mCONFIG_USB_DABUSB=m
#
# Graphics support
#CONFIG_BACKLIGHT_LCD_SUPPORT=yCONFIG_BACKLIGHT_CLASS_DEVICE=yCONFIG_LCD_CLASS_DEVICE=m
# CONFIG_BACKLIGHT_PROGEAR is not setCONFIG_FB=y
# CONFIG_FIRMWARE_EDID is not setCONFIG_FB_DDC=mCONFIG_FB_CFB_FILLRECT=yCONFIG_FB_CFB_COPYAREA=yCONFIG_FB_CFB_IMAGEBLIT=y
# CONFIG_FB_SVGALIB is not set
# CONFIG_FB_MACMODES is not setCONFIG_FB_BACKLIGHT=yCONFIG_FB_MODE_HELPERS=yCONFIG_FB_TILEBLITTING=y
#
# Frambuffer hardware drivers
#CONFIG_FB_CIRRUS=m
# CONFIG_FB_PM2 is not set
# CONFIG_FB_CYBER2000 is not set
# CONFIG_FB_ARC is not set
# CONFIG_FB_ASILIANT is not set
# CONFIG_FB_IMSTT is not setCONFIG_FB_VGA16=mCONFIG_FB_VESA=y
# CONFIG_FB_IMAC is not set
# CONFIG_FB_HGA is not set
# CONFIG_FB_S1D13XXX is not setCONFIG_FB_NVIDIA=mCONFIG_FB_NVIDIA_I2C=yCONFIG_FB_NVIDIA_BACKLIGHT=yCONFIG_FB_RIVA=m
# CONFIG_FB_RIVA_I2C is not set
# CONFIG_FB_RIVA_DEBUG is not setCONFIG_FB_RIVA_BACKLIGHT=yCONFIG_FB_I810=mCONFIG_FB_I810_GTF=yCONFIG_FB_I810_I2C=yCONFIG_FB_INTEL=m
# CONFIG_FB_INTEL_DEBUG is not setCONFIG_FB_INTEL_I2C=yCONFIG_FB_MATROX=mCONFIG_FB_MATROX_MILLENIUM=yCONFIG_FB_MATROX_MYSTIQUE=yCONFIG_FB_MATROX_G=yCONFIG_FB_MATROX_I2C=mCONFIG_FB_MATROX_MAVEN=mCONFIG_FB_MATROX_MULTIHEAD=yCONFIG_FB_RADEON=mCONFIG_FB_RADEON_I2C=yCONFIG_FB_RADEON_BACKLIGHT=y
# CONFIG_FB_RADEON_DEBUG is not setCONFIG_FB_ATY128=mCONFIG_FB_ATY128_BACKLIGHT=yCONFIG_FB_ATY=mCONFIG_FB_ATY_CT=yCONFIG_FB_ATY_GENERIC_LCD=yCONFIG_FB_ATY_GX=yCONFIG_FB_ATY_BACKLIGHT=y
# CONFIG_FB_S3 is not setCONFIG_FB_SAVAGE=mCONFIG_FB_SAVAGE_I2C=yCONFIG_FB_SAVAGE_ACCEL=y
# CONFIG_FB_SIS is not setCONFIG_FB_NEOMAGIC=mCONFIG_FB_KYRO=mCONFIG_FB_3DFX=mCONFIG_FB_3DFX_ACCEL=yCONFIG_FB_VOODOO1=mCONFIG_FB_CYBLA=mCONFIG_FB_TRIDENT=mCONFIG_FB_TRIDENT_ACCEL=y
# CONFIG_FB_GEODE is not set
# CONFIG_FB_VIRTUAL is not set
#
# Console display driver support
#CONFIG_VGA_CONSOLE=yCONFIG_VGACON_SOFT_SCROLLBACK=yCONFIG_VGACON_SOFT_SCROLLBACK_SIZE=64CONFIG_VIDEO_SELECT=y
# CONFIG_MDA_CONSOLE is not setCONFIG_DUMMY_CONSOLE=yCONFIG_FRAMEBUFFER_CONSOLE=yCONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y
# CONFIG_FONTS is not set
CONFIG_FONT_8x8=y
CONFIG_FONT_8x16=y
#
# Logo configuration
#CONFIG_LOGO=y
# CONFIG_LOGO_LINUX_MONO is not set
# CONFIG_LOGO_LINUX_VGA16 is not setCONFIG_LOGO_LINUX_CLUT224=y
#
# Sound
#CONFIG_SOUND=m
#
# Advanced Linux Sound Architecture
#CONFIG_SND=mCONFIG_SND_TIMER=mCONFIG_SND_PCM=mCONFIG_SND_HWDEP=mCONFIG_SND_RAWMIDI=mCONFIG_SND_SEQUENCER=mCONFIG_SND_SEQ_DUMMY=mCONFIG_SND_OSSEMUL=yCONFIG_SND_MIXER_OSS=mCONFIG_SND_PCM_OSS=mCONFIG_SND_PCM_OSS_PLUGINS=yCONFIG_SND_SEQUENCER_OSS=yCONFIG_SND_RTCTIMER=mCONFIG_SND_SEQ_RTCTIMER_DEFAULT=yCONFIG_SND_DYNAMIC_MINORS=y
# CONFIG_SND_SUPPORT_OLD_API is not setCONFIG_SND_VERBOSE_PROCFS=y
# CONFIG_SND_VERBOSE_PRINTK is not set
# CONFIG_SND_DEBUG is not set
#
# Generic devices
#CONFIG_SND_MPU401_UART=mCONFIG_SND_OPL3_LIB=mCONFIG_SND_OPL4_LIB=mCONFIG_SND_VX_LIB=mCONFIG_SND_AC97_CODEC=mCONFIG_SND_DUMMY=mCONFIG_SND_VIRMIDI=mCONFIG_SND_MTPAV=mCONFIG_SND_MTS64=m
# CONFIG_SND_SERIAL_U16550 is not setCONFIG_SND_MPU401=m
# CONFIG_SND_PORTMAN2X4 is not set
#
# ISA devices
#CONFIG_SND_CS4231_LIB=mCONFIG_SND_ADLIB=m
# CONFIG_SND_AD1816A is not set
# CONFIG_SND_AD1848 is not set
# CONFIG_SND_ALS100 is not set
# CONFIG_SND_AZT2320 is not set
# CONFIG_SND_CMI8330 is not set
# CONFIG_SND_CS4231 is not set
# CONFIG_SND_CS4232 is not setCONFIG_SND_CS4236=m
# CONFIG_SND_DT019X is not set
# CONFIG_SND_ES968 is not set
# CONFIG_SND_ES1688 is not setCONFIG_SND_ES18XX=m
# CONFIG_SND_GUSCLASSIC is not set
# CONFIG_SND_GUSEXTREME is not set
# CONFIG_SND_GUSMAX is not set
# CONFIG_SND_INTERWAVE is not set
# CONFIG_SND_INTERWAVE_STB is not setCONFIG_SND_OPL3SA2=m
# CONFIG_SND_OPTI92X_AD1848 is not set
# CONFIG_SND_OPTI92X_CS4231 is not set
# CONFIG_SND_OPTI93X is not setCONFIG_SND_MIRO=m
# CONFIG_SND_SB8 is not setCONFIG_SND_SB16=mCONFIG_SND_SBAWE=m
# CONFIG_SND_SB16_CSP is not set
# CONFIG_SND_SGALAXY is not set
# CONFIG_SND_SSCAPE is not set
# CONFIG_SND_WAVEFRONT is not set
#
# PCI devices
#CONFIG_SND_AD1889=mCONFIG_SND_ALS300=mCONFIG_SND_ALS4000=mCONFIG_SND_ALI5451=mCONFIG_SND_ATIIXP=mCONFIG_SND_ATIIXP_MODEM=mCONFIG_SND_AU8810=mCONFIG_SND_AU8820=mCONFIG_SND_AU8830=mCONFIG_SND_AZT3328=mCONFIG_SND_BT87X=m
# CONFIG_SND_BT87X_OVERCLOCK is not setCONFIG_SND_CA0106=mCONFIG_SND_CMIPCI=mCONFIG_SND_CS4281=mCONFIG_SND_CS46XX=mCONFIG_SND_CS46XX_NEW_DSP=yCONFIG_SND_CS5535AUDIO=mCONFIG_SND_DARLA20=mCONFIG_SND_GINA20=mCONFIG_SND_LAYLA20=mCONFIG_SND_DARLA24=mCONFIG_SND_GINA24=mCONFIG_SND_LAYLA24=mCONFIG_SND_MONA=mCONFIG_SND_MIA=mCONFIG_SND_ECHO3G=mCONFIG_SND_INDIGO=mCONFIG_SND_INDIGOIO=mCONFIG_SND_INDIGODJ=mCONFIG_SND_EMU10K1=mCONFIG_SND_EMU10K1X=mCONFIG_SND_ENS1370=mCONFIG_SND_ENS1371=mCONFIG_SND_ES1938=mCONFIG_SND_ES1968=mCONFIG_SND_FM801=mCONFIG_SND_FM801_TEA575X_BOOL=yCONFIG_SND_FM801_TEA575X=mCONFIG_SND_HDA_INTEL=mCONFIG_SND_HDSP=mCONFIG_SND_HDSPM=mCONFIG_SND_ICE1712=mCONFIG_SND_ICE1724=mCONFIG_SND_INTEL8X0=mCONFIG_SND_INTEL8X0M=mCONFIG_SND_KORG1212=mCONFIG_SND_MAESTRO3=mCONFIG_SND_MIXART=mCONFIG_SND_NM256=mCONFIG_SND_PCXHR=mCONFIG_SND_RIPTIDE=mCONFIG_SND_RME32=mCONFIG_SND_RME96=mCONFIG_SND_RME9652=mCONFIG_SND_SONICVIBES=mCONFIG_SND_TRIDENT=mCONFIG_SND_VIA82XX=mCONFIG_SND_VIA82XX_MODEM=mCONFIG_SND_VX222=mCONFIG_SND_YMFPCI=mCONFIG_SND_AC97_POWER_SAVE=y
#
# USB devices
#CONFIG_SND_USB_AUDIO=mCONFIG_SND_USB_USX2Y=m
#
# PCMCIA devices
#
# CONFIG_SND_VXPOCKET is not set
# CONFIG_SND_PDAUDIOCF is not set
#
# SoC audio support
#
# CONFIG_SND_SOC is not set
#
# Open Sound System
#
# CONFIG_SOUND_PRIME is not setCONFIG_AC97_BUS=m
#
# HID Devices
#CONFIG_HID=m
# CONFIG_HID_DEBUG is not set
#
# USB support
#CONFIG_USB_ARCH_HAS_HCD=yCONFIG_USB_ARCH_HAS_OHCI=yCONFIG_USB_ARCH_HAS_EHCI=yCONFIG_USB=y
# CONFIG_USB_DEBUG is not set
#
# Miscellaneous USB options
#CONFIG_USB_DEVICEFS=y
# CONFIG_USB_DYNAMIC_MINORS is not set
# CONFIG_USB_SUSPEND is not set
# CONFIG_USB_OTG is not set
#
# USB Host Controller Drivers
#CONFIG_USB_EHCI_HCD=mCONFIG_USB_EHCI_SPLIT_ISO=yCONFIG_USB_EHCI_ROOT_HUB_TT=yCONFIG_USB_EHCI_TT_NEWSCHED=y
# CONFIG_USB_EHCI_BIG_ENDIAN_MMIO is not setCONFIG_USB_ISP116X_HCD=mCONFIG_USB_OHCI_HCD=m
# CONFIG_USB_OHCI_BIG_ENDIAN_DESC is not set
# CONFIG_USB_OHCI_BIG_ENDIAN_MMIO is not setCONFIG_USB_OHCI_LITTLE_ENDIAN=yCONFIG_USB_UHCI_HCD=mCONFIG_USB_U132_HCD=mCONFIG_USB_SL811_HCD=mCONFIG_USB_SL811_CS=m
#
# USB Device Class drivers
#CONFIG_USB_ACM=mCONFIG_USB_PRINTER=m
#
# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' #
#
# may also be needed; see USB_STORAGE Help for more information # CONFIG_USB_STORAGE=m # CONFIG_USB_STORAGE_DEBUG is not set CONFIG_USB_STORAGE_DATAFAB=y CONFIG_USB_STORAGE_FREECOM=y CONFIG_USB_STORAGE_ISD200=y CONFIG_USB_STORAGE_DPCM=y CONFIG_USB_STORAGE_USBAT=y CONFIG_USB_STORAGE_SDDR09=y CONFIG_USB_STORAGE_SDDR55=y CONFIG_USB_STORAGE_JUMPSHOT=y CONFIG_USB_STORAGE_ALAUDA=y CONFIG_USB_STORAGE_KARMA=y CONFIG_USB_LIBUSUAL=y
#
# USB Input Devices
#CONFIG_USB_HID=m
# CONFIG_USB_HIDINPUT_POWERBOOK is not setCONFIG_HID_FF=yCONFIG_HID_PID=yCONFIG_LOGITECH_FF=y
# CONFIG_PANTHERLORD_FF is not setCONFIG_THRUSTMASTER_FF=yCONFIG_ZEROPLUS_FF=yCONFIG_USB_HIDDEV=y
#
# USB HID Boot Protocol drivers
#CONFIG_USB_KBD=mCONFIG_USB_MOUSE=mCONFIG_USB_AIPTEK=mCONFIG_USB_WACOM=mCONFIG_USB_ACECAD=mCONFIG_USB_KBTAB=mCONFIG_USB_POWERMATE=mCONFIG_USB_TOUCHSCREEN=mCONFIG_USB_TOUCHSCREEN_EGALAX=yCONFIG_USB_TOUCHSCREEN_PANJIT=yCONFIG_USB_TOUCHSCREEN_3M=yCONFIG_USB_TOUCHSCREEN_ITM=yCONFIG_USB_TOUCHSCREEN_ETURBO=yCONFIG_USB_TOUCHSCREEN_GUNZE=yCONFIG_USB_TOUCHSCREEN_DMC_TSC10=y
# CONFIG_USB_YEALINK is not setCONFIG_USB_XPAD=mCONFIG_USB_ATI_REMOTE=mCONFIG_USB_ATI_REMOTE2=mCONFIG_USB_KEYSPAN_REMOTE=mCONFIG_USB_APPLETOUCH=m
# CONFIG_USB_GTCO is not set
#
# USB Imaging devices
#CONFIG_USB_MDC800=mCONFIG_USB_MICROTEK=m
#
# USB Network Adapters
#CONFIG_USB_CATC=mCONFIG_USB_KAWETH=mCONFIG_USB_PEGASUS=mCONFIG_USB_RTL8150=mCONFIG_USB_USBNET_MII=mCONFIG_USB_USBNET=mCONFIG_USB_NET_AX8817X=mCONFIG_USB_NET_CDCETHER=m
# CONFIG_USB_NET_DM9601 is not setCONFIG_USB_NET_GL620A=mCONFIG_USB_NET_NET1080=mCONFIG_USB_NET_PLUSB=mCONFIG_USB_NET_MCS7830=mCONFIG_USB_NET_RNDIS_HOST=mCONFIG_USB_NET_CDC_SUBSET=mCONFIG_USB_ALI_M5632=yCONFIG_USB_AN2720=yCONFIG_USB_BELKIN=yCONFIG_USB_ARMLINUX=yCONFIG_USB_EPSON2888=y
# CONFIG_USB_KC2190 is not setCONFIG_USB_NET_ZAURUS=mCONFIG_USB_MON=y
#
# USB port drivers
#CONFIG_USB_USS720=m
#
# USB Serial Converter support
#CONFIG_USB_SERIAL=mCONFIG_USB_SERIAL_GENERIC=yCONFIG_USB_SERIAL_AIRCABLE=mCONFIG_USB_SERIAL_AIRPRIME=mCONFIG_USB_SERIAL_ARK3116=mCONFIG_USB_SERIAL_BELKIN=mCONFIG_USB_SERIAL_WHITEHEAT=mCONFIG_USB_SERIAL_DIGI_ACCELEPORT=mCONFIG_USB_SERIAL_CP2101=mCONFIG_USB_SERIAL_CYPRESS_M8=mCONFIG_USB_SERIAL_EMPEG=mCONFIG_USB_SERIAL_FTDI_SIO=mCONFIG_USB_SERIAL_FUNSOFT=mCONFIG_USB_SERIAL_VISOR=mCONFIG_USB_SERIAL_IPAQ=mCONFIG_USB_SERIAL_IR=mCONFIG_USB_SERIAL_EDGEPORT=mCONFIG_USB_SERIAL_EDGEPORT_TI=mCONFIG_USB_SERIAL_GARMIN=mCONFIG_USB_SERIAL_IPW=mCONFIG_USB_SERIAL_KEYSPAN_PDA=mCONFIG_USB_SERIAL_KEYSPAN=mCONFIG_USB_SERIAL_KEYSPAN_MPR=yCONFIG_USB_SERIAL_KEYSPAN_USA28=yCONFIG_USB_SERIAL_KEYSPAN_USA28X=yCONFIG_USB_SERIAL_KEYSPAN_USA28XA=yCONFIG_USB_SERIAL_KEYSPAN_USA28XB=yCONFIG_USB_SERIAL_KEYSPAN_USA19=yCONFIG_USB_SERIAL_KEYSPAN_USA18X=yCONFIG_USB_SERIAL_KEYSPAN_USA19W=yCONFIG_USB_SERIAL_KEYSPAN_USA19QW=yCONFIG_USB_SERIAL_KEYSPAN_USA19QI=yCONFIG_USB_SERIAL_KEYSPAN_USA49W=yCONFIG_USB_SERIAL_KEYSPAN_USA49WLC=yCONFIG_USB_SERIAL_KLSI=mCONFIG_USB_SERIAL_KOBIL_SCT=mCONFIG_USB_SERIAL_MCT_U232=mCONFIG_USB_SERIAL_MOS7720=mCONFIG_USB_SERIAL_MOS7840=mCONFIG_USB_SERIAL_NAVMAN=mCONFIG_USB_SERIAL_PL2303=mCONFIG_USB_SERIAL_HP4X=mCONFIG_USB_SERIAL_SAFE=mCONFIG_USB_SERIAL_SAFE_PADDED=yCONFIG_USB_SERIAL_SIERRAWIRELESS=mCONFIG_USB_SERIAL_TI=mCONFIG_USB_SERIAL_CYBERJACK=mCONFIG_USB_SERIAL_XIRCOM=mCONFIG_USB_SERIAL_OPTION=mCONFIG_USB_SERIAL_OMNINET=mCONFIG_USB_SERIAL_DEBUG=mCONFIG_USB_EZUSB=y
#
# USB Miscellaneous drivers
#CONFIG_USB_EMI62=mCONFIG_USB_EMI26=mCONFIG_USB_ADUTUX=mCONFIG_USB_AUERSWALD=mCONFIG_USB_RIO500=mCONFIG_USB_LEGOTOWER=mCONFIG_USB_LCD=m
# CONFIG_USB_BERRY_CHARGE is not setCONFIG_USB_LED=m
# CONFIG_USB_CYPRESS_CY7C63 is not set
# CONFIG_USB_CYTHERM is not setCONFIG_USB_PHIDGET=mCONFIG_USB_PHIDGETKIT=mCONFIG_USB_PHIDGETMOTORCONTROL=mCONFIG_USB_PHIDGETSERVO=mCONFIG_USB_IDMOUSE=mCONFIG_USB_FTDI_ELAN=mCONFIG_USB_APPLEDISPLAY=mCONFIG_USB_SISUSBVGA=mCONFIG_USB_SISUSBVGA_CON=yCONFIG_USB_LD=mCONFIG_USB_TRANCEVIBRATOR=m
# CONFIG_USB_IOWARRIOR is not setCONFIG_USB_TEST=m
#
# USB DSL modem support
#CONFIG_USB_ATM=mCONFIG_USB_SPEEDTOUCH=mCONFIG_USB_CXACRU=mCONFIG_USB_UEAGLEATM=mCONFIG_USB_XUSBATM=m
#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set
#
# MMC/SD Card support
#CONFIG_MMC=m
# CONFIG_MMC_DEBUG is not setCONFIG_MMC_BLOCK=mCONFIG_MMC_SDHCI=mCONFIG_MMC_WBSD=mCONFIG_MMC_TIFM_SD=m
#
# LED devices
#CONFIG_NEW_LEDS=yCONFIG_LEDS_CLASS=y
#
# LED drivers
#
#
# LED Triggers
#CONFIG_LEDS_TRIGGERS=yCONFIG_LEDS_TRIGGER_TIMER=mCONFIG_LEDS_TRIGGER_IDE_DISK=yCONFIG_LEDS_TRIGGER_HEARTBEAT=m
#
# InfiniBand support
#CONFIG_INFINIBAND=mCONFIG_INFINIBAND_USER_MAD=mCONFIG_INFINIBAND_USER_ACCESS=mCONFIG_INFINIBAND_ADDR_TRANS=yCONFIG_INFINIBAND_MTHCA=mCONFIG_INFINIBAND_MTHCA_DEBUG=y
# CONFIG_INFINIBAND_AMSO1100 is not setCONFIG_INFINIBAND_IPOIB=m
# CONFIG_INFINIBAND_IPOIB_CM is not setCONFIG_INFINIBAND_IPOIB_DEBUG=yCONFIG_INFINIBAND_IPOIB_DEBUG_DATA=yCONFIG_INFINIBAND_SRP=mCONFIG_INFINIBAND_ISER=m
#
# EDAC - error detection and reporting (RAS) (EXPERIMENTAL) #CONFIG_EDAC=y
#
# Reporting subsystems
#
# CONFIG_EDAC_DEBUG is not setCONFIG_EDAC_MM_EDAC=mCONFIG_EDAC_AMD76X=mCONFIG_EDAC_E7XXX=mCONFIG_EDAC_E752X=mCONFIG_EDAC_I82875P=mCONFIG_EDAC_I82860=mCONFIG_EDAC_R82600=mCONFIG_EDAC_POLL=y
#
# Real Time Clock
#CONFIG_RTC_LIB=mCONFIG_RTC_CLASS=m
#
# RTC interfaces
#CONFIG_RTC_INTF_SYSFS=mCONFIG_RTC_INTF_PROC=mCONFIG_RTC_INTF_DEV=m
# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set
#
# RTC drivers
#
# CONFIG_RTC_DRV_CMOS is not setCONFIG_RTC_DRV_X1205=mCONFIG_RTC_DRV_DS1307=mCONFIG_RTC_DRV_DS1553=mCONFIG_RTC_DRV_ISL1208=mCONFIG_RTC_DRV_DS1672=mCONFIG_RTC_DRV_DS1742=mCONFIG_RTC_DRV_PCF8563=mCONFIG_RTC_DRV_PCF8583=mCONFIG_RTC_DRV_RS5C372=m
# CONFIG_RTC_DRV_M48T86 is not set
# CONFIG_RTC_DRV_TEST is not setCONFIG_RTC_DRV_V3020=m
#
# DMA Engine support
#CONFIG_DMA_ENGINE=y
#
# DMA Clients
#CONFIG_NET_DMA=y
#
# DMA Devices
#CONFIG_INTEL_IOATDMA=m
#
# Auxiliary Display support
#
# CONFIG_KS0108 is not set
#
# Virtualization
#CONFIG_KVM=yCONFIG_KVM_INTEL=yCONFIG_KVM_AMD=y
#
# File systems
#CONFIG_EXT2_FS=yCONFIG_EXT2_FS_XATTR=yCONFIG_EXT2_FS_POSIX_ACL=yCONFIG_EXT2_FS_SECURITY=yCONFIG_EXT2_FS_XIP=yCONFIG_FS_XIP=yCONFIG_EXT3_FS=yCONFIG_EXT3_FS_XATTR=yCONFIG_EXT3_FS_POSIX_ACL=yCONFIG_EXT3_FS_SECURITY=y
# CONFIG_EXT4DEV_FS is not setCONFIG_JBD=y
# CONFIG_JBD_DEBUG is not setCONFIG_FS_MBCACHE=yCONFIG_REISERFS_FS=m
# CONFIG_REISERFS_CHECK is not setCONFIG_REISERFS_PROC_INFO=yCONFIG_REISERFS_FS_XATTR=yCONFIG_REISERFS_FS_POSIX_ACL=yCONFIG_REISERFS_FS_SECURITY=yCONFIG_JFS_FS=mCONFIG_JFS_POSIX_ACL=yCONFIG_JFS_SECURITY=y
# CONFIG_JFS_DEBUG is not set
# CONFIG_JFS_STATISTICS is not setCONFIG_FS_POSIX_ACL=yCONFIG_XFS_FS=mCONFIG_XFS_QUOTA=yCONFIG_XFS_SECURITY=yCONFIG_XFS_POSIX_ACL=y
# CONFIG_XFS_RT is not setCONFIG_GFS2_FS=mCONFIG_GFS2_FS_LOCKING_NOLOCK=mCONFIG_GFS2_FS_LOCKING_DLM=mCONFIG_OCFS2_FS=m
# CONFIG_OCFS2_DEBUG_MASKLOG is not setCONFIG_MINIX_FS=mCONFIG_ROMFS_FS=mCONFIG_INOTIFY=yCONFIG_INOTIFY_USER=yCONFIG_QUOTA=y
# CONFIG_QFMT_V1 is not setCONFIG_QFMT_V2=yCONFIG_QUOTACTL=yCONFIG_DNOTIFY=yCONFIG_AUTOFS_FS=mCONFIG_AUTOFS4_FS=mCONFIG_FUSE_FS=mCONFIG_GENERIC_ACL=y
#
# CD-ROM/DVD Filesystems
#CONFIG_ISO9660_FS=yCONFIG_JOLIET=yCONFIG_ZISOFS=yCONFIG_UDF_FS=mCONFIG_UDF_NLS=y
#
# DOS/FAT/NT Filesystems
#CONFIG_FAT_FS=mCONFIG_MSDOS_FS=mCONFIG_VFAT_FS=mCONFIG_FAT_DEFAULT_CODEPAGE=437CONFIG_FAT_DEFAULT_IOCHARSET="ascii"
# CONFIG_NTFS_FS is not set
#
# Pseudo filesystems
#CONFIG_PROC_FS=yCONFIG_PROC_KCORE=yCONFIG_PROC_SYSCTL=yCONFIG_SYSFS=yCONFIG_TMPFS=yCONFIG_TMPFS_POSIX_ACL=yCONFIG_HUGETLBFS=yCONFIG_HUGETLB_PAGE=yCONFIG_RAMFS=yCONFIG_CONFIGFS_FS=m
#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not setCONFIG_AFFS_FS=mCONFIG_ECRYPT_FS=mCONFIG_HFS_FS=mCONFIG_HFSPLUS_FS=mCONFIG_BEFS_FS=m
# CONFIG_BEFS_DEBUG is not setCONFIG_BFS_FS=mCONFIG_EFS_FS=mCONFIG_JFFS2_FS=mCONFIG_JFFS2_FS_DEBUG=0CONFIG_JFFS2_FS_WRITEBUFFER=yCONFIG_JFFS2_SUMMARY=y
# CONFIG_JFFS2_FS_XATTR is not set
# CONFIG_JFFS2_COMPRESSION_OPTIONS is not setCONFIG_JFFS2_ZLIB=yCONFIG_JFFS2_RTIME=y
# CONFIG_JFFS2_RUBIN is not setCONFIG_CRAMFS=mCONFIG_VXFS_FS=m
# CONFIG_HPFS_FS is not setCONFIG_QNX4FS_FS=mCONFIG_SYSV_FS=mCONFIG_UFS_FS=m
# CONFIG_UFS_FS_WRITE is not set
# CONFIG_UFS_DEBUG is not set
#
# Network File Systems
#CONFIG_NFS_FS=mCONFIG_NFS_V3=yCONFIG_NFS_V3_ACL=yCONFIG_NFS_V4=yCONFIG_NFS_DIRECTIO=yCONFIG_NFSD=mCONFIG_NFSD_V2_ACL=yCONFIG_NFSD_V3=yCONFIG_NFSD_V3_ACL=yCONFIG_NFSD_V4=yCONFIG_NFSD_TCP=yCONFIG_LOCKD=mCONFIG_LOCKD_V4=yCONFIG_EXPORTFS=mCONFIG_NFS_ACL_SUPPORT=mCONFIG_NFS_COMMON=yCONFIG_SUNRPC=mCONFIG_SUNRPC_GSS=mCONFIG_RPCSEC_GSS_KRB5=mCONFIG_RPCSEC_GSS_SPKM3=m
# CONFIG_SMB_FS is not setCONFIG_CIFS=m
# CONFIG_CIFS_STATS is not setCONFIG_CIFS_WEAK_PW_HASH=yCONFIG_CIFS_XATTR=yCONFIG_CIFS_POSIX=y
# CONFIG_CIFS_DEBUG2 is not set
# CONFIG_CIFS_EXPERIMENTAL is not setCONFIG_NCP_FS=mCONFIG_NCPFS_PACKET_SIGNING=yCONFIG_NCPFS_IOCTL_LOCKING=yCONFIG_NCPFS_STRONG=yCONFIG_NCPFS_NFS_NS=yCONFIG_NCPFS_OS2_NS=yCONFIG_NCPFS_SMALLDOS=yCONFIG_NCPFS_NLS=yCONFIG_NCPFS_EXTRAS=yCONFIG_CODA_FS=m
# CONFIG_CODA_FS_OLD_API is not set
# CONFIG_AFS_FS is not setCONFIG_9P_FS=m
#
# Partition Types
#CONFIG_PARTITION_ADVANCED=y
# CONFIG_ACORN_PARTITION is not setCONFIG_OSF_PARTITION=yCONFIG_AMIGA_PARTITION=y
# CONFIG_ATARI_PARTITION is not setCONFIG_MAC_PARTITION=yCONFIG_MSDOS_PARTITION=yCONFIG_BSD_DISKLABEL=yCONFIG_MINIX_SUBPARTITION=yCONFIG_SOLARIS_X86_PARTITION=yCONFIG_UNIXWARE_DISKLABEL=y
# CONFIG_LDM_PARTITION is not setCONFIG_SGI_PARTITION=y
# CONFIG_ULTRIX_PARTITION is not setCONFIG_SUN_PARTITION=yCONFIG_KARMA_PARTITION=yCONFIG_EFI_PARTITION=y
#
# Native Language Support
#CONFIG_NLS=yCONFIG_NLS_DEFAULT="utf8"CONFIG_NLS_CODEPAGE_437=yCONFIG_NLS_CODEPAGE_737=mCONFIG_NLS_CODEPAGE_775=mCONFIG_NLS_CODEPAGE_850=mCONFIG_NLS_CODEPAGE_852=mCONFIG_NLS_CODEPAGE_855=mCONFIG_NLS_CODEPAGE_857=mCONFIG_NLS_CODEPAGE_860=mCONFIG_NLS_CODEPAGE_861=mCONFIG_NLS_CODEPAGE_862=mCONFIG_NLS_CODEPAGE_863=mCONFIG_NLS_CODEPAGE_864=mCONFIG_NLS_CODEPAGE_865=mCONFIG_NLS_CODEPAGE_866=mCONFIG_NLS_CODEPAGE_869=mCONFIG_NLS_CODEPAGE_936=mCONFIG_NLS_CODEPAGE_950=mCONFIG_NLS_CODEPAGE_932=mCONFIG_NLS_CODEPAGE_949=mCONFIG_NLS_CODEPAGE_874=mCONFIG_NLS_ISO8859_8=mCONFIG_NLS_CODEPAGE_1250=mCONFIG_NLS_CODEPAGE_1251=mCONFIG_NLS_ASCII=yCONFIG_NLS_ISO8859_1=mCONFIG_NLS_ISO8859_2=mCONFIG_NLS_ISO8859_3=mCONFIG_NLS_ISO8859_4=mCONFIG_NLS_ISO8859_5=mCONFIG_NLS_ISO8859_6=mCONFIG_NLS_ISO8859_7=mCONFIG_NLS_ISO8859_9=mCONFIG_NLS_ISO8859_13=mCONFIG_NLS_ISO8859_14=mCONFIG_NLS_ISO8859_15=mCONFIG_NLS_KOI8_R=mCONFIG_NLS_KOI8_U=mCONFIG_NLS_UTF8=m
#
# Distributed Lock Manager
#CONFIG_DLM=mCONFIG_DLM_TCP=y
# CONFIG_DLM_SCTP is not setCONFIG_DLM_DEBUG=y
#
# Instrumentation Support
#CONFIG_PROFILING=yCONFIG_OPROFILE=mCONFIG_KPROBES=y
#
# Kernel hacking
#CONFIG_TRACE_IRQFLAGS_SUPPORT=y CONFIG_PRINTK_TIME=y
# CONFIG_ENABLE_MUST_CHECK is not set CONFIG_MAGIC_SYSRQ=y
# CONFIG_UNUSED_SYMBOLS is not set CONFIG_DEBUG_FS=y
# CONFIG_HEADERS_CHECK is not set CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SHIRQ is not set CONFIG_LOG_BUF_SHIFT=20 CONFIG_DETECT_SOFTLOCKUP=y CONFIG_SCHEDSTATS=yCONFIG_TIMER_STATS=yCONFIG_DEBUG_SLAB=yCONFIG_DEBUG_SLAB_LEAK=y CONFIG_DEBUG_PREEMPT=y
# CONFIG_DEBUG_RT_MUTEXES is not set CONFIG_RT_MUTEX_TESTER=y CONFIG_DEBUG_SPINLOCK=y CONFIG_DEBUG_MUTEXES=y CONFIG_DEBUG_LOCK_ALLOC=y CONFIG_PROVE_LOCKING=yCONFIG_LOCKDEP=y
# CONFIG_DEBUG_LOCKDEP is not set CONFIG_TRACE_IRQFLAGS=y CONFIG_DEBUG_SPINLOCK_SLEEP=y CONFIG_DEBUG_LOCKING_API_SELFTESTS=y CONFIG_STACKTRACE=y
# CONFIG_DEBUG_KOBJECT is not set CONFIG_DEBUG_HIGHMEM=y CONFIG_DEBUG_BUGVERBOSE=yCONFIG_DEBUG_INFO=yCONFIG_DEBUG_VM=yCONFIG_DEBUG_LIST=yCONFIG_FRAME_POINTER=y
# CONFIG_FORCED_INLINING is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_LKDTM is not set CONFIG_FAULT_INJECTION=yCONFIG_FAILSLAB=yCONFIG_FAIL_PAGE_ALLOC=y CONFIG_FAIL_MAKE_REQUEST=y CONFIG_FAULT_INJECTION_DEBUG_FS=y
# CONFIG_FAULT_INJECTION_STACKTRACE_FILTER is not set CONFIG_EARLY_PRINTK=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
# CONFIG_DEBUG_STACK_USAGE is not set
#
# Page alloc debug is incompatible with Software Suspend on i386 #CONFIG_DEBUG_RODATA=yCONFIG_4KSTACKS=yCONFIG_X86_FIND_SMP_CONFIG=yCONFIG_X86_MPPARSE=yCONFIG_DOUBLEFAULT=y
# CONFIG_DEBUG_PARAVIRT is not set
#
# Security options
#CONFIG_KEYS=yCONFIG_KEYS_DEBUG_PROC_KEYS=yCONFIG_SECURITY=yCONFIG_SECURITY_NETWORK=y
# CONFIG_SECURITY_NETWORK_XFRM is not set CONFIG_SECURITY_CAPABILITIES=m
# CONFIG_SECURITY_ROOTPLUG is not set CONFIG_SECURITY_SELINUX=y CONFIG_SECURITY_SELINUX_BOOTPARAM=y CONFIG_SECURITY_SELINUX_BOOTPARAM_VALUE=1 CONFIG_SECURITY_SELINUX_DISABLE=y CONFIG_SECURITY_SELINUX_DEVELOP=y CONFIG_SECURITY_SELINUX_AVC_STATS=y CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1
# CONFIG_SECURITY_SELINUX_ENABLE_SECMARK_DEFAULT is not set # CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set
#
# Cryptographic options
#CONFIG_CRYPTO=yCONFIG_CRYPTO_ALGAPI=yCONFIG_CRYPTO_BLKCIPHER=yCONFIG_CRYPTO_HASH=yCONFIG_CRYPTO_MANAGER=yCONFIG_CRYPTO_HMAC=yCONFIG_CRYPTO_XCBC=yCONFIG_CRYPTO_NULL=yCONFIG_CRYPTO_MD4=yCONFIG_CRYPTO_MD5=yCONFIG_CRYPTO_SHA1=yCONFIG_CRYPTO_SHA256=yCONFIG_CRYPTO_SHA512=yCONFIG_CRYPTO_WP512=yCONFIG_CRYPTO_TGR192=yCONFIG_CRYPTO_GF128MUL=yCONFIG_CRYPTO_ECB=yCONFIG_CRYPTO_CBC=yCONFIG_CRYPTO_PCBC=mCONFIG_CRYPTO_LRW=yCONFIG_CRYPTO_DES=y
# CONFIG_CRYPTO_FCRYPT is not setCONFIG_CRYPTO_BLOWFISH=yCONFIG_CRYPTO_TWOFISH=yCONFIG_CRYPTO_TWOFISH_COMMON=y
# CONFIG_CRYPTO_TWOFISH_586 is not setCONFIG_CRYPTO_SERPENT=yCONFIG_CRYPTO_AES=y
# CONFIG_CRYPTO_AES_586 is not setCONFIG_CRYPTO_CAST5=yCONFIG_CRYPTO_CAST6=yCONFIG_CRYPTO_TEA=yCONFIG_CRYPTO_ARC4=yCONFIG_CRYPTO_KHAZAD=yCONFIG_CRYPTO_ANUBIS=yCONFIG_CRYPTO_DEFLATE=yCONFIG_CRYPTO_MICHAEL_MIC=yCONFIG_CRYPTO_CRC32C=y
# CONFIG_CRYPTO_CAMELLIA is not set
# CONFIG_CRYPTO_TEST is not set
#
# Hardware crypto devices
#CONFIG_CRYPTO_DEV_PADLOCK=mCONFIG_CRYPTO_DEV_PADLOCK_AES=mCONFIG_CRYPTO_DEV_PADLOCK_SHA=mCONFIG_CRYPTO_DEV_GEODE=m
#
# Library routines
#CONFIG_BITREVERSE=yCONFIG_CRC_CCITT=yCONFIG_CRC16=yCONFIG_CRC32=yCONFIG_LIBCRC32C=yCONFIG_AUDIT_GENERIC=yCONFIG_ZLIB_INFLATE=yCONFIG_ZLIB_DEFLATE=yCONFIG_REED_SOLOMON=mCONFIG_REED_SOLOMON_DEC16=yCONFIG_TEXTSEARCH=yCONFIG_TEXTSEARCH_KMP=mCONFIG_TEXTSEARCH_BM=mCONFIG_TEXTSEARCH_FSM=mCONFIG_PLIST=yCONFIG_HAS_IOMEM=yCONFIG_HAS_IOPORT=yCONFIG_GENERIC_HARDIRQS=yCONFIG_GENERIC_IRQ_PROBE=yCONFIG_GENERIC_PENDING_IRQ=yCONFIG_X86_SMP=yCONFIG_X86_HT=yCONFIG_X86_BIOS_REBOOT=yCONFIG_X86_TRAMPOLINE=yCONFIG_KTIME_SCALAR=yCONFIG_NO_IDLE_HZ=y
Re: 2.6.21-rc1: known regressions (part 2)
In reply to Ingo Molnar(Ok, removed the kernel people, since this is just about the git part...)
Quoted 7 lines · Ingo Molnar
but the conclusion is clear: if multiple bugs are present in the search area then it gets quite difficult to sort it out via git-bisect - but it's not impossible either. The following git-bisect enhancement could have made things easier for me:
git-bisect mark-must-have <tree>
It's not quite that easy.
In _your_ case, you always just wanted to try to apply a particular patch if it applied cleanly.
But in other cases, what you really want is:
- *if* commit X is included, apply patch Y
because quite often you might have a "fix" that applies quite cleanly, but is totally the wrong thing to do unless the code that actually _needs_ the fix is already merged.
It's just that in this case, if the bug didn't exist, the fix wouldn't apply either, so it just didn't matter..
Also, even if we had something that git did automatically after it selected a commit to bisect on, it still wouldn't really be enough: we'd need to
(a) handle the failure case cleanly (again, in your case it didn't matter, because it either applied cleanly or wasn't needed at all)
(b) also handle the case where the user chooses a different point to try because the automatic bisection picked a commit that was untestable. Right now people do that by using "git reset --hard XYZ"
(c) It's quite possible that the fix to be applied isn't a git commit at all. Again, in your case there happened to be one well-defined commit that did nothing but fix the known bug, but you could easily have had a situation where - if the bug wasn't as obvious, for example - you had a fix being done over _multiple_ commits, or the other way, the fix you actually want to merge is just a part of a commit that does a lot of other things too (that may not be appropriate at other places, and you know will just cause merge errors)
The (b) case could be supplied by having a "git bisect try <XYZ>" subcommand instead of having people use "git reset --hard". That might be a good thing to do anyway, since it can also do added sanity testing (ie testing that the commit to try actually is *inside* the current bisection set, because otherwise the bisection simply won't work).
Linus
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 7 lines · Linus Torvalds
Quoted 6 lines · Ingo Molnar
but the conclusion is clear: if multiple bugs are present in the search area then it gets quite difficult to sort it out via git-bisect - but it's not impossible either. The following git-bisect enhancement could have made things easier for me:
Quoted 6 lines
Quoted 1 line
git-bisect mark-must-have <tree>
It's not quite that easy.
In _your_ case, you always just wanted to try to apply a particular patch if it applied cleanly.
ok, agreed.
Suspend/resume bugs are a bit special anyway because so much stuff happens in an 'invisible' way during suspend/resume that any problem/hang during that 'looks like' the same bug symtpom: a hung resume.
so i'll put more effort into providing more suspend/resume debugging facilities - we have way too few tools of directly debugging them.
Ingo
Re: 2.6.21-rc1: known regressions (part 2)
In reply to Ingo MolnarQuoted 24 lines
Quoting Ingo Molnar <[email protected]>:
Subject: Re: 2.6.21-rc1: known regressions (part 2)Quoted 4 lines · Ingo Molnar
I'll try what i've described in the previous mail: mark all bisection points that do not include
f3ccb06fas 'good' - thus 'merging' the known-bad area with the first known-good commit, and thus eliminating it from the bisection space.this got me quite a bit further:
git-bisect start
git-bisect bad01363220f5d23ef68276db8974e46a502e43d01d
git-bisect goodf3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38
git-bisect fake-goodee404566f97f9254433399fbbcfa05390c7c55f7
git-bisect badd43a338e395371733a80ec473b40baac5f74d768
git-bisect bad255f0385c8e0d6b9005c0e09fffb5bd852f3b506
git-bisect fake-goodf99c6bb6e2e9c35bd3dc0b1d0faa28bd6970930dgit-bisect fake-good0187f221e96e3436d552c0c7143f183eb82fb658
git-bisect bad81450b73dde07f473a4a7208b209b4c8b7251d90
git-bisect fake-goodef29498655b18d2bfd69048e20835d19333981abgit-bisect fake-good8a03d9a498eaf02c8a118752050a5154852c13bf
Quoted 3 lines
git-bisect good 5c95d3f5783ab184f64b7848f0a871352c35c3cf git-bisect good ecb5f7521a309cb9c5fc0832b9705cd2a03d7d45 git-bisect good 0539771d7236b425f285652f6f297cc7939c8f9a
I just confirmed that 0539771d7236b425f285652f6f297cc7939c8f9a is good for me, too.
Quoted 1 line
81450b73dde07f473a4a7208b209b4c8b7251d90is first bad commit
Going to test that now.
Signature · 1 line
MST
Re: 2.6.21-rc1: known regressions (part 2)
In reply to Ingo MolnarQuoted 4 lines
Quoting Ingo Molnar <[email protected]>:
git-bisect good0539771d7236b425f285652f6f297cc7939c8f9a
81450b73dde07f473a4a7208b209b4c8b7251d90is first bad commit
I have confirmed these two on my system.
Signature · 1 line
MST
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 6 lines · Michael S. Tsirkin
Quoted 4 lines
Quoting Ingo Molnar <[email protected]>:
git-bisect good0539771d7236b425f285652f6f297cc7939c8f9a
81450b73dde07f473a4a7208b209b4c8b7251d90is first bad commitI have confirmed these two on my system.
you could probably get quite a bit further in bisecting the other breakage, by using the following method:
manully apply the patch below to 81450b73dde and retest. It will most likely work. Then FIRST unapply the patch and mark the tree via 'git-bisect good' and continue the bisection. Then try to apply the patch again. If it's already included - ignore the rejected patch. Whenever git-bisect offers you a new commit, just try to apply the patch. Ok? This way you'll be able to avoid the known ACPI breakage, and zoom in on the unknown breakage.
Ingo
---------------->
commit f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38
Author: Alexey Starikovskiy <[email protected]> Date: Tue Feb 13 02:35:50 2007 -0500
ACPI: Disable wake GPEs only once.
fixes Suspend/Resume regressions due to recent ACPICA update.
drivers/acpi/events/evgpe.c +0 -11
@@ -636,17 +636,6 @@ acpi_ev_gpe_dispatch(struct acpi_gpe_event_info *gpe_event_info, u32 gpe_number) } } -if (!acpi_gbl_system_awake_and_running) { -/* -* We just woke up because of a wake GPE. Disable any further GPEs -* until we are fully up and running (Only wake GPEs should be enabled -* at this time, but we just brute-force disable them all.) -* 1) We must disable this particular wake GPE so it won't fire again -* 2) We want to disable all wake GPEs, since we are now awake -*/ - (void )acpi_hw_disable_all_gpes (); - } -/* * Dispatch the GPE to either an installed handler, or the control method * associated with this GPE (_Lxx or _Exx). If a handler exists, we invoke
Re: 2.6.21-rc1: known regressions (part 2)
In reply to Michael S. TsirkinQuoted 6 lines · Michael S. Tsirkin
Quoted 4 lines
Quoting Ingo Molnar <[email protected]>:
git-bisect good0539771d7236b425f285652f6f297cc7939c8f9a
81450b73dde07f473a4a7208b209b4c8b7251d90is first bad commitI have confirmed these two on my system.
BTW, the key here seems to be CONFIG_CC_OPTIMIZE_FOR_SIZE, at least that is my current guess looking at the config options I still need to test whether they make a difference. Either that, or the vmsplit option got broken again. I'm attaching my x60 config that works for me.
Signature · 1 line
Jens Axboe
Re: 2.6.21-rc1: known regressions (part 2)
In reply to Ingo MolnarQuoted 7 lines · Ingo Molnar
Quoted 3 lines · Ingo Molnar
update:
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38works for me too, and01363220f5d23ef68276db8974e46a502e43d01dis broken. I too will attempt to bisect this.
Quoted 7 lines
hm. There's some weird bisection artifact here. Here are the commits i tested, in git-log order:
#1 commit
01363220f5d23ef68276db8974e46a502e43d01dbad #2 commitee404566f97f9254433399fbbcfa05390c7c55f7bad #3 commitf3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38good #4 commitc827ba4cb49a30ce581201fd0ba2be77cde412c7bad
Use "git bisect visualize" to see what bisect ends up doing.
Quoted 3 lines
if i tell git-bisect that #1 is bad and #3 is good, then it offers me #2
- that's OK. But when i tell it that #2 is bad, it offers #4 - which is out of order!
No it's not. "git bisect" does exactly the right thing. There is no simple ordering in a complex branch-merge schenario, you can't just put the commits in some "ordering" and test things in time order. That would be totally broken, and idiotic. It doesn't give the right results.
What git bisect does is to find the commit that most closely *bisects* the history of commits, so that if it is marked good/bad, it will leave you with about 50% of the commits left. But if you are looking at date order, you're entirely confused.
For example, let's take a really simple case
a <- bad
/ \
b c
| |
d e
| |
f g
\ /
h
|
* <-goodand if you are looking to find something "in the middle", you might thing that "d" or "e" are the best choices, since time-wise, they are in the middle.
But that's not true AT ALL.
If you actually want to bisect that kind of history, you need to choose "b" or "c", even though they may both be *much* more "recent" than the others. Why? Because if you pick "d", you're really only testing three commits ('d' 'f' and 'h') out of the 8 commits you have to test.
In contrast, if you pick 'b', you are testing the effects of *four* commits ('b', 'd', 'f' and 'h') and you have thus neatly bisected the commits into two equal groups for testing (one group _with_ those four commits, and one group _without_) instead of having partitioned them as 3 commits vs 5 commits.
So please realize that non-linear history very much means that you MUST NOT think that you just pick a commit "in the middle". No, git bisect is a LOT smarter than that - it picks a commit that *reaches* about half the commits you have left to test.
Quoted 4 lines
The bisection goes off into la-la land after that and
never gets back to a commit that is /after/ the good commit. How is this possible? (I upgraded from git-1.4.4 to 1.5.0 to make sure this isnt some git bug that's already fixed.)
It's possible because git knows what it is doing, and you didn't think things through.
The commits that "git bisect" picked out are the right ones. Quite often, there may be two or more "equally good" commits (in my example above, you can choose either "b" or "c", and it will bisect the set of untested commits equally well - in two groups of four, but two *different* groups of four commits), and yes, it's possible that git has a bug that makes it pick the wrong ones, but quite frankly, I seriously doubt it. "git bisect" has been very successful indeed, and is generally a *lot* better at picking a commit "in the middle" than people are, exactly because it's quite hard to see which commit "reaches" half the commits if you have lots of merges and branches.
Try out
git bisect visualize
and it will literally show you what it is doing.
What can be confusing is that if the "good" and "bad" markers are ON DIFFERENT BRANCHES OF DEVELOPMENT, you may not even *see* the "good" marker, because you may well have something like this:
a <- bad | b * <- good | | c d \ / e | f | ...
and what do you think "git bisect visualize" will actually show you?
Since 'd', 'e' and 'f' are all in the "good" set (they both exist as commits in something leading up to a commit that has already been deemed fine), they aren't *interesting* - they can't be introducing the bug, since if that was the case, the good commit wouldn't have been good. So as far as bisection is concerned, the tree actually looks like
a <- bad | b | c | ...
and you have just three commits that are potentially interesting: 'a', 'b' and 'c'.
Now, with three commits, you cannot test them half-and-half, so you have to test it in groups of 1 vs 2 commits, so it's arbitrary whether you choose 'b' or 'c' to test, but you'd test one of them. Say that you choose 'b', and it turns out to be good. If so, you're done: 'a' is bad and 'b' is good, so the bug was introduced in 'a'. But if it turns out to be bad, you'll still have to test 'c' too, since you don't know if the bug was *introduced* in 'b' or not.
See?
Quoted 1 line
i'll try to straighten this out manually
Don't. You're just going to make your bisection much less effective. The whole point of bisection is that you can usually cut the number of commits to test pretty exactly in half. If you start mucking with the commits to test, and you don't understand about the reachability graph, you'll just choose a much worse set of commits to test than "git bisect" will do.
So learn to trust "git bisect". It really does know what it is doing.
Linus
Re: 2.6.21-rc1: known regressions (part 2)
In reply to Ingo MolnarHi!
Quoted 7 lines · Jens Axboe
Quoted 2 lines
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38works for me, [...]update:
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38works for me too, and01363220f5d23ef68276db8974e46a502e43d01dis broken. I too will attempt to bisect this.
Strange; on my x60, suspend to ram works okay.
(Resume is very slow, because disks are not spinned up properly; and there's something wrong with timers; console beeps take way too long).
dmesg attached.
That's with
commit 7b965e0884cee430ffe5dc81cdb117b9316b0549
tree 754dce6432258e0a8c3a758e13a34eb3a1d22ee1
parent 5a39e8c6d655b4fe8305ef8cc2d9bbe782bfee5f
author Trond Myklebust <[email protected]> Wed, 28 Feb 2007 20:13:55 -0800
committer Linus Torvalds <[email protected]> Thu, 01 Mar 2007 14:53:39 -0800
[PATCH] VM: invalidate_inode_pages2_range() should not exit early
Fix invalidate_inode_pages2_range() so that it does not
immediately exit
just because a single page in the specified range could not be
removed.
Signature · 2 lines
(english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
Re: 2.6.21-rc1: known regressions (part 2)
Quoted 32 lines
Quoting Pavel Machek <[email protected]>:
Subject: Re: 2.6.21-rc1: known regressions (part 2)Hi!
Quoted 7 lines · Jens Axboe
Quoted 2 lines
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38works for me, [...]update:
f3ccb06f3b8e0cf42b579db21f3ca7f17fcc3f38works for me too, and01363220f5d23ef68276db8974e46a502e43d01dis broken. I too will attempt to bisect this.Strange; on my x60, suspend to ram works okay.
(Resume is very slow, because disks are not spinned up properly; and there's something wrong with timers; console beeps take way too long).
dmesg attached.
That's with
commit
7b965e0884cee430ffe5dc81cdb117b9316b0549
tree754dce6432258e0a8c3a758e13a34eb3a1d22ee1
parent5a39e8c6d655b4fe8305ef8cc2d9bbe782bfee5f
author Trond Myklebust <[email protected]> Wed, 28 Feb 2007 20:13:55 -0800
committer Linus Torvalds <[email protected]> Thu, 01 Mar 2007 14:53:39 -0800[PATCH] VM:
invalidate_inode_pages2_range()should not exit early
Quoted 8 lines
Fix
invalidate_inode_pages2_range()so that it does not
immediately exit
just because a single page in the specified range could not be
removed.Signed-off-by Trond Myklebust <[email protected]>Signed-off-by Andrew Morton <[email protected]>Signed-off-by Linus Torvalds <[email protected]>
Pavel, I tried with your .config, and indeed the system came back to life after 2-3 minutes after I press Fn/F4, indeed the issue seems to be with the disk. It could be that the same takes place with my original .config - maybe I just wasn't patient enough. I'll need to re-test that.
However, I noticed that, after resume, when the system is presumably functional, if I try to suspend to ram again, this second suspend hangs, displaying the following on screen:
[ 17.170000] ACPI: PCI Interrupt 0000:02:00.0[A] -> GSI 16 (level, low) -> IRQ 20 [ 17.170000] PCI: Setting latency timer of device 0000:02:00.0 to 64 [ 17.250000] e1000: 0000:02:00.0: e1000_probe: (PCI Express:2.5Gb/s:Width x1) 00:16:41:5 4:6c:47 [ 17.330000] e1000: eth0: e1000_probe: Intel(R) PRO/1000 Network Connection
the crescent LED starts blinking and does not seem to stop for at lest 10 min, I've run out of patience after that. It could be that it's just very slow again.
Pavel, did you try suspend to RAM after a successfull resume from RAM?
Under 2.6.20, the system suspends/resumes to memory within about 20 sec any number of times.
Signature · 1 line
MST
SATA resume slowness, e1000 MSI warning
Quoted 8 lines · Michael S. Tsirkin
Quoted 2 lines
(Resume is very slow, because disks are not spinned up properly; and there's something wrong with timers; console beeps take way too long).
Pavel, I tried with your .config, and indeed the system came back to life after 2-3 minutes after I press Fn/F4, indeed the issue seems to be with the disk. It could be that the same takes place with my original .config - maybe I just wasn't patient enough. I'll need to re-test that.
the spin-up takes a few seconds here under suspend/resume simulation:
| ata1: waiting for device to spin up (7 secs)
| Restarting tasks ... done.
[5-10 seconds pass]
| ata1: SATA link up 1.5 Gbps (SStatus 113 SControl 300) | ata1.00: configured for UDMA/100 | SCSI device sda: 156301488 512-byte hdwr sectors (80026 MB) | sda: Write Protect is off | sda: Mode Sense: 00 3a 00 00 | SCSI device sda: write cache: enabled, read cache: enabled, doesn't support DPO or FUA
with real resume it takes even longer time - but i dont see where the delays come from in that case - i suspect it's SATA.
i'm also getting this WARN_ON() from e1000:
BUG: at drivers/pci/msi.c:611 pci_enable_msi() [<c01061bd>] show_trace_log_lvl+0x19/0x2e [<c01062b6>] show_trace+0x12/0x14 [<c01062cc>] dump_stack+0x14/0x16 [<c024fcc4>] pci_enable_msi+0x6d/0x203 [<c02b709e>] e1000_request_irq+0x2e/0xe2 [<c02bb742>] e1000_resume+0x7f/0xef [<c0249a68>] pci_device_resume+0x1a/0x44 [<c02b39ec>] resume_device+0xf7/0x16f [<c02b3adb>] dpm_resume+0x77/0xcb [<c02b3b69>] device_resume+0x3a/0x51 [<c014e669>] enter_state+0x193/0x1bb [<c014e712>] state_store+0x81/0x97 [<c01b68bc>] subsys_attr_store+0x20/0x25 [<c01b6feb>] sysfs_write_file+0xce/0xf6 [<c017e16b>] vfs_write+0xb1/0x13a [<c017e899>] sys_write+0x3d/0x61 [<c0105220>] syscall_call+0x7/0xb
seems harmless because it seems to work fine.
Ingo
Re: SATA resume slowness, e1000 MSI warning
Quoted 21 lines · Ingo Molnar
i'm also getting this
WARN_ON()from e1000:BUG: at drivers/pci/msi.c:611 pci_enable_msi() [<c01061bd>] show_trace_log_lvl+0x19/0x2e [<c01062b6>] show_trace+0x12/0x14 [<c01062cc>] dump_stack+0x14/0x16 [<c024fcc4>] pci_enable_msi+0x6d/0x203 [<c02b709e>] e1000_request_irq+0x2e/0xe2 [<c02bb742>] e1000_resume+0x7f/0xef [<c0249a68>] pci_device_resume+0x1a/0x44 [<c02b39ec>] resume_device+0xf7/0x16f [<c02b3adb>] dpm_resume+0x77/0xcb [<c02b3b69>] device_resume+0x3a/0x51 [<c014e669>] enter_state+0x193/0x1bb [<c014e712>] state_store+0x81/0x97 [<c01b68bc>] subsys_attr_store+0x20/0x25 [<c01b6feb>] sysfs_write_file+0xce/0xf6 [<c017e16b>] vfs_write+0xb1/0x13a [<c017e899>] sys_write+0x3d/0x61 [<c0105220>] syscall_call+0x7/0xb
Quoted 1 line
seems harmless because it seems to work fine.
I would poke Eric Biederman(sp?) about this one. Maybe its even solved by the MSI-enable-related patch he posted in the past 24-48 hours.
Jeff
Re: SATA resume slowness, e1000 MSI warning
Quoted 22 lines · Jeff Garzik
Quoted 21 lines · Ingo Molnar
i'm also getting this
WARN_ON()from e1000:BUG: at drivers/pci/msi.c:611 pci_enable_msi() [<c01061bd>] show_trace_log_lvl+0x19/0x2e [<c01062b6>] show_trace+0x12/0x14 [<c01062cc>] dump_stack+0x14/0x16 [<c024fcc4>] pci_enable_msi+0x6d/0x203 [<c02b709e>] e1000_request_irq+0x2e/0xe2 [<c02bb742>] e1000_resume+0x7f/0xef [<c0249a68>] pci_device_resume+0x1a/0x44 [<c02b39ec>] resume_device+0xf7/0x16f [<c02b3adb>] dpm_resume+0x77/0xcb [<c02b3b69>] device_resume+0x3a/0x51 [<c014e669>] enter_state+0x193/0x1bb [<c014e712>] state_store+0x81/0x97 [<c01b68bc>] subsys_attr_store+0x20/0x25 [<c01b6feb>] sysfs_write_file+0xce/0xf6 [<c017e16b>] vfs_write+0xb1/0x13a [<c017e899>] sys_write+0x3d/0x61 [<c0105220>] syscall_call+0x7/0xb
Quoted 4 lines
Quoted 1 line
seems harmless because it seems to work fine.
I would poke Eric Biederman(sp?) about this one. Maybe its even solved by the MSI-enable-related patch he posted in the past 24-48 hours.
Eric, Linus,
I tried the 3-patch series "[PATCH 0/3] Basic msi bug fixes.." and they fix this problem for me. Were you expecting the OOPS in the first place? In any case, it survived several suspend/resume cycles on both enabled (irq alloc'd and enabled) and disabled devices (only initialized).
Jens Axboe was seeing the same problem, perhaps he can confirm the fix as well.
In any case, the patches have my blessing :)
Please add my:
Cheers,
Auke
Re: SATA resume slowness, e1000 MSI warning
Quoted 9 lines · Kok, Auke
Quoted 5 lines
Quoted 1 line
BUG: at drivers/pci/msi.c:611 pci_enable_msi()I would poke Eric Biederman(sp?) about this one. Maybe its even solved by the MSI-enable-related patch he posted in the past 24-48 hours.
I tried the 3-patch series "[PATCH 0/3] Basic msi bug fixes.." and they fix this problem for me. Were you expecting the OOPS in the first place? [...]
the bug was the warning message (a WARN_ON()) above - not an oops. So that warning message is gone in your testing?
Ingo
Re: SATA resume slowness, e1000 MSI warning
Quoted 8 lines · Ingo Molnar
Quoted 4 lines · Kok, Auke
Quoted 3 lines
Quoted 1 line
BUG: at drivers/pci/msi.c:611 pci_enable_msi()I would poke Eric Biederman(sp?) about this one. Maybe its even solved by the MSI-enable-related patch he posted in the past 24-48 hours.
I tried the 3-patch series "[PATCH 0/3] Basic msi bug fixes.." and they fix this problem for me. Were you expecting the OOPS in the first place? [...]
the bug was the warning message (a
WARN_ON()) above - not an oops. So that warning message is gone in your testing?
yes.
Auke
Re: SATA resume slowness, e1000 MSI warning
Quoted 7 lines · Auke
Quoted 6 lines · Ingo Molnar
Quoted 4 lines · Kok, Auke
Quoted 4 lines
Quoted 1 line
BUG: at drivers/pci/msi.c:611 pci_enable_msi()I would poke Eric Biederman(sp?) about this one. Maybe its even solved by the MSI-enable-related patch he posted in the past 24-48 hours.
Quoted 7 lines
Quoted 5 lines
Quoted 2 lines
I tried the 3-patch series "[PATCH 0/3] Basic msi bug fixes.." and they fix this problem for me. Were you expecting the OOPS in the first place? [...]
the bug was the warning message (a
WARN_ON()) above - not an oops. So that warning message is gone in your testing?yes.
Sorry for the slow delay. I was out of town for my brothers wedding the last few days.
I wasn't exactly expecting the WARN_ON to trigger. What I fixed was an inconsistency in handling our state bits. Fixing that inconsistency appears to have fixed the e1000 usage scenario mostly by accident.
The basic issue is that pci_save_state saves the current msi state along with other registers, and then the e1000 driver goes and disables the msi irq after we have saved the irq state as on.
My code notices that the msi irq was disabled before restore time, so it skips the restore. However we now have a leak of the msi saved cap because we are not freeing it.
This leaves with some basic questions.
- Does it make sense for suspend/resume methods to request/free irqs?
- Does it make sense for suspend/resume methods to allocate/free msi irqs?
- Do we want pci_save/restore_cap to save/restore msi state?
The path of least resistance is to just free the extra state and we are good. I'm just not quite certain that is sane and it has been a long day.
Eric
Re: SATA resume slowness, e1000 MSI warning
Quoted 30 lines · Eric W. Biederman
Quoted 11 lines · Auke
Quoted 9 lines · Ingo Molnar
Quoted 5 lines · Kok, Auke
Quoted 3 lines
Quoted 1 line
BUG: at drivers/pci/msi.c:611 pci_enable_msi()I would poke Eric Biederman(sp?) about this one. Maybe its even solved by the MSI-enable-related patch he posted in the past 24-48 hours.
I tried the 3-patch series "[PATCH 0/3] Basic msi bug fixes.." and they fix this problem for me. Were you expecting the OOPS in the first place? [...]
the bug was the warning message (a
WARN_ON()) above - not an oops. So that warning message is gone in your testing?yes.
Sorry for the slow delay. I was out of town for my brothers wedding the last few days.
I wasn't exactly expecting the
WARN_ONto trigger. What I fixed was an inconsistency in handling our state bits. Fixing that inconsistency appears to have fixed the e1000 usage scenario mostly by accident.The basic issue is that
pci_save_statesaves the current msi state along with other registers, and then the e1000 driver goes and disables the msi irq after we have saved the irq state as on.My code notices that the msi irq was disabled before restore time, so it skips the restore. However we now have a leak of the msi saved cap because we are not freeing it.
Quoted 8 lines
This leaves with some basic questions.
- Does it make sense for suspend/resume methods to request/free irqs?
- Does it make sense for suspend/resume methods to allocate/free msi irqs?
- Do we want pci_save/restore_cap to save/restore msi state?The path of least resistance is to just free the extra state and we are good. I'm just not quite certain that is sane and it has been a long day.
we used to have a lengthy e1000_pci_save|restore_state in our code, which is now gone, so I'm all for that. A separate pci_save_pxie|msi(x)_state for every driver seems completely unnecessary. I can't think of a use case where saving+restoring everything hurts. That's what you want I presume.
We currently free all irq's and msi before going into suspend in e1000, and I think that is probably a good thing, somehow I can think of bad things happening if we dont, but I admit that I haven't tried it without alloc/free. We do this in e100 as well and it works.
Another motivation would be to leave this up to the driver: if the driver chooses to free/alloc interrupts because it makes sense, you probably would want to keep that choice available. Devices that don't need this can skip the alloc/free, but leave the choice open for others.
hth
Auke
Re: SATA resume slowness, e1000 MSI warning
Quoted 49 lines · Auke
Quoted 29 lines · Eric W. Biederman
Quoted 11 lines · Auke
Quoted 9 lines · Ingo Molnar
Quoted 5 lines · Kok, Auke
Quoted 3 lines
Quoted 1 line
BUG: at drivers/pci/msi.c:611 pci_enable_msi()I would poke Eric Biederman(sp?) about this one. Maybe its even solved by the MSI-enable-related patch he posted in the past 24-48 hours.
I tried the 3-patch series "[PATCH 0/3] Basic msi bug fixes.." and they fix this problem for me. Were you expecting the OOPS in the first place? [...]
the bug was the warning message (a
WARN_ON()) above - not an oops. So that warning message is gone in your testing?yes.
Sorry for the slow delay. I was out of town for my brothers wedding the last few days.
I wasn't exactly expecting the
WARN_ONto trigger. What I fixed was an inconsistency in handling our state bits. Fixing that inconsistency appears to have fixed the e1000 usage scenario mostly by accident.The basic issue is that
pci_save_statesaves the current msi state along with other registers, and then the e1000 driver goes and disables the msi irq after we have saved the irq state as on.My code notices that the msi irq was disabled before restore time, so it skips the restore. However we now have a leak of the msi saved cap because we are not freeing it.
Quoted 8 lines
This leaves with some basic questions.
- Does it make sense for suspend/resume methods to request/free irqs?
- Does it make sense for suspend/resume methods to allocate/free msi irqs?
- Do we want pci_save/restore_cap to save/restore msi state?The path of least resistance is to just free the extra state and we are good. I'm just not quite certain that is sane and it has been a long day.
we used to have a lengthy e1000_pci_save|restore_state in our code, which is now gone, so I'm all for that. A separate pci_save_pxie|msi(x)_state for every driver seems completely unnecessary. I can't think of a use case where saving+restoring everything hurts. That's what you want I presume.
We currently free all irq's and msi before going into suspend in e1000, and I think that is probably a good thing, somehow I can think of bad things happening if we dont, but I admit that I haven't tried it without alloc/free. We do this in e100 as well and it works.
Quoted 4 lines
Another motivation would be to leave this up to the driver: if the driver chooses to free/alloc interrupts because it makes sense, you probably would want to keep that choice available. Devices that don't need this can skip the alloc/free, but leave the choice open for others.
ah, looking at the code in e1000 we do:
_suspend:
pci_save_state(); free_irq()
_resume:
pci_restore_state(); alloc_irq();
I suppose that's not good either, and the major cause of the warning in the first place.
Maybe I can rollback your latest patches and try to fix that mess by postponing the pci_save_state until after we free'd the irq's.
Auke
Re: SATA resume slowness, e1000 MSI warning
Quoted 8 lines · Auke
Quoted 7 lines · Auke
Quoted 5 lines · Eric W. Biederman
This leaves with some basic questions.
- Does it make sense for suspend/resume methods to request/free irqs?
- Does it make sense for suspend/resume methods to allocate/free msi irqs?
- Do we want pci_save/restore_cap to save/restore msi state?
Quoted 8 lines
Quoted 8 lines
Quoted 3 lines
The path of least resistance is to just free the extra state and we are good. I'm just not quite certain that is sane and it has been a long day.
we used to have a lengthy e1000_pci_save|restore_state in our code, which is now gone, so I'm all for that. A separate pci_save_pxie|msi(x)_state for every driver seems completely unnecessary. I can't think of a use case where saving+restoring everything hurts. That's what you want I presume.
I just want to understand why we have issues and to see if how we have organized the suspend/resume path for dealing with msi irqs makes sense.
That is I haven't looked much at the suspend/resume path so I don't know it well and I am afraid that your problem might be a symptom of a deeper problem.
Quoted 4 lines
Quoted 4 lines
We currently free all irq's and msi before going into suspend in e1000, and I think that is probably a good thing, somehow I can think of bad things happening if we dont, but I admit that I haven't tried it without alloc/free. We do this in e100 as well and it works.
Currently the irq code supports operation without the free_irq/request_irq. Since the numbers given are pure linux abstractions things should it is really a matter of just saving/restoring the appropriate state.
Quoted 11 lines
Quoted 4 lines
Another motivation would be to leave this up to the driver: if the driver chooses to free/alloc interrupts because it makes sense, you probably would want to keep that choice available. Devices that don't need this can skip the alloc/free, but leave the choice open for others.
ah, looking at the code in e1000 we do:
_suspend:pci_save_state(); free_irq()
Quoted 6 lines
_resume:pci_restore_state(); alloc_irq();I suppose that's not good either, and the major cause of the warning in the first place.
Yep.
Quoted 2 lines
Maybe I can rollback your latest patches and try to fix that mess by postponing the
pci_save_stateuntil after we free'd the irq's.
Below is an additional set of warnings that should help debug this. The old code just got lucky that it triggered a warning when this happens.
drivers/pci/msi.c +6 -0
@@ -613,6 +613,7 @@ int pci_enable_msi(struct pci_dev* dev)return -EINVAL ;WARN_ON (!!dev->msi_enabled); +WARN_ON (!hlist_empty (&dev->saved_cap_space));/* Check whether driver already requested for MSI-X irqs */ if (dev->msix_enabled) {
@@ -638,6 +639,8 @@ void pci_disable_msi(struct pci_dev* dev)if (!dev->msi_enabled)return ; +WARN_ON (!hlist_empty (&dev->saved_cap_space)); +msi_set_enable (dev,0 );pci_intx (dev,1 );/* enable intx */ dev->msi_enabled =0 ;
@@ -739,6 +742,7 @@ int pci_enable_msix(struct pci_dev* dev, struct msix_entry *entries, int nvec) } }WARN_ON (!!dev->msix_enabled); +WARN_ON (!hlist_empty (&dev->saved_cap_space));/* Check whether driver already requested for MSI irq */ if (dev->msi_enabled) {
@@ -763,6 +767,8 @@ void pci_disable_msix(struct pci_dev* dev)if (!dev->msix_enabled)return ; +WARN_ON (!hlist_empty (&dev->saved_cap_space)); +msix_set_enable (dev,0 );pci_intx (dev,1 );/* enable intx */ dev->msix_enabled =0 ;
drivers/pci/pci.c +1 -0
@@ -677,6 +677,7 @@ pci_restore_state(struct pci_dev *dev) }pci_restore_pcix_state (dev);pci_restore_msi_state (dev); +WARN_ON (!hlist_empty (&dev->saved_cap_space));return 0 ; }
Re: SATA resume slowness, e1000 MSI warning
Quoted 46 lines · On Wed, 07 Mar 2007 12:28:11 -0700 [email protected] (Eric W. Biederman)…
Below is an additional set of warnings that should help debug this. The old code just got lucky that it triggered a warning when this happens.
drivers/pci/msi.c +6
-0@@ -613,6 +613,7 @@ int pci_enable_msi(struct pci_dev* dev)return -EINVAL ;WARN_ON (!!dev->msi_enabled); +WARN_ON (!hlist_empty (&dev->saved_cap_space));/* Check whether driver already requested for MSI-X irqs */ if (dev->msix_enabled) {@@ -638,6 +639,8 @@ void pci_disable_msi(struct pci_dev* dev)if (!dev->msi_enabled)return ; +WARN_ON (!hlist_empty (&dev->saved_cap_space)); +msi_set_enable (dev,0 );pci_intx (dev,1 );/* enable intx */ dev->msi_enabled =0 ;@@ -739,6 +742,7 @@ int pci_enable_msix(struct pci_dev* dev, struct msix_entry *entries, int nvec) } }WARN_ON (!!dev->msix_enabled); +WARN_ON (!hlist_empty (&dev->saved_cap_space));/* Check whether driver already requested for MSI irq */ if (dev->msi_enabled) {@@ -763,6 +767,8 @@ void pci_disable_msix(struct pci_dev* dev)if (!dev->msix_enabled)return ; +WARN_ON (!hlist_empty (&dev->saved_cap_space)); +msix_set_enable (dev,0 );pci_intx (dev,1 );/* enable intx */ dev->msix_enabled =0 ;drivers/pci/pci.c +0
-0
drivers/pci/pci.c pci_restore_state(struct pci_dev *dev) · line 683
Quoted 7 lines
drivers/pci/pci.c +1
-0@@ -677,6 +677,7 @@ pci_restore_state(struct pci_dev *dev) }pci_restore_pcix_state (dev);pci_restore_msi_state (dev); +WARN_ON (!hlist_empty (&dev->saved_cap_space));return 0 ; }
Got a hit on a powerpc g5:
PM: Writing back config space on device 0001:05:04.0 at offset 1 (was 2b00000, writing 2b00006)
------------[ cut here ]------------
Badness at drivers/pci/pci.c:679
Call Trace:
[C0000000080F7410] [C000000000011EFC] .show_stack+0x50/0x1cc (unreliable)
[C0000000080F74C0] [C0000000001AD610] .report_bug+0xa0/0x110
[C0000000080F7550] [C0000000000256E4] .program_check_exception+0xb4/0x670
[C0000000080F7630] [C0000000000046F4] program_check_common+0xf4/0x100
--- Exception: 700 at .pci_restore_state+0x310/0x340
LR = .pci_restore_state+0x2e0/0x340
[C0000000080F79D0] [C00000000026A174] .tg3_chip_reset+0x19c/0xa04
[C0000000080F7A90] [C00000000026D948] .tg3_reset_hw+0xa4/0x2718
[C0000000080F7BA0] [C000000000270030] .tg3_init_hw+0x74/0x94
[C0000000080F7C30] [C000000000270BE0] .tg3_open+0x4c8/0x854
[C0000000080F7CF0] [C0000000003A74A4] .dev_open+0x100/0x12c
[C0000000080F7D90] [C0000000003BAEA8] .netpoll_setup+0x2dc/0x3ec
[C0000000080F7E40] [C000000000283450] .init_netconsole+0x64/0x8c
[C0000000080F7EC0] [C0000000005C0BE4] .init+0x1d0/0x390
[C0000000080F7F90] [C0000000000271F8] .kernel_thread+0x4c/0x68tg3: eth0: Link is up at 1000 Mbps, full duplex.
tg3: eth0: Flow control is on for TX and on for RX. Scheduler bitmap error - bitmap being reconstructed..
netconsole: network logging started
Calling initcall 0xc0000000006bd180: .macio_module_init+0x0/0x3c()
That's:
pci_restore_pcix_state(dev);
pci_restore_msi_state(dev);
WARN_ON(!hlist_empty(&dev->saved_cap_space));
return 0;Re: SATA resume slowness, e1000 MSI warning
Quoted 8 lines · Andrew Morton
That's:
pci_restore_pcix_state(dev); pci_restore_msi_state(dev); WARN_ON(!hlist_empty(&dev->saved_cap_space)); return 0;
Hmm. Either I am confused of I just found an unanticipated leak.
pci_restore_msi_state should be out of the picture as we don't yet have ppc msi support and I don't think the g5 generation hardware supported it either.
The only case I can see which might trigger this is if we saved pci-X state and then didn't restore it because we could not find the capability on restore.
Any chance you could walk that list and find the cap_nr of the remaining element?
Something like:
{
struct pci_cap_saved_state *tmp;
struct hlist_node *pos;
hlist_for_each_entry(tmp, pos, &pci_dev->saved_cap_space, next)
printk(KERN_INFO "saved_cap: 0x%02x\n", tmp->cap_nr);
}Until I get the best scenario I can come up with is a tg3 hardware bug that doesn't renable the pci-X capability after a restore of power state.
Getting that cap_nr will at least allow me to be certain if I am dealing with msi, pci-X or pci-e.
Unanticipated bugs aren't supposed to be this easy to find!
Eric
Re: SATA resume slowness, e1000 MSI warning
Quoted 2 lines · Eric W. Biederman
Until I get the best scenario I can come up with is a tg3 hardware bug that doesn't renable the pci-X capability after a restore of power state.
Speaking of tg3, make sure you are aware that the number of calls to save-state functions may not match the number of calls to the restore-state functions. ISTR seeing some memleak bugs in PCI related to this.
Jeff
Re: SATA resume slowness, e1000 MSI warning
Quoted 8 lines · Jeff Garzik
Quoted 2 lines · Eric W. Biederman
Until I get the best scenario I can come up with is a tg3 hardware bug that doesn't renable the pci-X capability after a restore of power state.
Speaking of tg3, make sure you are aware that the number of calls to save-state functions may not match the number of calls to the restore-state functions. ISTR seeing some memleak bugs in PCI related to this.
Thanks that looks like the problem, multiple calls to save before one call to restore when you have a pci-x capability would easily trigger this problem. I just surveyed a bunch of the pci_save_state and pci_restore_state users and this appears to be a common idiom not just a tg3 thing....
It looks like when code was added to save/restore the msi capability was added to pci_save/restore_state that an assumption was added that pci_save_state and pci_restore state were only used for suspend and only used in pairs. There is even a partial bug fix that removed the worst of the symptoms of that assumption from the msi code but failed to recognize the core problem.
Now that we have code to work with pcie and pcix capabilities as well as msi this problem is much easier to hit.
All of pci_save_state and pci_restore_state is going to have to be restructured to fix this, and it is late in the game. Ugh. Oh well, better to fix it now
At least I get my answer about if what pci_save_state is doing is reasonable. It is not. pci_save_state no longer supports being used in conjunction with hardware reset and has become a suspend/resume specific function.
Now I'm off to wite some patches to fix this.
Eric
cover Repair pci_restore_state when used with device resets
Well this is clearly a weird tangent from the topic of this thread but it looks to have found some real bugs even if they aren't the ones we are looking for.
In short pci_save_state and pci_restore_state are used to two primary
was: As a pair called from the suspend and restore routines. One save to multiple restores usually present in hardware reset routines.
The additions to save/restore msi, pci-e and pci-x state failed to take this second usage scenario into account.
The next two patches address this problem.
This should directly fix the issue observed with the tg3, with multiple saves and a single restore.
It happens that to handle the reset case cleanly we also need to support the odd usage model of the current e1000 driver.
I have never have figured out how to get suspend/resume actually
working on any of my machines so the code path is untested. But the
patches are trivial and pretty much obviously correct.
So if a couple people could do a quick suspend/resume test on these patches to confirm I'm not blind that would be great.
Eric
PATCH 1/2 msi: Safer state caching.
There are two ways pci_save_state and pci_restore_state are used. As helper functions during suspend/resume, and as helper functions around a hardware reset event. When used as helper functions around a hardware reset event there is no reason to believe the calls will be paired, nor is there a good reason to believe that if we restore the msi state from before the reset that it will match the current msi state. Since arch code may change the msi message without going through the driver, drivers currently do not have enough information to even know when to call pci_save_state to ensure they will have msi state in sync with the other kernel irq reception data structures.
It turns out the solution is straight forward, cache the state in the existing msi data structures (not the magic pci saved things) and have the msi code update the cached state each time we write to the hardware. This means we never need to read the hardware to figure out what the hardware state should be.
By modifying the caching in this manner we get to remove our save_state routines and only need to provide restore_state routines.
The only fields that were at all tricky to regenerate were the msi and msi-x control registers and the way we regenerate them currently is a bit dependent upon assumptions on how we use the allow msi registers to be configured and used making the code a little bit brittle. If we ever change what cases we allow or how we configure the msi bits we can address the fragility then.
--- drivers/pci/msi.c | 150 ++++++++-------------------------------------- drivers/pci/pci.c | 2 - drivers/pci/pci.h | 2 - include/linux/msi.h | 8 +-- include/linux/pci_regs.h | 1 + 5 files changed, 29 insertions(+), 134 deletions(-)
drivers/pci/msi.c +25 -125
@@ -100,6 +100,7 @@ static void msi_set_mask_bit(unsigned int irq, int flag)BUG ();break ; } + entry->msi_attrib.masked = !!flag; }void read_msi_msg (unsigned int irq,struct msi_msg *msg)
@@ -179,6 +180,7 @@ void write_msi_msg(unsigned int irq, struct msi_msg *msg)default :BUG (); } + entry->msg = *msg; }void mask_msi_irq (unsigned int irq)
@@ -225,164 +227,60 @@ static struct msi_desc* alloc_msi_entry(void) }#ifdef CONFIG_PM -static int __pci_save_msi_state (struct pci_dev *dev) -{ -int pos, i =0 ; -u16 control; -struct pci_cap_saved_state *save_state; -u32 *cap; - -if (!dev->msi_enabled) -return 0 ; - - pos =pci_find_capability (dev,PCI_CAP_ID_MSI ); -if (pos <=0 ) -return 0 ; - - save_state =kzalloc (sizeof (struct pci_cap_saved_state ) +sizeof (u32) *5 , -GFP_KERNEL ); -if (!save_state) { -printk (KERN_ERR "Out of memory in pci_save_msi_state\n" ); -return -ENOMEM ; - } - cap = &save_state->data[0 ]; - -pci_read_config_dword (dev, pos, &cap[i++]); - control = cap[0 ] >>16 ; -pci_read_config_dword (dev, pos +PCI_MSI_ADDRESS_LO , &cap[i++]); -if (control &PCI_MSI_FLAGS_64BIT ) { -pci_read_config_dword (dev, pos +PCI_MSI_ADDRESS_HI , &cap[i++]); -pci_read_config_dword (dev, pos +PCI_MSI_DATA_64 , &cap[i++]); - }else -pci_read_config_dword (dev, pos +PCI_MSI_DATA_32 , &cap[i++]); -if (control &PCI_MSI_FLAGS_MASKBIT ) -pci_read_config_dword (dev, pos +PCI_MSI_MASK_BIT , &cap[i++]); - save_state->cap_nr =PCI_CAP_ID_MSI ; -pci_add_saved_cap (dev, save_state); -return 0 ; -} -static void __pci_restore_msi_state (struct pci_dev *dev) { -int i =0 , pos; +int pos;u16 control; -struct pci_cap_saved_state *save_state; -u32 *cap; +struct msi_desc *entry;if (!dev->msi_enabled)return ; - save_state =pci_find_saved_cap (dev,PCI_CAP_ID_MSI ); - pos =pci_find_capability (dev,PCI_CAP_ID_MSI ); -if (!save_state || pos <=0 ) -return ; - cap = &save_state->data[0 ]; + entry =get_irq_msi (dev->irq); + pos = entry->msi_attrib.pos;pci_intx (dev,0 );/* disable intx */ - control = cap[i++] >>16 ;msi_set_enable (dev,0 ); -pci_write_config_dword (dev, pos +PCI_MSI_ADDRESS_LO , cap[i++]); -if (control &PCI_MSI_FLAGS_64BIT ) { -pci_write_config_dword (dev, pos +PCI_MSI_ADDRESS_HI , cap[i++]); -pci_write_config_dword (dev, pos +PCI_MSI_DATA_64 , cap[i++]); - }else -pci_write_config_dword (dev, pos +PCI_MSI_DATA_32 , cap[i++]); -if (control &PCI_MSI_FLAGS_MASKBIT ) -pci_write_config_dword (dev, pos +PCI_MSI_MASK_BIT , cap[i++]); +write_msi_msg (dev->irq, &entry->msg); +if (entry->msi_attrib.maskbit) +msi_set_mask_bit (dev->irq, entry->msi_attrib.masked); + +pci_read_config_word (dev, pos +PCI_MSI_FLAGS , &control); + control &= ~(PCI_MSI_FLAGS_QSIZE |PCI_MSI_FLAGS_ENABLE ); +if (entry->msi_attrib.maskbit || !entry->msi_attrib.masked) + control |=PCI_MSI_FLAGS_ENABLE ;pci_write_config_word (dev, pos +PCI_MSI_FLAGS , control); -pci_remove_saved_cap (save_state); -kfree (save_state); -} - -static int __pci_save_msix_state (struct pci_dev *dev) -{ -int pos; -int irq, head, tail =0 ; -u16 control; -struct pci_cap_saved_state *save_state; - -if (!dev->msix_enabled) -return 0 ; - - pos =pci_find_capability (dev,PCI_CAP_ID_MSIX ); -if (pos <=0 ) -return 0 ; - -/* save the capability */ -pci_read_config_word (dev,msi_control_reg (pos), &control); - save_state =kzalloc (sizeof (struct pci_cap_saved_state ) +sizeof (u16), -GFP_KERNEL ); -if (!save_state) { -printk (KERN_ERR "Out of memory in pci_save_msix_state\n" ); -return -ENOMEM ; - } - *((u16 *)&save_state->data[0 ]) = control; - -/* save the table */ - irq = head = dev->first_msi_irq; -while (head != tail) { -struct msi_desc *entry; - - entry =get_irq_msi (irq); -read_msi_msg (irq, &entry->msg_save); - - tail = entry->link.tail; - irq = tail; - } - - save_state->cap_nr =PCI_CAP_ID_MSIX ; -pci_add_saved_cap (dev, save_state); -return 0 ; -} - -int pci_save_msi_state (struct pci_dev *dev) -{ -int rc; - - rc =__pci_save_msi_state (dev); -if (rc) -return rc; - - rc =__pci_save_msix_state (dev); - -return rc; }static void __pci_restore_msix_state (struct pci_dev *dev) { -u16 save;int pos;int irq, head, tail =0 ;struct msi_desc *entry; -struct pci_cap_saved_state *save_state; +u16 control;if (!dev->msix_enabled)return ; - save_state =pci_find_saved_cap (dev,PCI_CAP_ID_MSIX ); -if (!save_state) -return ; - save = *((u16 *)&save_state->data[0 ]); -pci_remove_saved_cap (save_state); -kfree (save_state); - - pos =pci_find_capability (dev,PCI_CAP_ID_MSIX ); -if (pos <=0 ) -return ; -/* route the table */ pci_intx (dev,0 );/* disable intx */ msix_set_enable (dev,0 ); irq = head = dev->first_msi_irq; + entry =get_irq_msi (irq); + pos = entry->msi_attrib.pos;while (head != tail) { entry =get_irq_msi (irq); -write_msi_msg (irq, &entry->msg_save); +write_msi_msg (irq, &entry->msg); +msi_set_mask_bit (irq, entry->msi_attrib.masked); tail = entry->link.tail; irq = tail; } -pci_write_config_word (dev,msi_control_reg (pos), save); +pci_read_config_word (dev, pos +PCI_MSIX_FLAGS , &control); + control &= ~PCI_MSIX_FLAGS_MASKALL ; + control |=PCI_MSIX_FLAGS_ENABLE ; +pci_write_config_word (dev, pos +PCI_MSIX_FLAGS , control); }void pci_restore_msi_state (struct pci_dev *dev)
@@ -420,6 +318,7 @@ static int msi_capability_init(struct pci_dev *dev) entry->msi_attrib.is_64 =is_64bit_address (control); entry->msi_attrib.entry_nr =0 ; entry->msi_attrib.maskbit =is_mask_bit_support (control); + entry->msi_attrib.masked =1 ; entry->msi_attrib.default_irq = dev->irq;/* Save IOAPIC IRQ */ entry->msi_attrib.pos = pos;if (is_mask_bit_support (control)) {
@@ -507,6 +406,7 @@ static int msix_capability_init(struct pci_dev *dev, entry->msi_attrib.is_64 =1 ; entry->msi_attrib.entry_nr = j; entry->msi_attrib.maskbit =1 ; + entry->msi_attrib.masked =1 ; entry->msi_attrib.default_irq = dev->irq; entry->msi_attrib.pos = pos; entry->dev = dev;
drivers/pci/pci.c +0 -2
@@ -638,8 +638,6 @@ pci_save_state(struct pci_dev *dev)/* XXX: 100% dword access ok here? */ for (i =0 ; i <16 ; i++)pci_read_config_dword (dev, i *4 ,&dev->saved_config_space[i]); -if ((i =pci_save_msi_state (dev)) !=0 ) -return i;if ((i =pci_save_pcie_state (dev)) !=0 )return i;if ((i =pci_save_pcix_state (dev)) !=0 )
drivers/pci/pci.h +0 -2
@@ -52,10 +52,8 @@ static inline void pci_no_msi(void) { }#endif #if defined(CONFIG_PCI_MSI ) && defined(CONFIG_PM ) -int pci_save_msi_state (struct pci_dev *dev);void pci_restore_msi_state (struct pci_dev *dev);#else -static inline int pci_save_msi_state (struct pci_dev *dev) {return 0 ; }static inline void pci_restore_msi_state (struct pci_dev *dev) {}#endif
include/linux/msi.h +3 -5
@@ -17,7 +17,7 @@ struct msi_desc {struct {__u8 type :5 ;/* {0: unused, 5h:MSI, 11h:MSI-X} */ __u8 maskbit :1 ;/* mask-pending bit supported ? */ -__u8 unused :1 ; +__u8 masked :1 ;__u8 is_64 :1 ;/* Address size: 0=32bit 1=64bit */ __u8 pos;/* Location of the msi capability */ __u16 entry_nr;/* specific enabled entry */
@@ -32,10 +32,8 @@ struct msi_desc {void __iomem *mask_base;struct pci_dev *dev; -#ifdef CONFIG_PM -/* PM save area for MSIX address/data */ -struct msi_msg msg_save; -#endif +/* Last set MSI message */ +struct msi_msg msg; };/*
include/linux/pci_regs.h +1 -0
@@ -296,6 +296,7 @@#define PCI_MSIX_FLAGS 2#define PCI_MSIX_FLAGS_QSIZE 0x7FF#define PCI_MSIX_FLAGS_ENABLE (1 << 15) +#define PCI_MSIX_FLAGS_MASKALL (1 << 14)#define PCI_MSIX_FLAGS_BIRMASK (7 << 0)#define PCI_MSIX_FLAGS_BITMASK (1 << 0)
Signature · 1 line
1.5.0.g53756
PATCH 2/2 pci: Repair pci_save/restore_state so we can restore one save many times.
Because we do not reserve space for the pci-x and pci-e state in struct pci dev we need to dynamically allocate it. However because we need to support restore being called multiple times after a single save it is never safe to free the buffers we have allocated to hold the state.
So this patch modifies the save routines to first check to see if we have already allocated a state buffer before allocating a new one. Then the restore routines are modified to not free the state after restoring it. Simple and it fixes some subtle error path handling bugs, that are hard to test for.
--- drivers/pci/pci.c | 12 ++++++------ include/linux/pci.h | 5 ----- 2 files changed, 6 insertions(+), 11 deletions(-)
drivers/pci/pci.c +6 -6
@@ -551,7 +551,9 @@ static int pci_save_pcie_state(struct pci_dev *dev)if (pos <=0 )return 0 ; - save_state =kzalloc (sizeof (*save_state) +sizeof (u16) *4 ,GFP_KERNEL ); + save_state =pci_find_saved_cap (dev,PCI_CAP_ID_EXP ); +if (!save_state) + save_state =kzalloc (sizeof (*save_state) +sizeof (u16) *4 ,GFP_KERNEL );if (!save_state) {dev_err (&dev->dev,"Out of memory in pci_save_pcie_state\n" );return -ENOMEM ;
@@ -582,8 +584,6 @@ static void pci_restore_pcie_state(struct pci_dev *dev)pci_write_config_word (dev, pos +PCI_EXP_LNKCTL , cap[i++]);pci_write_config_word (dev, pos +PCI_EXP_SLTCTL , cap[i++]);pci_write_config_word (dev, pos +PCI_EXP_RTCTL , cap[i++]); -pci_remove_saved_cap (save_state); -kfree (save_state); }
@@ -597,7 +597,9 @@ static int pci_save_pcix_state(struct pci_dev *dev)if (pos <=0 )return 0 ; - save_state =kzalloc (sizeof (*save_state) +sizeof (u16),GFP_KERNEL ); + save_state =pci_find_saved_cap (dev,PCI_CAP_ID_EXP ); +if (!save_state) + save_state =kzalloc (sizeof (*save_state) +sizeof (u16),GFP_KERNEL );if (!save_state) {dev_err (&dev->dev,"Out of memory in pci_save_pcie_state\n" );return -ENOMEM ;
@@ -622,8 +624,6 @@ static void pci_restore_pcix_state(struct pci_dev *dev) cap = (u16 *)&save_state->data[0 ];pci_write_config_word (dev, pos +PCI_X_CMD , cap[i++]); -pci_remove_saved_cap (save_state); -kfree (save_state); }
include/linux/pci.h +0 -5
@@ -209,11 +209,6 @@ static inline void pci_add_saved_cap(struct pci_dev *pci_dev,hlist_add_head (&new_cap->next, &pci_dev->saved_cap_space); } -static inline void pci_remove_saved_cap (struct pci_cap_saved_state *cap) -{ -hlist_del (&cap->next); -} -/* * For PCI devices, the region numbers are assigned this way: *
Signature · 1 line
1.5.0.g53756
[email protected]
Appliedpatch pci-repair-pci_save-restore_state-so-we-can-restore-one-save-many-times.patch added to gregkh-2.6 tree
This is a note to let you know that I've just added the patch titled
Subject: pci: Repair pci_save/restore_state so we can restore one save many times.
to my gregkh-2.6 tree. Its filename is
pci-repair-pci_save-restore_state-so-we-can-restore-one-save-many-times.patch
This tree can be found at
http://www.kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/patches/
Quoted 1 line
From [email protected] Thu Mar 8 12:06:39 2007
From: Eric W. Biederman <[email protected]>
Date: Thu, 08 Mar 2007 13:06:13 -0700
Subject: pci: Repair pci_save/restore_state so we can restore one save many times.
To: Andrew Morton <[email protected]>, Linus Torvalds <[email protected]>
Cc: Jeff Garzik <[email protected]>, "Kok, Auke" <[email protected]>, Ingo Molnar <[email protected]>, "Michael S. Tsirkin" <[email protected]>, Pavel Machek <[email protected]>, Jens Axboe <[email protected]>, Adrian Bunk <[email protected]>, Linux Kernel Mailing List <[email protected]>, Thomas Gleixner <[email protected]>, [email protected], Michal Piotrowski <[email protected]>, Greg Kroah-Hartman <[email protected]>, <[email protected]>, [email protected]
Message-ID: <[email protected]>
From: Eric W. Biederman <[email protected]>
Because we do not reserve space for the pci-x and pci-e state in struct pci dev we need to dynamically allocate it. However because we need to support restore being called multiple times after a single save it is never safe to free the buffers we have allocated to hold the state.
So this patch modifies the save routines to first check to see if we have already allocated a state buffer before allocating a new one. Then the restore routines are modified to not free the state after restoring it. Simple and it fixes some subtle error path handling bugs, that are hard to test for.
--- drivers/pci/pci.c | 12 ++++++------ include/linux/pci.h | 5 ----- 2 files changed, 6 insertions(+), 11 deletions(-)
drivers/pci/pci.c +6 -6
@@ -551,7 +551,9 @@ static int pci_save_pcie_state(struct pcif (pos <=0 )return 0 ; - save_state =kzalloc (sizeof (*save_state) +sizeof (u16) *4 ,GFP_KERNEL ); + save_state =pci_find_saved_cap (dev,PCI_CAP_ID_EXP ); +if (!save_state) + save_state =kzalloc (sizeof (*save_state) +sizeof (u16) *4 ,GFP_KERNEL );if (!save_state) {dev_err (&dev->dev,"Out of memory in pci_save_pcie_state\n" );return -ENOMEM ;
@@ -582,8 +584,6 @@ static void pci_restore_pcie_state(strucpci_write_config_word (dev, pos +PCI_EXP_LNKCTL , cap[i++]);pci_write_config_word (dev, pos +PCI_EXP_SLTCTL , cap[i++]);pci_write_config_word (dev, pos +PCI_EXP_RTCTL , cap[i++]); -pci_remove_saved_cap (save_state); -kfree (save_state); }
@@ -597,7 +597,9 @@ static int pci_save_pcix_state(struct pcif (pos <=0 )return 0 ; - save_state =kzalloc (sizeof (*save_state) +sizeof (u16),GFP_KERNEL ); + save_state =pci_find_saved_cap (dev,PCI_CAP_ID_EXP ); +if (!save_state) + save_state =kzalloc (sizeof (*save_state) +sizeof (u16),GFP_KERNEL );if (!save_state) {dev_err (&dev->dev,"Out of memory in pci_save_pcie_state\n" );return -ENOMEM ;
@@ -622,8 +624,6 @@ static void pci_restore_pcix_state(struc cap = (u16 *)&save_state->data[0 ];pci_write_config_word (dev, pos +PCI_X_CMD , cap[i++]); -pci_remove_saved_cap (save_state); -kfree (save_state); }
include/linux/pci.h +0 -5
@@ -222,11 +222,6 @@ static inline void pci_add_saved_cap(strhlist_add_head (&new_cap->next, &pci_dev->saved_cap_space); } -static inline void pci_remove_saved_cap (struct pci_cap_saved_state *cap) -{ -hlist_del (&cap->next); -} -/* * For PCI devices, the region numbers are assigned this way: *
Patches currently in gregkh-2.6 which might be from [email protected] are
Re: [PATCH 2/2] pci: Repair pci_save/restore_state so we can restore one save many times.
In reply to Eric W. BiedermanQuoted 6 lines · Eric W. Biederman
Because we do not reserve space for the pci-x and pci-e state in struct pci dev we need to dynamically allocate it. However because we need to support restore being called multiple times after a single save it is never safe to free the buffers we have allocated to hold the state.
Quoted 7 lines
So this patch modifies the save routines to first check to see if we have already allocated a state buffer before allocating a new one. Then the restore routines are modified to not free the state after restoring it. Simple and it fixes some subtle error path handling bugs, that are hard to test for.
Signed-off-by Eric W. Biederman <[email protected]>
I tested this patch and the other 2 in this series:
[PATCH 0/2] Repair pci_restore_state when used with device resets [PATCH 1/2] msi: Safer state caching.
against e1000 with suspend/resume functionality. Apart from a minor symmetry violation in e1000 for which I will send a patch later, these patches appear to work fine on my ich8 with 5 msi capable e1000 ports.
Feel free to add my Signed-off-by: Auke Kok <[email protected]>
Cheers,
Auke
Quoted 65 lines
--- drivers/pci/pci.c | 12 ++++++------ include/linux/pci.h | 5 ----- 2 files changed, 6 insertions(+), 11 deletions(-)drivers/pci/pci.c +6
-6@@ -551,7 +551,9 @@ static int pci_save_pcie_state(struct pci_dev *dev)if (pos <=0 )return 0 ; - save_state =kzalloc (sizeof (*save_state) +sizeof (u16) *4 ,GFP_KERNEL ); + save_state =pci_find_saved_cap (dev,PCI_CAP_ID_EXP ); +if (!save_state) + save_state =kzalloc (sizeof (*save_state) +sizeof (u16) *4 ,GFP_KERNEL );if (!save_state) {dev_err (&dev->dev,"Out of memory in pci_save_pcie_state\n" );return -ENOMEM ;@@ -582,8 +584,6 @@ static void pci_restore_pcie_state(struct pci_dev *dev)pci_write_config_word (dev, pos +PCI_EXP_LNKCTL , cap[i++]);pci_write_config_word (dev, pos +PCI_EXP_SLTCTL , cap[i++]);pci_write_config_word (dev, pos +PCI_EXP_RTCTL , cap[i++]); -pci_remove_saved_cap (save_state); -kfree (save_state); }@@ -597,7 +597,9 @@ static int pci_save_pcix_state(struct pci_dev *dev)if (pos <=0 )return 0 ; - save_state =kzalloc (sizeof (*save_state) +sizeof (u16),GFP_KERNEL ); + save_state =pci_find_saved_cap (dev,PCI_CAP_ID_EXP ); +if (!save_state) + save_state =kzalloc (sizeof (*save_state) +sizeof (u16),GFP_KERNEL );if (!save_state) {dev_err (&dev->dev,"Out of memory in pci_save_pcie_state\n" );return -ENOMEM ;@@ -622,8 +624,6 @@ static void pci_restore_pcix_state(struct pci_dev *dev) cap = (u16 *)&save_state->data[0 ];pci_write_config_word (dev, pos +PCI_X_CMD , cap[i++]); -pci_remove_saved_cap (save_state); -kfree (save_state); }include/linux/pci.h +0
-5@@ -209,11 +209,6 @@ static inline void pci_add_saved_cap(struct pci_dev *pci_dev,hlist_add_head (&new_cap->next, &pci_dev->saved_cap_space); } -static inline void pci_remove_saved_cap (struct pci_cap_saved_state *cap) -{ -hlist_del (&cap->next); -} -/* * For PCI devices, the region numbers are assigned this way: *
[email protected]
Appliedpatch msi-safer-state-caching.patch added to gregkh-2.6 tree
In reply to Eric W. BiedermanThis is a note to let you know that I've just added the patch titled
Subject: msi: Safer state caching.
to my gregkh-2.6 tree. Its filename is
msi-safer-state-caching.patch
This tree can be found at
http://www.kernel.org/pub/linux/kernel/people/gregkh/gregkh-2.6/patches/
Quoted 1 line
From [email protected] Thu Mar 8 12:05:21 2007
From: Eric W. Biederman <[email protected]>
Date: Thu, 08 Mar 2007 13:04:57 -0700
Subject: msi: Safer state caching.
To: Andrew Morton <[email protected]>, Linus Torvalds <[email protected]>
Cc: Jeff Garzik <[email protected]>, "Kok, Auke" <[email protected]>, Ingo Molnar <[email protected]>, "Michael S. Tsirkin" <[email protected]>, Pavel Machek <[email protected]>, Jens Axboe <[email protected]>, Adrian Bunk <[email protected]>, Linux Kernel Mailing List <[email protected]>, Thomas Gleixner <[email protected]>, [email protected], Michal Piotrowski <[email protected]>, Greg Kroah-Hartman <[email protected]>, <[email protected]>, [email protected]
Message-ID: <[email protected]>
From: Eric W. Biederman <[email protected]>
There are two ways pci_save_state and pci_restore_state are used. As helper functions during suspend/resume, and as helper functions around a hardware reset event. When used as helper functions around a hardware reset event there is no reason to believe the calls will be paired, nor is there a good reason to believe that if we restore the msi state from before the reset that it will match the current msi state. Since arch code may change the msi message without going through the driver, drivers currently do not have enough information to even know when to call pci_save_state to ensure they will have msi state in sync with the other kernel irq reception data structures.
It turns out the solution is straight forward, cache the state in the existing msi data structures (not the magic pci saved things) and have the msi code update the cached state each time we write to the hardware. This means we never need to read the hardware to figure out what the hardware state should be.
By modifying the caching in this manner we get to remove our save_state routines and only need to provide restore_state routines.
The only fields that were at all tricky to regenerate were the msi and msi-x control registers and the way we regenerate them currently is a bit dependent upon assumptions on how we use the allow msi registers to be configured and used making the code a little bit brittle. If we ever change what cases we allow or how we configure the msi bits we can address the fragility then.
--- drivers/pci/msi.c | 150 +++++++---------------------------------------- drivers/pci/pci.c | 2 drivers/pci/pci.h | 2 include/linux/msi.h | 8 -- include/linux/pci_regs.h | 1 5 files changed, 29 insertions(+), 134 deletions(-)
drivers/pci/msi.c +25 -125
@@ -100,6 +100,7 @@ static void msi_set_mask_bit(unsigned inBUG ();break ; } + entry->msi_attrib.masked = !!flag; }void read_msi_msg (unsigned int irq,struct msi_msg *msg)
@@ -179,6 +180,7 @@ void write_msi_msg(unsigned int irq, strdefault :BUG (); } + entry->msg = *msg; }void mask_msi_irq (unsigned int irq)
@@ -225,164 +227,60 @@ static struct msi_desc* alloc_msi_entry( }#ifdef CONFIG_PM -static int __pci_save_msi_state (struct pci_dev *dev) -{ -int pos, i =0 ; -u16 control; -struct pci_cap_saved_state *save_state; -u32 *cap; - -if (!dev->msi_enabled) -return 0 ; - - pos =pci_find_capability (dev,PCI_CAP_ID_MSI ); -if (pos <=0 ) -return 0 ; - - save_state =kzalloc (sizeof (struct pci_cap_saved_state ) +sizeof (u32) *5 , -GFP_KERNEL ); -if (!save_state) { -printk (KERN_ERR "Out of memory in pci_save_msi_state\n" ); -return -ENOMEM ; - } - cap = &save_state->data[0 ]; - -pci_read_config_dword (dev, pos, &cap[i++]); - control = cap[0 ] >>16 ; -pci_read_config_dword (dev, pos +PCI_MSI_ADDRESS_LO , &cap[i++]); -if (control &PCI_MSI_FLAGS_64BIT ) { -pci_read_config_dword (dev, pos +PCI_MSI_ADDRESS_HI , &cap[i++]); -pci_read_config_dword (dev, pos +PCI_MSI_DATA_64 , &cap[i++]); - }else -pci_read_config_dword (dev, pos +PCI_MSI_DATA_32 , &cap[i++]); -if (control &PCI_MSI_FLAGS_MASKBIT ) -pci_read_config_dword (dev, pos +PCI_MSI_MASK_BIT , &cap[i++]); - save_state->cap_nr =PCI_CAP_ID_MSI ; -pci_add_saved_cap (dev, save_state); -return 0 ; -} -static void __pci_restore_msi_state (struct pci_dev *dev) { -int i =0 , pos; +int pos;u16 control; -struct pci_cap_saved_state *save_state; -u32 *cap; +struct msi_desc *entry;if (!dev->msi_enabled)return ; - save_state =pci_find_saved_cap (dev,PCI_CAP_ID_MSI ); - pos =pci_find_capability (dev,PCI_CAP_ID_MSI ); -if (!save_state || pos <=0 ) -return ; - cap = &save_state->data[0 ]; + entry =get_irq_msi (dev->irq); + pos = entry->msi_attrib.pos;pci_intx (dev,0 );/* disable intx */ - control = cap[i++] >>16 ;msi_set_enable (dev,0 ); -pci_write_config_dword (dev, pos +PCI_MSI_ADDRESS_LO , cap[i++]); -if (control &PCI_MSI_FLAGS_64BIT ) { -pci_write_config_dword (dev, pos +PCI_MSI_ADDRESS_HI , cap[i++]); -pci_write_config_dword (dev, pos +PCI_MSI_DATA_64 , cap[i++]); - }else -pci_write_config_dword (dev, pos +PCI_MSI_DATA_32 , cap[i++]); -if (control &PCI_MSI_FLAGS_MASKBIT ) -pci_write_config_dword (dev, pos +PCI_MSI_MASK_BIT , cap[i++]); +write_msi_msg (dev->irq, &entry->msg); +if (entry->msi_attrib.maskbit) +msi_set_mask_bit (dev->irq, entry->msi_attrib.masked); + +pci_read_config_word (dev, pos +PCI_MSI_FLAGS , &control); + control &= ~(PCI_MSI_FLAGS_QSIZE |PCI_MSI_FLAGS_ENABLE ); +if (entry->msi_attrib.maskbit || !entry->msi_attrib.masked) + control |=PCI_MSI_FLAGS_ENABLE ;pci_write_config_word (dev, pos +PCI_MSI_FLAGS , control); -pci_remove_saved_cap (save_state); -kfree (save_state); -} - -static int __pci_save_msix_state (struct pci_dev *dev) -{ -int pos; -int irq, head, tail =0 ; -u16 control; -struct pci_cap_saved_state *save_state; - -if (!dev->msix_enabled) -return 0 ; - - pos =pci_find_capability (dev,PCI_CAP_ID_MSIX ); -if (pos <=0 ) -return 0 ; - -/* save the capability */ -pci_read_config_word (dev,msi_control_reg (pos), &control); - save_state =kzalloc (sizeof (struct pci_cap_saved_state ) +sizeof (u16), -GFP_KERNEL ); -if (!save_state) { -printk (KERN_ERR "Out of memory in pci_save_msix_state\n" ); -return -ENOMEM ; - } - *((u16 *)&save_state->data[0 ]) = control; - -/* save the table */ - irq = head = dev->first_msi_irq; -while (head != tail) { -struct msi_desc *entry; - - entry =get_irq_msi (irq); -read_msi_msg (irq, &entry->msg_save); - - tail = entry->link.tail; - irq = tail; - } - - save_state->cap_nr =PCI_CAP_ID_MSIX ; -pci_add_saved_cap (dev, save_state); -return 0 ; -} - -int pci_save_msi_state (struct pci_dev *dev) -{ -int rc; - - rc =__pci_save_msi_state (dev); -if (rc) -return rc; - - rc =__pci_save_msix_state (dev); - -return rc; }static void __pci_restore_msix_state (struct pci_dev *dev) { -u16 save;int pos;int irq, head, tail =0 ;struct msi_desc *entry; -struct pci_cap_saved_state *save_state; +u16 control;if (!dev->msix_enabled)return ; - save_state =pci_find_saved_cap (dev,PCI_CAP_ID_MSIX ); -if (!save_state) -return ; - save = *((u16 *)&save_state->data[0 ]); -pci_remove_saved_cap (save_state); -kfree (save_state); - - pos =pci_find_capability (dev,PCI_CAP_ID_MSIX ); -if (pos <=0 ) -return ; -/* route the table */ pci_intx (dev,0 );/* disable intx */ msix_set_enable (dev,0 ); irq = head = dev->first_msi_irq; + entry =get_irq_msi (irq); + pos = entry->msi_attrib.pos;while (head != tail) { entry =get_irq_msi (irq); -write_msi_msg (irq, &entry->msg_save); +write_msi_msg (irq, &entry->msg); +msi_set_mask_bit (irq, entry->msi_attrib.masked); tail = entry->link.tail; irq = tail; } -pci_write_config_word (dev,msi_control_reg (pos), save); +pci_read_config_word (dev, pos +PCI_MSIX_FLAGS , &control); + control &= ~PCI_MSIX_FLAGS_MASKALL ; + control |=PCI_MSIX_FLAGS_ENABLE ; +pci_write_config_word (dev, pos +PCI_MSIX_FLAGS , control); }void pci_restore_msi_state (struct pci_dev *dev)
@@ -420,6 +318,7 @@ static int msi_capability_init(struct pc entry->msi_attrib.is_64 =is_64bit_address (control); entry->msi_attrib.entry_nr =0 ; entry->msi_attrib.maskbit =is_mask_bit_support (control); + entry->msi_attrib.masked =1 ; entry->msi_attrib.default_irq = dev->irq;/* Save IOAPIC IRQ */ entry->msi_attrib.pos = pos;if (is_mask_bit_support (control)) {
@@ -507,6 +406,7 @@ static int msix_capability_init(struct p entry->msi_attrib.is_64 =1 ; entry->msi_attrib.entry_nr = j; entry->msi_attrib.maskbit =1 ; + entry->msi_attrib.masked =1 ; entry->msi_attrib.default_irq = dev->irq; entry->msi_attrib.pos = pos; entry->dev = dev;
drivers/pci/pci.c +0 -2
@@ -638,8 +638,6 @@ pci_save_state(struct pci_dev *dev)/* XXX: 100% dword access ok here? */ for (i =0 ; i <16 ; i++)pci_read_config_dword (dev, i *4 ,&dev->saved_config_space[i]); -if ((i =pci_save_msi_state (dev)) !=0 ) -return i;if ((i =pci_save_pcie_state (dev)) !=0 )return i;if ((i =pci_save_pcix_state (dev)) !=0 )
drivers/pci/pci.h +0 -2
@@ -52,10 +52,8 @@ static inline void pci_no_msi(void) { }#endif #if defined(CONFIG_PCI_MSI ) && defined(CONFIG_PM ) -int pci_save_msi_state (struct pci_dev *dev);void pci_restore_msi_state (struct pci_dev *dev);#else -static inline int pci_save_msi_state (struct pci_dev *dev) {return 0 ; }static inline void pci_restore_msi_state (struct pci_dev *dev) {}#endif
include/linux/msi.h +3 -5
@@ -17,7 +17,7 @@ struct msi_desc {struct {__u8 type :5 ;/* {0: unused, 5h:MSI, 11h:MSI-X} */ __u8 maskbit :1 ;/* mask-pending bit supported ? */ -__u8 unused :1 ; +__u8 masked :1 ;__u8 is_64 :1 ;/* Address size: 0=32bit 1=64bit */ __u8 pos;/* Location of the msi capability */ __u16 entry_nr;/* specific enabled entry */
@@ -32,10 +32,8 @@ struct msi_desc {void __iomem *mask_base;struct pci_dev *dev; -#ifdef CONFIG_PM -/* PM save area for MSIX address/data */ -struct msi_msg msg_save; -#endif +/* Last set MSI message */ +struct msi_msg msg; };/*
include/linux/pci_regs.h +1 -0
@@ -296,6 +296,7 @@#define PCI_MSIX_FLAGS 2#define PCI_MSIX_FLAGS_QSIZE 0x7FF#define PCI_MSIX_FLAGS_ENABLE (1 << 15) +#define PCI_MSIX_FLAGS_MASKALL (1 << 14)#define PCI_MSIX_FLAGS_BIRMASK (7 << 0)#define PCI_MSIX_FLAGS_BITMASK (1 << 0)
Patches currently in gregkh-2.6 which might be from [email protected] are
Re: [PATCH 0/2] Repair pci_restore_state when used with device resets
In reply to Eric W. BiedermanQuoted 2 lines · Eric W. Biederman
I have never have figured out how to get suspend/resume actually working on any of my machines [...]
ouch! Are you interested in getting it work?
Ingo
Re: [PATCH 0/2] Repair pci_restore_state when used with device resets
Quoted 6 lines · Ingo Molnar
Quoted 2 lines · Eric W. Biederman
I have never have figured out how to get suspend/resume actually working on any of my machines [...]
ouch! Are you interested in getting it work?
I haven't even seriously tried. I don't yet have a laptop and I like staying logged. The first time I rolled the jiffie counter it was a happened after I had realized that if I kept my machine up for another couple of months my jiffie counter would roll and I said why not So basically suspend hasn't been a feature I'm been interested in using. I get more annoyed at my UPS failing..
I will probably get around to figuring out the whole suspend/resume thing one of these days and it will probably take me a day or two. But that doesn't result in bug fixes being delivered in a timely manner.
Eric
Re: SATA resume slowness, e1000 MSI warning
In reply to Eric W. BiedermanQuoted 3 lines
The only case I can see which might trigger this is if we saved pci-X state and then didn't restore it because we could not find the capability on restore.
Hmm. pci_save_pcix_state/pci_restore_pcix_state seem to only handle regular devices and seem to ignore the fact that for bridge PCI-X capability has a different structure.
Is this intentional? If not, here's a patch to fix this.
Warning: completely untested.
PCI: restore bridge PCI-X capability registers after PM event
Restore PCI-X bridge up/downstream capability registers after PM event. This includes maxumum split transaction commitment limit which might be vital for PCI X.
drivers/pci/pci.c +13 -4
@@ -597,14 +597,19 @@ static int pci_save_pcix_state(struct pci_dev *dev)if (pos <=0 )return 0 ; - save_state =kzalloc (sizeof (*save_state) +sizeof (u16),GFP_KERNEL ); + save_state =kzalloc (sizeof (*save_state) +sizeof (u16) *2 ,GFP_KERNEL );if (!save_state) { -dev_err (&dev->dev,"Out of memory in pci_save_pcie_state\n" ); +dev_err (&dev->dev,"Out of memory in pci_save_pcix_state\n" );return -ENOMEM ; } cap = (u16 *)&save_state->data[0 ]; -pci_read_config_word (dev, pos +PCI_X_CMD , &cap[i++]); +if (dev->hdr_type ==PCI_HEADER_TYPE_BRIDGE ) { +pci_read_config_word (dev, pos +PCI_X_BRIDGE_UP_SPL_CTL , &cap[i++]); +pci_read_config_word (dev, pos +PCI_X_BRIDGE_DN_SPL_CTL , &cap[i++]); + }else +pci_read_config_word (dev, pos +PCI_X_CMD , &cap[i++]); +pci_add_saved_cap (dev, save_state);return 0 ; }
@@ -621,7 +626,11 @@ static void pci_restore_pcix_state(struct pci_dev *dev)return ; cap = (u16 *)&save_state->data[0 ]; -pci_write_config_word (dev, pos +PCI_X_CMD , cap[i++]); +if (dev->hdr_type ==PCI_HEADER_TYPE_BRIDGE ) { +pci_write_config_word (dev, pos +PCI_X_BRIDGE_UP_SPL_CTL , cap[i++]); +pci_write_config_word (dev, pos +PCI_X_BRIDGE_DN_SPL_CTL , cap[i++]); + }else +pci_write_config_word (dev, pos +PCI_X_CMD , cap[i++]);pci_remove_saved_cap (save_state);kfree (save_state); }
include/linux/pci_regs.h +2 -0
@@ -332,6 +332,8 @@#define PCI_X_STATUS_SPL_ERR 0x20000000/* Rcvd Split Completion Error Msg */ #define PCI_X_STATUS_266MHZ 0x40000000/* 266 MHz capable */ #define PCI_X_STATUS_533MHZ 0x80000000/* 533 MHz capable */ +#define PCI_X_BRIDGE_UP_SPL_CTL 10/* PCI-X upstream split transaction limit */ +#define PCI_X_BRIDGE_DN_SPL_CTL 14/* PCI-X downstream split transaction limit */ /* PCI Express capability registers */
Signature · 1 line
MST
Re: SATA resume slowness, e1000 MSI warning
Quoted 9 lines · Michael S. Tsirkin
Quoted 3 lines
The only case I can see which might trigger this is if we saved pci-X state and then didn't restore it because we could not find the capability on restore.
Hmm. pci_save_pcix_state/pci_restore_pcix_state seem to only handle regular devices and seem to ignore the fact that for bridge PCI-X capability has a different structure.
Is this intentional?
Probably not a such. I don't think we have any drivers for bridge devices so I don't think it matters. It likely wouldn't hurt to fix it just in case though.
Do any of the mellanox cards do anything with the bridge on the card?
Quoted 1 line
If not, here's a patch to fix this. Warning: completely untested.
If you fix the offsets and diff this against my last fix (to never free the buffer) I think your patch makes sense.
Quoted 17 lines
PCI: restore bridge PCI-X capability registers after PM event
Restore PCI-X bridge up/downstream capability registers after PM event. This includes maxumum split transaction commitment limit which might be vital for PCI X.
Signed-off-by Michael S. Tsirkin <[email protected]>drivers/pci/pci.c +0
-1@@ -597,14 +597,19 @@ static int pci_save_pcix_state(struct pci_dev *dev)if (pos <=0 )return 0 ; - save_state =kzalloc (sizeof (*save_state) +sizeof (u16),GFP_KERNEL );
drivers/pci/pci.c static int pci_save_pcix_state(struct pci_dev *dev) · line 607
Quoted 10 lines
drivers/pci/pci.c +3
-2+ save_state =kzalloc (sizeof (*save_state) +sizeof (u16) *2 ,GFP_KERNEL );if (!save_state) { -dev_err (&dev->dev,"Out of memory in pci_save_pcie_state\n" ); +dev_err (&dev->dev,"Out of memory in pci_save_pcix_state\n" );return -ENOMEM ; } cap = (u16 *)&save_state->data[0 ]; -pci_read_config_word (dev, pos +PCI_X_CMD , &cap[i++]); +if (dev->hdr_type ==PCI_HEADER_TYPE_BRIDGE ) {
This appears to be the proper test.
Quoted 9 lines
drivers/pci/pci.c +5
-0+pci_read_config_word (dev, pos +PCI_X_BRIDGE_UP_SPL_CTL , &cap[i++]); +pci_read_config_word (dev, pos +PCI_X_BRIDGE_DN_SPL_CTL , &cap[i++]); + }else +pci_read_config_word (dev, pos +PCI_X_CMD , &cap[i++]); +pci_add_saved_cap (dev, save_state);return 0 ; }
drivers/pci/pci.c static void pci_restore_pcix_state(struct pci_dev *dev) · line 631
Quoted 7 lines
drivers/pci/pci.c +3
-1@@ -621,7 +626,11 @@ static void pci_restore_pcix_state(struct pci_dev *dev)return ; cap = (u16 *)&save_state->data[0 ]; -pci_write_config_word (dev, pos +PCI_X_CMD , cap[i++]); +if (dev->hdr_type ==PCI_HEADER_TYPE_BRIDGE ) { +pci_write_config_word (dev, pos +PCI_X_BRIDGE_UP_SPL_CTL , cap[i++]); +pci_write_config_word (dev, pos +PCI_X_BRIDGE_DN_SPL_CTL , cap[i++]);
These look like the proper two registers to save.
Quoted 10 lines
drivers/pci/pci.c +2
-0+ }else +pci_write_config_word (dev, pos +PCI_X_CMD , cap[i++]);pci_remove_saved_cap (save_state);kfree (save_state); }include/linux/pci_regs.h +0
-0
include/linux/pci_regs.h line 336
Quoted 5 lines
include/linux/pci_regs.h +2
-0@@ -332,6 +332,8 @@#define PCI_X_STATUS_SPL_ERR 0x20000000/* Rcvd Split Completion Error Msg */ #define PCI_X_STATUS_266MHZ 0x40000000/* 266 MHz capable */ #define PCI_X_STATUS_533MHZ 0x80000000/* 533 MHz capable */ +#define PCI_X_BRIDGE_UP_SPL_CTL 10/* PCI-X upstream split transaction limit */ +#define PCI_X_BRIDGE_DN_SPL_CTL 14/* PCI-X downstream split transaction limit */
Unless I am completely misreading the spec. While you have picked the right register to save the offsets should be 0x08 and 0x0c or 8 and 12....
Eric
Re: SATA resume slowness, e1000 MSI warning
Quoted 13 lines
Quoting Eric W. Biederman <[email protected]>:
Subject: Re: SATA resume slowness, e1000 MSI warningQuoted 8 lines · Michael S. Tsirkin
Quoted 3 lines
The only case I can see which might trigger this is if we saved pci-X state and then didn't restore it because we could not find the capability on restore.
Hmm. pci_save_pcix_state/pci_restore_pcix_state seem to only handle regular devices and seem to ignore the fact that for bridge PCI-X capability has a different structure.
Quoted 7 lines
Quoted 1 line
Is this intentional?
Probably not a such. I don't think we have any drivers for bridge devices so I don't think it matters. It likely wouldn't hurt to fix it just in case though.
Do any of the mellanox cards do anything with the bridge on the card?
Yes but they do their own thing wrt saving/restoring registers. Look at drivers/infiniband/hw/mthca/mthca_reset.c
Quoted 4 lines
Quoted 1 line
If not, here's a patch to fix this. Warning: completely untested.
If you fix the offsets and diff this against my last fix (to never free the buffer) I think your patch makes sense.
Let's agree what the correct offsets are.
Quoted 59 lines
Quoted 17 lines
PCI: restore bridge PCI-X capability registers after PM event
Restore PCI-X bridge up/downstream capability registers after PM event. This includes maxumum split transaction commitment limit which might be vital for PCI X.
Signed-off-by Michael S. Tsirkin <[email protected]>drivers/pci/pci.c +0
-1@@ -597,14 +597,19 @@ static int pci_save_pcix_state(struct pci_dev *dev)if (pos <=0 )return 0 ; - save_state =kzalloc (sizeof (*save_state) +sizeof (u16),GFP_KERNEL );drivers/pci/pci.c static int pci_save_pcix_state(struct pci_dev *dev) · line 607
Quoted 10 lines
drivers/pci/pci.c +3
-2+ save_state =kzalloc (sizeof (*save_state) +sizeof (u16) *2 ,GFP_KERNEL );if (!save_state) { -dev_err (&dev->dev,"Out of memory in pci_save_pcie_state\n" ); +dev_err (&dev->dev,"Out of memory in pci_save_pcix_state\n" );return -ENOMEM ; } cap = (u16 *)&save_state->data[0 ]; -pci_read_config_word (dev, pos +PCI_X_CMD , &cap[i++]); +if (dev->hdr_type ==PCI_HEADER_TYPE_BRIDGE ) {This appears to be the proper test.
Quoted 9 lines
drivers/pci/pci.c +5
-0+pci_read_config_word (dev, pos +PCI_X_BRIDGE_UP_SPL_CTL , &cap[i++]); +pci_read_config_word (dev, pos +PCI_X_BRIDGE_DN_SPL_CTL , &cap[i++]); + }else +pci_read_config_word (dev, pos +PCI_X_CMD , &cap[i++]); +pci_add_saved_cap (dev, save_state);return 0 ; }drivers/pci/pci.c static void pci_restore_pcix_state(struct pci_dev *dev) · line 631
Quoted 7 lines
drivers/pci/pci.c +3
-1@@ -621,7 +626,11 @@ static void pci_restore_pcix_state(struct pci_dev *dev)return ; cap = (u16 *)&save_state->data[0 ]; -pci_write_config_word (dev, pos +PCI_X_CMD , cap[i++]); +if (dev->hdr_type ==PCI_HEADER_TYPE_BRIDGE ) { +pci_write_config_word (dev, pos +PCI_X_BRIDGE_UP_SPL_CTL , cap[i++]); +pci_write_config_word (dev, pos +PCI_X_BRIDGE_DN_SPL_CTL , cap[i++]);These look like the proper two registers to save.
Quoted 10 lines
drivers/pci/pci.c +2
-0+ }else +pci_write_config_word (dev, pos +PCI_X_CMD , cap[i++]);pci_remove_saved_cap (save_state);kfree (save_state); }include/linux/pci_regs.h +0
-0@@ -332,6 +332,8 @@
Quoted 8 lines
include/linux/pci_regs.h line 336
Quoted 5 lines
include/linux/pci_regs.h +2
-0#define PCI_X_STATUS_SPL_ERR 0x20000000/* Rcvd Split Completion Error Msg */ #define PCI_X_STATUS_266MHZ 0x40000000/* 266 MHz capable */ #define PCI_X_STATUS_533MHZ 0x80000000/* 533 MHz capable */ +#define PCI_X_BRIDGE_UP_SPL_CTL 10/* PCI-X upstream split transaction limit */ +#define PCI_X_BRIDGE_DN_SPL_CTL 14/* PCI-X downstream split transaction limit */ Unless I am completely misreading the spec. While you have picked the right register to save the offsets should be
0x08and0x0cor 8 and 12....
No, the spec is written in terms of dwords (32 bit), we are storing words (16 bits). The data at offsets 8 and 12 is read-only split transaction capacity. Split transaction limit starts at bit 16 so you need to add 2 to byte offset.
Right?
Signature · 1 line
MST