Date: Tue, 25 Sep 2007 07:51:28 -0400 From: Bart Silverstrim <bsilver@chrononomicon.com> To: Ted Mittelstaedt <tedm@toybox.placo.com> Cc: Chris Boyd <cboyd@gizmopartners.com>, freebsd-questions@freebsd.org Subject: Re: Update on data corruption with Tyan/3Ware Message-ID: <46F8F640.8020600@chrononomicon.com> In-Reply-To: <BMEDLGAENEKCJFGODFOCKEHBCAAA.tedm@toybox.placo.com> References: <BMEDLGAENEKCJFGODFOCKEHBCAAA.tedm@toybox.placo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Ted Mittelstaedt wrote: > >> -----Original Message----- >> From: owner-freebsd-questions@freebsd.org >> [mailto:owner-freebsd-questions@freebsd.org]On Behalf Of Bart >> Silverstrim >> Sent: Monday, September 24, 2007 7:05 PM >> To: Ted Mittelstaedt >> Cc: Chris Boyd; freebsd-questions@freebsd.org >> Subject: Re: Update on data corruption with Tyan/3Ware >> >> >> >> >> Ted Mittelstaedt wrote: >>> 3ware is supported by the manufacturer - what do they say? >>> >>> Ted >>> >>>> -----Original Message----- >>>> From: owner-freebsd-questions@freebsd.org >>>> [mailto:owner-freebsd-questions@freebsd.org]On Behalf Of Chris Boyd >>>> Sent: Monday, September 24, 2007 2:54 PM >>>> To: freebsd-questions@freebsd.org >>>> Subject: Update on data corruption with Tyan/3Ware >>>> >>>> >>>> Here's an update on my odd problem. Thanks to Don B for some hints >>>> that helped us start looking in a better directions. >>>> >>>> System is a Tyan Thunder K8SE motherboard with dual Opteron 250 >>>> 2.4GHz CPUs and a 3Ware 9550SX-4LP PCI Express four port RAID >>>> controller running in RAID 5. Disks are 4x Seagate 500GB SATA. 4GB >>>> Memory. >>>> >>>> Latest BIOS and firmware on mobo and RAID controller. >>>> >>>> FreeBSD 6.2 AMD64 with all patches as of 9-21-2007 >>>> >>>> We've narrowed the problem down to files that are > 4GB. Anytime we >>>> have a file that's > 4GB, we get inconsistent checksums, can't >>>> uncompress it, etc. Files < 4GB are fine. >>>> >>>> So is this a RAID controller issue? A filesystem problem? All hints >>>> appreciated. >> How are you getting the files on the system? Network transfer? Direct >> copy from a disc? >> >> What filesystem is it you're using? >> >> 3ware is well supported under Linux, from what I can tell and what I've >> experienced, and can't imagine that a manufacturer with a good track >> record of driver support for Linux for so long would not support FreeBSD >> as well. > > Bart and Chris, > > The problem might be that the 3ware driver uses a 32 bit "int" to > represent > a file size. In FreeBSD, stat() ftruncate() lseek() and > friends which are based on "strut stat" had this limitation under FreeBSD > 4.xx. > > Note line# 821 of twe_freebsd.c the driver: > > sc->twed_disk->d_maxsize = (TWE_MAX_SGL_LENGTH - 1) * PAGE_SIZE; > sc->twed_disk->d_sectorsize = TWE_BLOCK_SIZE; > sc->twed_disk->d_mediasize = TWE_BLOCK_SIZE * > (off_t)sc->twed_drive->td_size; > sc->twed_disk->d_fwsectors = sc->twed_drive->td_sectors; > > that off_t also appears elsewhere. > > I'm not a driver programmer but I'd bet the driver hasn't been updated > for 64 bit FreeBSD. A) Holy @#$!@...good job and thank you for pointing that out! :-) B) Does that mean that this would affect all 3Ware products on FreeBSD, or only when running the 64 bit OS? I believe I am storing 4+ gig files on a Linux system with a 3Ware controller in it and to my knowledge there hasn't been any problems with it. Sorry if it's a silly question...I'm not a programmer.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?46F8F640.8020600>