xfs
[Top] [All Lists]

BUG 821124 - Deadlock in extent conversion

To: nb@xxxxxxx
Subject: BUG 821124 - Deadlock in extent conversion
From: pv@xxxxxxxxxxxxx (ananth@xxxxxxxxxxxx)
Date: Thu, 12 Apr 2001 12:15:18 -0700 (PDT)
Cc: linux-xfs@xxxxxxxxxxx
Reply-to: sgi.bugs.xfs@xxxxxxxxxxxxxxxxx
Sender: owner-linux-xfs@xxxxxxxxxxx
Webexec: webpvsubmit,PvProjectIncident
Webpv: sgigate.sgi.com
View Incident: 
http://co-op.engr.sgi.com/BugWorks/code/bwxquery.cgi?search=Search&wlong=1&view_type=Bug&wi=821124

Submitter : ananth                    Submitter Domain : engr               
Assigned Engineer : nb                Assigned Domain : sgi.com             
Assigned Group : xfs-linux            Category : software                   
Customer Reported : F                 Priority : 2                          
Project : xfs-linux                   Status : open                         
Description :
This problem seen with XFS 1.0 bits on a 64 M, 2CPU system with
1 scsi disk. Tests being run in parallel:

while true; do holes -l 300000000 -b 4099   -i 7 -c 7 /xfs/holes; date; done

and AIM 7, run to crossover.

It took about 3-4 hours to hit this problem, by then
AIM had gone to about 170 processes. In the end,
console became unresponsive ... looking at time-stamps
printed by the test processes it appears to have been
stuck for over 16+ hours.

A complete list of stack traces available at:

        waco.engr:/home/ananth/xfs.debug.7

The crux of the problem seems to be this:

----------------
[1]kdb> btp 16044
                Function
            schedule+0x41e 
            __down+0x73
            __down_failed+0x8 
            [pagebuf]_pagebuf_grab_lock+0x11 
            [pagebuf]_pagebuf_find_lockable_buffer+0x116 
            [pagebuf]_pagebuf_get_lockable_buffer+0x2f 
            [pagebuf]pagebuf_get_Rsmp_e7734c5d+0xae 
            [xfs]xfs_trans_read_buf+0x207 
            [xfs]xfs_alloc_read_agf+0x77 
            [xfs]xfs_alloc_fix_freelist+0x16f 
            [xfs]xfs_alloc_vextent+0x310 
            [xfs]xfs_bmap_alloc+0x1f22 
            [xfs]xfs_bmapi+0x883 
            [xfs]xfs_strategy+0x694 
            [xfs]linvfs_pb_bmap+0x7f 
            [pagebuf]pagebuf_delalloc_convert+0x44 
            [pagebuf]pagebuf_write_full_page_Rsmp_960947d6+0x64 
            [xfs]linvfs_write_full_page_nounlock+0xf 
            try_to_free_buffers+0x50 
            page_launder+0x389 
            do_try_to_free_pages+0x34 
            try_to_free_pages+0x22 
            __alloc_pages+0x252
            __get_free_pages+0x14
            kmem_cache_grow+0xdc 
            kmem_cache_alloc+0xa9 
            [pagebuf]_pagebuf_get_object+0x1c 
            [pagebuf]_pagebuf_get_lockable_buffer+0x69 
            [pagebuf]pagebuf_get_Rsmp_e7734c5d+0xae 
            [xfs]xfs_trans_read_buf+0x207 
            [xfs]xfs_btree_read_bufl+0xd4 
            [xfs]xfs_bmbt_lookup+0x167 
            [xfs]xfs_bmbt_lookup_eq+0x3e 
            [xfs]xfs_bmap_add_extent_delay_real+0x942 
            [xfs]xfs_bmap_add_extent+0x26f 
            [xfs]xfs_bmapi+0xac4 
            [xfs]xfs_strategy+0x694 
            [xfs]linvfs_pb_bmap+0x7f 
            [pagebuf]__pb_block_prepare_write_async+0x12b 
            [pagebuf]pagebuf_write_full_page_Rsmp_960947d6+0xce 
            [xfs]linvfs_write_full_page_nounlock+0xf 
            _write_buffer+0x73
            fsync_inode_buffers+0xc2 
            [xfs]xfs_write+0x364 
            [xfs]linvfs_write+0x114 
            sys_write+0x8e 
            system_call+0x33
----------------------

ananth.

<Prev in Thread] Current Thread [Next in Thread>
  • BUG 821124 - Deadlock in extent conversion, ananth@xxxxxxxxxxxx <=