PROBLEM: Oops with SMP and tulip.o LINKSYS 10/100

allen rotton (allen@rotton.org)
Sun, 25 Jun 2000 22:58:08 -0400


This is a multi-part message in MIME format.

------=_NextPart_000_000C_01BFDEF8.D4295F00
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

never sent in a bug .. ive only compiled a few kernals ... 2.14 2.15 ... =
no very little about the c lang but have looked at the Documentation... =
more l look the more i get side tracked ..

from what i can tell it must be a int problem with the second cpu and =
the network card ...

i dont subscribe to the mailing list so email allen@rotton.org if any =
sugestions/qestions/other ... for now i guess ill test without SMP ..

ps ... my bogmflp is 5 times what it used to be ???? =20

heres the info=20

[1.] PROBLEM: Oops with SMP and tulip.o LINKSYS 10/100

[2.]=20
[3.] modules, networking, kernel, tulip.o, SMP
[4.] 2.4.0-test2=20
[5.] Output of Oops..=20

Jun 25 15:12:10 allen network: Bringing up interface eth1 succeeded
Jun 25 15:12:31 allen kernel: Unable to handle kernel paging request at =
virtual
address 806671
40
Jun 25 15:12:31 allen kernel: printing eip:
Jun 25 15:12:31 allen kernel: c010d149
Jun 25 15:12:31 allen kernel: *pde =3D 00000000
Jun 25 15:12:31 allen kernel: Oops: 0000
Jun 25 15:12:31 allen kernel: CPU: 1
Jun 25 15:12:31 allen kernel: EIP: 0010:[enable_irq+64/182]
Jun 25 15:12:31 allen kernel: EFLAGS: 00010046
Jun 25 15:12:31 allen kernel: eax: 0000000a ebx: c11f1b60 ecx: =
00000140
edx: 00000001
Jun 25 15:12:31 allen kernel: esi: 0000000a edi: c0333940 ebp: =
00000282
esp: c2f05c34
Jun 25 15:12:31 allen kernel: ds: 0018 es: 0018 ss: 0018
Jun 25 15:12:31 allen kernel: Process ping (pid: 2829, =
stackpage=3Dc2f05000)
Jun 25 15:12:31 allen kernel: Stack: c11f1b60 00000040 0000003c 0000030f
00000140 c484849d 000
0000a c3525000
Jun 25 15:12:31 allen kernel: c3527240 c484c960 c2f04000 0002b71c
c3b903e2 0000000a fff
fffff c0254b70
Jun 25 15:12:31 allen kernel: 00000010 0001020a 0000000a 0000002a
00000300 c021d5bc c35
27240 c484c960
Jun 25 15:12:31 allen kernel: Call Trace: [8390:ei_close+1015/1076]
[<c484c960>] [clear_user+5
5/70] [qdisc_restart+108/365] [<c484c960>] [<c484c960>] =
[dev_queue_xmit+79/395]
Jun 25 15:12:31 allen kernel: [<c484c960>] [<c484c9d0>]
[arp_send+508/546] [arp_solicit
+196/233] [<c484c960>] [<c484c9c8>] [<c484c9d0>] [<c484c960>]
Jun 25 15:12:31 allen kernel: [__neigh_event_send+178/531]
[arp_solicit+0/233] [neigh_r
esolve_output+76/512] [ip_finish_output2+181/237] [nf_hook_slow+201/258]
[ip_output+121/127] [
<c484c960>] [ip_finish_output2+0/237]
Jun 25 15:12:31 allen kernel: [output_maybe_reroute+72/77]
[nf_hook_slow+201/258] [ip_b
uild_xmit+639/802] [<c484c960>] [output_maybe_reroute+0/77]
[raw_sendmsg+535/647] [raw_getfrag +0/33] [inet_sendmsg+0/68]
Jun 25 15:12:31 allen kernel: [inet_sendmsg+63/68]
[sock_sendmsg+129/164] [inet_sendmsg
+0/68] [sys_sendto+199/244] [sys_rt_sigaction+128/213] =
[sys_socketcall+302/487]
[system_call+5
6/64]
Jun 25 15:12:31 allen kernel: Code: 8b 9f 00 38 33 c0 83 e3 fd 89 d8 89 =
9f 00
38 33 c0 83 e0 0
c

