Subject: Re: dev/scsipi/ch.c:chattach() fix ? (and approval for commit?)
To: Manuel Bouyer <bouyer@antioche.lip6.fr>
From: Stoned Elipot <seb@ssr.univ-paris7.fr>
List: tech-kern
Date: 06/17/2004 11:40:01
Indeed it looks quite ok, at boot it says:

...
ch0 at scsibus1 target 4 lun 0: <QUALSTAR, RLS-4221, 0047> changer removable
ch0(esiop1:0:4:0): requesting sense
ch0(esiop1:0:4:0):  sense debug information:
        code 0x70 valid 0x0
        seg 0x0 key 0x6 ili 0x0 eom 0x0 fmark 0x0

info: 0x0 0x0 0x0 0x0 followed by 10 extra bytes
        extra: 0x0 0x0 0x0 0x0 0x29 0x0 0x0 0x0 0x0 0x0
ch0(esiop1:0:4:0): restarting command 
ch0: 22 slots, 1 drive, 1 picker, 0 portals
ch0: async, 8-bit transfers
...

I'll exercise it a bit more and I'll commit this.

Thanks all for your help.

On Thu, Jun 17, 2004 at 11:27:45AM +0200, Manuel Bouyer wrote:
[SNIP]
> > I would just remove this block of code in ch.c:
> > 
> >                 if ((periph->periph_flags & PERIPH_OPEN) == 0) {
> >                         /*
> >                          * if the device is not yet open, we can ignore this
> >                          * information.
> >                          */
> >                         return (0);
> >                 }
> > 
> > That should fix the problem by letting the normal mid-layer code retry the 
> > command.
> 
> Yes, just removing this block is the right thing to do.
> Stoned, please test this, and if it work for you, commit.