lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <Pine.LNX.4.44L0.0908031539161.2888-100000@iolanthe.rowland.org>
Date:	Mon, 3 Aug 2009 15:52:21 -0400 (EDT)
From:	Alan Stern <stern@...land.harvard.edu>
To:	"Lev A. Melnikovsky" <melnikovsky@...l.ru>
cc:	Artur Skawina <art.08.09@...il.com>,
	Linux Kernel <linux-kernel@...r.kernel.org>,
	<linux-usb@...r.kernel.org>
Subject: Re: reading errors on JMicron JM20337 USB-SATA

On Mon, 3 Aug 2009, Lev A. Melnikovsky wrote:

>   On Mon, 3 Aug 2009 at 6:25pm, Alan Stern wrote:
> 
> AS> You are correct except for the term "indefinitely".  The retries _will_
> AS> stop if you wait long enough.  Unfortunately, because of all the nested
> AS> retry loops in the SCSI drivers and at the application level, you may
> AS> have to wait as long as half an hour.
> It was a simple test, I've plugged the USB cable off after two hours, this 
> is apparently not long enough:
> 
> [root ~]# time dd if=/dev/sdf of=/dev/null skip=61395120 count=1 bs=512
> dd: reading `/dev/sdf': Input/output error
> 0+0 records in
> 0+0 records out
> 0 bytes (0 B) copied, 7550.12 s, 0.0 kB/s
> dd: closing input file `/dev/sdf': Bad file descriptor
> 
> real    125m50.119s
> user    0m0.000s
> sys     0m0.000s

Okay, it looks like I was wrong and this particular kind of error will
indeed cause unending retries.

Either way, like I said before, you should complain about this to the
SCSI people.  They are the ones who can fix it.  (You can CC: linux-usb
too, just to keep us in the loop.)

Tell them that scsi_end_request() mustn't call scsi_requeue_command() 
if bytes == 0.

Alan Stern

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

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