From owner-freebsd-usb@FreeBSD.ORG Tue Sep 4 19:54:51 2012 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 51C62106566B for ; Tue, 4 Sep 2012 19:54:51 +0000 (UTC) (envelope-from anatoly@kazanfieldhockey.ru) Received: from kazanfieldhockey.ru (kazanfieldhockey.ru [78.138.152.250]) by mx1.freebsd.org (Postfix) with ESMTP id B531D8FC16 for ; Tue, 4 Sep 2012 19:54:50 +0000 (UTC) Received: from epc.localdomain (host-175-22.xdsl.telecet.ru [87.117.175.22]) (authenticated bits=0) by kazanfieldhockey.ru (8.14.3/8.14.3) with ESMTP id q84JsgYS027719 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-SHA bits=128 verify=NO) for ; Tue, 4 Sep 2012 23:54:47 +0400 (MSK) (envelope-from anatoly@kazanfieldhockey.ru) Date: Tue, 4 Sep 2012 23:55:57 +0400 From: Anatoly To: freebsd-usb@freebsd.org Message-ID: <20120904235557.7ca40fc8@epc.localdomain> X-Mailer: Claws Mail 3.7.5 (GTK+ 2.18.7; i386-portbld-freebsd7.3) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.2.6 (kazanfieldhockey.ru [192.168.13.2]); Tue, 04 Sep 2012 23:54:47 +0400 (MSK) Subject: how to force my 32G usb pendrive to flush write cache in RAM it has? X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 04 Sep 2012 19:54:51 -0000 Hello, I have a problem with my new 32G pendrive: da1: Removable Direct Access SCSI-2 device da1: 40.000MB/s transfers da1: 30640MB (62750720 512 byte sectors: 255H 63S/T 3906C) I'm using fat32 partition on it. To make problem occur I can do following things: 1) write a file about 5MB in size on that partition 2) unmount 3) unplug pendrive (so it loses power) 4) plug it again 5) mount Now I can see that the end of file is corrupted. Poblem never occurs when I do: 1) write a file about 5MB in size on that partition 2) unmount 3) mount Also, problem doesn't occur if I'll wait for more than ~10 minutes before unplugging pendrive. So it seems to me that this pendrive has internal write cache in RAM that needs to be flushed before pendrive loses power. Problem never occurs with Windows. As I click "remove", windows somehow "correctly shutdowns" pendrive so it's LED goes off (Unlike if i just unmount, when the LED stays on) What can I do to get cache flushed before unpugging, turn that write cache off, or any other suggestions? I've tried camcontrol stop and camcontrol eject with no success I using FreeBSD 7.3 with generic kernel here