Messages in this thread | | | Date | Wed, 1 Dec 1999 16:47:41 -0800 (PST) | From | Brion Vibber <> | Subject | Oops with ext3 journaling |
| |
I'm running Linux 2.2.13 SMP with Jens Axboe's CD-ROM patch and ext3-0.0.2c (with KDB patch applied but not activated) and have been using journaling on my / and /home partitions for about a week and a half, saving me a good hour or two in fsck times after Quake3-related crashes. :)
However while copying my /home partition prior to repartitioning a drive, I got an oops in the journaling code... I had just created a new ~2GB ext2 partition on hda5 (4k blocks, volume label set, otherwise default options) using mke2fs 1.18, created a blank 8192000 byte journal.dat file on it, mounted it as ext3 with journaling, and was copying everything from the old /home via tar. I went and got a soda, then came back to find a zombified tar process and an oops in my syslog. :( I tried to copy again, got a second oops at the same EIP.
Couldn't unmount since there was a stuck process using the partition, so I decided to reboot... Tried to sync (SysRq+S), sunc everything fine fine until I hit that last new partition, where it stuck again. Rebooted by SysRQ+B... recreated the filesystem the same way, copied the same way, everything has been fine since.
Here're a couple bits from the log:
JFS DEBUG: (journal.c, 528): journal_init_inode: journal c7c55a20: inode 03:05/12, size 8192000, bits 12, blksize 4096 Assertion failure in journal_next_log_block() at journal.c line 425: "blocknr != 0"
And then came the oops:
ksymoops 0.7c on i686 2.2.13ext3. Options used -v ../linux/vmlinux (specified) -k /proc/ksyms (default) -l /proc/modules (default) -o /lib/modules/2.2.13ext3/ (default) -m ../linux/System.map (specified)
Unable to handle kernel NULL pointer dereference at virtual address 00000000 current->tss.cr3 = 00101000, %cr3 = 00101000 *pde = 00000000 Oops: 0002 CPU: 0 EIP: 0010:[<c0150522>] Using defaults from ksymoops -t elf32-i386 -a i386 EFLAGS: 00010296 eax: 00000057 ebx: 00000000 ecx: 0000004a edx: 00000037 esi: c7c55a20 edi: c7212700 ebp: c7fadfc8 esp: c7fade6c ds: 0018 es: 0018 ss: 0018 Process kjournald (pid: 1222, process nr: 49, stackpage=c7fad000) Stack: c01f9800 000001a9 c01f9a2b c7c55a20 c7fadfc4 c015053f c7c55a20 00000000 c01512d1 c7c55a20 c1b688a0 c2e46380 c26ebf40 c2e46180 c2e46d00 c2e46c00 c5036940 c536c340 c536ca40 c7877aa0 c78776a0 c69123c0 c6c1fec0 c717db60 Call Trace: [<c01f9800>] [<c01f9a2b>] [<c015053f>] [<c01512d1>] [<c010fac0>] [<c010fb3c>] [<c0112e44>] [<c0150005>] [<c014fed0>] [<c0107c2f>] Code: c6 05 00 00 00 00 00 83 c4 14 89 d8 5b 5e c3 8d 76 00 53 8b
>>EIP; c0150522 <journal_next_log_block+82/94> <===== Trace; c01f9800 <cprt+4e40/e680> Trace; c01f9a2b <cprt+506b/e680> Trace; c015053f <journal_get_descriptor_buffer+b/58> Trace; c01512d1 <journal_commit_transaction+4e9/dd8> Trace; c010fac0 <smp_local_timer_interrupt+c4/130> Trace; c010fb3c <smp_apic_timer_interrupt+10/18> Trace; c0112e44 <schedule+224/3c4> Trace; c0150005 <kjournald+129/1b0> Trace; c014fed0 <commit_timeout+0/c> Trace; c0107c2f <kernel_thread+23/30> Code; c0150522 <journal_next_log_block+82/94> 00000000 <_EIP>: Code; c0150522 <journal_next_log_block+82/94> <===== 0: c6 05 00 00 00 00 00 movb $0x0,0x0 <===== Code; c0150529 <journal_next_log_block+89/94> 7: 83 c4 14 addl $0x14,%esp Code; c015052c <journal_next_log_block+8c/94> a: 89 d8 movl %ebx,%eax Code; c015052e <journal_next_log_block+8e/94> c: 5b popl %ebx Code; c015052f <journal_next_log_block+8f/94> d: 5e popl %esi Code; c0150530 <journal_next_log_block+90/94> e: c3 ret Code; c0150531 <journal_next_log_block+91/94> f: 8d 76 00 leal 0x0(%esi),%esi Code; c0150534 <journal_get_descriptor_buffer+0/58> 12: 53 pushl %ebx Code; c0150535 <journal_get_descriptor_buffer+1/58> 13: 8b 00 movl (%eax),%eax
Haven't had any trouble since then but thought it was worth reporting...
-- brion vibber (brion@pobox.com)
- 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/
| |