[autotest-client-tests][PATCH 0/1] Remove zfs-related packages after test
Dimitri John Ledkov
dimitri.ledkov at canonical.com
Tue Apr 26 10:23:34 UTC 2022
On Tue, 26 Apr 2022 at 05:04, Po-Hsu Lin <po-hsu.lin at canonical.com> wrote:
>
> On Mon, Apr 25, 2022 at 11:42 PM Dimitri John Ledkov
> <dimitri.ledkov at canonical.com> wrote:
> >
> > Hi,
> >
> > This regressess running zfs related tests, on zfs-root machines, which
> > I do when preparing zfs upgrades.
> >
> > I wonder what we can do here. I.e. check/store some markers at setup
> > to see if setup actually did anything? I.e. if zfs was already loaded,
> > and zfsutils were already installed, it means they shouldn't be
> > attempted to be removed or unloaded.
> >
> > Or can we add a further check to the cleanup test name to see if the
> > machine is using zfs root anyway?
> >
> >
>
> Hello,
>
> Sorry for the hassle!
No need to worry, I think the changes you made are an improvement.
> This change is meant to keep zfs module stay away from our s390x
> instances when running the kernel_tainted check in ubuntu_boot test
> (lp:1892124). So another approach is to revert this patch and add
> exceptions in the ubuntu_boot test, tell it to ignore all the
> zfs-related modules (btw we are gonna add exceptions for modules like
> mlx5_ib on DGX systems).
>
We want that.
> Or, just like you mentioned here, I think we can only run the cleanup
> if the root file system is zfs, by checking something like:
> df -T | grep "/$" | awk '{print $2}'
> Proceed the clean up if it's not "zfs"
>
Yeap, something like that would be nice.
> I would like to know do we need to run ubuntu_boot test on zfs-root machines?
I don't think so. The ones that I run are all zfs specific, ie. zfs
stress test / smoke test / xfstests and so on.
--
okurrr,
Dimitri
> If that's the case revert this one and modify ubuntu_boot test will be
> the only solution.
>
> Sam
>
> > --
> > okurrr,
> >
> > Dimitri
> >
> > On Wed, 20 Apr 2022 at 13:40, Po-Hsu Lin <po-hsu.lin at canonical.com> wrote:
> > >
> > > BugLink: https://bugs.launchpad.net/bugs/1892124
> > >
> > > Stop zfs daemon and remove zfs related packages after test to prevent
> > > manually provisioned system from booting with out-of-tree zfs modules
> > > and failed with the kernel_tainted test in ubuntu_boot like:
> > > Kernel taint value is 4097
> > > Taint bit value: 0 (proprietary module was loaded)
> > > * Modules with GPL Incompatible Licenses:
> > > zfs: CDDL
> > > zunicode: CDDL
> > > zcommon: CDDL
> > > znvpair: CDDL
> > > zavl: CDDL
> > > icp: CDDL
> > > Taint bit value: 12 (externally-built ('out-of-tree') module was loaded)
> > > * Modules not in-tree:
> > > zfs
> > > zunicode
> > > zzstd
> > > zlua
> > > zcommon
> > > znvpair
> > > zavl
> > > icp
> > > spl
> > >
> > > This is done by adding a sub-test called post-test-zfs-cleanup and
> > > catch it in run_once(). Not using cleanup() because it will be
> > > triggered after each sub test. It's fine for test like
> > > ubuntu_zfs_stress, but it will be complicated for test with multiple
> > > sub-tests e.g. ubuntu_zfs_xfs_generic
> > >
> > > The downside of this is that if you're trying to run it again on
> > > the same SUT manully without removing the autotest/client/tmp/
> > > directory, the setup task won't be triggered as the test version
> > > didn't change. To workaround this we will need to move the code in
> > > setup() to initialize() like what we did for ubuntu_sysdig_smoke_test,
> > > to trigger the package installation, or, remove the .version file in
> > > autotest/client/tmp/TESTNAME/
> > >
> > > Search criteria to locate tests that need this change:
> > > grep -r zfsutils-linux *
> > >
> > > Manually tested on s390x LPAR s2lp4 with the following two tests,
> > > each test has been executed twice to make sure the .version removal
> > > workaround works. Test performed without rebooting this SUT:
> > > * ubuntu_zfs_smoke_test
> > > * ubuntu_zfs_xfs_generic
> > >
> > > The zfs module will be unloaded and removed in the end of the test
> > > as expected, SUT rebooted and with no tainted flag.
> > >
> > > Po-Hsu Lin (1):
> > > UBUNTU: SAUCE: Remove zfs-related packages after test
> > >
> > > ubuntu_performance_fio/control | 1 +
> > > ubuntu_performance_fio/ubuntu_performance_fio.py | 9 +++++++++
> > > ubuntu_performance_zfs_encryption/control | 1 +
> > > .../ubuntu_performance_zfs_encryption.py | 10 ++++++++++
> > > ubuntu_zfs/control | 6 ++++--
> > > ubuntu_zfs/ubuntu_zfs.py | 9 +++++++++
> > > ubuntu_zfs_fstest/control | 5 +++--
> > > ubuntu_zfs_fstest/ubuntu_zfs_fstest.py | 11 ++++++++++-
> > > ubuntu_zfs_smoke_test/control | 1 +
> > > ubuntu_zfs_smoke_test/ubuntu_zfs_smoke_test.py | 10 ++++++++++
> > > ubuntu_zfs_stress/control | 5 ++---
> > > ubuntu_zfs_stress/ubuntu_zfs_stress.py | 10 ++++++++++
> > > ubuntu_zfs_xfs_generic/control | 3 ++-
> > > ubuntu_zfs_xfs_generic/ubuntu_zfs_xfs_generic.py | 12 +++++++++++-
> > > 14 files changed, 83 insertions(+), 10 deletions(-)
> > >
> > > --
> > > 2.25.1
> > >
> > >
> > > --
> > > kernel-team mailing list
> > > kernel-team at lists.ubuntu.com
> > > https://lists.ubuntu.com/mailman/listinfo/kernel-team
More information about the kernel-team
mailing list