[PATCH 2/2] ppc: kvm: use anon_inode_getfd() with O_CLOEXEC flag
Yann Droneaud
ydroneaud at opteya.com
Mon Aug 26 18:23:12 EST 2013
Le 26.08.2013 09:39, Paolo Bonzini a écrit :
> Il 25/08/2013 17:04, Alexander Graf ha scritto:
>> On 24.08.2013, at 21:14, Yann Droneaud wrote:
>>
>>>
>>> This patch set O_CLOEXEC flag on all file descriptors created
>>> with anon_inode_getfd() to not leak file descriptors across exec().
>>>
>>> Signed-off-by: Yann Droneaud <ydroneaud at opteya.com>
>>> Link:
>>> http://lkml.kernel.org/r/cover.1377372576.git.ydroneaud@opteya.com
>>
>> Reviewed-by: Alexander Graf <agraf at suse.de>
>>
>> Would it make sense to simply inherit the O_CLOEXEC flag from the
>> parent kvm fd instead? That would give user space the power to keep
>> fds across exec() if it wants to.
>
> Does it make sense to use non-O_CLOEXEC file descriptors with KVM at
> all? Besides fork() not being supported by KVM, as described in
> Documentation/virtual/kvm/api.txt, the VMAs of the parent process go
> away as soon as you exec(). I'm not sure how you can use the inherited
> file descriptor in a sensible way after exec().
>
Sounds a lot like InfiniBand subsystem behavor: IB file descriptors
are of no use accross exec() since memory mappings tied to those fds
won't be available in the new process:
https://lkml.org/lkml/2013/7/8/380
http://mid.gmane.org/f58540dc64fec1ac0e496dfcd3cc1af7@meuh.org
Regards.
--
Yann Droneaud
OPTEYA
More information about the Linuxppc-dev
mailing list