Re: [PATCH repost] PROT_DONTCOPY: ifiniband uverbs fork support

From: Michael S. Tsirkin
Date: Wed Aug 10 2005 - 03:28:30 EST


Quoting r. Hugh Dickins <hugh@xxxxxxxxxxx>:
> > > The other reason I dislike the patch is that the problem it fixes is
> > > an old one, and I'd much rather have get_user_pages fix it for itself,
> >
> > Please note that the problem this attempts to solve is not limited
> > to pages locked by get_user_pages: in an infiniband userspace initiator,
> > a hardware page is mapped into process memory and must not be inherited
> > by a child processes, otherwise hardware protection breaks.
>
> Interesting.
>
> But (correct me if I'm wrong, I know nothing about InfiniBand userspace
> initiators) that would be done by a driver, which can set VM_DONTCOPY
> on the vma, without us having to extend the mprotect or madvise API

Roland, Hugh here proposes setting VM_DONTCOPY on user-mapped PIO
memory from driver on mmap, to protect against child process
corrupting parent's user access region.

IIRC, we used to set this bit, but it was removed later - could you please
clarify why? Do you think its a good idea to restore this behaviour?

--
MST
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/