** 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

Reply via email to