From: Valerie Clement Subject: Re: ext4 patch queue updated(2.6.23-rc5) Date: Thu, 13 Sep 2007 16:58:25 +0200 Message-ID: <46E95011.7040309@bull.net> References: <1189643439.4935.30.camel@localhost.localdomain> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: QUOTED-PRINTABLE Cc: linux-ext4 , tytso@mit.edu To: cmm@us.ibm.com Return-path: Received: from ecfrec.frec.bull.fr ([129.183.4.8]:43922 "EHLO ecfrec.frec.bull.fr" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755388AbXIMO6R (ORCPT ); Thu, 13 Sep 2007 10:58:17 -0400 In-Reply-To: <1189643439.4935.30.camel@localhost.localdomain> Sender: linux-ext4-owner@vger.kernel.org List-Id: linux-ext4.vger.kernel.org Mingming Cao wrote: > Rebased the patches to 2.6.23-rc5, I reordered the series file to mo= ve > cleanups/fixes to the beginning of the series file. Added a patch to > cleanup slab useage in jbd/jbd2, and fixed some checkpatch.pl warning= s. > Added large block patch and Jose's FLEX_BG patch. With those new patches, I've got a segmentation fault when unmounting=20 the ext4 filesystem: ------------[ cut here ]------------ kernel BUG at /home/src/linux-2.6.23-rc5/mm/slab.c:592! invalid opcode: 0000 [1] SMP CPU 3 Modules linked in: qla2xxx Pid: 4163, comm: umount Not tainted 2.6.23-rc5 #1 RIP: 0010:[] [] kfree+0x5f/0x1a0 RSP: 0018:ffff810022143d88 EFLAGS: 00010046 RAX: 0000000000000000 RBX: ffff81002889e154 RCX: 000000000000003f RDX: ffff81007ec4f290 RSI: ffffffff80245947 RDI: 000000000002889e RBP: ffff81002889e000 R08: 0000000000000001 R09: ffff81007c556400 R10: ffff810022143d48 R11: ffffffff802fd50d R12: ffff81007c556400 R13: ffff81002889e000 R14: 0000000000000286 R15: 0000000000513150 =46S: 00002b2fc8bafe20(0000) GS:ffff81007e0b5d40(0000) knlGS:000000000= 0000000 CS: 0010 DS: 0000 ES: 0000 CR0: 000000008005003b CR2: 00000000005b2b50 CR3: 000000007621e000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400 Process umount (pid: 4163, threadinfo ffff810022142000, task=20 ffff81007e0d8180) Stack: ffff81007c556400 ffff81002889e024 ffff81002889e154 ffff81002889= e000 ffff81007c556400 ffff81002889e024 00000000005130c0 ffffffff8031ac12 0000000000656473 ffff81007e0d8180 ffffffff80245a06 ffff810022143de0 Call Trace: [] jbd2_journal_destroy+0x257/0x262 [] autoremove_wake_function+0x0/0x2e [] mb_cache_shrink+0x1e/0x95 [] ext4_put_super+0x39/0x1d8 [] generic_shutdown_super+0x60/0xf1 [] kill_block_super+0xd/0x1e [] deactivate_super+0x47/0x5f [] sys_umount+0x1f7/0x22a [] sys_newstat+0x19/0x31 [] system_call+0x7e/0x83 Code: 0f 0b eb fe 65 8b 04 25 24 00 00 00 83 3d c1 9e 55 00 00 4c RIP [] kfree+0x5f/0x1a0 RSP WARNING: at /home/src/linux-2.6.23-rc5/kernel/exit.c:901 do_exit() Call Trace: [] do_exit+0x4f/0x7ac [] kernel_math_error+0x0/0x71 [] do_invalid_op+0x85/0x8f [] kfree+0x5f/0x1a0 [] bit_waitqueue+0x1c/0x8c [] wake_up_bit+0x11/0x22 [] __writeback_single_inode+0x395/0x3a7 [] error_exit+0x0/0x84 [] ext4_destroy_inode+0x0/0x77 [] bit_waitqueue+0x1c/0x8c [] kfree+0x5f/0x1a0 [] kfree+0x2e/0x1a0 [] jbd2_journal_destroy+0x257/0x262 [] autoremove_wake_function+0x0/0x2e [] mb_cache_shrink+0x1e/0x95 [] ext4_put_super+0x39/0x1d8 [] generic_shutdown_super+0x60/0xf1 [] kill_block_super+0xd/0x1e [] deactivate_super+0x47/0x5f [] sys_umount+0x1f7/0x22a [] sys_newstat+0x19/0x31 [] system_call+0x7e/0x83 Replacing kfree(journal) by jbd2_free(journal, sizeof(*journal)) in=20 fs/jbd2/journal.c fixes the problem. Who could check this? Another thing: JBD-blocks-reservation-fix-for-large-blk.patch is in the= =20 series file but not present in the ext4 patch queue. Val=E9rie