On Mon, Dec 08, 2003 at 01:38:52PM -0500, Jimmie Mayfield wrote:
> An unwanted side effect of this code, as you've noted, was that for
> single slot CF readers, the LUN code ends up detecting phantom devices.
> That is, the device would respond successfully to an identify device query
> regardless
On Mon, Dec 08, 2003 at 02:15:38PM +0100, [EMAIL PROTECTED] wrote:
> > I have a more fundamental question: Why do we need lun detection?
>
> You wrote
>
> info->lun = srb->device->lun;
>
> and maybe that would work. These are two very different animals
> in principle, but maybe it is true
I don't have a card reader and know almost nothing about how they work.
But following this thread has inspired a question: What happens to the lun
mapping when there are two slots in the reader and _both_ slots have a
card inserted?
The mapping does not depend on the presence of m
On Mon, 8 Dec 2003, Eduard Hasenleithner wrote:
> I have a more fundamental question: Why do we need lun detection? The
> datafab reader is already presented to the OS as a two lun device
> (sda/sdb). In this case the user can decide which lun to use. Or is your
> datafab device different with
Phew, this is a really complex topic. Multiple LUNs at multiple levels :(
[EMAIL PROTECTED] wrote:
My own sources have somewhere at the top of datafab.c the comment
/*
* Commands: 8 bytes
* Three commands are known:
*
* Identify: 00 01 00 00 00 a0 ec 01
* (with b0 instead of a0 for LUN 1
My own sources have somewhere at the top of datafab.c the comment
/*
* Commands: 8 bytes
* Three commands are known:
*
* Identify: 00 01 00 00 00 a0 ec 01
* (with b0 instead of a0 for LUN 1).
*
* Read: 00 nn xx xx xx ex 20 01
* (with f0 instead of e0 for LUN 1;
* nn: sector c
[EMAIL PROTECTED] wrote:
On the one hand, I have never seen SCSI error recovery do something useful.
On the other hand, in this case, it is mostly our fault.
If we return errors with the meaning "don't retry, that is meaningless"
that would stop the SCSI layer from doing its nonsense.
I tried your
From [EMAIL PROTECTED] Sun Dec 7 16:04:37 2003
From: Eduard Hasenleithner <[EMAIL PROTECTED]>
The lun detection relies (maybe non-intentional) on the fact that a CF
card is inserted. If no CF is inserted no LUN is detected.
Please find attached only the commands which were
[EMAIL PROTECTED] wrote:
Does this fix the LUN-selection problem Eduard pointed out?
Eduard, does it?
(That is, if you remove your lun assignment patch, so that the driver
does this silly broken lun detection again, but add my "beenhere" hack
to avoid infinite recursion upon scsi error recovery,
[EMAIL PROTECTED] wrote:
The ATA convention is to return the capacity.
The SCSI convention is to return the highest block number,
one less than the capacity.
So, the driver misses a -1.
Phew, I would have never found this. Congrats!
Another problem causing hangs was that the SCSI code does
TEST_UN
On Fri, Dec 05, 2003 at 11:08:44AM +0100, [EMAIL PROTECTED] wrote:
> From [EMAIL PROTECTED] Fri Dec 5 07:16:54 2003
>
> > Below a patch fixing both problems. Now my two-lun device works
> > for CF and it works for SM but not both - depending on the order
> > of the entrie
> Does this fix the LUN-selection problem Eduard pointed out?
Eduard, does it?
(That is, if you remove your lun assignment patch, so that the driver
does this silly broken lun detection again, but add my "beenhere" hack
to avoid infinite recursion upon scsi error recovery, does the "detect"
then c
On Fri, 5 Dec 2003 [EMAIL PROTECTED] wrote:
> Hmm. Now that I look - it is just that the driver is broken.
> Nothing wrong with the device.
>
> The ATA convention is to return the capacity.
> The SCSI convention is to return the highest block number,
> one less than the capacity.
> So, the driver
From [EMAIL PROTECTED] Fri Dec 5 07:16:54 2003
> Below a patch fixing both problems. Now my two-lun device works
> for CF and it works for SM but not both - depending on the order
> of the entries in unusual_devices.
Why not? Can't we just use "srb->devic
[EMAIL PROTECTED] wrote:
Another problem causing hangs was that the SCSI code does
TEST_UNIT_READY, and datafab.c first wants to determine
which lun it is using, and tries to find out, but the attempt
fails and causes scsi error-recovery, but that does TEST_UNIT_READY
and we have a recursion.
Below
15 matches
Mail list logo