Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 24 Sep 2007 22:58:20 -0700
From:      "Ted Mittelstaedt" <tedm@toybox.placo.com>
To:        "Bart Silverstrim" <bsilver@chrononomicon.com>
Cc:        Chris Boyd <cboyd@gizmopartners.com>, freebsd-questions@freebsd.org
Subject:   RE: Update on data corruption with Tyan/3Ware
Message-ID:  <BMEDLGAENEKCJFGODFOCKEHBCAAA.tedm@toybox.placo.com>
In-Reply-To: <46F86CC0.7030805@chrononomicon.com>

next in thread | previous in thread | raw e-mail | index | archive | help


> -----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.

Ted




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?BMEDLGAENEKCJFGODFOCKEHBCAAA.tedm>