[PATCH] daemon: Set O_CLOEXEC flag on the virtio-serial port.
You can see that currently we leak the virtio-serial file descriptor into child processes.
<fs> debug fds '' 0 /dev/console 1 /dev/console 2 /dev/console 3 /dev/vport0p1 4 /proc/252/fd
<fs> debug sh 'ls -l /proc/self/fd' total 0 lr-x------ 1 root root 64 Aug 27 15:14 0 -> /dev/null l-wx------ 1 root root 64 Aug 27 15:14 1 -> pipe:[5124] l-wx------ 1 root root 64 Aug 27 15:14 2 -> pipe:[5124] lrwx------ 1 root root 64 Aug 27 15:14 3 -> /dev/vport0p1 lr-x------ 1 root root 64 Aug 27 15:14 4 -> /proc/271/fd
The attached patch fixes this by setting close-on-exec. I'm using O_CLOEXEC which will only work with relatively recent versions of Linux. Rich. -- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones virt-top is 'top' for virtual machines. Tiny program with many powerful monitoring features, net stats, disk stats, logging, etc. http://et.redhat.com/~rjones/virt-top
On 27/08/10 15:28, Richard W.M. Jones wrote:
From 272a763c6125a8c7ad54aae5bb048f427df07868 Mon Sep 17 00:00:00 2001 From: Richard Jones<rjones@redhat.com> Date: Fri, 27 Aug 2010 15:27:22 +0100 Subject: [PATCH] daemon: Set O_CLOEXEC flag on the virtio-serial port.
--- daemon/guestfsd.c | 8 +++++++- 1 files changed, 7 insertions(+), 1 deletions(-)
ACK to this patch. I think it's worth also adding a test for this. The output of your debug command seems a reasonable thing to test. Matt -- Matthew Booth, RHCA, RHCSS Red Hat Engineering, Virtualisation Team GPG ID: D33C3490 GPG FPR: 3733 612D 2D05 5458 8A8A 1600 3441 EA19 D33C 3490
participants (2)
-
Matthew Booth -
Richard W.M. Jones