Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 29 Aug 2022 12:27:55 -0600
From:      Warner Losh <imp@bsdimp.com>
To:        Mark Johnston <markj@freebsd.org>
Cc:        Alexander Motin <mav@freebsd.org>, Matthew Grooms <mgrooms@shrew.net>,  FreeBSD-STABLE Mailing List <freebsd-stable@freebsd.org>
Subject:   Re: CAM IOCTL issue with 13.1-STABLE
Message-ID:  <CANCZdfrJ1S8=F_YJt_R4oJY2q5eyqbVopbG6wThVehtLrLON-w@mail.gmail.com>
In-Reply-To: <Ywz%2BvA4Ls6to3XHz@nuc>
References:  <c1575141-ebc2-ece1-db23-7d50e6bac6db@shrew.net> <3caeafa8-6c9c-2632-9010-9c8e21098378@FreeBSD.org> <Ywz%2BvA4Ls6to3XHz@nuc>

next in thread | previous in thread | raw e-mail | index | archive | help
--000000000000ccade905e7656c8e
Content-Type: text/plain; charset="UTF-8"

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
> >
>
>

--000000000000ccade905e7656c8e
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div dir=3D"ltr"><br></div><br><div class=3D"gmail_quote">=
<div dir=3D"ltr" class=3D"gmail_attr">On Mon, Aug 29, 2022 at 12:00 PM Mark=
 Johnston &lt;<a href=3D"mailto:markj@freebsd.org">markj@freebsd.org</a>&gt=
; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px=
 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Tue,=
 Aug 23, 2022 at 09:44:48AM -0400, Alexander Motin wrote:<br>
&gt; Hi Matthew,<br>
&gt; <br>
&gt; I took a brief look on it and found that CAM compatibility code just <=
br>
&gt; does not cover that IOCTL.=C2=A0 That is why when CAM version was bump=
ed it <br>
&gt; cause the unexpected breakage.=C2=A0 Short term fix would be to rebuil=
d the <br>
&gt; application to new CAM version, while for proper fix somebody would ha=
ve <br>
&gt; to implement the compatibility code for that IOCTL.<br>
<br>
I looked at this a bit more, and it seems trivial since<br>
1) for periph drivers, CAMGETPASSTHRU ignores the input CCB, and<br>
2) the CAM version bump from 0x19 to 0x1a does not affect XPT_GDEVLIST<br>
=C2=A0 =C2=A0CCBs.<br>
<br>
Note for instance that cam_compat_handle_0x19() is a no-op for<br>
CAMGETPASSTHRU.=C2=A0 So, isn&#39;t the patch here sufficient?<br>
<a href=3D"https://reviews.freebsd.org/D36389" rel=3D"noreferrer" target=3D=
"_blank">https://reviews.freebsd.org/D36389</a></blockquote><div><br></div>=
<div>I believe the above patch should just work. I don&#39;t know if we nee=
d to structure it</div><div>differently. I don&#39;t think so, though...</d=
iv><div><br></div><div>Warner</div><div><br></div><blockquote class=3D"gmai=
l_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,20=
4,204);padding-left:1ex">
&gt; On 22.08.2022 14:48, Matthew Grooms wrote:<br>
&gt; &gt; There appears to be a problem with XPT_DEV_MATCH CAM IOCTL calls.=
 This <br>
&gt; &gt; prevents a bunch of packages on 13.1-STABLE from working correctl=
y. A <br>
&gt; &gt; bug was filed and Mark J was kind enough to help diagnose the iss=
ue, but <br>
&gt; &gt; it&#39;s sitting in unassigned status. Can someone please assign =
it to the <br>
&gt; &gt; correct group so it gets some attention?<br>
&gt; &gt; <br>
&gt; &gt; The FreeBSD bug:<br>
&gt; &gt; <a href=3D"https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D26=
4709" rel=3D"noreferrer" target=3D"_blank">https://bugs.freebsd.org/bugzill=
a/show_bug.cgi?id=3D264709</a><br>
&gt; &gt; <br>
&gt; &gt; The offending commit ( I think? ):<br>
&gt; &gt; <a href=3D"https://cgit.freebsd.org/src/commit/sys/cam/cam_ccb.h?=
h=3Dstable/13&amp;id=3D7d7168478380f08b3a7fd58ca7cf83182fae6850" rel=3D"nor=
eferrer" target=3D"_blank">https://cgit.freebsd.org/src/commit/sys/cam/cam_=
ccb.h?h=3Dstable/13&amp;id=3D7d7168478380f08b3a7fd58ca7cf83182fae6850</a> <=
br>
&gt; <br>
&gt; -- <br>
&gt; Alexander Motin<br>
&gt; <br>
<br>
</blockquote></div></div>

--000000000000ccade905e7656c8e--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfrJ1S8=F_YJt_R4oJY2q5eyqbVopbG6wThVehtLrLON-w>