On Wed, 2015-12-16 at 14:32 -0500, John Ferlan wrote: > > On 12/11/2015 09:45 AM, Andrea Bolognani wrote: > > During my testing, I've realized that even with the series applied > > there's still one case in which we're unable to restore the previous > > memory locking limit after removing the last PCI hostdev from the guest. > > > > If an x86 guest contains a PCI hostdev in its XML definition, then the > > memory locking limit will be set correctly, but virCommandGetMaxMemLock() > > will be used instead of virProcessGetMaxMemLock(), and the limit will be > > set right before calling exec() to spawn the qemu binary. > > > > In this context, we have no access to the virDomainObj or even > > virDomainDef instances, so I see no way of storing the original limit > > for later retrieval. > > > > The series is still an improvement as it covers all other cases. Still, > > I thought this was worth mentioning. > > > > Changes since v1[1]: > > > > * reorder commits according to John's suggestions > > * don't fail if we can't retrieve the current memory locking limit > > * small changes here and there as pointed out during review > > > > Cheers. > > > > > > [1] https://www.redhat.com/archives/libvir-list/2015-November/msg01021.html > > > > Andrea Bolognani (7): > > process: Allow virProcessPrLimit() to get current limit > > process: Add virProcessGetMaxMemLock() > > qemu: Add qemuDomainAdjustMaxMemLock() > > qemu: Use qemuDomainAdjustMaxMemLock() > > qemu: Reduce memlock limit after detaching PCI hostdev > > qemu: Allow qemuDomainAdjustMaxMemLock() to restore previous value > > qemu: Replace Mlock with MemLock in function names > > > > configure.ac | 2 +- > > src/conf/domain_conf.h | 3 +++ > > src/libvirt_private.syms | 1 + > > src/qemu/qemu_command.c | 4 ++-- > > src/qemu/qemu_domain.c | 53 ++++++++++++++++++++++++++++++++++++++--- > > src/qemu/qemu_domain.h | 5 ++-- > > src/qemu/qemu_hotplug.c | 45 ++++++++++++++--------------------- > > src/util/virprocess.c | 61 +++++++++++++++++++++++++++++++++++++++++++----- > > src/util/virprocess.h | 2 ++ > > 9 files changed, 135 insertions(+), 41 deletions(-) > > > > ACK series, Pushed, thanks. -- Andrea Bolognani Software Engineer - Virtualization Team -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list