lkml.org 
[lkml]   [2000]   [Sep]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject2.4.0 FAT FS is broken for 2028 blocksize
Hi!

Recently I tried to read old VFAT-formatted MO disk with 2.4.0-test7 kernel.
Long time ago in the days of 2.3.x such operation caused no problems.

Today 2.4.0-testX kernels OOPSes at fat_file_read(), trying to
dereference NULL pointer at (inode->i_sb)->cvf_format->cvf_file_read

Due to 2028 bytes/sector nature of 640MB MO disk,
cvf_format has been initialied to bigblock_cvf.

Here is where a nice NULL pointer coming from,
exactly from between default_fat_bmap() and
default_fat_file_write().

What is this all about?
Incomplete implementation or some kind of typo?



struct cvf_format bigblock_cvf = {
0, /* version - who cares? */
"big_blocks",
0, /* flags - who cares? */
NULL,
NULL,
NULL,
bigblock_fat_bread,
bigblock_fat_bread,
bigblock_fat_brelse,
bigblock_fat_mark_buffer_dirty,
bigblock_fat_set_uptodate,
bigblock_fat_is_uptodate,
bigblock_fat_ll_rw_block,
default_fat_access,
NULL,
default_fat_bmap,
NULL,
^^^^^^
default_fat_file_write,
NULL,
NULL
};


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 12:38    [W:0.038 / U:0.124 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site