> -----Original Message----- > From: Jason Gunthorpe [mailto:jgunthorpe@xxxxxxxxxxxxxxxxxxxx] > Subject: Re: [for-next 4/6] net/mlx5: FPGA, Add basic support for Innova > > > > This keep getting more ugly :( > > > > > > What about security? What if user space sends some raw packets to the > > > FPGA - can it reprogram the ISPEC settings or worse? > > > > > > > No such thing. This QP is only for internal driver/HW communications, > > as it is faster from the existing command interface. > > it is not meant to be exposed for any raw user space usages at all, > > without proper standard API adapter of course. > > I'm not asking about the QP, I'm asking what happens after the NIC > part. You use ROCE packets to control the FPGA. What prevents > userspace from forcibly constructing roce packets and sending them to > the FPGA. How does the FPGA know for certain the packet came from the > kernel QP and not someplace else. > > This is especially true for mlx nics as there are many raw packet > bypass mechanisms available to userspace. Hi Jason, The device uses internal signaling that ensures that no entity other than the mlx5 driver can talk over the FPGA channel. This is also the reason why this is not a "ULP in a driver", but rather an internal bus that happens to use some of our existing HW features. As explained earlier, this "bus" is an internal device implementation issue, and has nothing to do with the network or RDMA stack. Ilan. ��.n��������+%������w��{.n�����{���fk��ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f