Re: [PATCH for-next v6 10/12] RDMA/efa: Add EFA verbs implementation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, May 06, 2019 at 09:25:05AM +0300, Gal Pressman wrote:
> On 05-May-19 15:37, Jason Gunthorpe wrote:
> > On Sun, May 05, 2019 at 10:36:36AM +0300, Gal Pressman wrote:
> >> On 03-May-19 15:21, Jason Gunthorpe wrote:
> >>> On Fri, May 03, 2019 at 12:32:58PM +0300, Gal Pressman wrote:
> >>>> On 02-May-19 20:47, Jason Gunthorpe wrote:
> >>>>> On Thu, May 02, 2019 at 11:46:00AM +0300, Leon Romanovsky wrote:
> >>>>>> On Thu, May 02, 2019 at 11:28:40AM +0300, Gal Pressman wrote:
> >>>>>>> On 01-May-19 19:40, Jason Gunthorpe wrote:
> >>>>>>>> On Wed, May 01, 2019 at 01:48:22PM +0300, Gal Pressman wrote:
> >>>>>>>>
> >>>>>>>>> +int efa_mmap(struct ib_ucontext *ibucontext,
> >>>>>>>>> +	     struct vm_area_struct *vma)
> >>>>>>>>> +{
> >>>>>>>>> +	struct efa_ucontext *ucontext = to_eucontext(ibucontext);
> >>>>>>>>> +	struct efa_dev *dev = to_edev(ibucontext->device);
> >>>>>>>>> +	u64 length = vma->vm_end - vma->vm_start;
> >>>>>>>>> +	u64 key = vma->vm_pgoff << PAGE_SHIFT;
> >>>>>>>>> +	struct efa_mmap_entry *entry;
> >>>>>>>>> +
> >>>>>>>>> +	ibdev_dbg(&dev->ibdev,
> >>>>>>>>> +		  "start %#lx, end %#lx, length = %#llx, key = %#llx\n",
> >>>>>>>>> +		  vma->vm_start, vma->vm_end, length, key);
> >>>>>>>>> +
> >>>>>>>>> +	if (length % PAGE_SIZE != 0 || !(vma->vm_flags & VM_SHARED)) {
> >>>>>>>>> +		ibdev_dbg(&dev->ibdev,
> >>>>>>>>> +			  "length[%#llx] is not page size aligned[%#lx] or VM_SHARED is not set [%#lx]\n",
> >>>>>>>>> +			  length, PAGE_SIZE, vma->vm_flags);
> >>>>>>>>> +		return -EINVAL;
> >>>>>>>>> +	}
> >>>>>>>>> +
> >>>>>>>>> +	if (vma->vm_flags & VM_EXEC) {
> >>>>>>>>> +		ibdev_dbg(&dev->ibdev, "Mapping executable pages is not permitted\n");
> >>>>>>>>> +		return -EPERM;
> >>>>>>>>> +	}
> >>>>>>>>> +	vma->vm_flags &= ~VM_MAYEXEC;
> >>>>>>>>
> >>>>>>>> Also we dropped the MAYEXEC stuff
> >>>>>>>
> >>>>>>> Latest commit that had any MAYEXEC changes is 4eb6ab13b991 ("RDMA: Remove
> >>>>>>> rdma_user_mmap_page"), where MAYEXEC is added not removed.
> >>>>>>> Am I missing a followup patch?
> >>>>>>
> >>>>>> I'm not aware of any.
> >>>>>
> >>>>> It was a mistake it wasn't removed from that commit too.
> >>>>
> >>>> Can you explain please?
> >>>
> >>> We dropped all the MAYEXEC stuff and that case got missed - it should
> >>> have been dropped too
> >>
> >> Why is MAYEXEC not needed?
> >
> > There was a big thread about it.. It currently breaks userspace that
> > uses GNU_STACK=RWX
>
> Thanks, I can send a fix to mlx5 and efa but I need more information for a
> proper commit message. Do you have a link to this thread?

I'll handle mlx5 part.

Thanks



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux