[v6,0/6] nvme: add csi, ms and nuse to sysfs

Message ID 20231218165954.29652-1-dwagner@suse.de
Headers
Series nvme: add csi, ms and nuse to sysfs |

Message

Daniel Wagner Dec. 18, 2023, 4:59 p.m. UTC
  Rebased on the current nvme/nvme-6.8 branch and added the Review tags. Also
addressed the printk format issue pointed out by Chaitanya.

About PI: I've added a note to the first commit pointing on this topic. I
understood from the discussion, that yes it is an issue but it already exists
and we will address this in future.

Thanks,
Daniel

libnvme changes:
  https://github.com/igaw/libnvme/tree/tree-no-cmd
  
changes:
v6:
 - rebased on nvme/nvme-6.8
 - collected Reviewed tags
 - updated printk format

v5:
 - reverted trigger happy conversion to nvme_ns_head in
   nvme_zns_alloc_report_buffer
 - removed debug output
 - added refactoring patches
 - ratelimit silence suppress messages
 - added reviewed tags
 - https://lore.kernel.org/linux-nvme/20231208105337.23409-1-dwagner@suse.de/

v4:
 - drop 'use nvme_ns_head instead nvme_ns' patches
 - ratelimit nuse update per namespace not globally
 - rename ns attribute group
 - added non-multipath nuse update logic
 - added cacheline optimization
 - https://lore.kernel.org/linux-nvme/20231207123624.29959-1-dwagner@suse.de/

v3:
 - cut overlong lines shorter
 - fixed disk (queuedata) initialization order
 - more testing with blktest
 - added nuse ratelimit
 - added reviewed tags
 - https://lore.kernel.org/linux-nvme/20231206081244.32733-1-dwagner@suse.de/

v2:
 - moved ns id data to nvme_ns_head
 - dropped ds, nsze
 - https://lore.kernel.org/linux-nvme/20231201092735.28592-1-dwagner@suse.de/

v1:
 - initial version
 - https://lore.kernel.org/linux-nvme/20231127103208.25748-1-dwagner@suse.de/

Daniel Wagner (6):
  nvme: move ns id info to struct nvme_ns_head
  nvme: refactor ns info helpers
  nvme: refactor ns info setup function
  nvme: rename ns attribute group
  nvme: add csi, ms and nuse to sysfs
  nvme: repack struct nvme_ns_head

 drivers/nvme/host/core.c      | 168 ++++++++++++++++++----------------
 drivers/nvme/host/ioctl.c     |   8 +-
 drivers/nvme/host/multipath.c |   2 +-
 drivers/nvme/host/nvme.h      |  44 +++++----
 drivers/nvme/host/rdma.c      |   4 +-
 drivers/nvme/host/sysfs.c     |  99 ++++++++++++++++++--
 drivers/nvme/host/zns.c       |  35 +++----
 7 files changed, 233 insertions(+), 127 deletions(-)
  

Comments

Keith Busch Dec. 18, 2023, 10:55 p.m. UTC | #1
On Mon, Dec 18, 2023 at 05:59:48PM +0100, Daniel Wagner wrote:
> Rebased on the current nvme/nvme-6.8 branch and added the Review tags. Also
> addressed the printk format issue pointed out by Chaitanya.

Thanks, added to nvme-6.8.
  
Max Gurtovoy Dec. 19, 2023, 2:42 p.m. UTC | #2
Hi Keith,

On 19/12/2023 0:55, Keith Busch wrote:
> On Mon, Dec 18, 2023 at 05:59:48PM +0100, Daniel Wagner wrote:
>> Rebased on the current nvme/nvme-6.8 branch and added the Review tags. Also
>> addressed the printk format issue pointed out by Chaitanya.
> 
> Thanks, added to nvme-6.8.

I'm rebasing my fixes to the PI bug (which are not trivial) on top of 
nvme-6.8 and Daniel's series.
I've found that this branch is missing some fixes from the master that 
I've added manually to local nvme-6.8 branch.
When do you plan to rebase the nvme-6.8 on top of master ?
It will be helpful, otherwise my patches will not apply cleanly on your 
branch. :)

-Max.
  
Keith Busch Dec. 19, 2023, 4:07 p.m. UTC | #3
On Tue, Dec 19, 2023 at 04:42:20PM +0200, Max Gurtovoy wrote:
> Hi Keith,
> 
> On 19/12/2023 0:55, Keith Busch wrote:
> > On Mon, Dec 18, 2023 at 05:59:48PM +0100, Daniel Wagner wrote:
> > > Rebased on the current nvme/nvme-6.8 branch and added the Review tags. Also
> > > addressed the printk format issue pointed out by Chaitanya.
> > 
> > Thanks, added to nvme-6.8.
> 
> I'm rebasing my fixes to the PI bug (which are not trivial) on top of
> nvme-6.8 and Daniel's series.
> I've found that this branch is missing some fixes from the master that I've
> added manually to local nvme-6.8 branch.
> When do you plan to rebase the nvme-6.8 on top of master ?
> It will be helpful, otherwise my patches will not apply cleanly on your
> branch. :)

linux-nvme pulls go through Jens' linux-block repo, so we have to be
based on the appropriate branch from there. We already have some late
fixes in 6.7 that create minor merge conflicts for our existing 6.8
branch, so we may provide a reference resolution branch with the pull
request if conflicts are non-trivial. That might be an option for your
fixes if you can make them work atop existing nvme-6.8 without the
conflicting 6.7 changes.

Sometime after the next merge window opens, Jens will rebase his 6.8
block tree to Linus', and we usually get a 2nd feature pull request
within the merge window from that new baseline. That might be an option
if you want to wait a couple more weeks.
  
Max Gurtovoy Dec. 19, 2023, 4:26 p.m. UTC | #4
On 19/12/2023 18:07, Keith Busch wrote:
> On Tue, Dec 19, 2023 at 04:42:20PM +0200, Max Gurtovoy wrote:
>> Hi Keith,
>>
>> On 19/12/2023 0:55, Keith Busch wrote:
>>> On Mon, Dec 18, 2023 at 05:59:48PM +0100, Daniel Wagner wrote:
>>>> Rebased on the current nvme/nvme-6.8 branch and added the Review tags. Also
>>>> addressed the printk format issue pointed out by Chaitanya.
>>>
>>> Thanks, added to nvme-6.8.
>>
>> I'm rebasing my fixes to the PI bug (which are not trivial) on top of
>> nvme-6.8 and Daniel's series.
>> I've found that this branch is missing some fixes from the master that I've
>> added manually to local nvme-6.8 branch.
>> When do you plan to rebase the nvme-6.8 on top of master ?
>> It will be helpful, otherwise my patches will not apply cleanly on your
>> branch. :)
> 
> linux-nvme pulls go through Jens' linux-block repo, so we have to be
> based on the appropriate branch from there. We already have some late
> fixes in 6.7 that create minor merge conflicts for our existing 6.8
> branch, so we may provide a reference resolution branch with the pull
> request if conflicts are non-trivial. That might be an option for your
> fixes if you can make them work atop existing nvme-6.8 without the
> conflicting 6.7 changes.
> 
> Sometime after the next merge window opens, Jens will rebase his 6.8
> block tree to Linus', and we usually get a 2nd feature pull request
> within the merge window from that new baseline. That might be an option
> if you want to wait a couple more weeks.

I see. I think that after finishing the latest testing I'll send the 
version on top of nvme-6.8 + my local branch patches I took from 6.7.
We will start the reviewing process and probably will converge in a week 
or two. Then we will see what is the status of the linux-block repo and 
decide how to continue.