[6.] stable till a packet is sent to the device syslinks 10/100 --NO =
PROBLEMS IF NOT SMP

[7.] dual pent 133=20
[7.1.]=20
[7.2.] Processor information (from /proc/cpuinfo):

processor : 0
vendor_id : GenuineIntel
cpu family : 5
model : 2
model name : Pentium 75 - 200
stepping : 12
cpu MHz : 132.804447
fdiv_bug : no
hlt_bug : no
sep_bug : no
f00f_bug : yes
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr mce cx8 apic
bogomips : 264.60

processor : 1
vendor_id : GenuineIntel
cpu family : 5
model : 2
model name : Pentium 75 - 200
stepping : 12
cpu MHz : 132.804447
fdiv_bug : no
hlt_bug : no
sep_bug : no
f00f_bug : yes
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr mce cx8 apic
bogomips : 265.42

[7.3.] Module information (from /proc/modules):

tulip 36416 0 (unused)
ne 7824 0 (autoclean) (unused)
8390 6720 0 (autoclean) [ne]
opl3 11816 0
sb 6248 0
sb_lib 35764 0 [sb]
uart401 6448 0 [sb_lib]
sound 62700 0 [opl3 sb sb_lib uart401]
soundcore 3940 5 [sb_lib sound]

[7.4.] Loaded driver and hardware information (/proc/ioports, =
/proc/iomem)
0000-001f : dma1
0020-003f : pic1
0040-005f : timer
0060-006f : keyboard
0070-007f : rtc
0080-008f : dma page reg
00a0-00bf : pic2
00c0-00df : dma2
00f0-00ff : fpu
01f0-01f7 : ide0
0220-022f : soundblaster
02f8-02ff : serial(auto)
0300-031f : NE2000
0330-0333 : MPU-401 UART
0340-035f : aha152x
0388-038b : Yamaha OPL3
03c0-03df : vga+
03f6-03f6 : ide0
03f8-03ff : serial(auto)
0cf8-0cff : PCI conf1
6000-601f : Intel Corporation 82371SB PIIX3 USB [Natoma/Triton II]
6400-64ff : Lite-On Communications Inc LNE100TX Fast Ethernet Adapter
6400-64ff : eth1
f000-f00f : Intel Corporation 82371SB PIIX3 IDE [Natoma/Triton II]
f000-f007 : ide0
f008-f00f : ide1

00000000-0009fbff : System RAM
0009fc00-0009ffff : System RAM
000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000dc000-000dffff : Extension ROM
000f0000-000fffff : System ROM
00100000-03ffffff : System RAM
00100000-002d5d47 : Kernel code
002d5d48-002f9e3f : Kernel data
e0000000-e03fffff : Trident Microsystems TGUI 9660/968x/968x
e0400000-e040ffff : Trident Microsystems TGUI 9660/968x/968x
e0410000-e04100ff : Lite-On Communications Inc LNE100TX Fast Ethernet =
Adapter
e0410000-e04100ff : eth1
fec00000-fec00fff : reserved
fee00000-fee00fff : reserved
ffff0000-ffffffff : reserved

[7.5.] PCI information ('lspci -vvv' as root)

00:00.0 Host bridge: Intel Corporation 430HX - 82439HX TXC [Triton II] =
(rev 03)
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- =
ParErr- Stepping- SERR- Fa
stB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=3Dmedium =
>TAbort- <TAbort- <MAbort+ >SE
RR- <PERR-
Latency: 64 set

