lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Mon, 4 May 2009 10:47:33 +0200
From:	Bartlomiej Zolnierkiewicz <bzolnier@...il.com>
To:	petkovbb@...il.com
Cc:	TJ <tj.trevelyan@...il.com>, linux-kernel@...r.kernel.org,
	linux-ide@...r.kernel.org
Subject: Re: Kernel Panic 2.6.29.6 AMD Geode (in CS5536 IDE ?)


On Monday 04 May 2009 10:09:51 Borislav Petkov wrote:
> (adding Bart, linux-ide to CC)
> 
> On Mon, May 04, 2009 at 09:53:34AM +0200, TJ wrote:
> > Hi,
> > 
> > I'm not on the mailing list, so please cc me. If needed I can provide
> > further information.
> > 
> > I am trying to build purpose built 2.6.29.2 kernel for my ALIX.2
> > [http://www.pcengines.ch/alix2d2.htm] instead of the generic all
> > modular 2.6.26 kernel in Debian.
> > The idea being is to have a slimmer kernel, no initrd*, and to include
> > ALIX specific features that the Debian kernel does not have.
> > 
> > (*support is enabled, but everything needed for boot should be built-in)
> > 
> > It is not my first kernel build, I tend to do this for all my
> > machines. Although it is the first time I have tried to build for this
> > system.
> > 
> > My build environment is as follows:
> > The host is a 64bit Debian (testing) MacBook pro. However I have a
> > 100% 32bit Debian (stable) chroot install, which I also used for this.
> > I explicitly set ARCH=i386 otherwise my 64bit CPU is detected. This is
> > in effect a cross build, but not for an alien architecture and using
> > the normal host gcc.
> > (gcc (Debian 4.3.2-1.1) 4.3.2)
> > 
> > sudo chroot /blah
> > cd /usr/src/linux-source
> > make ARCH=i386 clean
> > make ARCH=i386 menuconfig
> > make-kpkg --us -uc --arch i386 binary-arch
> > 
> > scp, install the package and then boot.
> > 
> > (console seems to be repeated because it is given via grub and complied in)
> > 
> >    [Linux-bzImage, setup=0x2e00, size=0x1b0010]
> > Probing EDD (edd=off to disable)... ok
> > Linux version 2.6.29 (2.6.29) (root@...chan) (gcc version 4.3.2
> > (Debian 4.3.2-1.1) ) #1 Fri May 1 19:19:04 CEST 2009
> > KERNEL supported cpus:
> >   Intel GenuineIntel
> >   AMD AuthenticAMD
> >   NSC Geode by NSC
> >   Cyrix CyrixInstead
> >   Centaur CentaurHauls
> >   Transmeta GenuineTMx86
> >   Transmeta TransmetaCPU
> >   UMC UMC UMC UMC
> > PAT not supported by CPU.
> > BIOS-provided physical RAM map:
> >  BIOS-e820: 0000000000000000 - 00000000000a0000 (usable)
> >  BIOS-e820: 00000000000f0000 - 0000000000100000 (reserved)
> >  BIOS-e820: 0000000000100000 - 0000000010000000 (usable)
> >  BIOS-e820: 00000000fff00000 - 0000000100000000 (reserved)
> > DMI not present or invalid.
> > last_pfn = 0x10000 max_arch_pfn = 0x100000
> > Scanning 1 areas for low memory corruption
> > modified physical RAM map:
> >  modified: 0000000000000000 - 0000000000001000 (usable)
> >  modified: 0000000000001000 - 0000000000010000 (reserved)
> >  modified: 0000000000010000 - 0000000000091000 (usable)
> >  modified: 00000000000f0000 - 0000000000100000 (reserved)
> >  modified: 0000000000100000 - 0000000010000000 (usable)
> >  modified: 00000000fff00000 - 0000000100000000 (reserved)
> > ACPI Error (tbxfroot-0219): A valid RSDP was not found [20081204]
> > 0MB HIGHMEM available.
> > 256MB LOWMEM available.
> >   mapped low ram: 0 - 10000000
> >   low ram: 00000000 - 10000000
> >   bootmap 00010000 - 00012000
> > (6 early reservations) ==> bootmem [0000000000 - 0010000000]
> >   #0 [0000000000 - 0000001000]   BIOS data page ==> [0000000000 -
> > 0000001000]
> >   #1 [0000200000 - 000058c8f8]    TEXT DATA BSS ==> [0000200000 -
> > 000058c8f8]
> >   #2 [000058d000 - 0000590000]    INIT_PG_TABLE ==> [000058d000 -
> > 0000590000]
> >   #3 [000009f000 - 0000100000]    BIOS reserved ==> [000009f000 -
> > 0000100000]
> >   #4 [0000010000 - 0000010000]          PGTABLE
> >   #5 [0000010000 - 0000012000]          BOOTMAP ==> [0000010000 -
> > 0000012000]
> > Zone PFN ranges:
> >   DMA      0x00000000 -> 0x00001000
> >   Normal   0x00001000 -> 0x00010000
> >   HighMem  0x00010000 -> 0x00010000
> > Movable zone start PFN for each node
> > early_node_map[3] active PFN ranges
> >     0: 0x00000000 -> 0x00000001
> >     0: 0x00000010 -> 0x00000091
> >     0: 0x00000100 -> 0x00010000
> > No local APIC present or hardware disabled
> > PM: Registered nosave memory: 0000000000001000 - 0000000000010000
> > PM: Registered nosave memory: 0000000000091000 - 00000000000f0000
> > PM: Registered nosave memory: 00000000000f0000 - 0000000000100000
> > Allocating PCI resources starting at 20000000 (gap: 10000000:eff00000)
> > Built 1 zonelists in Zone order, mobility grouping on.  Total pages:
> > 64898
> > Kernel command line: console=ttyS0,38400
> > BOOT_IMAGE=/boot/vmlinuz-2.6.29 root=/dev/hda2 ro console=ttyS0,38400
> > Initializing CPU#0
> > PID hash table entries: 1024 (order: 10, 4096 bytes)
> > Fast TSC calibration using PIT
> > Detected 498.050 MHz processor.
> > console [ttyS0] enabled
> > Dentry cache hash table entries: 32768 (order: 5, 131072 bytes)
> > Inode-cache hash table entries: 16384 (order: 4, 65536 bytes)
> > Memory: 255536k/262144k available (2129k kernel code, 5924k reserved,
> > 878k data, 300k init, 0k highmem)
> > virtual kernel memory layout:
> >     fixmap  : 0xfffac000 - 0xfffff000   ( 332 kB)
> >     pkmap   : 0xff800000 - 0xffc00000   (4096 kB)
> >     vmalloc : 0xd0800000 - 0xff7fe000   ( 751 MB)
> >     lowmem  : 0xc0000000 - 0xd0000000   ( 256 MB)
> >       .init : 0xc04f4000 - 0xc053f000   ( 300 kB)
> >       .data : 0xc0414513 - 0xc04f00d8   ( 878 kB)
> >       .text : 0xc0200000 - 0xc0414513   (2129 kB)
> > Checking if this processor honours the WP bit even in supervisor
> > mode...Ok.
> > SLUB: Genslabs=12, HWalign=32, Order=0-3, MinObjects=0, CPUs=1,
> > Nodes=1
> > Calibrating delay loop (skipped), value calculated using timer
> > frequency.. 996.10 BogoMIPS (lpj=1992200)
> > Mount-cache hash table entries: 512
> > CPU: L1 I Cache: 64K (32 bytes/line), D cache 64K (32 bytes/line)
> > CPU: L2 Cache: 128K (32 bytes/line)
> > CPU: Geode(TM) Integrated Processor by AMD PCS stepping 02
> > Checking 'hlt' instruction... OK.
> > Freeing SMP alternatives: 0k freed
> > net_namespace: 940 bytes
> > regulator: core version 0.5
> > NET: Registered protocol family 16
> > geode-mfgpt:  8 MFGPT timers available.
> > geode-mfgpt:  Registered timer 0
> > mfgpt-timer:  Registering MFGPT timer 0 as a clock event, using IRQ 7
> > EISA bus registered
> > PCI: PCI BIOS revision 2.10 entry at 0xfced9, last bus=0
> > PCI: Using configuration type 1 for base access
> > bio: create slab <bio-0> at 0
> > ACPI: Interpreter disabled.
> > SCSI subsystem initialized
> > usbcore: registered new interface driver usbfs
> > usbcore: registered new interface driver hub
> > usbcore: registered new device driver usb
> > PCI: Probing PCI hardware
> > pci 0000:00:09.0: PME# supported from D0 D1 D2 D3hot D3cold
> > pci 0000:00:09.0: PME# disabled
> > pci 0000:00:0b.0: PME# supported from D0 D1 D2 D3hot D3cold
> > pci 0000:00:0b.0: PME# disabled
> > pci 0000:00:0f.4: PME# supported from D0 D3hot D3cold
> > pci 0000:00:0f.4: PME# disabled
> > pci 0000:00:0f.5: PME# supported from D0 D3hot D3cold
> > pci 0000:00:0f.5: PME# disabled
> > pnp: PnP ACPI: disabled
> > NET: Registered protocol family 2
> > IP route cache hash table entries: 2048 (order: 1, 8192 bytes)
> > TCP established hash table entries: 8192 (order: 4, 65536 bytes)
> > TCP bind hash table entries: 8192 (order: 3, 32768 bytes)
> > TCP: Hash tables configured (established 8192 bind 8192)
> > TCP reno registered
> > NET: Registered protocol family 1
> > platform rtc_cmos: registered platform RTC device (no PNP device
> > found)
> > Scanning for low memory corruption every 60 seconds
> > squashfs: version 4.0 (2009/01/31) Phillip Lougher
> > JFFS2 version 2.2. (NAND) (SUMMARY)  �© 2001-2006 Red Hat, Inc.
> > msgmni has been set to 499
> > alg: No test for stdrng (krng)
> > io scheduler noop registered
> > io scheduler deadline registered (default)
> > AMD Geode RNG detected
> > Hangcheck: starting hangcheck timer 0.9.0 (tick is 180 seconds, margin
> > is 60 seconds).
> > Hangcheck: Using get_cycles().
> > Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
> > �serial8250: ttyS0 at I/O 0x3f8 (irq = 4) is a NS16550A
> > serial8250: ttyS1 at I/O 0x2f8 (irq = 3) is a NS16550A
> > loop: module loaded
> > via-rhine.c:v1.10-LK1.4.3 2007-03-06 Written by Donald Becker
> > eth0: VIA Rhine III (Management Adapter) at 0xe0000000,
> > 00:0d:b9:18:2d:0c, IRQ 10.
> > eth0: MII PHY found at address 1, status 0x786d advertising 05e1 Link c5e1.
> > eth1: VIA Rhine III (Management Adapter) at 0xe0040000,
> > 00:0d:b9:18:2d:0d, IRQ 15.
> > eth1: MII PHY found at address 1, status 0x7849 advertising 05e1 Link 0000.
> > Uniform Multi-Platform E-IDE driver
> > cs5536 0000:00:0f.2: IDE controller (0x1022:0x209a rev 0x01)
> > cs5536 0000:00:0f.2: not 100% native mode: will probe irqs later
> > BUG: unable to handle kernel NULL pointer dereference at (null)
> > IP: [<(null)>] (null)
> > *pde = 00000000
> > Oops: 0000 [#1]
> > last sysfs file:
> > Modules linked in:
> > 
> > Pid: 1, comm: swapper Not tainted (2.6.29 #1)
> > EIP: 0060:[<00000000>] EFLAGS: 00010246 CPU: 0
> > EIP is at 0x0
> > EAX: cf948000 EBX: cf948000 ECX: cf948000 EDX: c042d248
> > ESI: c042d178 EDI: cf819c58 EBP: cf819c00 ESP: cf81dd5c
> >  DS: 007b ES: 007b FS: 0000 GS: 0000 SS: 0068
> > Process swapper (pid: 1, ti=cf81c000 task=cf81a000 task.ti=cf81c000)
> > Stack:
> >  c035faab cf948000 c042d178 0000ff00 c03602bf cf948000 00000000 cf94803c
> >  c042d178 c035e4fd cf81deb4 cf83ac00 cf948000 00000000 cf819cc0 01819c00
> >  00000000 cf819c00 cf83ac00 c042d178 c036024a 00000000 000001f0 000001f1
> > Call Trace:
> >  [<c035faab>] ide_pci_check_simplex+0x4a/0x7b
> >  [<c03602bf>] ide_hwif_setup_dma+0x5b/0xc4
> >  [<c035e4fd>] ide_host_register+0x150/0x50b
> >  [<c036024a>] ide_pci_init_one+0xa2/0xbc
> >  [<c030833f>] idr_get_empty_slot+0x14d/0x234
> >  [<c03084e1>] ida_get_new_above+0xbb/0x172
> >  [<c03aa179>] raw_pci_read+0x4d/0x55
> >  [<c03aa1f3>] pci_read+0x1c/0x21
> >  [<c031679d>] pci_bus_read_config_dword+0x28/0x3f
> >  [<c0360d97>] cs5536_init_one+0x4b/0x4e
> >  [<c031ab56>] local_pci_probe+0xb/0xc
> >  [<c031b378>] pci_device_probe+0x44/0x66
> >  [<c0352add>] driver_probe_device+0x98/0x126
> >  [<c0352bb4>] __driver_attach+0x49/0x67
> >  [<c0352598>] bus_for_each_dev+0x31/0x56
> >  [<c0352995>] driver_attach+0x11/0x13
> >  [<c0352b6b>] __driver_attach+0x0/0x67
> >  [<c0352075>] bus_add_driver+0x91/0x1a1
> >  [<c050bb55>] cs5536_init+0x0/0x11
> >  [<c0352d35>] driver_register+0x7d/0xd3
> >  [<c050bb55>] cs5536_init+0x0/0x11
> >  [<c031b534>] __pci_register_driver+0x2b/0x57
> >  [<c020112b>] _stext+0x43/0x107
> >  [<c028253d>] create_proc_entry+0x73/0x85
> >  [<c02388a8>] register_irq_proc+0x61/0x7a
> >  [<c04f445d>] kernel_init+0x6f/0xbb
> >  [<c04f43ee>] kernel_init+0x0/0xbb
> >  [<c020328f>] kernel_thread_helper+0x7/0x10
> > Code:  Bad EIP value.
> > EIP: [<00000000>] 0x0 SS:ESP 0068:cf81dd5c
> > ---[ end trace 1ed52fe562beb9cc ]---
> > Kernel panic - not syncing: Attempted to kill init!
> > 
> > 
> > I have tried to tweak the config some more since I captured that dump,
> > but they all die before reaching init as above.
> > I've attached my latest config, which still gives the same error but
> > is not the exact one for the dump above.
> > 
> > Would be grateful for help, advice or a patch. If you need anything
> > further from me please let me know.

This problem is already fixed in Linus' tree -- somebody just needs to
port it to 2.6.29 and then post it to stable@...nel.org for inclusion.

>From 15da90b516e9da92cc1d90001e640fd6707d0e27 Mon Sep 17 00:00:00 2001
From: Sergei Shtylyov <sshtylyov@...mvista.com>
Date: Sat, 18 Apr 2009 17:42:20 +0200
Subject: [PATCH] cs5536: define dma_sff_read_status() method

The driver somehow got merged with the initializer for the dma_sff_read_status()
method missing which caused kernel panic on bootup.

This should fix the kernel.org bug #13026...

Signed-off-by: Sergei Shtylyov <sshtylyov@...mvista.com>
Reported-by: Arnd Hannemann <hannemann@...s.rwth-aachen.de>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@...il.com>
---
 drivers/ide/cs5536.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/ide/cs5536.c b/drivers/ide/cs5536.c
index 353a35b..0332a95 100644
--- a/drivers/ide/cs5536.c
+++ b/drivers/ide/cs5536.c
@@ -236,6 +236,7 @@ static const struct ide_dma_ops cs5536_dma_ops = {
 	.dma_test_irq		= ide_dma_test_irq,
 	.dma_lost_irq		= ide_dma_lost_irq,
 	.dma_timer_expiry	= ide_dma_sff_timer_expiry,
+	.dma_sff_read_status	= ide_dma_sff_read_status,
 };
 
 static const struct ide_port_info cs5536_info = {
-- 
1.6.0.6

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