[Bug 1845011] Re: mcontend stressor SIGBUS's on older armhf platforms
Timo Aaltonen
tjaalton at ubuntu.com
Fri Oct 25 07:50:06 UTC 2019
Hello Colin, or anyone else affected,
Accepted stress-ng into bionic-proposed. The package will build now and
be available at https://launchpad.net/ubuntu/+source/stress-
ng/0.09.25-1ubuntu4 in a few hours, and then in the -proposed
repository.
Please help us by testing this new package. See
https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how
to enable and use -proposed. Your feedback will aid us getting this
update out to other Ubuntu users.
If this package fixes the bug for you, please add a comment to this bug,
mentioning the version of the package you tested and change the tag from
verification-needed-bionic to verification-done-bionic. If it does not
fix the bug for you, please add a comment stating that, and change the
tag to verification-failed-bionic. In either case, without details of
your testing we will not be able to proceed.
Further information regarding the verification process can be found at
https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in
advance for helping!
N.B. The updated package will be released to -updates after the bug(s)
fixed by this package have been verified and the package has been in
-proposed for a minimum of 7 days.
** Changed in: stress-ng (Ubuntu Bionic)
Status: In Progress => Fix Committed
** Tags removed: verification-done
** Tags added: verification-needed verification-needed-bionic
--
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1845011
Title:
mcontend stressor SIGBUS's on older armhf platforms
Status in stress-ng package in Ubuntu:
Fix Released
Status in stress-ng source package in Bionic:
Fix Committed
Status in stress-ng source package in Disco:
Fix Released
Status in stress-ng source package in Eoan:
Fix Released
Bug description:
== SRU Justification BIONIC, DISCO ==
When running the mcontend stressor on slow armhf devices that have
slow memory backed I/O one can get SIGBUS on a file backed mmap
because the flush has been slow to allocate the page and we're
mmapping and accessing a as yet allocated page on the backing store.
== Test Proceedure ==
Run:
stress-ng --mcontend 1 -t 10 -v
without the fix, we get SIGBUS failures because we touch a page that
has not yet had the backing mmap page allocated and flushed to the
file system.
== Fix ==
commit c3678dadee23f9b8783038f54463cff5741a9cbe
Author: Colin Ian King <colin.king at canonical.com>
Date: Mon Sep 23 15:54:13 2019 +0100
stress-mcontend: ensure mmap'd file is sync'd with zero data (LP: #1845011)
Write zero's to backing store of at least one page size and sync
it so that we can be 100% sure that mmap'ing the page into memory
is backed with data so we don't get BUS errors on some platforms
such as armhf Raspi2.
Also fix broken sanity check on 2nd mmap out of memory failure.
Signed-off-by: Colin Ian King <colin.king at canonical.com>
== Regression Potential ==
Minimal. This replaces the more esoteric fallocate() with a direct set
of file writes and a sync to ensure data is written back before we
mmap onto it. The fixed behaviour is slower as we introduce a sync,
so we have the possibility of the sync blocking for a long time if the
system has a lot of dirty data, but this is necessary as fsync() is
less portable and sync guarantees we really have data to mmap onto to
avoid the SIGBUS.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/stress-ng/+bug/1845011/+subscriptions
More information about the Ubuntu-sponsors
mailing list