-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DAOS-14514 pmdk: update to version 2.0.1 #35
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do we want this built with or without ndctl
at this point in time? Currently it's still being built without:
+ make -j72 EXTRA_CFLAGS=-Wno-error NORPATH=1 BUILD_EXAMPLES=n BUILD_BENCHMARKS=n NDCTL_ENABLE=n
If you want to change this default behaviour you need to change
Line 27 in 40f6fc0
%bcond_without ndctl |
%bcond_with ndctl
That option would then match what the comment above it says.
If you do not want to build with ndctl
by default (i.e. the status quo), you can leave the above line as is, but please update the comment to reflect that the default is to build without it. That comment has been wrong ever since the beginning, unfortunately.
Please make sure that NDCTL_ENABLE
in
Line 8 in 40f6fc0
BUILD_ARGS = prefix=/usr libdir=/usr/lib/$(DEB_HOST_MULTIARCH) sysconfdir=/etc bashcompdir=/usr/share/bash-completion/completions NORPATH=1 NDCTL_ENABLE=n BUILD_EXAMPLES=n BUILD_BENCHMARKS=n |
daos.spec
.
Since you need to push an update anyway, it would be good to update the date/timestamps in the debian/changelog
and daos.spec
%changelog
also.
Upgrade to version 2.0.1. This version reduces libpmemobj's stack usage below the 11kB threshold. This is the version that allows enabling NDCTL without risk of stack over-usage in argobots ULT. Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
This reverts commit dd43516. Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
This reverts commit defc666. Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
This reverts commit f807893. Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
This reverts commit e4806e4. Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
This reverts commit 2f41a7a. Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Testing on both daos master
and release/2.4
are quite the bloodbaths. Surely all of those failures are not unrelated, are they?
PR failing tests release/2.4
are a subset of existing failing tests of release/2.4 branch
Just going to -1 until we get to the bottom of that massive amount of failure.
NDCTL is enabled by default. No need to enable NDCTL explicitly. Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It would be nice to have a test in daos' ftest subdir that tests and confirms the behaviour that having ndctl enabled provides. This will mitigate any future regressions in regard to this functionality being enabled and working.
That said, we do appear to have test failures in the downstream testing:
master
release/2.4
Do we know that these are unrelated to this update?
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
We can add such a test as soon as we enable logging in to the next version of PMDK (2.1.0).
|
Can you keep this in mind for a future update of this package?
Looking at the failure results here it would seem that only a minor number of failures on on SSD and that the lion's share of failures are on the regular Functional Hardware Medium stage. Quite a number of failures there, indeed. If we look at the master commit that that downstream testing is based on, 91b93c8 and look at it's testing results, there are no hardware testing results due to it being a landing, however if we look at the daily-testing from the same time period (where hardware stages are run) we can see there are quite a bit fewer failures. So we need to understand why there are so many failures in the downstream testing here and if they are known or explainable outside of the changes being made here.
It's not that simple. Any future 2.4.x release will include a PMDK with this PR landed to it. This is why we run downstream testing for all current release branches when we test PRs of dependencies. Fortunately the failures here are much smaller. Only a single test in fact that just failed on multiple distros. That only a single test failed on 2.4 is a good sign, but why so many failures on master? |
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
Signed-off-by: Tomasz Gromadzki <tomasz.gromadzki@intel.com>
@@ -39,4 +39,5 @@ | |||
// To use a test branch (i.e. PR) until it lands to master | |||
// I.e. for testing library changes | |||
//@Library(value="pipeline-lib@your_branch") _ | |||
packageBuildingPipelineDAOSTest(['distros': ['centos7', 'el8', 'el9', 'leap15', 'ubuntu20.04'], 'test-tag': 'daosio']) | |||
packageBuildingPipelineDAOSTest(['distros': ['el8', 'el9', 'leap15', 'ubuntu20.04'], | |||
'test-tag': 'pr']) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@jolivier23 You had set this test tag to daosio
back in 336f35f. Does it seem reasonable to change that to the more limited pr
test set at this point?
Although maybe I am jumping the gun on this one and this is just an interim change to speed up iterating and that will be reverted before the PR is finalized.
Good to at least make a note here to remind myself that this needs investigating if it ends up in the final PR.
@@ -3,6 +3,6 @@ SRC_EXT := gz | |||
TEST_PACKAGES := libpmem libpmem-devel libpmemobj libpmemobj-devel libpmempool \ | |||
libpmempool-devel pmempool pmreorder | |||
|
|||
# EXTERNAL_RPM_BUILD_OPTIONS := --without=ndctl | |||
EXTERNAL_RPM_BUILD_OPTIONS := --without=ndctl |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure I agree with using this mechanism.
The problem it creates is that if somebody just picks up the SRPM or even just the .spec
file for this package and builds it without knowing that our build is using this switch, they get a different result from what we are getting.
Don't get me wrong. I think having switches in the specfile can be useful, but I think we need to always ensure that the result of building without any switches is the result that we want people to get by default. Beyond that, they can use whatever switches they want to intentionally get a different result from our default.
Skipping 2.0.1. |
Upgrade to version 2.0.1.
This version decreases stack usage but does not enable NDCTL.
NDCTL will be enabled with version 2.1.x
Obsolete libraries lbpmemblk and libpmemlog have been removed.