00:07.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA [Natoma/Triton =
II] (rev 01)
Control: I/O+ Mem+ BusMaster+ SpecCycle+ MemWINV- VGASnoop- =
ParErr- Stepping- SERR- Fa
stB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=3Dmedium =
>TAbort- <TAbort- <MAbort- >SE
RR- <PERR-
Latency: 0 set

00:07.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE =
[Natoma/Triton II] (prog-if 80)
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- =
ParErr- Stepping- SERR- Fa
stB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=3Dmedium =
>TAbort- <TAbort- <MAbort- >SE
RR- <PERR-
Latency: 64 set
Region 4: I/O ports at f000 [size=3D16]

00:07.2 USB Controller: Intel Corporation 82371SB PIIX3 USB =
[Natoma/Triton II] (rev 01)
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- =
ParErr- Stepping- SERR- Fa
stB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=3Dmedium =
>TAbort- <TAbort- <MAbort- >SE
RR- <PERR-
Latency: 64 set
Interrupt: pin D routed to IRQ 11
Region 4: I/O ports at 6000 [size=3D32]

00:13.0 Ethernet controller: Lite-On Communications Inc: Unknown device =
c115 (rev 25)
Subsystem: Unknown device 11ad:c001
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- =
ParErr- Stepping+ SERR- Fa
stB2B-
Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=3Dmedium =
>TAbort- <TAbort- <MAbort- >SE
RR- <PERR-
Latency: 8 min, 56 max, 64 set, cache line size 08
Interrupt: pin A routed to IRQ 12
Region 0: I/O ports at 6400 [size=3D256]
Region 1: Memory at e0410000 (32-bit, non-prefetchable) =
[size=3D256]
Expansion ROM at <unassigned> [disabled] [size=3D64K]

Capabilities: [44] Power Management version 1
Flags: PMEClk- AuxPwr+ DSI- D1+ D2+ PME-
Status: D0 PME-Enable- DSel=3D0 DScale=3D0 PME-

00:14.0 VGA compatible controller: Trident Microsystems TGUI =
9660/968x/968x (rev d3)
Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- =
ParErr- Stepping- SERR- Fa
stB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=3Dmedium =
>TAbort- <TAbort- <MAbort- >SE
RR- <PERR-
Interrupt: pin A routed to IRQ 12
Region 0: Memory at e0000000 (32-bit, non-prefetchable) =
[size=3D4M]
Region 1: Memory at e0400000 (32-bit, non-prefetchable) =
[size=3D64K]
Expansion ROM at <unassigned> [disabled] [size=3D64K]

[7.6.] SCSI information (from /proc/scsi/scsi)
[7.7.]

------=_NextPart_000_000C_01BFDEF8.D4295F00
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

never sent in a bug .. ive only compiled a few kernals ... 2.14 2.15 = ... no=20 very little about the c lang but have looked at = the Documentation... more l=20 look the more i get side tracked ..

from what i can tell it must be a int problem with the second cpu and = the=20 network card ...

i dont subscribe to the mailing list so email allen@rotton.org if any=20 sugestions/qestions/other ... for now i guess ill test without=20 SMP  ..

ps ... my bogmflp is 5 times what it used to be = ????  

 

heres the info

[1.] PROBLEM: Oops with SMP and tulip.o LINKSYS 10/100

[2.] 
[3.] modules, networking, kernel, tulip.o, = SMP
[4.]=20 2.4.0-test2
[5.] Output of Oops..

