Re: fix: build of aac(4)

2019-10-05 Thread Theo de Raadt
I guess I mean: unless you plan to get this working, maybe it should
be deleted to create a vaccum (which some historical can fill at some
later point with working code)

I vaguely remember newer Adaptec controllers becoming quite different
from previous ones in little ways, all undocumented, and causing much
frustration.  This event described happened during our push for greater
vendor documentation.  Many vendors provided documentation to the
open source community, and flourished.  Others, not so much on either
count.  I don't know if there was a relationship between the two but
I can hope.

> I believe aac hasn't worked in a long time.  Was never enabled on amd64.
> 
> On i386, it was disabled by
> 
> revision 1.406
> date: 2005/03/18 22:39:59;  author: deraadt;  state: Exp;  lines: +3 -3;
> shut off aac(4) unless Adaptec stops behaving like assholes
> 
> Adaptec wouldn't give us documentation.  FreeBSD people had docs,
> because employees were there.  Wikipedia page uses the past-tense verb
> "was" in referring to them.
> 
> Not sure this is worth it.
> 
> > aac(4) doesn't build in the current status.  The following diff fixes
> > compile errors.  Also, with the AAC_DEBUG option.  I removed the
> > prototypes of the inline functions in aacvar.h because of a K style
> > compile error and that the prototypes are directly followed by their
> > implementation.
> > 
> > ok?
> > 
> > Bye,
> > Jan
> > 
> > Index: dev/ic/aac.c
> > ===
> > RCS file: /mount/openbsd/cvs/src/sys/dev/ic/aac.c,v
> > retrieving revision 1.70
> > diff -u -p -r1.70 aac.c
> > --- dev/ic/aac.c11 Apr 2017 14:43:49 -  1.70
> > +++ dev/ic/aac.c5 Oct 2019 11:06:18 -
> > @@ -2129,7 +2129,7 @@ aac_internal_cache_cmd(struct scsi_xfer 
> > struct scsi_read_cap_data rcd;
> > u_int8_t target = link->target;
> >  
> > -   AAC_DPRINTF(AAC_D_CMD, ("aac_internal_cache_cmd: ",
> > +   AAC_DPRINTF(AAC_D_CMD, ("%s: aac_internal_cache_cmd: ",
> > sc->aac_dev.dv_xname));
> >  
> > switch (xs->cmd->opcode) {
> > @@ -2277,7 +2277,7 @@ aac_scsi_cmd(struct scsi_xfer *xs)
> > blockcnt = _2btol(rwb->length);
> > }
> >  
> > -   AAC_DPRINTF(AAC_D_CMD, ("blkno=%d bcount=%d ",
> > +   AAC_DPRINTF(AAC_D_CMD, ("opcode=%d blkno=%d bcount=%d ",
> > xs->cmd->opcode, blockno, blockcnt));
> >  
> > if (blockno >= sc->aac_hdr[target].hd_size ||
> > Index: dev/ic/aacvar.h
> > ===
> > RCS file: /mount/openbsd/cvs/src/sys/dev/ic/aacvar.h,v
> > retrieving revision 1.13
> > diff -u -p -r1.13 aacvar.h
> > --- dev/ic/aacvar.h 1 Apr 2016 04:16:27 -   1.13
> > +++ dev/ic/aacvar.h 5 Oct 2019 15:01:12 -
> > @@ -429,11 +429,6 @@ intaac_attach(struct aac_softc *);
> >  intaac_intr(void *);
> >  
> >  /* These all require correctly aligned buffers */
> > -static __inline__ void aac_enc16(u_int8_t *, u_int16_t);
> > -static __inline__ void aac_enc32(u_int8_t *, u_int32_t);
> > -static __inline__ u_int16_t aac_dec16(u_int8_t *);
> > -static __inline__ u_int32_t aac_dec32(u_int8_t *);
> > -
> >  static __inline__ void
> >  aac_enc16(addr, value)
> > u_int8_t *addr;
> > 
> 



Re: fix: build of aac(4)

2019-10-05 Thread Theo de Raadt
I believe aac hasn't worked in a long time.  Was never enabled on amd64.

On i386, it was disabled by

revision 1.406
date: 2005/03/18 22:39:59;  author: deraadt;  state: Exp;  lines: +3 -3;
shut off aac(4) unless Adaptec stops behaving like assholes

Adaptec wouldn't give us documentation.  FreeBSD people had docs,
because employees were there.  Wikipedia page uses the past-tense verb
"was" in referring to them.

Not sure this is worth it.

> aac(4) doesn't build in the current status.  The following diff fixes
> compile errors.  Also, with the AAC_DEBUG option.  I removed the
> prototypes of the inline functions in aacvar.h because of a K style
> compile error and that the prototypes are directly followed by their
> implementation.
> 
> ok?
> 
> Bye,
> Jan
> 
> Index: dev/ic/aac.c
> ===
> RCS file: /mount/openbsd/cvs/src/sys/dev/ic/aac.c,v
> retrieving revision 1.70
> diff -u -p -r1.70 aac.c
> --- dev/ic/aac.c  11 Apr 2017 14:43:49 -  1.70
> +++ dev/ic/aac.c  5 Oct 2019 11:06:18 -
> @@ -2129,7 +2129,7 @@ aac_internal_cache_cmd(struct scsi_xfer 
>   struct scsi_read_cap_data rcd;
>   u_int8_t target = link->target;
>  
> - AAC_DPRINTF(AAC_D_CMD, ("aac_internal_cache_cmd: ",
> + AAC_DPRINTF(AAC_D_CMD, ("%s: aac_internal_cache_cmd: ",
>   sc->aac_dev.dv_xname));
>  
>   switch (xs->cmd->opcode) {
> @@ -2277,7 +2277,7 @@ aac_scsi_cmd(struct scsi_xfer *xs)
>   blockcnt = _2btol(rwb->length);
>   }
>  
> - AAC_DPRINTF(AAC_D_CMD, ("blkno=%d bcount=%d ",
> + AAC_DPRINTF(AAC_D_CMD, ("opcode=%d blkno=%d bcount=%d ",
>   xs->cmd->opcode, blockno, blockcnt));
>  
>   if (blockno >= sc->aac_hdr[target].hd_size ||
> Index: dev/ic/aacvar.h
> ===
> RCS file: /mount/openbsd/cvs/src/sys/dev/ic/aacvar.h,v
> retrieving revision 1.13
> diff -u -p -r1.13 aacvar.h
> --- dev/ic/aacvar.h   1 Apr 2016 04:16:27 -   1.13
> +++ dev/ic/aacvar.h   5 Oct 2019 15:01:12 -
> @@ -429,11 +429,6 @@ int  aac_attach(struct aac_softc *);
>  int  aac_intr(void *);
>  
>  /* These all require correctly aligned buffers */
> -static __inline__ void aac_enc16(u_int8_t *, u_int16_t);
> -static __inline__ void aac_enc32(u_int8_t *, u_int32_t);
> -static __inline__ u_int16_t aac_dec16(u_int8_t *);
> -static __inline__ u_int32_t aac_dec32(u_int8_t *);
> -
>  static __inline__ void
>  aac_enc16(addr, value)
>   u_int8_t *addr;
>