---
name: "libnvmf_registry_update-libnvme3"
section: "2"
platform: "linux"
package: "nvme-cli"
version: "3.2-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/libnvmf_registry_update-libnvme3"
---

# libnvmf\_registry\_update-libnvme3(2)

Update an attribute in a controller's registry entry

## NAME

libnvmf\_registry\_update - Update an attribute in a controller's registry entry

## SYNOPSIS

**int libnvmf\_registry\_update** **(struct libnvme\_global\_ctx \*ctx** *,* **const char \*device** *,* **const char \*attr** *,* **const char \*value** *);*

## ARGUMENTS

- ctx

  libnvme global context; must not be NULL

- device

  Kernel device name (e.g. "nvme3")

- attr

  Attribute name to update (e.g. "owner")

- value

  New attribute value, or NULL to remove the attribute file

## DESCRIPTION

Writes the attribute value to the controller's registry entry using an atomic tmp-file rename.  If the entry does not exist, it is created atomically the same way as on connect, including the best-effort seqnum stamp for the udev cleanup rule.  If *value* is NULL, the attribute file is removed instead; a missing entry is left alone in this case.

## RETURN

0 on success, negative errno from underlying system calls otherwise.
