Sync 1.11.1-2 for impish

Bug #1945694 reported by Bryce Harrington
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
pmdk (Ubuntu)
Fix Released
Undecided
Unassigned

Bug Description

I skimmed through the commits included in 1.11.1 [0] and in Debian for 1.11.1-2 [1]. Bug #5292 [2] is the most notable change here, and was flagged by Debian as worthwhile for us to include.

The remainder of changes in upstream 1.11.1 look like targeted build and bug fixes, test case refinement, docs, and etc. There doesn't appear to be any new features, so seems safe to sync. The Debian changes for 1.11.0 to 1.11.1 are modest, basically just housekeeping and test tweaks.

0: https://github.com/pmem/pmdk/releases/tag/1.11.1
1: https://github.com/kilobyte/pmdk/commits/debian
2: https://github.com/pmem/pmdk/issues/5292

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

Thanks for confirming my check on the case Bryce.
For documentation clearly my +1 on syncing this (as I suggested).

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

From Sergio (for the technical interested):

Just as a data point, the problem is that in a code such as this one:

  static force_inline void
  memmove_movnt_avx512f(char *dest, const char *src, size_t len, flush_fn flush,
                barrier_fn barrier)
  {
        if ((uintptr_t)dest - (uintptr_t)src >= len)
                memmove_movnt_avx512f_fw(dest, src, len, flush);
        else
                memmove_movnt_avx512f_bw(dest, src, len, flush);

        barrier();

        VALGRIND_DO_FLUSH(dest, len);
  }

you can see that the function received a function pointer called
"barrier", which supposedly is that should get called when "barrier();"
is invoked, but due to (a) "barrier" being also a macro (defined as
'#define barrier() asm volatile("" ::: "memory")'), and (b) the
GCC preprocessor running before the actual compilation phase, we end up
with the code executing the "asm volatile" operation instead of calling
the function pointer provided.

You can reproduce this locally with:

--8<---------------cut here---------------start------------->8---
#include <stdio.h>

#define foo() printf ("Called the macro.\n");

static void
myfoo ()
{
  printf ("Called the myfoo function.\n");
}

static void
callfoo (void (*foo) ())
{
  foo ();
}

int
main ()
{
  callfoo (myfoo);
}

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

FYI: Bryce had already ran this by bdmurray and got an ack that it doesn't need an FFE.

Revision history for this message
Christian Ehrhardt  (paelzer) wrote :

Since this is still blocked in -unapproved I started to ping ubuntu-release in IRC and in addition subscribed ubuntu-release here.

Revision history for this message
Bryce Harrington (bryce) wrote :

This has sync'd:

pmdk (1.11.1-2) unstable; urgency=medium

  * Add helgrind suppressions for glibc-2.32/ppc64el.

Date: 2021-09-28 16:45:32.857868+00:00
Changed-By: Adam Borowski <email address hidden>
Signed-By: Bryce Harrington <email address hidden>
https://launchpad.net/ubuntu/+source/pmdk/1.11.1-2

==

 OK: pmdk_1.11.1-2.dsc
     -> Component: main Section: misc
 OK: pmdk_1.11.1.orig.tar.gz
 OK: pmdk_1.11.1.orig.tar.gz.asc
 OK: pmdk_1.11.1-2.debian.tar.xz

Changed in pmdk (Ubuntu):
status: New → Fix Released
Revision history for this message
Bryce Harrington (bryce) wrote :

This bug was fixed in the package pmdk - 1.11.1-2

---------------
pmdk (1.11.1-2) unstable; urgency=medium

  * Add helgrind suppressions for glibc-2.32/ppc64el.

 -- Adam Borowski <email address hidden> Tue, 28 Sep 2021 12:57:41 +0200

pmdk (1.11.1-1) unstable; urgency=high

  * New upstream bugfix release, fixes a possible data loss on crash bug.
  * Add lplewa's upstream gpg key.

 -- Adam Borowski <email address hidden> Mon, 27 Sep 2021 17:12:08 +0200

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.