[pve-devel] [PATCH] fix hotplug ip configuration V3
Dietmar Maurer
dietmar at proxmox.com
Mon Jun 29 17:45:53 CEST 2015
I am not sure if that always works. AFAIK the init process can be an arbitrary
name,
and that is why lxc-info calls a monitor command to get the PID?
Also, your code opens/close many files. So I think the original approach
calling lxc-info is better for now. And it is more efficient once we
have perl bindings for LXC?
> +sub find_lxc_pid {
> + my ($vmid) = @_;
> +
> + my $res = undef;
> +
> + PVE::Tools::dir_glob_foreach('/proc', '\d+', sub {
> + my ($pid) = @_;
> +
> + my $cmdline = PVE::Tools::file_read_firstline("/proc/$pid/cmdline");
> + return if !$cmdline;
> +
> + if($cmdline =~ m/^init \[2\]/) {
> + my $line = PVE::Tools::file_read_firstline("/proc/$pid/cpuset");
> + $res = $pid if $line eq "/lxc/$vmid";
> + }
> + });
> + return $res;
> +}
More information about the pve-devel
mailing list