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

EXT3 Trouble on 2.4.4



All,

I know that there is no official port to Kernel 2.4.4, thus I may not get any
help, however I am hoping someone could point me in the right direction for
my problem.  I am currently forced to use kernel 2.4.4 for reasons out of
my control (embedded board).

Here are the exact versions of everything I'm running:
ExT3 Version: ext3-2.4-0.9.6-248
Util Version: util-linux-2.11f.tar.bz2
e2fs Version: e2fsprogs-1.23-WIP-0727.tar.gz

I downloaded the latest EXT3 (meant for kernel 2.4.8), and I ran the patch.
I believe there were something like 4 hunks that fialed.  I was able to go
do these manually.  While doing these, I noticed the filesystem stuff between
2.4.8 and 2.4.4 has changed drastically.

I also had to comment out the the lines:
if (down_trylock(&sb->s_lock) == 0)
	BUG();
in ext3_write_super(), because s_lock is not a semaphore in 2.4.4, its
just a char being 1 for locked, 0 for unlocked.

Once I did this, it compiled and booted up OK.  I then converted the root
file system (/dev/hda1) to ext3 by running tune2fs -j /dev/hda1.  I then
edited /etc/fstab and changed it to mount it as ext3.  Once I rebooted
after this, the board has never booted all the way up since.

Just before the root FS is mounted, I see this:

EXT3-fs: INFO: recovery required on readonly filesystem.
EXT3-fs: write access will be enabled during recovery.
kjournald starting.  Commit interval 5 seconds
EXT3-fs: recovery complete.
EXT3-fs: mounted filesystem with ordered data mode.
VFS: Mounted root (ext3 filesystem) readonly.

