## org.freedesktop.UDisks2.NVMe.Namespace

org.freedesktop.UDisks2.NVMe.Namespace — NVMe namespace device

## Methods

    FormatNamespace (IN  a{sv} options);

## Properties

    NSID                    readable   u
    NGUID                   readable   s
    EUI64                   readable   s
    UUID                    readable   s
    WWN                     readable   s
    LBAFormats              readable   a(qqy)
    FormattedLBASize        readable   (qqy)
    NamespaceSize           readable   t
    NamespaceCapacity       readable   t
    NamespaceUtilization    readable   t
    FormatPercentRemaining  readable   i

## Description

This interface represents a namespace device in a NVM subsystem.

## Method Details

### The FormatNamespace() method

    FormatNamespace (IN  a{sv} options);

Performs low level format of the NVM media, destroying all data and metadata in the current namespace.

The optional `lba_data_size` parameter indicates the LBA Data Size in bytes to use (see the related "LBAFormats" property) and similarly the `metadata_size` parameter denotes the number of metadata bytes provided per LBA. If not specified, the current active format is used.

The optional `secure_erase` parameter can be used to perform secure erase - valid values are `user_data` where the user data are overwritten by a pattern, and `crypto_erase` which removes the encryption key with which the user data was previously encrypted.

This call blocks until the format operation has finished.

`IN a{sv} `options``: | Options - known options (in addition to standard options) includes `lba_data_size` (of type 'q'), `metadata_size` (of type 'q') and `secure_erase` (of type 's').

Since 2.10.0

## Property Details

### The "NSID" property

    NSID  readable   u

The Namespace Identifier.

Since 2.10.0

### The "NGUID" property

    NGUID  readable   s

The Namespace Globally Unique Identifier.

A 128-bit value that is globally unique and assigned to the namespace when the namespace is created. Remains fixed throughout the life of the namespace.

Since 2.10.0

### The "EUI64" property

    EUI64  readable   s

The IEEE Extended Unique Identifier.

A 64-bit value that is globally unique and assigned to the namespace when the namespace is created. Remains fixed throughout the life of the namespace.

Since 2.10.0

### The "UUID" property

    UUID  readable   s

The Namespace UUID.

Contains a 128-bit Universally Unique Identifier (UUID) as specified in RFC 4122.

Since 2.10.0

### The "WWN" property

    WWN  readable   s

The World Wide Name of the namespace or blank if unknown.

Since 2.10.0

### The "LBAFormats" property

    LBAFormats  readable   a(qqy)

List of LBA formats supported by the controller.

This is an array of triplets of (`size`, `metadata_size`, `performance`) where `size` denotes LBA Data Size in bytes, `metadata_size` denotes the number of metadata bytes provided per LBA and `performance` indicates the relative performance relative to other formats in the list.

Known values for `performance` include:

0 | Unknown relative performance index
1 | Best performance
2 | Better performance
3 | Good performance
4 | Degraded performance

Since 2.10.0

### The "FormattedLBASize" property

    FormattedLBASize  readable   (qqy)

The actual LBA data size, the metadata size and the relative performance index that the namespace has been formatted with.

Similar to "LBAFormats" this is a triplet of (`size`, `metadata_size`, `performance`) where `size` denotes LBA Data Size in bytes, `metadata_size` denotes the number of metadata bytes provided per LBA and `performance` indicates the relative performance relative to other formats indicated in the "LBAFormats" property.

Since 2.10.0

### The "NamespaceSize" property

    NamespaceSize  readable   t

The total size of the namespace in logical blocks. The number of logical blocks is based on the formatted LBA size (see "FormattedLBASize").

Since 2.10.0

### The "NamespaceCapacity" property

    NamespaceCapacity  readable   t

The maximum number of logical blocks that may be allocated in the namespace. The number of logical blocks is based on the formatted LBA size (see "FormattedLBASize").

Since 2.10.0

### The "NamespaceUtilization" property

    NamespaceUtilization  readable   t

The current number of logical blocks allocated in the namespace. This value is less than or equal to the "NamespaceCapacity". The number of logical blocks is based on the formatted LBA size (see "FormattedLBASize").

Since 2.10.0

### The "FormatPercentRemaining" property

    FormatPercentRemaining  readable   i

The percent remaining of a running format operation or -1 if unknown (e.g. not reported by the drive).

Since 2.10.0