[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Assertion failure in do_get_write_access on full disk?



Hi, I'm running stock kernel 2.4.18, and was downloading some things when
I filled up one of my partitions.  This was sent to all attached
terminals:
Assertion failure in do_get_write_access() at transaction.c:708:
"handle->h_buffer_credits > 0"

I think:
invalid operand: 0000
may have followed.  Anyway, it also gave a stack trace and register dump
(to syslog), which I've run through ksymoops specifying the map and
vmlinux executable; the output is attached.

The program that filled up the hard disk died (not sure if that's
kernel-related or a buggy program), and if I try to access the mounted
partition in any way (mount still says it's mounted), the program hangs.
As it is, I've got four 'ls' processes running in an "uninterruptible
sleep" (according to ps), updatedb, bash, and kjournald showing the same
thing (thus my load average of 7.32).  If I `ls /mnt/data` I'll add
another ls process.

I looked through the 2.4.19pre changelog without seeing any relevant
bugfixes, and I searched the mailing list without any results.

IMHO, a full disk should be handled a little more elegantly :)

CC: me in any replies as I'm off-list (if this is the correct list).  I've
left my system up, so let me know if you'd like any more information.

Thanks,
-Brian Pike
ksymoops 2.4.1 on i686 2.4.18.  Options used
     -v /usr/src/linux/vmlinux (specified)
     -k /proc/ksyms (default)
     -l /proc/modules (default)
     -o /lib/modules/2.4.18/ (default)
     -m /usr/src/linux/System.map (specified)

Warning (compare_maps): mismatch on symbol scsi_CDs  , sr_mod says d5a01e24, /lib/modules/2.4.18/kernel/drivers/scsi/sr_mod.o says d5a01d40.  Ignoring /lib/modules/2.4.18/kernel/drivers/scsi/sr_mod.o entry
invalid operand: 0000
CPU:    0
EIP:    0010:[<d0871bce>]    Tainted: P 
Using defaults from ksymoops -t elf32-i386 -a i386
EFLAGS: 00010282
eax: 00000063   ebx: 00000000   ecx: 00000005   edx: c6a53f64
esi: cff49a00   edi: 00000000   ebp: cff49a00   esp: c49bbdb0
ds: 0018   es: 0018   ss: 0018
Process gftp-gtk (pid: 16325, stackpage=c49bb000)
Stack: d0877b40 d0877487 d08773e0 000002c4 d087749b 00000000 00000000 cbbea140 
       c49ba000 00000001 000000f0 00000054 cff49a94 cff49a00 ce84eec0 cd7d6c00 
       d0871d15 ce84eec0 cd7d6c00 00000000 00000000 cff49800 ce84eec0 c1a05180 
Call Trace: [<d0877b40>] [<d0877487>] [<d08773e0>] [<d087749b>] [<d0871d15>] 
   [<d0882096>] [<d0871252>] [<d087133c>] [<d087fad4>] [<d087faeb>] [<c0122fcd>] 
   [<d087fa10>] [<c012148b>] [<c012604c>] [<c012f965>] [<c0106cfb>] 
Code: 0f 0b 83 c4 14 8b 4c 24 30 8b 41 04 8b 54 24 30 48 89 42 04 

>>EIP; d0871bce <[jbd]do_get_write_access+3fe/510>   <=====
Trace; d0877b40 <[jbd].LC4+30/40>
Trace; d0877487 <[jbd].LC30+2/1d>
Trace; d08773e0 <[jbd].LC10+c/1b>
Trace; d087749b <[jbd].LC30+16/1d>
Trace; d0871d15 <[jbd]journal_get_write_access+35/60>
Trace; d0882096 <[ext3]ext3_orphan_add+86/1c0>
Trace; d0871252 <[jbd]start_this_handle+112/150>
Trace; d087133c <[jbd]journal_start+ac/e0>
Trace; d087fad4 <[ext3]ext3_truncate+c4/3a0>
Trace; d087faeb <[ext3]ext3_truncate+db/3a0>
Trace; c0122fcd <truncate_list_pages+d/160>
Trace; d087fa10 <[ext3]ext3_truncate+0/3a0>
Trace; c012148b <vmtruncate+fb/130>
Trace; c012604c <generic_file_write+5fc/6b0>
Trace; c012f965 <sys_write+95/f0>
Trace; c0106cfb <system_call+33/38>
Code;  d0871bce <[jbd]do_get_write_access+3fe/510>
00000000 <_EIP>:
Code;  d0871bce <[jbd]do_get_write_access+3fe/510>   <=====
   0:   0f 0b                     ud2a      <=====
Code;  d0871bd0 <[jbd]do_get_write_access+400/510>
   2:   83 c4 14                  add    $0x14,%esp
Code;  d0871bd3 <[jbd]do_get_write_access+403/510>
   5:   8b 4c 24 30               mov    0x30(%esp,1),%ecx
Code;  d0871bd7 <[jbd]do_get_write_access+407/510>
   9:   8b 41 04                  mov    0x4(%ecx),%eax
Code;  d0871bda <[jbd]do_get_write_access+40a/510>
   c:   8b 54 24 30               mov    0x30(%esp,1),%edx
Code;  d0871bde <[jbd]do_get_write_access+40e/510>
  10:   48                        dec    %eax
Code;  d0871bdf <[jbd]do_get_write_access+40f/510>
  11:   89 42 04                  mov    %eax,0x4(%edx)


1 warning issued.  Results may not be reliable.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]