On Tue, Jan 11, 2011 at 3:40 PM, Apollon Oikonomopoulos <[email protected]> wrote: > On 15:39 Tue 11 Jan , Michael Hanselmann wrote: >> Am 10. Januar 2011 16:05 schrieb Apollon Oikonomopoulos >> <[email protected]>: >> > Passing tap devices to KVM as file descriptors requires that the respective >> > file decriptors remain open during utils.RunCmd execution. To this >> > direction, >> > we add a “noclose_fds” keyword argument to utils.RunCmd, accepting a list >> > of >> > file descriptors to keep open. The actual fd handling is implemented in >> > _RunCmdPipe and _RunCmdFile using subprocess.Popen's “preexec_fn”[1], >> > since subprocess.Popen provides no other way to selectively handle fds. >> > >> > A small modification is also made to test/ganeti.utils_unittest.py to >> > comply >> > with _RunCmdPipe's new API and a new unit test is added to test the >> > selective >> > fd retention functionality. >> > >> > [1] “If preexec_fn is set to a callable object, this object will be called >> > in >> > the child process just before the child is executed. (Unix only)” >> > Subprocess documentation >> >> LGTM, but this will need a rebase after the utils split. Unless you >> want to do it, I can do it tomorrow. >> >> Michael > > No, I'll do it since I also have to rebase the rest of the series anyway > ;-) >
I can do it as well as part of pushing: it's just applying the same code change to another file, so... Guido
