** Description changed: [Impact] On ppc64el the librpmem checks for RPMEM_RAW_BUFF_SIZE and LANE_ALIGN_SIZE are broken because they're not using the reference values for the target architecture. [Test Plan] - The proposed fix to SRU includes test cases for the fix itself, all - coming from upstream. The same changes are already part of the current - Ubuntu devel release (Impish) as part of a new upstream release of pmdk. + (Adapted from comment #13.) - Manual verification requires specific hardware, so feedback from the bug - submitter will be especially important. + The upstream source tree contains a test suite that can be used to + verify this. + + 1. Unpack the source package. + 2. Configure src/test/testconfig.sh. See example below. + - To do that copy the testconfig.sh.example to testconfig.sh. + Fill it with the configurations for your system. + - Be sure to set the variable PMDK_LIB_PATH_NONDEBUG with the path to + librpmem.so as installed by the package to test. + - As you are not on a DAX device use PMEM_FS_DIR_FORCE_PMEM=1. + - As this will be a librpmem test we need to configure the node + variables. Also ssh keys must be configured to access the nodes + without password. + 3. Inside the src/test/ directory run "./RUNTESTS -b nondebug rpmem_fip". + + Here is an example of testconfig.sh: + + PMEM_FS_DIR=/tmp/pmem-fs.d + NON_PMEM_FS_DIR=/tmp/non-pmem-fs.d + PMEM_FS_DIR_FORCE_PMEM=1 + RDMAV_FORK_SAFE=1 + PMDK_LIB_PATH_NONDEBUG=/usr/lib/powerpc64le-linux-gnu/ + TEST_BUILD="nondebug" + TEST_TIMEOUT=6m + TM=1 + KEEP_GOING=y + CLEAN_FAILED=y + UNITTEST_LOG_LEVEL=0 + UNITTEST_LOG_LEVEL=1 + NODE[0]=127.0.0.1 + NODE[1]=127.0.0.1 + NODE[2]=127.0.0.1 + NODE[3]=127.0.0.1 + NODE_ADDR[0]=127.0.0.1 + NODE_ADDR[1]=127.0.0.1 + NODE_ADDR[2]=127.0.0.1 + NODE_ADDR[3]=127.0.0.1 + NODE_WORKING_DIR[0]=/tmp/node0 + NODE_WORKING_DIR[1]=/tmp/node1 + NODE_WORKING_DIR[2]=/tmp/node2 + NODE_WORKING_DIR[3]=/tmp/node3 + NODE_ENV[0]="PMEM_IS_PMEM_FORCE=1 RDMAV_FORK_SAFE=1" + NODE_ENV[1]="PMEM_IS_PMEM_FORCE=1 RDMAV_FORK_SAFE=1" + NODE_ENV[2]="PMEM_IS_PMEM_FORCE=1 RDMAV_FORK_SAFE=1" + NODE_ENV[3]="PMEM_IS_PMEM_FORCE=1 RDMAV_FORK_SAFE=1" + TEST_PROVIDERS=sockets [Where problems could occur] On architectures where this was "not a bug" nothing changes, there is just one more indirection in some #defines, but the same values as before will be set. On affected arch (ppc64el) I don't see a possible case of "users relying on the bug". The scope of the fix is limited. [Development Fix] Already fixed in 1.11.0-1 (new upstream release, sync from Debian experimental). [Original Description] == Comment: #0 - Lucas Alexandre Mello Magalhaes <l...@ibm.com> - 2021-06-04 14:06:47 == On PPC64LE there is an issue on librpmem check for RPMEM_RAW_BUFF_SIZE. This is fixed upstream already. Please include the follow commits to include the fix. 652659830 rpmem: Fix RPMEM_RAW_BUFF_SIZE and LANE_ALIGN_SIZE for powerpc64le e672c09d9 common: Move page_size.h from common to core The following patches are fixes to the unity test. Please include them if you need for testing. bc048c7e4 test: Fix obj_rpmem_heap_state for ppc64le 736e42b1d test: Fix pmempool_sync_remote for ppc64 2e1a6a1da test: fix rpmem_basic for ppc64le 74e3ca419 test: Add create_recovery_file_absolute ffeb20d6c test: Fix rpmemd_obc POOL_DESC_SIZE redefinition aa7aae2b4 test: Fix tools/fip includes
** Description changed: [Impact] On ppc64el the librpmem checks for RPMEM_RAW_BUFF_SIZE and LANE_ALIGN_SIZE are broken because they're not using the reference values for the target architecture. [Test Plan] (Adapted from comment #13.) - The upstream source tree contains a test suite that can be used to - verify this. + The upstream source tree contains a test suite that can be used for the + verification. 1. Unpack the source package. 2. Configure src/test/testconfig.sh. See example below. - - To do that copy the testconfig.sh.example to testconfig.sh. - Fill it with the configurations for your system. - - Be sure to set the variable PMDK_LIB_PATH_NONDEBUG with the path to - librpmem.so as installed by the package to test. - - As you are not on a DAX device use PMEM_FS_DIR_FORCE_PMEM=1. - - As this will be a librpmem test we need to configure the node - variables. Also ssh keys must be configured to access the nodes - without password. - 3. Inside the src/test/ directory run "./RUNTESTS -b nondebug rpmem_fip". + - To do that copy the testconfig.sh.example to testconfig.sh. + Fill it with the configurations for your system. + - Be sure to set the variable PMDK_LIB_PATH_NONDEBUG with the path to + librpmem.so as installed by the package to test. + - As you are not on a DAX device use PMEM_FS_DIR_FORCE_PMEM=1. + - As this will be a librpmem test we need to configure the node + variables. Also ssh keys must be configured to access the nodes + without password. + 3. Inside the src/test/ directory run "./RUNTESTS -b nondebug rpmem_fip". Here is an example of testconfig.sh: PMEM_FS_DIR=/tmp/pmem-fs.d NON_PMEM_FS_DIR=/tmp/non-pmem-fs.d PMEM_FS_DIR_FORCE_PMEM=1 RDMAV_FORK_SAFE=1 PMDK_LIB_PATH_NONDEBUG=/usr/lib/powerpc64le-linux-gnu/ TEST_BUILD="nondebug" TEST_TIMEOUT=6m TM=1 KEEP_GOING=y CLEAN_FAILED=y UNITTEST_LOG_LEVEL=0 UNITTEST_LOG_LEVEL=1 NODE[0]=127.0.0.1 NODE[1]=127.0.0.1 NODE[2]=127.0.0.1 NODE[3]=127.0.0.1 NODE_ADDR[0]=127.0.0.1 NODE_ADDR[1]=127.0.0.1 NODE_ADDR[2]=127.0.0.1 NODE_ADDR[3]=127.0.0.1 NODE_WORKING_DIR[0]=/tmp/node0 NODE_WORKING_DIR[1]=/tmp/node1 NODE_WORKING_DIR[2]=/tmp/node2 NODE_WORKING_DIR[3]=/tmp/node3 NODE_ENV[0]="PMEM_IS_PMEM_FORCE=1 RDMAV_FORK_SAFE=1" NODE_ENV[1]="PMEM_IS_PMEM_FORCE=1 RDMAV_FORK_SAFE=1" NODE_ENV[2]="PMEM_IS_PMEM_FORCE=1 RDMAV_FORK_SAFE=1" NODE_ENV[3]="PMEM_IS_PMEM_FORCE=1 RDMAV_FORK_SAFE=1" TEST_PROVIDERS=sockets [Where problems could occur] On architectures where this was "not a bug" nothing changes, there is just one more indirection in some #defines, but the same values as before will be set. On affected arch (ppc64el) I don't see a possible case of "users relying on the bug". The scope of the fix is limited. [Development Fix] Already fixed in 1.11.0-1 (new upstream release, sync from Debian experimental). [Original Description] == Comment: #0 - Lucas Alexandre Mello Magalhaes <l...@ibm.com> - 2021-06-04 14:06:47 == On PPC64LE there is an issue on librpmem check for RPMEM_RAW_BUFF_SIZE. This is fixed upstream already. Please include the follow commits to include the fix. 652659830 rpmem: Fix RPMEM_RAW_BUFF_SIZE and LANE_ALIGN_SIZE for powerpc64le e672c09d9 common: Move page_size.h from common to core The following patches are fixes to the unity test. Please include them if you need for testing. bc048c7e4 test: Fix obj_rpmem_heap_state for ppc64le 736e42b1d test: Fix pmempool_sync_remote for ppc64 2e1a6a1da test: fix rpmem_basic for ppc64le 74e3ca419 test: Add create_recovery_file_absolute ffeb20d6c test: Fix rpmemd_obc POOL_DESC_SIZE redefinition aa7aae2b4 test: Fix tools/fip includes -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1931063 Title: [SRU] Include powerpc port upstream fixes to librpmem 1.10 on pmdk package To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu-power-systems/+bug/1931063/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs