RE: [PATCH 4.4 29/57] RDMA/uverbs: Check port number supplied by user verbs cmds
From: Ismail, Mustafa
Date: Fri Jul 14 2017 - 10:54:20 EST
> -----Original Message-----
> From: Greg Kroah-Hartman [mailto:gregkh@xxxxxxxxxxxxxxxxxxx]
> Sent: Friday, July 14, 2017 1:49 AM
> To: Ismail, Mustafa <mustafa.ismail@xxxxxxxxx>
> Cc: linux-kernel@xxxxxxxxxxxxxxx; linux-rdma@xxxxxxxxxxxxxxx;
> stable@xxxxxxxxxxxxxxx; Yevgeny Kliteynik <kliteyn@xxxxxxxxxxxx>;
> Tziporet Koren <tziporet@xxxxxxxxxxxx>; Alex Polak
> <alexpo@xxxxxxxxxxxx>; Boris Pismenny <borisp@xxxxxxxxxxxx>; Leon
> Romanovsky <leon@xxxxxxxxxx>; Doug Ledford <dledford@xxxxxxxxxx>
> Subject: Re: [PATCH 4.4 29/57] RDMA/uverbs: Check port number supplied
> by user verbs cmds
>
> On Thu, Jul 13, 2017 at 06:44:38PM +0000, Ismail, Mustafa wrote:
> > > -----Original Message-----
> > > From: Greg Kroah-Hartman [mailto:gregkh@xxxxxxxxxxxxxxxxxxx]
> > > Sent: Thursday, July 13, 2017 11:26 AM
> > > To: Ismail, Mustafa <mustafa.ismail@xxxxxxxxx>
> > > Cc: linux-kernel@xxxxxxxxxxxxxxx; linux-rdma@xxxxxxxxxxxxxxx;
> > > stable@xxxxxxxxxxxxxxx; Yevgeny Kliteynik <kliteyn@xxxxxxxxxxxx>;
> > > Tziporet Koren <tziporet@xxxxxxxxxxxx>; Alex Polak
> > > <alexpo@xxxxxxxxxxxx>; Boris Pismenny <borisp@xxxxxxxxxxxx>;
> Leon
> > > Romanovsky <leon@xxxxxxxxxx>; Doug Ledford
> <dledford@xxxxxxxxxx>
> > > Subject: Re: [PATCH 4.4 29/57] RDMA/uverbs: Check port number
> > > supplied by user verbs cmds
> > >
> > > On Thu, Jul 13, 2017 at 03:54:28PM +0000, Ismail, Mustafa wrote:
> > > > > Subject: [PATCH 4.4 29/57] RDMA/uverbs: Check port number
> > > > > supplied by user verbs cmds
> > > > >
> > > > > 4.4-stable review patch. If anyone has any objections, please
> > > > > let me
> > > know.
> > > >
> > > > Yes, this breaks modify qp.
> > > > See https://patchwork.kernel.org/patch/9830663/
> > >
> > > I don't understand this response at all, sorry.
> > >
> > > What should I do about this? Is this patch alone a problem? Is
> > > there some other patch I should apply that is in Linus's tree?
> > > Where is the problem, only in this old release?
> > >
> > Applying this patch will break RDMA functionality with respect to
> modify_qp.
> > Specifically this part:
> > + if (cmd.port_num < rdma_start_port(ib_dev) ||
> > + cmd.port_num > rdma_end_port(ib_dev))
> > + return -EINVAL;
> > +
> > The cmd.port_num is only valid if (cmd->base.attr_mask & IB_QP_PORT).
> > So the above can be fixed with:
> > if ((cmd->base.attr_mask & IB_QP_PORT) &&
> > (cmd.port_num < rdma_start_port(ib_dev) ||
> > cmd.port_num > rdma_end_port(ib_dev)))
> > return -EINVAL;
> >
> > A version of this patch is in Linus's tree and it has the same problem:
> > commit 5ecce4c9b17bed4dc9cb58bfb10447307569b77b
> "RDMA/uverbs: Check port number supplied by user verbs cmds"
> >
> > We will be submitting a patch to fix this shortly.
>
> Ok, so we will be "bug compatible" with Linus's tree then, right? :)
>
> Should I hold off on applying this now, or just stay in sync and wait for your
> fixes to land in Linus's tree? I vote stay-in-sync, as the other stable trees are
> also "broken" in the same way right now...
>
I was thinking it would be better not to break iWARP and possibly other RDMA protocols, in more stable trees if possible and apply the patch and fix at the same time.
But I see your point.
Regards,
Mustafa
> thanks,
>
> greg k-h