diff mbox series

[v4,5/9] cxl/mbox: Remove dependency on cxl_mem_command for a debug msg

Message ID 1a1ebb7181b8be9fb746da48b41c02e54bee513e.1648601710.git.alison.schofield@intel.com
State Superseded
Headers show
Series Do not allow set-partition immediate mode | expand

Commit Message

Alison Schofield March 30, 2022, 1:30 a.m. UTC
From: Alison Schofield <alison.schofield@intel.com>

In preparation for removing access to struct cxl_mem_command,
change this debug message to use cxl_mbox_cmd fields instead.
Retrieve the pretty command name from cxl_mbox_cmd using a new
opcode to command name helper.

Signed-off-by: Alison Schofield <alison.schofield@intel.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
---
 drivers/cxl/core/mbox.c | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

Comments

Dan Williams March 30, 2022, 4:50 a.m. UTC | #1
On Tue, Mar 29, 2022 at 6:28 PM <alison.schofield@intel.com> wrote:
>
> From: Alison Schofield <alison.schofield@intel.com>
>
> In preparation for removing access to struct cxl_mem_command,
> change this debug message to use cxl_mbox_cmd fields instead.
> Retrieve the pretty command name from cxl_mbox_cmd using a new
> opcode to command name helper.
>
> Signed-off-by: Alison Schofield <alison.schofield@intel.com>
> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> ---
>  drivers/cxl/core/mbox.c | 17 ++++++++++++++---
>  1 file changed, 14 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/cxl/core/mbox.c b/drivers/cxl/core/mbox.c
> index 95882ab9f87b..654e61a77eb3 100644
> --- a/drivers/cxl/core/mbox.c
> +++ b/drivers/cxl/core/mbox.c
> @@ -127,6 +127,17 @@ static struct cxl_mem_command *cxl_mem_find_command(u16 opcode)
>         return NULL;
>  }
>
> +static const char *cxl_mem_opcode_to_name(u16 opcode)
> +{
> +       struct cxl_mem_command *c;
> +
> +       c = cxl_mem_find_command(opcode);
> +       if (!c)
> +               return NULL;
> +
> +       return cxl_command_names[c->info.id].name;
> +}
> +
>  /**
>   * cxl_mbox_send_cmd() - Send a mailbox command to a device.
>   * @cxlds: The device data for the operation
> @@ -445,9 +456,9 @@ static int handle_mailbox_cmd_from_user(struct cxl_dev_state *cxlds,
>         dev_dbg(dev,
>                 "Submitting %s command for user\n"
>                 "\topcode: %x\n"
> -               "\tsize: %ub\n",
> -               cxl_command_names[cmd->info.id].name, mbox_cmd.opcode,
> -               cmd->info.size_in);
> +               "\tsize: %zx\n",
> +               cxl_mem_opcode_to_name(mbox_cmd.opcode),
> +               mbox_cmd.opcode, mbox_cmd.size_in);

Looks ok, although it's just a debug statement so the raw opcode would
also be acceptable to me to meet the goal of dropping the
cxl_mem_command usage.

Either way you decide to go:

Reviewed-by: Dan Williams <dan.j.williams@intel.com>
Alison Schofield March 30, 2022, 7:14 p.m. UTC | #2
On Tue, Mar 29, 2022 at 09:50:17PM -0700, Dan Williams wrote:
> On Tue, Mar 29, 2022 at 6:28 PM <alison.schofield@intel.com> wrote:

snip

> >
> >         dev_dbg(dev,
> >                 "Submitting %s command for user\n"
> >                 "\topcode: %x\n"
> > -               "\tsize: %ub\n",
> > -               cxl_command_names[cmd->info.id].name, mbox_cmd.opcode,
> > -               cmd->info.size_in);
> > +               "\tsize: %zx\n",
> > +               cxl_mem_opcode_to_name(mbox_cmd.opcode),
> > +               mbox_cmd.opcode, mbox_cmd.size_in);
> 
> Looks ok, although it's just a debug statement so the raw opcode would
> also be acceptable to me to meet the goal of dropping the
> cxl_mem_command usage.

I thought the opcode_to_name helper might be overkill, until
it came in handy in a later patch. It gets used again to find
the command name when a payload is not allowed. 

> 
> Either way you decide to go:
> 
> Reviewed-by: Dan Williams <dan.j.williams@intel.com>
diff mbox series

Patch

diff --git a/drivers/cxl/core/mbox.c b/drivers/cxl/core/mbox.c
index 95882ab9f87b..654e61a77eb3 100644
--- a/drivers/cxl/core/mbox.c
+++ b/drivers/cxl/core/mbox.c
@@ -127,6 +127,17 @@  static struct cxl_mem_command *cxl_mem_find_command(u16 opcode)
 	return NULL;
 }
 
+static const char *cxl_mem_opcode_to_name(u16 opcode)
+{
+	struct cxl_mem_command *c;
+
+	c = cxl_mem_find_command(opcode);
+	if (!c)
+		return NULL;
+
+	return cxl_command_names[c->info.id].name;
+}
+
 /**
  * cxl_mbox_send_cmd() - Send a mailbox command to a device.
  * @cxlds: The device data for the operation
@@ -445,9 +456,9 @@  static int handle_mailbox_cmd_from_user(struct cxl_dev_state *cxlds,
 	dev_dbg(dev,
 		"Submitting %s command for user\n"
 		"\topcode: %x\n"
-		"\tsize: %ub\n",
-		cxl_command_names[cmd->info.id].name, mbox_cmd.opcode,
-		cmd->info.size_in);
+		"\tsize: %zx\n",
+		cxl_mem_opcode_to_name(mbox_cmd.opcode),
+		mbox_cmd.opcode, mbox_cmd.size_in);
 
 	rc = cxlds->mbox_send(cxlds, &mbox_cmd);
 	if (rc)