#42 atomic_read(&ip->i_gl->gl_locked) assert in ogfs_get_block()

open
nobody
None
5
2004-02-26
2004-02-26
No

TEST ENVIRONMENT:

Single node VMware system
128 MB memory
6GB vitrual SCSI disk
Red Hat Linux 9
OpenGFS 0.3.0 with memexpd
EVMS 2.2.2 with Heartbeat

EVMS/OpenGFS configured as described in docs/HOWTO-
evms, except no Cluster containter and only one journal.

OpenGFS filesystem mounted on /ogfs

TEST:

LSB-VSX

Available from: http://www.opengroup.org/testing/lsb-
test/lsb-vsx.html

Take all the installation and setup defaults, except
install in /ogfs/tet instead of /home/tet.

During the setup process, the test suite builds an EXT2
filesystem on a loopback device backed by a file in
the /ogfs filesystem. It is while manipulating that
filesystem that the following assert occurs:

OGFS: Assertion failed on line 1464 of file inode_linux.c
OGFS: assertion: "atomic_read(&ip->i_gl->gl_locked)"
OGFS: time = 1077834094345262

bta output is in attached file. Backtrace of thread that
paniced:

Stack traceback for pid 1879
0xc527c000 1879 1 0 0 D 0xc527c270
loop0
EBP EIP Function (args)
0xc527dcf0 0xc01175c9 schedule+0x209 (0xc527dd18,
0x0, 0xc527c000, 0xc36c1edc, 0xc7e8ff08)
kernel .text 0xc0100000
0xc01173c0 0xc0117710
0xc527dd18 0xc013d54d __wait_on_buffer+0x5d
(0xc3aa0660, 0x1, 0xc527dd2c, 0xc3aa0660)
kernel .text 0xc0100000
0xc013d4f0 0xc013d580
0xc527dd30 0xc013e78a bread+0x8a (0x700, 0x7,
0x400, 0xc527dd64, 0xc011a530)
kernel .text 0xc0100000
0xc013e700 0xc013e790
0xc527dd6c 0xc0179ebd ext2_update_inode+0xfd
(0xc090d680, 0x0)
kernel .text 0xc0100000
0xc0179dc0 0xc017a1a0
0xc527dd7c 0xc017a1b8 ext2_write_inode+0x18
(0xc090d680, 0x0, 0xc3cad400, 0xc3cad464,
0xc3cad45c)
kernel .text 0xc0100000
0xc017a1a0 0xc017a1c0
0xc527dd98 0xc015234b __sync_one+0x14b
(0xc090d680, 0x0, 0xc3cad400, 0xf4240, 0x2)
kernel .text 0xc0100000
0xc0152200 0xc0152350
0xc527ddb4 0xc01510b3 sync_inodes_sb+0x53
(0xc3cad400, 0x0)
kernel .text 0xc0100000
0xc0151060 0xc0151160
0xc527ddc4 0xc0151265 sync_inodes+0x45 (0x0, 0x0,
0x3d448)
kernel .text 0xc0100000
0xc0151220 0xc0151270
0xc527ddd8 0xc013d965 fsync_dev+0x25 (0x0)
kernel .text 0xc0100000
0xc013d940 0xc013d990
0xc527dde4 0xc013da22 sys_sync+0x12 (0xc02a3273,
0xc03cb340, 0xc527de08, 0x3d448)
more>
kernel .text 0xc0100000
0xc013da10 0xc013da30
0xc527ddfc 0xc011a064 panic+0x114 (0xc88996e5,
0x3d448, 0x2000, 0x0, 0xa)
kernel .text 0xc0100000
0xc0119f50 0xc011a070
0xc8875ca9 [ogfs]ogfs_get_block+0x191
(0xc2d489a0, 0x11, 0xc3aa0e40, 0x1, 0xc0098000)
ogfs .text 0xc886f060
0xc8875b18 0xc8875dbc
0xc527dec8 0xc013f03c __block_prepare_write+0x18c
(0xc2d489a0, 0xc10753f4, 0x0, 0x400, 0xc8875b18)
kernel .text 0xc0100000
0xc013eeb0 0xc013f1a0
0xc527dee8 0xc013f893 block_prepare_write+0x33
(0xc10753f4, 0x0, 0x400, 0xc8875b18, 0xc527df18)
kernel .text 0xc0100000
0xc013f860 0xc013f8b0
0xc887649a [ogfs]ogfs_prepare_write+0x8e
(0xc3822920, 0xc10753f4, 0x0, 0x400, 0x400)
ogfs .text 0xc886f060
0xc887640c 0xc88764bc
0xc527df7c 0xc01caec0 lo_send+0x110 (0xc7e6f000,
0xc35151e0, 0x1000, 0x11000, 0x0)
kernel .text 0xc0100000
0xc01cadb0 0xc01cb000
0xc527dfa4 0xc01cb239 do_bh_filebacked+0xc9
(0xc7e6f000, 0xc35151e0, 0x1, 0xc3a61ee8,
0xc0109162)
kernel .text 0xc0100000
0xc01cb170 0xc01cb240
0xc527dfec 0xc01cb8f9 loop_thread+0x1e9
kernel .text 0xc0100000
0xc01cb710 0xc01cb930
0xc010755e arch_kernel_thread+0x2e
kernel .text 0xc0100000
0xc0107530 0xc0107570

Discussion

  • Steve Landherr

    Steve Landherr - 2004-02-26

    KDB bta output

     
  • Steve Landherr

    Steve Landherr - 2004-02-26

    Logged In: YES
    user_id=985258

    This can be more easily reproduced as follows:

    # cd /ogfs
    # dd if=/dev/zero of=loopy bs=65536 count=10240
    # losetup /dev/loop0 /ogfs/loopy
    # mkfs.ext2 /dev/loop0

    The system will panic before mkfs.ext2 finishes.

    Verified on two different systems.

     
  • Steve Landherr

    Steve Landherr - 2004-02-26
    • summary: atomic_read(&ip->i_gl->gl_locked) assert in ogfs_get_block() --> atomic_read(&ip->i_gl->gl_locked) assert in ogfs_get_block()
     

Log in to post a comment.