Then, during the init scripts (I'm using a SuSE installed FS) I see:
EXT3-fs warning (device ide0(3,1)): ext3_unlink: Deleting nonexistent file (107465), 0
EXT3-fs warning (device ide0(3,1)): ext3_unlink: Deleting nonexistent file (107465), 0
EXT3-fs error (device ide0(3,1)): ext3_free_blocks: bit already cleared for block 435733
and things like:
/usr/sbin/cron: can't open or create /var/run/cron.pid: File exists
touch: creating `/var/run/random-seed': File exists
chmod: getting attributes of `/var/run/random-seed': No such file or directory

Then, it goes a little farther, and I get an Assertion.  I turned on the
buffer header debugging, and here's the output:

buffer trace for buffer at 0xc02db000 (I am CPU 0)
 journal_dirty_metadata() [transaction.c:1101] file as BJ_Metadata
     b_state:0xb1 b_list:BUF_CLEAN b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:0 b_trans_is_running:1
     b_trans_is_comitting:0 b_jcount:0 <0>
 journal_dirty_metadata() [transaction.c:1106] exit
     b_state:0xb1 b_list:BUF_CLEAN b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:0 b_trans_is_running:1
     b_trans_is_comitting:0 b_jcount:0 <0>
 journal_commit_transaction() [commit.c:385] ph3: write metadata
     b_state:0xb1 b_list:BUF_CLEAN b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:3 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:0 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:0 <0>
 journal_write_metadata_buffer() [journal.c:466] file as BJ_Shadow
     b_state:0xb1 b_list:BUF_CLEAN b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:3 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:0 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:0 <0>
 journal_commit_transaction() [commit.c:508] file as BJ_Forget
     b_state:0xb0 b_list:BUF_CLEAN b_jlist:BJ_Shadow on_lru:1
     cpu:0 on_hash:1 b_count:3 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:0 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:0 <0>
 journal_commit_transaction() [commit.c:513] brelse shadowed buffer
     b_state:0xb0 b_list:BUF_CLEAN b_jlist:BJ_Forget on_lru:1
     cpu:0 on_hash:1 b_count:3 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:0 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:0 <0>
 __brelse() [buffer.c:1165] entry
     b_state:0xb0 b_list:BUF_CLEAN b_jlist:BJ_Forget on_lru:1
     cpu:0 on_hash:1 b_count:3 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:0 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:0 <0>
 journal_commit_transaction() [commit.c:642] add to new checkpointing trans
     b_state:0xb0 b_list:BUF_CLEAN b_jlist:BJ_Forget on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:0 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:0 <0>
 __journal_insert_checkpoint() [checkpoint.c:543] entry
     b_state:0xb0 b_list:BUF_CLEAN b_jlist:BJ_Forget on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:0 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:0 <0>
 journal_commit_transaction() [commit.c:644] refile for checkpoint writeback
     b_state:0xb0 b_list:BUF_CLEAN b_jlist:BJ_Forget on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:0 <0>
 __refile_buffer() [buffer.c:1135] enter
     b_state:0x92 b_list:BUF_CLEAN b_jlist:BJ_None on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:0 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:0 b_jcount:0 <0>
 __refile_buffer() [buffer.c:1150] exit
     b_state:0x92 b_list:BUF_DIRTY b_jlist:BJ_None on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:0 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:0 b_jcount:0 <0>
 ext3_new_inode() [ialloc.c:465] get_write_access
     b_state:0x92 b_list:BUF_DIRTY b_jlist:BJ_None on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:0 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:0 b_jcount:0 <0>
 do_get_write_access() [transaction.c:527] entry
     b_state:0x92 b_list:BUF_DIRTY b_jlist:BJ_None on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:0 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:0 b_jcount:1 <0>
 do_get_write_access() [transaction.c:562] stealing from checkpoint mode
     b_state:0x96 b_list:BUF_DIRTY b_jlist:BJ_None on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:0 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:0 b_jcount:1 <0>
 do_get_write_access() [transaction.c:570] file as BJ_Reserved
     b_state:0x96 b_list:BUF_DIRTY b_jlist:BJ_None on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:0 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:0 b_jcount:1 <0>
 __refile_buffer() [buffer.c:1135] enter
     b_state:0xb4 b_list:BUF_DIRTY b_jlist:BJ_Reserved on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:1
     b_trans_is_comitting:0 b_jcount:1 <0>
 __refile_buffer() [buffer.c:1150] exit
     b_state:0xb4 b_list:BUF_LOCKED b_jlist:BJ_Reserved on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:1
     b_trans_is_comitting:0 b_jcount:1 <0>
 do_get_write_access() [transaction.c:580] steal from cp mode is complete
     b_state:0xb4 b_list:BUF_LOCKED b_jlist:BJ_Reserved on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:1
     b_trans_is_comitting:0 b_jcount:1 <0>
 do_get_write_access() [transaction.c:717] exit
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Reserved on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:1
     b_trans_is_comitting:0 b_jcount:1 <0>
 ext3_new_inode() [ialloc.c:470] call ext3_journal_dirty_metadata
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Reserved on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:1
     b_trans_is_comitting:0 b_jcount:0 <0>
 journal_dirty_metadata() [transaction.c:1070] entry
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Reserved on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:1
     b_trans_is_comitting:0 b_jcount:0 <0>
 journal_dirty_metadata() [transaction.c:1101] file as BJ_Metadata
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Reserved on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:1
     b_trans_is_comitting:0 b_jcount:0 <0>
 journal_dirty_metadata() [transaction.c:1106] exit
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:1
     b_trans_is_comitting:0 b_jcount:0 <0>
 ext3_orphan_add() [namei.c:649] get_write_access
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:0 <0>
 do_get_write_access() [transaction.c:527] entry
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:1 <0>
 do_get_write_access() [transaction.c:614] owned by older transaction
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:1 <0>
 do_get_write_access() [transaction.c:653] generate frozen data
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:1 <0>
 do_get_write_access() [transaction.c:655] allocate memory for buffer
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:1 <0>
 do_get_write_access() [transaction.c:614] owned by older transaction
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:1 <0>
 do_get_write_access() [transaction.c:653] generate frozen data
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:00000000 b_committed_data:00000000
     b_transaction:1 b_next_transaction:0 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:1 <0>
 print_buffer_trace() [jbd-kernel.c:296] 
     b_state:0xb0 b_list:BUF_LOCKED b_jlist:BJ_Metadata on_lru:1
     cpu:0 on_hash:1 b_count:2 b_blocknr:1
     b_jbd:1 b_frozen_data:cedde400 b_committed_data:00000000
     b_transaction:1 b_next_transaction:1 b_cp_transaction:1 b_trans_is_running:0
     b_trans_is_comitting:1 b_jcount:1 <0>
b_next:00000000, b_blocknr:1 b_count:2 b_flushtime:27151
b_next_free:c09dd400 b_prev_free:c09bb800 b_this_page:c02dbc00 b_reqnext:00000000
b_pprev:ce708400 b_data:c02dcc00 b_page:c040c274 b_inode:00000000 b_list:1
b_jlist:3 b_frozen_data:cedde400 b_committed_data:00000000
 b_transaction:cf3ccc40 b_next_transaction:cf3ccb40 b_cp_transaction:cf5082a0
b_cpnext:cf6d2910 b_cpprev:cf6d2190

Assertion failure in do_get_write_access() at transaction.c:701: "(((jh2bh(jh))->b_state & (1UL << 0)) != 0)"
kernel BUG at transaction.c:701!


Any help would be greatly appreciated!  Thanks...

Paul W.
Network Robots, Inc.
(925) 924-8611





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