Re: CAM IOCTL issue with 13.1-STABLE

From: Warner Losh <imp_at_bsdimp.com>
Date: Mon, 29 Aug 2022 18:27:55 UTC
On Mon, Aug 29, 2022 at 12:00 PM Mark Johnston <markj@freebsd.org> wrote:

> On Tue, Aug 23, 2022 at 09:44:48AM -0400, Alexander Motin wrote:
> > Hi Matthew,
> >
> > I took a brief look on it and found that CAM compatibility code just
> > does not cover that IOCTL.  That is why when CAM version was bumped it
> > cause the unexpected breakage.  Short term fix would be to rebuild the
> > application to new CAM version, while for proper fix somebody would have
> > to implement the compatibility code for that IOCTL.
>
> I looked at this a bit more, and it seems trivial since
> 1) for periph drivers, CAMGETPASSTHRU ignores the input CCB, and
> 2) the CAM version bump from 0x19 to 0x1a does not affect XPT_GDEVLIST
>    CCBs.
>
> Note for instance that cam_compat_handle_0x19() is a no-op for
> CAMGETPASSTHRU.  So, isn't the patch here sufficient?
> https://reviews.freebsd.org/D36389


I believe the above patch should just work. I don't know if we need to
structure it
differently. I don't think so, though...

Warner

> On 22.08.2022 14:48, Matthew Grooms wrote:
> > > There appears to be a problem with XPT_DEV_MATCH CAM IOCTL calls. This
> > > prevents a bunch of packages on 13.1-STABLE from working correctly. A
> > > bug was filed and Mark J was kind enough to help diagnose the issue,
> but
> > > it's sitting in unassigned status. Can someone please assign it to the
> > > correct group so it gets some attention?
> > >
> > > The FreeBSD bug:
> > > https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=264709
> > >
> > > The offending commit ( I think? ):
> > >
> https://cgit.freebsd.org/src/commit/sys/cam/cam_ccb.h?h=stable/13&id=7d7168478380f08b3a7fd58ca7cf83182fae6850
> >
> > --
> > Alexander Motin
> >
>
>