diff mbox series

[v8,03/20] gpio: uapi: define GPIO_MAX_NAME_SIZE for array sizes

Message ID 20200909102640.1657622-4-warthog618@gmail.com
State Superseded
Headers show
Series gpio: cdev: add uAPI v2 | expand

Commit Message

Kent Gibson Sept. 9, 2020, 10:26 a.m. UTC
Replace constant array sizes with a macro constant to clarify the source
of array sizes, provide a place to document any constraints on the size,
and to simplify array sizing in userspace if constructing structs
from their composite fields.

Signed-off-by: Kent Gibson <warthog618@gmail.com>
---
 include/uapi/linux/gpio.h | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

Comments

Andy Shevchenko Sept. 15, 2020, 10:12 a.m. UTC | #1
On Wed, Sep 9, 2020 at 1:29 PM Kent Gibson <warthog618@gmail.com> wrote:
>

> Replace constant array sizes with a macro constant to clarify the source

> of array sizes, provide a place to document any constraints on the size,

> and to simplify array sizing in userspace if constructing structs

> from their composite fields.

>


Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>



> Signed-off-by: Kent Gibson <warthog618@gmail.com>

> ---

>  include/uapi/linux/gpio.h | 17 +++++++++++------

>  1 file changed, 11 insertions(+), 6 deletions(-)

>

> diff --git a/include/uapi/linux/gpio.h b/include/uapi/linux/gpio.h

> index 9c27cecf406f..285cc10355b2 100644

> --- a/include/uapi/linux/gpio.h

> +++ b/include/uapi/linux/gpio.h

> @@ -14,6 +14,11 @@

>  #include <linux/ioctl.h>

>  #include <linux/types.h>

>

> +/*

> + * The maximum size of name and label arrays.

> + */

> +#define GPIO_MAX_NAME_SIZE 32

> +

>  /**

>   * struct gpiochip_info - Information about a certain GPIO chip

>   * @name: the Linux kernel name of this GPIO chip

> @@ -22,8 +27,8 @@

>   * @lines: number of GPIO lines on this chip

>   */

>  struct gpiochip_info {

> -       char name[32];

> -       char label[32];

> +       char name[GPIO_MAX_NAME_SIZE];

> +       char label[GPIO_MAX_NAME_SIZE];

>         __u32 lines;

>  };

>

> @@ -52,8 +57,8 @@ struct gpiochip_info {

>  struct gpioline_info {

>         __u32 line_offset;

>         __u32 flags;

> -       char name[32];

> -       char consumer[32];

> +       char name[GPIO_MAX_NAME_SIZE];

> +       char consumer[GPIO_MAX_NAME_SIZE];

>  };

>

>  /* Maximum number of requested handles */

> @@ -123,7 +128,7 @@ struct gpiohandle_request {

>         __u32 lineoffsets[GPIOHANDLES_MAX];

>         __u32 flags;

>         __u8 default_values[GPIOHANDLES_MAX];

> -       char consumer_label[32];

> +       char consumer_label[GPIO_MAX_NAME_SIZE];

>         __u32 lines;

>         int fd;

>  };

> @@ -182,7 +187,7 @@ struct gpioevent_request {

>         __u32 lineoffset;

>         __u32 handleflags;

>         __u32 eventflags;

> -       char consumer_label[32];

> +       char consumer_label[GPIO_MAX_NAME_SIZE];

>         int fd;

>  };

>

> --

> 2.28.0

>



-- 
With Best Regards,
Andy Shevchenko
diff mbox series

Patch

diff --git a/include/uapi/linux/gpio.h b/include/uapi/linux/gpio.h
index 9c27cecf406f..285cc10355b2 100644
--- a/include/uapi/linux/gpio.h
+++ b/include/uapi/linux/gpio.h
@@ -14,6 +14,11 @@ 
 #include <linux/ioctl.h>
 #include <linux/types.h>
 
+/*
+ * The maximum size of name and label arrays.
+ */
+#define GPIO_MAX_NAME_SIZE 32
+
 /**
  * struct gpiochip_info - Information about a certain GPIO chip
  * @name: the Linux kernel name of this GPIO chip
@@ -22,8 +27,8 @@ 
  * @lines: number of GPIO lines on this chip
  */
 struct gpiochip_info {
-	char name[32];
-	char label[32];
+	char name[GPIO_MAX_NAME_SIZE];
+	char label[GPIO_MAX_NAME_SIZE];
 	__u32 lines;
 };
 
@@ -52,8 +57,8 @@  struct gpiochip_info {
 struct gpioline_info {
 	__u32 line_offset;
 	__u32 flags;
-	char name[32];
-	char consumer[32];
+	char name[GPIO_MAX_NAME_SIZE];
+	char consumer[GPIO_MAX_NAME_SIZE];
 };
 
 /* Maximum number of requested handles */
@@ -123,7 +128,7 @@  struct gpiohandle_request {
 	__u32 lineoffsets[GPIOHANDLES_MAX];
 	__u32 flags;
 	__u8 default_values[GPIOHANDLES_MAX];
-	char consumer_label[32];
+	char consumer_label[GPIO_MAX_NAME_SIZE];
 	__u32 lines;
 	int fd;
 };
@@ -182,7 +187,7 @@  struct gpioevent_request {
 	__u32 lineoffset;
 	__u32 handleflags;
 	__u32 eventflags;
-	char consumer_label[32];
+	char consumer_label[GPIO_MAX_NAME_SIZE];
 	int fd;
 };