2022-12-08 01:11:38

by Ira Weiny

[permalink] [raw]
Subject: [PATCH] cxl/uapi: Add warning on CXL command enum

From: Ira Weiny <[email protected]>

The CXL command enum is exported to user space and must maintain
backwards compatibility.

Add comment that new defines must be added to the end of the list.

Suggested-by: Dan Williams <[email protected]>
Signed-off-by: Ira Weiny <[email protected]>
---
include/uapi/linux/cxl_mem.h | 4 ++++
1 file changed, 4 insertions(+)

diff --git a/include/uapi/linux/cxl_mem.h b/include/uapi/linux/cxl_mem.h
index c71021a2a9ed..459a3f7f764b 100644
--- a/include/uapi/linux/cxl_mem.h
+++ b/include/uapi/linux/cxl_mem.h
@@ -19,6 +19,10 @@
#define CXL_MEM_QUERY_COMMANDS _IOR(0xCE, 1, struct cxl_mem_query_commands)
#define CXL_MEM_SEND_COMMAND _IOWR(0xCE, 2, struct cxl_send_command)

+/*
+ * NOTE: New defines must be added to the end of the list to preserve
+ * compatibility because this enum is exported to user space.
+ */
#define CXL_CMDS \
___C(INVALID, "Invalid Command"), \
___C(IDENTIFY, "Identify Command"), \

base-commit: acb704099642bc822ef2aed223a0b8db1f7ea76e
--
2.37.2


2022-12-08 01:14:49

by Dave Jiang

[permalink] [raw]
Subject: Re: [PATCH] cxl/uapi: Add warning on CXL command enum



On 12/7/2022 5:01 PM, [email protected] wrote:
> From: Ira Weiny <[email protected]>
>
> The CXL command enum is exported to user space and must maintain
> backwards compatibility.
>
> Add comment that new defines must be added to the end of the list.
>
> Suggested-by: Dan Williams <[email protected]>
> Signed-off-by: Ira Weiny <[email protected]>

Reviewed-by: Dave Jiang <[email protected]>

> ---
> include/uapi/linux/cxl_mem.h | 4 ++++
> 1 file changed, 4 insertions(+)
>
> diff --git a/include/uapi/linux/cxl_mem.h b/include/uapi/linux/cxl_mem.h
> index c71021a2a9ed..459a3f7f764b 100644
> --- a/include/uapi/linux/cxl_mem.h
> +++ b/include/uapi/linux/cxl_mem.h
> @@ -19,6 +19,10 @@
> #define CXL_MEM_QUERY_COMMANDS _IOR(0xCE, 1, struct cxl_mem_query_commands)
> #define CXL_MEM_SEND_COMMAND _IOWR(0xCE, 2, struct cxl_send_command)
>
> +/*
> + * NOTE: New defines must be added to the end of the list to preserve
> + * compatibility because this enum is exported to user space.
> + */
> #define CXL_CMDS \
> ___C(INVALID, "Invalid Command"), \
> ___C(IDENTIFY, "Identify Command"), \
>
> base-commit: acb704099642bc822ef2aed223a0b8db1f7ea76e

2022-12-08 11:05:53

by Jonathan Cameron

[permalink] [raw]
Subject: Re: [PATCH] cxl/uapi: Add warning on CXL command enum

On Wed, 7 Dec 2022 17:27:18 -0700
Dave Jiang <[email protected]> wrote:

> On 12/7/2022 5:01 PM, [email protected] wrote:
> > From: Ira Weiny <[email protected]>
> >
> > The CXL command enum is exported to user space and must maintain
> > backwards compatibility.
> >
> > Add comment that new defines must be added to the end of the list.
> >
> > Suggested-by: Dan Williams <[email protected]>
> > Signed-off-by: Ira Weiny <[email protected]>
>
> Reviewed-by: Dave Jiang <[email protected]>
Good to have.

Reviewed-by: Jonathan Cameron <[email protected]>

>
> > ---
> > include/uapi/linux/cxl_mem.h | 4 ++++
> > 1 file changed, 4 insertions(+)
> >
> > diff --git a/include/uapi/linux/cxl_mem.h b/include/uapi/linux/cxl_mem.h
> > index c71021a2a9ed..459a3f7f764b 100644
> > --- a/include/uapi/linux/cxl_mem.h
> > +++ b/include/uapi/linux/cxl_mem.h
> > @@ -19,6 +19,10 @@
> > #define CXL_MEM_QUERY_COMMANDS _IOR(0xCE, 1, struct cxl_mem_query_commands)
> > #define CXL_MEM_SEND_COMMAND _IOWR(0xCE, 2, struct cxl_send_command)
> >
> > +/*
> > + * NOTE: New defines must be added to the end of the list to preserve
> > + * compatibility because this enum is exported to user space.
> > + */
> > #define CXL_CMDS \
> > ___C(INVALID, "Invalid Command"), \
> > ___C(IDENTIFY, "Identify Command"), \
> >
> > base-commit: acb704099642bc822ef2aed223a0b8db1f7ea76e