Messages in this thread | | | Date | Mon, 27 Nov 2023 13:07:32 +0100 | From | Daniel Wagner <> | Subject | Re: [RFC v1] nvme: add cse, ds, ms, nsze and nuse to sysfs |
| |
On Mon, Nov 27, 2023 at 03:44:11AM -0700, Keith Busch wrote: > On Mon, Nov 27, 2023 at 11:32:08AM +0100, Daniel Wagner wrote: > > libnvme is using the sysfs for enumarating the nvme resources. Though > > there are few missing attritbutes in the sysfs. For these libnvme issues > > commands during discovering. > > > > As the kernel already knows all these attributes and we would like to > > avoid libnvme to issue commands all the time, expose these missing > > attributes. > > The id namespace 'nuse' field can be quite volatile: it can change on > any write or discard command, so caching it may quickly get out of sync > with the actual value.
libnvme itself is also cashing this value and exposes it via the nvme_ns_get_lba_util() getter. I'd say libnvme shouldn't cache it either. Instead the function should just issue the ns command to report the current nuse value.
I'll drop the nuse sysfs entry.
Unfortunately, 'nvme list' is using the 'nuse' field for showing the currently used space. I was hoping to get 'nvme list' working without issuing any commands.
| |