nvme shouldn't ignore namespaces that support extended data LBAs
The nvme driver currently ignores namespaces that have at least one of the following properties:
- use thin provisioning
- support extended data LBAs
- use protection information
Extended data LBAs are blocks that have protection information at the end, meaning they are a few bytes larger than normal blocks of 512 or 4096 bytes length. It turns out that the capability of a namespace to support these extended data LBAs doesn't mean we actually have to support them: the critical part is whether protection information is enabled on the namespace.
So we can drop the check for extended data LBAs and be able to use namespaces that support them, provided that they still aren't formatted for protection information.
This was found on Samsung PM1725 SSDs, which report to support extended data LBAs on their namespace but have no protection information enabled.
Updated by Electric Monk over 3 years ago
- % Done changed from 0 to 100
- Status changed from New to Closed
commit 9cfb65faacc43d80fb0e3cc182d2dae107cdf60c Author: Hans Rosenfeld <firstname.lastname@example.org> Date: 2016-09-01T15:31:49.000Z 7349 nvme shouldn't ignore namespaces that support extended data LBAs Reviewed by: Dan Fields <email@example.com> Reviewed by: Rick McNeal <firstname.lastname@example.org> Reviewed by: Igor Kozhukhov <email@example.com> Reviewed by: Robert Mustacchi <firstname.lastname@example.org> Approved by: Dan McDonald <email@example.com>