Jun 25 15:12:10 allen network: Bringing up interface eth1 = succeeded
Jun 25=20 15:12:31 allen kernel: Unable to handle kernel paging request at=20 virtual
address 806671
40
Jun 25 15:12:31 allen kernel:  = printing=20 eip:
Jun 25 15:12:31 allen kernel: c010d149
Jun 25 15:12:31 allen = kernel:=20 *pde =3D 00000000
Jun 25 15:12:31 allen kernel: Oops: 0000
Jun 25 = 15:12:31=20 allen kernel: CPU:    1
Jun 25 15:12:31 allen kernel:=20 EIP:    0010:[enable_irq+64/182]
Jun 25 15:12:31 allen = kernel:=20 EFLAGS: 00010046
Jun 25 15:12:31 allen kernel: eax: = 0000000a   ebx:=20 c11f1b60   ecx: 00000140
edx: 00000001
Jun 25 15:12:31 = allen=20 kernel: esi: 0000000a   edi: c0333940   ebp:=20 00000282
esp: c2f05c34
Jun 25 15:12:31 allen kernel: ds: = 0018  =20 es: 0018   ss: 0018
Jun 25 15:12:31 allen kernel: Process = ping=20 (pid: 2829, stackpage=3Dc2f05000)
Jun 25 15:12:31 allen kernel: = Stack: c11f1b60=20 00000040 0000003c 0000030f
00000140 c484849d 000
0000a = c3525000
Jun 25=20 15:12:31 allen kernel:        = c3527240=20 c484c960 c2f04000 0002b71c
c3b903e2 0000000a fff
fffff = c0254b70
Jun 25=20 15:12:31 allen kernel:        = 00000010=20 0001020a 0000000a 0000002a
00000300 c021d5bc c35
27240 = c484c960
Jun 25=20 15:12:31 allen kernel: Call Trace:=20 [8390:ei_close+1015/1076]
[<c484c960>] [clear_user+5
5/70]=20 [qdisc_restart+108/365] [<c484c960>] [<c484c960>]=20 [dev_queue_xmit+79/395]
Jun 25 15:12:31 allen=20 kernel:        [<c484c960>]=20 [<c484c9d0>]
[arp_send+508/546] [arp_solicit
+196/233]=20 [<c484c960>] [<c484c9c8>] [<c484c9d0>]=20 [<c484c960>]
Jun 25 15:12:31 allen=20 kernel:       =20 [__neigh_event_send+178/531]
[arp_solicit+0/233]=20 [neigh_r
esolve_output+76/512] [ip_finish_output2+181/237]=20 [nf_hook_slow+201/258]
[ip_output+121/127] [
<c484c960>]=20 [ip_finish_output2+0/237]
Jun 25 15:12:31 allen=20 kernel:       =20 [output_maybe_reroute+72/77]
[nf_hook_slow+201/258]=20 [ip_b
uild_xmit+639/802] [<c484c960>]=20 [output_maybe_reroute+0/77]
[raw_sendmsg+535/647] [raw_getfrag +0/33] = [inet_sendmsg+0/68]
Jun 25 15:12:31 allen=20 kernel:       =20 [inet_sendmsg+63/68]
[sock_sendmsg+129/164] [inet_sendmsg
+0/68]=20 [sys_sendto+199/244] [sys_rt_sigaction+128/213]=20 [sys_socketcall+302/487]
[system_call+5
6/64]
Jun 25 15:12:31 = allen=20 kernel: Code: 8b 9f 00 38 33 c0 83 e3 fd 89 d8 89 9f 00
38 33 c0 83 = e0=20 0
c

 

[6.] stable till a packet is sent to the device syslinks=20 10/100 --NO PROBLEMS IF NOT SMP


[7.] dual pent 133
[7.1.]
[7.2.] Processor information = (from=20 /proc/cpuinfo):

processor       :=20 0
vendor_id       : GenuineIntel
cpu = family      :=20 5
model           : = 2
model name      : Pentium 75 -=20 200
stepping        : 12
cpu=20 MHz         :=20 132.804447
fdiv_bug        :=20 no
hlt_bug         :=20 no
sep_bug         :=20 no
f00f_bug        :=20 yes
coma_bug        :=20 no
fpu          &nbs= p; =20 : yes
fpu_exception   : yes
cpuid = level    =20 :=20 1
wp           =   =20 : = yes
flags           = : fpu=20 vme de pse tsc msr mce cx8=20 apic
bogomips        : 264.60

