From owner-freebsd-current@FreeBSD.ORG Sat Aug 4 14:44:35 2007
Return-Path:
Delivered-To: current@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 30A8016A420
for ; Sat, 4 Aug 2007 14:44:35 +0000 (UTC)
(envelope-from un1i@rz.uni-karlsruhe.de)
Received: from smtp1.rz.uni-karlsruhe.de (smtp1.rz.uni-karlsruhe.de
[129.13.185.217])
by mx1.freebsd.org (Postfix) with ESMTP id D4E5913C45E
for ; Sat, 4 Aug 2007 14:44:34 +0000 (UTC)
(envelope-from un1i@rz.uni-karlsruhe.de)
Received: from rzstud5.stud.uni-karlsruhe.de (rzstud5.stud.uni-karlsruhe.de
[193.196.41.41])
by smtp1.rz.uni-karlsruhe.de with esmtp (Exim 4.63 #1)
id 1IHKcg-0001VC-Fb; Sat, 04 Aug 2007 16:28:54 +0200
Received: from un1i by rzstud5.stud.uni-karlsruhe.de with local (Exim 4.43)
id 1IHKcg-0008Md-42
for current@freebsd.org; Sat, 04 Aug 2007 16:28:54 +0200
Date: Sat, 4 Aug 2007 16:28:54 +0200
From: Philipp Mergenthaler
To: current@freebsd.org
Message-ID: <20070804142854.GA24178@rzstud5.rz.uni-karlsruhe.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
User-Agent: Mutt/1.4.2.2i
Sender: Philipp Mergenthaler
Cc:
Subject: Data corruption with msdosfs (rev. 1.172 of msdosfs_vnops.c)
X-BeenThere: freebsd-current@freebsd.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Discussions about the use of FreeBSD-current
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sat, 04 Aug 2007 14:44:35 -0000
Hi,
with rev. 1.172 of msdosfs_vnops.c I see data corruption when reading files
on a FAT 32 file system. (I didn't try write accesses apart from deleting
some files, which worked ok). The file system is on a IDE disk in an
external USB enclosure and has been created with "newfs_msdos -F 32", IIRC.
I can use it without problems under FreeBSD-current (prior to July 20th),
Windows XP and Linux.
The first 0x2000 (usually, but sometimes it's the first 0x3000) bytes of
a file are ok, but then there are some 4kb-blocks from somewhere else.
Example (hexdump -C of a html file):
00001fb0 3c 64 69 76 20 63 6c 61 73 73 3d 22 66 6c 6f 61 | =
di|
00001fd0 76 3e 0a 3c 2f 64 69 76 3e 0a 0a 3c 2f 64 69 76 |v>.
....
...=
..|
00003000 00 00 00 00 00 00 00 00 70 67 5f 73 74 6f 70 00 |........pg_sto=
p.|
00003010 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |..............=
..|
00003020 00 00 00 00 00 00 00 00 6d 78 74 61 72 00 00 00 |........mxtar.=
..|
00003030 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |..............=
..|
00003040 65 73 64 63 74 6c 00 00 00 00 00 00 00 00 00 00 |esdctl........=
..|
[...]
00007fd0 00 00 00 00 00 00 00 00 68 61 73 68 00 00 00 00 |........hash..=
..|
00007fe0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 |..............=
..|
00007ff0 63 6f 6d 70 73 65 74 00 00 00 00 00 00 00 00 00 |compset.......=
..|
00008000 6f 74 65 72 5f 31 22 20 63 6c 61 73 73 3d 22 73 |oter_1" class=
=3D"s|
00008010 69 74 65 6d 61 70 5f 66 6f 6f 74 65 72 22 3e 3c |itemap_footer"=
><|
00008020 75 6c 3e 3c 6c 69 3e 3c 61 20 68 72 65 66 3d 22 |ul>
The data for partition 3 is:
The data for partition 4 is:
Is there any other information I should provide?
Bye
Philipp