Skip to content
This repository was archived by the owner on Nov 12, 2025. It is now read-only.
This repository was archived by the owner on Nov 12, 2025. It is now read-only.

Invalid heap size when creating a new pool on a used-before devdax. #6012

Description

@grom72

ISSUE: Invalid heap size when creating a new pool on a used-before devdax.

Environment Information

  • PMDK package version(s):
  • OS(es) version(s):
  • ndctl version(s):
  • kernel version(s):
  • compiler, libraries, packaging and other related tools version(s):

Please provide a reproduction of the bug:

pmempool_transform/TEST9 pmemobj9.log <libpmemobj>: <1> [heap.c:539 zone_calc_size_idx] assertion failure: heap_size >= zone_id * (sizeof(struct zone) + sizeof(struct chunk) * ((65535) - 7))

The problem has been solved by changing the order of devdax devices in test config file.

It seems that in some scenarios "old data" was treated as new data and not initialized from scratch.

How often bug is revealed: (always, often, rare):

Actual behavior:

Expected behavior:

Details

Additional information about Priority and Help Requested:

Are you willing to submit a pull request with a proposed change? (Yes, No)

Requested priority: (Showstopper, High, Medium, Low)

Activity

  1. added this to the 2.1.1 milestone on Feb 16, 2024
  2. janekmi commented on Feb 16, 2024

    @janekmi
    Contributor

    When the original order of Device DAXes was restored, the issue did not reproduce anymore.

  3. modified the milestones: 2.1.1, 2.x on Mar 28, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions