Pmdk Versions Save

Persistent Memory Development Kit

2.0.1

5 months ago

This release :

2.0.1-rc1

5 months ago

This release :

  • Significantly reduces the libpmem's stack usage.
  • pmemobj_open() stack usage reduction below 12kB threshold.

2.0.0

9 months ago

This release :

  • Removes libpmemlog, libpmemblk, btt, and their support in (lib)pmempool
  • Removes Windows support
  • Removes FreeBSD support
  • Removes all pmem2_async operations (experimental)
  • Removes PowerPC and ARM architectures (experimental) from regular validation
  • Limits PMDK's static builds validation scope
  • Removes Fedora and Debian from regular validation
  • Adds reference platform provisioning instructions for PMDK testing
  • Identifies and temporarily disables tests permanently or sporadically failing in some configurations:
    • obj_pmalloc_mt (#5726)
    • obj_sync (#5643, #5646, #5699, #5705, #5706, #5727)
    • pmem2_vm_reservation (#5707)
    • pmempool_sync (#5708)
  • Re-enable pmem2_persist_valgrind tests previously excluded by mistake (#5855)

1.13.1

11 months ago

This release :

  • Identifies and temporarily disables tests permanently or sporadically failing in some configurations:

    • ex_libpmem2 (#5593, #5635, #5638, #5641)
    • obj_defrag_advanced (#5690)
    • obj_sync (#5643, #5646)
    • pmem2_future (#5596)
    • pmem2_map (#5600)
    • pmem2_map_prot (#5599)
    • pmem2_mem_ext (#5640)
    • pmem2_mover (partially fixed) (#5595, #5686, #5694)
    • pmem2_vm_reservation (#5592)
  • Fixes failing tests:

    • obj_tx_alloc_mt (#5680)
    • pmem2_map_from_existing (#5594)
  • Temporarily disable pmem2_badblock test (#5650) due to missing infrastructure (#5636, #5652)

Other changes and notable bug fixes:

  • pmem2: fix valgrind instrumentation in pmem2_map_from_exisiting (#5605)
  • pmem2: remove data_mover memory leak (#5681, #5637)
  • test: update permissions of DAX devices after clearing bad blocks (#5611)
  • test: disable avx512f tests (pmem2_mem_ext) under Valgrind (#5658)

1.13.1-rc2

11 months ago

This release :

  • Identifies and temporarily disables tests permanently or sporadically failing in some configurations:

    • ex_libpmem2 (#5593, #5635, #5638, #5641)
    • obj_defrag_advanced (#5690)
    • obj_sync (#5643, #5646)
    • pmem2_badblock (#5652, #5636)
    • pmem2_future (#5596)
    • pmem2_map (#5600)
    • pmem2_map_prot (#5599)
    • pmem2_mem_ext (#5640)
    • pmem2_mover (partially fixed) (#5595, #5686, #5694)
    • pmem2_vm_reservation (#5592)
  • Fixes failing tests:

    • obj_tx_alloc_mt (#5680)
    • pmem2_integration (#5637)
    • pmem2_map_from_existing (#5594)

Other changes and notable bug fixes:

  • test: update permissions of DAX devices after clearing bad blocks (#5611)
  • pmem2: fix valgrind instrumentation in pmem2_map_from_exisiting (#5605)
  • test: disable avx512f tests (pmem2_mem_ext) under Valgrind (#5658)

1.13.1-rc1

11 months ago

This release :

  • Identifies and temporarily disables tests permanently or sporadically failing in some configurations:

    • ex_libpmem2 (#5593, #5635, #5638, #5641)
    • obj_defrag_advanced (#5690)
    • obj_sync (#5643, #5646)
    • pmem2_badblock (#5652, #5636)
    • pmem2_future (#5596)
    • pmem2_map (#5600)
    • pmem2_map_prot (#5599)
    • pmem2_mem_ext (#5640)
    • pmem2_mover (partially fixed) (#5595, #5686)
    • pmem2_vm_reservation (#5592)
  • Fixes failing tests:

    • obj_tx_alloc_mt (#5680)
    • pmem2_integration (#5637)
    • pmem2_map_from_existing (#5594)

Other changes and notable bug fixes:

  • test: update permissions of DAX devices after clearing bad blocks (#5611)
  • pmem2: fix valgrind instrumentation in pmem2_map_from_exisiting (#5605)
  • test: disable avx512f tests (pmem2_mem_ext) under Valgrind (#5658)

1.13.0

1 year ago

This release:

  • Removes (previously deprecated) librpmem. Those interested in remote persistent memory support should use the rpma library (https://github.com/pmem/rpma).
  • Removes libpmemset - it was an experimental library.
  • Sets libpmemblk as deprecated, to be removed in the next release.
  • Sets libpmemlog as deprecated, to be removed in the next release.
  • Sets btt support as deprecated, to be removed in the next release.
  • Sets async as deprecated, to be removed in the next release.
  • Sets FreeBSD support as deprecated, to be removed in the next release.
  • Sets Windows support as deprecated, to be removed in the next release.

Deprecations and removals are done accordingly to the support strategy outlined in the blog post: https://pmem.io/blog/2022/11/update-on-pmdk-and-our-long-term-support-strategy.

Other changes and notable bug fixes:

  • core: handle ENOMEM gracefully during logging (#5515)
  • pool: fix dependencies with pmempool (#5521)
  • test: add more security checks for pmempool input
  • pmreorder: share markers from an application through env variable (#5419)
  • examples: fix potential buffer overflow in pmemobjfs example (#5472)
  • several fixes to support ppc64le architecture
  • several fixes for issues found by Coverity tool

Known issues:

  • The latest validation cycle exposed previously unknown persistency issues related to pmem2 async functions (DEPRECATED) and miniasync (EXPERIMENTAL): #5596 and #5597. Both will be removed in the PMDK 1.14 release. These issues do NOT affect any other PMDK library.

1.13.0-rc1

1 year ago

This release:

  • Removes (previously deprecated) librpmem. Those interested in remote persistent memory support should use the rpma library (https://github.com/pmem/rpma).
  • Removes libpmemset - it was an experimental library.
  • Sets libpmemblk as deprecated, to be removed in the next release.
  • Sets libpmemlog as deprecated, to be removed in the next release.
  • Sets btt support as deprecated, to be removed in the next release.
  • Sets async as deprecated, to be removed in the next release.
  • Sets FreeBSD support as deprecated, to be removed in the next release.
  • Sets Windows support as deprecated, to be removed in the next release.

Deprecations and removals are done accordingly to the support strategy outlined in the blog post: https://pmem.io/blog/2022/11/update-on-pmdk-and-our-long-term-support-strategy.

Other changes and notable bug fixes:

  • core: handle ENOMEM gracefully during logging (#5515)
  • pool: fix dependencies with pmempool (#5521)
  • test: add more security checks for pmempool input
  • pmreorder: share markers from an application through env variable (#5419)
  • examples: fix potential buffer overflow in pmemobjfs example (#5472)
  • several fixes to support ppc64le architecture
  • several fixes for issues found by Coverity tool

1.12.1

1 year ago
  • Version 1.12.1

This release allows using the movdir64b instruction by setting an environment variable, and fixes a number of smaller bugs.

Detailed list of bug fixes: - obj: always perform cleanup of logs with leftover state - pmem2: actually skip msync with noflush on non-pmem - pmem2: make sure async functions use proper vdm flags - common: fix default cflags in makefiles - obj: ensure zones are reclaimed prior to free - pmem2: enable movdir64b compilation but disable it in the runtime

1.12.1-rc1

1 year ago
* Version 1.12.1-rc1

- common: Allow long links in commit messages
- common: Do not run self-hosted jobs on forks
- obj: always perform cleanup of logs with leftover state
- pmem2: actually skip msync with noflush on non-pmem
- pmem2: make sure async functions use proper vdm flags
- common: fix default cflags in makefiles
- obj: ensure zones are reclaimed prior to free
- pmem2: enable movdir64b compilation but disable it in the runtime