Set close_fds=False in setup_fds.
Set close_fds=False in setup_fds.

I originally set close_fds=True here because I was looking to prevent
locks from bleeding into subprocesses. close_fds=True closes all file
descriptors except for the named file descriptors. This logic is no
longer necessary in new versions of Portage because Portage has added
its own logic for preventing bleeding locks.

close_fds=True is also a maintenance headache and causes issues with new
versions of Portage:

 ...
   File .../_emerge/PipeReader.py, line 42, in _start
     self._registered_events, output_handler))
   File .../portage/util/_eventloop/EventLoop.py, line 512, in io_add_watch
     self._poll_obj.register(f, condition)
   File  .../portage/util/_eventloop/EventLoop.py, line 633, in register
     self._epoll_obj.register(fd, *args)
 IOError: [Errno 22] Invalid argument

In older versions of Portage, the close_fds argument was not available,
so I've added a version check here.

BUG=chromium:218085
TEST=Many mario-paladin trybot runs.

Change-Id: I5ad83b4571eb6c00b15e2771a6287d4eb7ac79c5
Reviewed-on: https://gerrit.chromium.org/gerrit/62736
Commit-Queue: David James <f231dc574bbeb62604660cbc162d1b8642a0a3af@chromium.org>
Reviewed-by: David James <f231dc574bbeb62604660cbc162d1b8642a0a3af@chromium.org>
Tested-by: David James <f231dc574bbeb62604660cbc162d1b8642a0a3af@chromium.org>

coreos/chromite,zhang0137/chromite,coreos/chromite,coreos/chromite,zhang0137/chromite,zhang0137/chromite