processor       :=20 1
vendor_id       : GenuineIntel
cpu = family      :=20 5
model           : = 2
model name      : Pentium 75 -=20 200
stepping        : 12
cpu=20 MHz         :=20 132.804447
fdiv_bug        :=20 no
hlt_bug         :=20 no
sep_bug         :=20 no
f00f_bug        :=20 yes
coma_bug        :=20 no
fpu          &nbs= p; =20 : yes
fpu_exception   : yes
cpuid = level    =20 :=20 1
wp           =   =20 : = yes
flags           = : fpu=20 vme de pse tsc msr mce cx8=20 apic
bogomips        :=20 265.42

[7.3.] Module information (from /proc/modules):

tulip           = ;      =20 36416   0=20 (unused)
ne          = ;           =20 7824   0 (autoclean)=20 (unused)
8390         &nb= sp;         =20 6720   0 (autoclean)=20 [ne]
opl3          &= nbsp;       =20 11816  =20 0
sb           =           =20 6248  =20 0
sb_lib          &n= bsp;     =20 35764   0=20 [sb]
uart401         &nbs= p;      =20 6448   0=20 [sb_lib]
sound         &n= bsp;       =20 62700   0 [opl3 sb sb_lib=20 uart401]
soundcore        &nbs= p;     =20 3940   5 [sb_lib sound]

[7.4.] Loaded driver and = hardware=20 information (/proc/ioports, /proc/iomem)
0000-001f : = dma1
0020-003f :=20 pic1
0040-005f : timer
0060-006f : keyboard
0070-007f :=20 rtc
0080-008f : dma page reg
00a0-00bf : pic2
00c0-00df :=20 dma2
00f0-00ff : fpu
01f0-01f7 : ide0
0220-022f :=20 soundblaster
02f8-02ff : serial(auto)
0300-031f : = NE2000
0330-0333 :=20 MPU-401 UART
0340-035f : aha152x
0388-038b : Yamaha = OPL3
03c0-03df :=20 vga+
03f6-03f6 : ide0
03f8-03ff : serial(auto)
0cf8-0cff : PCI=20 conf1
6000-601f : Intel Corporation 82371SB PIIX3 USB [Natoma/Triton=20 II]
6400-64ff : Lite-On Communications Inc LNE100TX Fast Ethernet=20 Adapter
  6400-64ff : eth1
f000-f00f : Intel Corporation = 82371SB=20 PIIX3 IDE [Natoma/Triton II]
  f000-f007 : ide0
  = f008-f00f :=20 ide1

00000000-0009fbff : System RAM
0009fc00-0009ffff : System=20 RAM
000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video=20 ROM
000dc000-000dffff : Extension ROM
000f0000-000fffff : System=20 ROM
00100000-03ffffff : System RAM
  00100000-002d5d47 : = Kernel=20 code
  002d5d48-002f9e3f : Kernel data
e0000000-e03fffff : = Trident=20 Microsystems TGUI 9660/968x/968x
e0400000-e040ffff : Trident = Microsystems=20 TGUI 9660/968x/968x
e0410000-e04100ff : Lite-On Communications Inc = LNE100TX=20 Fast Ethernet Adapter
  e0410000-e04100ff : = eth1
fec00000-fec00fff :=20 reserved
fee00000-fee00fff : reserved
ffff0000-ffffffff : = reserved

 

[7.5.] PCI information ('lspci -vvv' as root)

00:00.0 Host bridge: Intel Corporation 430HX - 82439HX TXC [Triton = II] (rev=20 03)
        Control: I/O- Mem+ = BusMaster+=20 SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR-=20 Fa
stB2B-
        Status: Cap- = 66Mhz-=20 UDF- FastB2B- ParErr- DEVSEL=3Dmedium >TAbort- <TAbort- = <MAbort+=20 >SE
