Re: [RFC: PATCHv4 00/15] outgoing migration via fd: rather than exec:

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

 



At 03/11/2011 04:01 AM, Eric Blake Write:
> On 03/10/2011 12:54 PM, Laine Stump wrote:
>> Okay, I've figured out what happened - the permission on a parent of my
>> target directory on the NFS server had been changed during unrelated
>> testing from (root,root) 755 to 700, so even though the target directory
>> had the proper user (qemu,qemu), qemu was denied access to the directory
>> due to its parent's permissions/ownership. When I set the parent
>> directory back to 755, save and restore both work.
>>
>> However, the current code still has a problem - if you try to save
>> to/from a directory that the qemu user doesn't have permission for (and
>> presumably if there's any other error in the child that causes it to
>> skip the sendmsg), rather than returning an error virFileOpenAs just
>> hangs on recvmsg waiting for the fd info to come over the pipe, while
>> the child process sits around as a zombie because nobody has reaped its
>> exit status.
> 
> Yep, makes sense.  I'm double checking whether I reliably closed the
> write end of the socket in all paths, and it may boil down to changing
> the child to _always_ sendmsg even if there is no fd to send.  I'm still
> thinking about it.

Using SOCK_STREAM instead of SOCK_DGRAM to create socketpair can resolve this
problem. But I don't know why.

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list


[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]