Dan Kenigsberg has submitted this change and it was merged. Change subject: fileUtils: Remove support for direct io on memory filesystems ......................................................................
fileUtils: Remove support for direct io on memory filesystems In commits e8f3848d12 and 127936c994, we added support for memory based filesystems such as tempfs and ramfs. This allows direct io tests to work when using temporary files in /tmp. These patches disabled direct io when reading or writing to such filesystems. Turns out that the code for checking file system type, required for these changes, has O(N^2) complexity, and profiles we did in the field on RHEV-H systems with many storage domains show that this code is major performance issue. We suspect that this issue is related to several other bugs and customer cases. Further, code using direct io, such as DirectFile, shouldn't try to outsmart the caller, disabling direct io magically. The test writer should use the appropriate filesystem for such tests. This patch removes the support for memory filesystems, needed only for some tests. To prevent failures of the these tests, we use now /var/tmp instead of /tmp. I tested disabling memory filesystems on two setups. The first was a single customer RHEV-H machine running 3.3 (test performed by customer), and the second 2 Fedora 19 hosts running master. Both systems are connected to 30 storage domains, are idle and have no vms running. On the RHEV-H machine, after disabling memory filesystems, average cpu usage dropped from 240% to 17%. On the Fedora systems, average cpu usage dropped from 10% to 5% when running as spm, and from 5% to 3% when running as hsm. Change-Id: I7b652b5c78ff8b48a39df2dc57c02496bec666a1 Bug-Url: https://bugzilla.redhat.com/1090664 Relates-to: https://bugzilla.redhat.com/1074097 Relates-to: https://bugzilla.redhat.com/1081962 Relates-to: http://gerrit.ovirt.org/9595 Relates-to: http://gerrit.ovirt.org/9661 Signed-off-by: Nir Soffer <[email protected]> Reviewed-on: http://gerrit.ovirt.org/27441 Reviewed-by: Dan Kenigsberg <[email protected]> --- M tests/miscTests.py M tests/testrunner.py M vdsm/storage/fileUtils.py M vdsm/storage/misc.py M vdsm/storage/mount.py 5 files changed, 16 insertions(+), 51 deletions(-) Approvals: Nir Soffer: Verified Dan Kenigsberg: Looks good to me, approved -- To view, visit http://gerrit.ovirt.org/27441 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: merged Gerrit-Change-Id: I7b652b5c78ff8b48a39df2dc57c02496bec666a1 Gerrit-PatchSet: 4 Gerrit-Project: vdsm Gerrit-Branch: master Gerrit-Owner: Nir Soffer <[email protected]> Gerrit-Reviewer: Adam Litke <[email protected]> Gerrit-Reviewer: Allon Mureinik <[email protected]> Gerrit-Reviewer: Dan Kenigsberg <[email protected]> Gerrit-Reviewer: Federico Simoncelli <[email protected]> Gerrit-Reviewer: Nir Soffer <[email protected]> Gerrit-Reviewer: Saggi Mizrahi <[email protected]> Gerrit-Reviewer: [email protected] Gerrit-Reviewer: oVirt Jenkins CI Server _______________________________________________ vdsm-patches mailing list [email protected] https://lists.fedorahosted.org/mailman/listinfo/vdsm-patches
