Kernel OOPS when paritioning DiskOnChip 2000 nftl in nand_base.c

John Weston john.weston at senetas.com
Wed Nov 1 16:26:16 EST 2006


Hi,

I am currently working on a 2.6.18-rc2 kernel, using the latest patches
from the mtd gir respository. The Kernel has been configured for NFTL,
and the new Diskonchip drivers.

I am unable to re-partition my DiskOnChip 2000 (64M) device, with the
following results.

sfdisk: ERROR: sector 0 does not have an msdos signature
 /dev/nftla: unrecognized partition table type
Old situation:
No partitions found
Input in the following format; absent fields get a default value.
<start> <size> <type [E,S,L,X,hex]> <bootable [-,*]> <c,h,s> <c,h,s>
Usually you only need to specify <start> and <size> (and perhaps
<type>).

/dev/nftla1 :0 400
/dev/nftla1          0+    399     400-     25599+  83  Linux
/dev/nftla2 :400 400
/dev/nftla2        400     799     400      25600   83  Linux
/dev/nftla3 :800 101
/dev/nftla3        800     900     101       6464   83  Linux
/dev/nftla4 :901 101
/dev/nftla4        901    1001     101       6464   83  Linux
New situation:
Units = cylinders of 65536 bytes, blocks of 1024 bytes, counting from 0

   Device Boot Start     End   #cyls    #blocks   Id  System
/dev/nftla1          0+    399     400-     25599+  83  Linux
/dev/nftla2        400     799     400      25600   83  Linux
/dev/nftla3        800     900     101       6464   83  Linux
/dev/nftla4        901    1001     101       6464   83  Linux
Warning: no primary partition is marked bootable (active)
This does not matter for LILO, but the DOS MBR will not boot this disk.
Do you want to write this to disk? [ynq] y
Successfully wrote the new partition table

Re-reading the partition tableOops: kernel access of bad area, sig: 11
[#1]
NIP: C0010A28 LR: C016495C CTR: 00000040
REGS: c2e91a90 TRAP: 0300   Tainted: P       (2.6.18-rc2)
MSR: 00009032 <EE,ME,IR,DR>  CR: 28088448  XER: 20000000
DAR: C7CC2280, DSISR: 22000000
TASK = c330e030[422] 'nftld' THREAD: c2e90000
GPR00: 00000000 C2E91B40 C330E030 C7CC2280 C2E91C28 00000200 C7CC227C
FFFFFFFF
GPR08: FFFF5555 00000020 00000009 00000005 48084442 1005E8C4 FFFFFFFF
0000FFFF
GPR16: C2EC2000 00000000 C3C97400 0000001F 00000001 00000200 C2E91C24
C2EC2000
GPR24: C3C974B4 0001FFE1 0000FFE0 C3C974B4 C3C97400 00000200 00000000
C2E91C24
NIP [C0010A28] memcpy+0x24/0x9c
LR [C016495C] nand_fill_oob+0x44/0x13c
Call Trace:
[C2E91B40] [C0169378] doc2000_read_byte+0x0/0x78 (unreliable)
[C2E91B70] [C0164F14] nand_do_write_ops+0x280/0x288
[C2E91BB0] [C016509C] nand_write_oob+0xa0/0xe0
[C2E91BD0] [C501E368] nftl_write+0x64/0x80 [nftl]
[C2E91C10] [C501EBC4] nftl_writeblock+0x534/0x964 [nftl]
[C2E91FA0] [C0162508] mtd_blktrans_thread+0x230/0x250
[C2E91FF0] [C0006D54] kernel_thread+0x44/0x60
Instruction dump:
4e800020 7c032040 418100a0 54a7e8ff 38c3fffc 3884fffc 41820028 70c00003
7ce903a6 40820054 80e40004 85040008 <90e60004> 95060008 4200fff0
70a50007
 ...

Now, I have seen a few patches for nand_base.c on the mailing list, but
nothing seems to fix this. If anyone has seen this before, or may have
an idea as to how to correct this behaviour, any imput would be
appreciated.

Sincerely

John Weston
Senetas PL





More information about the linux-mtd mailing list