---
name: "pmem2_config_set_required_store_granularity"
section: "3"
platform: "linux"
package: "libpmem2-dev"
version: "1.13.1-1.1+b1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/pmem2_config_set_required_store_granularity"
---

# pmem2\_config\_set\_required\_store\_granularity(3)

set a granularity in pmem2\_config structure.

## NAME

**pmem2\_config\_set\_required\_store\_granularity**() - set a granularity in pmem2\_config structure.

## SYNOPSIS

-

  ```
  #include <libpmem2.h>
  enum pmem2_granularity {
      PMEM2_GRANULARITY_BYTE,
      PMEM2_GRANULARITY_CACHE_LINE,
      PMEM2_GRANULARITY_PAGE,
  };
  int pmem2_config_set_required_store_granularity(struct pmem2_config *cfg,
          enum pmem2_granularity g);
  ```

## DESCRIPTION

The **pmem2\_config\_set\_required\_store\_granularity**() sets a maximum permitted granularity *g* requested by user in the *pmem2\_config* structure.

Granularity must be one of the following values:

- •

  **PMEM2\_GRANULARITY\_BYTE**

- •

  **PMEM2\_GRANULARITY\_CACHE\_LINE**

- •

  **PMEM2\_GRANULARITY\_PAGE**

A description of the granularity concept can be found in [**libpmem2**(7)](/libpmem2/7.md) manpage.

## RETURN VALUE

The **pmem2\_config\_set\_required\_store\_granularity**() function returns 0 on success or a negative error code on failure.

## ERRORS

The **pmem2\_config\_set\_required\_store\_granularity**() can fail with the following errors:

- •

  **PMEM2\_E\_GRANULARITY\_NOT\_SUPPORTED** - granularity *g* is not a valid value.

## SEE ALSO

[**pmem2\_config\_new**(3)](/pmem2_config_new/3.md), [**libpmem2**(7)](/libpmem2/7.md) and **\<https://pmem.io\>**