RR- <PERR-
        = Latency:=20 64 set

00:07.0 ISA bridge: Intel Corporation 82371SB PIIX3 ISA = [Natoma/Triton II]=20 (rev 01)
        Control: I/O+ = Mem+=20 BusMaster+ SpecCycle+ MemWINV- VGASnoop- ParErr- Stepping- SERR-=20 Fa
stB2B-
        Status: Cap- = 66Mhz-=20 UDF- FastB2B+ ParErr- DEVSEL=3Dmedium >TAbort- <TAbort- = <MAbort-=20 >SE
RR- <PERR-
        = Latency: 0=20 set

00:07.1 IDE interface: Intel Corporation 82371SB PIIX3 IDE = [Natoma/Triton II]=20 (prog-if 80)
        Control: I/O+ = Mem-=20 BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR-=20 Fa
stB2B-
        Status: Cap- = 66Mhz-=20 UDF- FastB2B+ ParErr- DEVSEL=3Dmedium >TAbort- <TAbort- = <MAbort-=20 >SE
RR- <PERR-
        = Latency:=20 64 set
        Region 4: I/O ports = at f000=20 [size=3D16]

00:07.2 USB Controller: Intel Corporation 82371SB PIIX3 USB = [Natoma/Triton=20 II] (rev 01)
        Control: I/O+ = Mem-=20 BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR-=20 Fa
stB2B-
        Status: Cap- = 66Mhz-=20 UDF- FastB2B+ ParErr- DEVSEL=3Dmedium >TAbort- <TAbort- = <MAbort-=20 >SE
RR- <PERR-
        = Latency:=20 64 set
        Interrupt: pin D = routed to=20 IRQ 11
        Region 4: I/O ports = at 6000=20 [size=3D32]

00:13.0 Ethernet controller: Lite-On Communications Inc: Unknown = device c115=20 (rev 25)
        Subsystem: = Unknown device=20 11ad:c001
        Control: I/O+ = Mem+=20 BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR-=20 Fa
stB2B-
        Status: Cap+ = 66Mhz-=20 UDF- FastB2B+ ParErr- DEVSEL=3Dmedium >TAbort- <TAbort- = <MAbort-=20 >SE
RR- <PERR-
        = Latency: 8=20 min, 56 max, 64 set, cache line size=20 08
        Interrupt: pin A routed = to IRQ=20 12
        Region 0: I/O ports at = 6400=20 [size=3D256]
        Region 1: = Memory at=20 e0410000 (32-bit, non-prefetchable)=20 [size=3D256]
        Expansion ROM = at=20 <unassigned> [disabled] [size=3D64K]

  Capabilities: [44] Power Management version=20 1
           &n= bsp;   =20 Flags: PMEClk- AuxPwr+ DSI- D1+ D2+=20 PME-
           = ;    =20 Status: D0 PME-Enable- DSel=3D0 DScale=3D0 PME-

00:14.0 VGA compatible controller: Trident Microsystems TGUI = 9660/968x/968x=20 (rev d3)
        Control: I/O+ = Mem+=20 BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR-=20 Fa
stB2B-
        Status: Cap- = 66Mhz-=20 UDF- FastB2B- ParErr- DEVSEL=3Dmedium >TAbort- <TAbort- = <MAbort-=20 >SE
RR- <PERR-
        = Interrupt:=20 pin A routed to IRQ 12
        = Region 0:=20 Memory at e0000000 (32-bit, non-prefetchable)=20 [size=3D4M]
        Region 1: = Memory at=20 e0400000 (32-bit, non-prefetchable)=20 [size=3D64K]
        Expansion ROM = at=20 <unassigned> [disabled] [size=3D64K]

[7.6.] SCSI = information (from=20 /proc/scsi/scsi)
[7.7.]

------=_NextPart_000_000C_01BFDEF8.D4295F00-- - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/