** Changed in: linux (Ubuntu) Status: In Progress => Fix Released
-- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1793451 Title: mlock203 test in ubuntu_ltp_syscalls failed with Xenial kernel Status in ubuntu-kernel-tests: Fix Released Status in linux package in Ubuntu: Fix Released Status in linux source package in Xenial: Fix Released Bug description: == Justification == When one vma was with flag VM_LOCKED|VM_LOCKONFAULT (by invoking mlock2(,MLOCK_ONFAULT)), it can again be populated with mlock() with VM_LOCKED flag only. There is a hole in mlock_fixup() which increase mm->locked_vm twice even the two operations are on the same vma and both with VM_LOCKED flags. The issue can be reproduced by following code: mlock2(p, 1024 * 64, MLOCK_ONFAULT); //VM_LOCKED|VM_LOCKONFAULT mlock(p, 1024 * 64); //VM_LOCKED Then check the increase VmLck field in /proc/pid/status(to 128k). When vma is set with different vm_flags, and the new vm_flags is with VM_LOCKED, it is not necessarily be a "new locked" vma. There is a dedicated reproducer, the "mlock203" test in ubuntu_ltp_syscalls, you can see the failure for all the Ubuntu 4.4 kernel: <<<test_start>>> tag=mlock203 stime=1537369891 cmdline="mlock203" contacts="" analysis=exit <<<test_output>>> tst_test.c:1063: INFO: Timeout per run is 0h 05m 00s mlock203.c:63: FAIL: Locking one memory again increased VmLck Summary: passed 0 failed 1 skipped 0 warnings 0 == Fix == b155b4fd (mm: mlock: avoid increase mm->locked_vm on mlock() when already mlock2(,MLOCK_ONFAULT)) A test kernel for Xenial / Xenial-KVM could be found here: http://people.canonical.com/~phlin/kernel/lp-1793451-mlock203/ == Regression Potential == Low, this patch prevents mm->locked_vm from increment just by adding an extra check to see if the old vm_flags is already VM_LOCKED. == Test Case == Run the mlock203 test in ubuntu_ltp_syscalls test suite. And it will pass with the patched kernel. ProblemType: Bug DistroRelease: Ubuntu 16.04 Package: linux-image-4.4.0-1068-aws 4.4.0-1068.78 ProcVersionSignature: User Name 4.4.0-1068.78-aws 4.4.144 Uname: Linux 4.4.0-1068-aws x86_64 ApportVersion: 2.20.1-0ubuntu2.18 Architecture: amd64 Date: Thu Sep 20 06:44:13 2018 Ec2AMI: ami-0e32ec5bc225539f5 Ec2AMIManifest: (unknown) Ec2AvailabilityZone: us-west-2b Ec2InstanceType: c3.large Ec2Kernel: unavailable Ec2Ramdisk: unavailable SourcePackage: linux-aws UpgradeStatus: No upgrade log present (probably fresh install) To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-kernel-tests/+bug/1793451/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp