Re: [PATCH v2] nvme: Print capabilities changes just once

From: Christoph Hellwig
Date: Thu Jun 22 2023 - 00:08:01 EST


On Wed, Jun 21, 2023 at 10:46:17AM -0600, Keith Busch wrote:
> On Thu, Jun 15, 2023 at 02:49:03AM -0700, Breno Leitao wrote:
> > if (effects & NVME_CMD_EFFECTS_CCC) {
> > - dev_info(ctrl->device,
> > + if (!test_and_set_bit(NVME_CTRL_DIRTY_CAPABILITY,
> > + &ctrl->flags)) {
> > + dev_info(ctrl->device,
> > "controller capabilities changed, reset may be required to take effect.\n");
> > + }
> > }
>
> Thanks, patch applied to nvme-6.5.
>
> A question for Christoph and future consideration: I *think* the
> complications that had the driver stop refreshing the controller
> attributes are largely mitigated by the fact we now handle effects
> after the request is freed. Perhaps I'm missing something. Is there
> a risk in just bringing that feature back into the driver?

No, the main issue was and is that we can't just call
nvme_init_ctrl_finish on a live controller.