| From | Sent On | Attachments |
|---|---|---|
| David Kelly | Apr 24, 1998 7:21 pm | |
| Julian Elischer | Apr 24, 1998 9:14 pm | |
| Matthew Jacob | Apr 24, 1998 9:59 pm | |
| Justin T. Gibbs | Apr 24, 1998 11:06 pm | |
| John S. Dyson | Apr 24, 1998 11:53 pm | |
| Harlan Stenn | Apr 25, 1998 9:49 am | |
| Louis A. Mamakos | Apr 25, 1998 12:51 pm | |
| Matthew Jacob | Apr 25, 1998 12:59 pm | |
| Justin T. Gibbs | Apr 25, 1998 1:28 pm | |
| Matthew Jacob | Apr 25, 1998 1:32 pm | |
| Harlan Stenn | Apr 25, 1998 1:37 pm | |
| Harlan Stenn | Apr 25, 1998 2:34 pm | |
| Matthew Jacob | Apr 25, 1998 2:44 pm | |
| Louis A. Mamakos | Apr 25, 1998 3:02 pm | |
| Matthew Jacob | Apr 25, 1998 3:03 pm | |
| Louis A. Mamakos | Apr 25, 1998 3:07 pm | |
| Louis A. Mamakos | Apr 25, 1998 3:10 pm | |
| Matthew Jacob | Apr 25, 1998 3:12 pm | |
| Louis A. Mamakos | Apr 25, 1998 3:23 pm | |
| David Kelly | Apr 25, 1998 4:29 pm | |
| David Kelly | Apr 25, 1998 4:45 pm | |
| Harlan Stenn | Apr 25, 1998 5:41 pm | |
| Louis A. Mamakos | Apr 25, 1998 6:14 pm | |
| Harlan Stenn | Apr 25, 1998 6:32 pm | |
| Matthew Jacob | Apr 25, 1998 9:24 pm | |
| Justin T. Gibbs | Apr 25, 1998 9:27 pm | |
| Julian Elischer | Apr 25, 1998 9:35 pm | |
| Julian Elischer | Apr 25, 1998 9:42 pm | |
| Matthew Jacob | Apr 25, 1998 10:06 pm | |
| David Kelly | Apr 26, 1998 4:25 pm |
| Subject: | Re: does CAM do this? | |
|---|---|---|
| From: | Julian Elischer (jul...@whistle.com) | |
| Date: | Apr 25, 1998 9:42:41 pm | |
| List: | org.freebsd.freebsd-scsi | |
On Sat, 25 Apr 1998, Justin T. Gibbs wrote:
This is probably because the old st driver does not set the B_ERROR buffer flag on a short read. If you don't set the B_ERROR flag while setting b_error to 0, physio will attempt to fill the user's buffer by attempting additional reads.
I think the st does this correctly.. if not then someone's broken it because I used to use this all the time when I had SCSI tapes. CAM may well "do this correctly, but st did as well (I can't test it now) I think the reason is because he doesn't understand the difference between fixed and variable block modes.
The CAM driver behaves exactly as you wish. When a short read is encountered, the user is returned a short read. Just be aware, however, that if the device is in fixed block mode, your request must be a multiple of the block size. Should it be a multiple > 1, you will get more than a single block back. The only way to determine the block size in fixed block mode is to perform a smart search for the block size.
I may be wrong but I vaguely remeber thet the 'info' field contains valid information in this case which I USED to print out in a meaningful manner in one version of st.c (possibly only the TFS version).
julian
-- Justin
:
To Unsubscribe: send mail to majo...@FreeBSD.org with "unsubscribe freebsd-scsi" in the body of the message





