2022-07-12 22:43:42

by Guenter Roeck

[permalink] [raw]
Subject: [PATCH] HID: nintendo: Add missing array termination

joycon_dpad_inputs_jc[] is unterminated. This may result in odd warnings
such as

input: input_set_capability: invalid code 3077588140 for type 1

or in kernel crashes in nintendo_hid_probe(). Terminate the array to fix
the problem.

Fixes: 2af16c1f846bd ("HID: nintendo: add nintendo switch controller driver")
Cc: Daniel J. Ogorchock <[email protected]>
Signed-off-by: Guenter Roeck <[email protected]>
---
drivers/hid/hid-nintendo.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/drivers/hid/hid-nintendo.c b/drivers/hid/hid-nintendo.c
index 2204de889739..4b1173957c17 100644
--- a/drivers/hid/hid-nintendo.c
+++ b/drivers/hid/hid-nintendo.c
@@ -1586,6 +1586,7 @@ static const unsigned int joycon_button_inputs_r[] = {
/* We report joy-con d-pad inputs as buttons and pro controller as a hat. */
static const unsigned int joycon_dpad_inputs_jc[] = {
BTN_DPAD_UP, BTN_DPAD_DOWN, BTN_DPAD_LEFT, BTN_DPAD_RIGHT,
+ 0 /* 0 signals end of array */
};

static int joycon_input_create(struct joycon_ctlr *ctlr)
--
2.35.1


2022-07-12 23:06:10

by Dmitry Torokhov

[permalink] [raw]
Subject: Re: [PATCH] HID: nintendo: Add missing array termination

On Tue, Jul 12, 2022 at 03:17:05PM -0700, Guenter Roeck wrote:
> joycon_dpad_inputs_jc[] is unterminated. This may result in odd warnings
> such as
>
> input: input_set_capability: invalid code 3077588140 for type 1
>
> or in kernel crashes in nintendo_hid_probe(). Terminate the array to fix
> the problem.
>
> Fixes: 2af16c1f846bd ("HID: nintendo: add nintendo switch controller driver")
> Cc: Daniel J. Ogorchock <[email protected]>
> Signed-off-by: Guenter Roeck <[email protected]>

Reviewed-by: Dmitry Torokhov <[email protected]>

I'd recommend tagging stable on this one.

> ---
> drivers/hid/hid-nintendo.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/hid/hid-nintendo.c b/drivers/hid/hid-nintendo.c
> index 2204de889739..4b1173957c17 100644
> --- a/drivers/hid/hid-nintendo.c
> +++ b/drivers/hid/hid-nintendo.c
> @@ -1586,6 +1586,7 @@ static const unsigned int joycon_button_inputs_r[] = {
> /* We report joy-con d-pad inputs as buttons and pro controller as a hat. */
> static const unsigned int joycon_dpad_inputs_jc[] = {
> BTN_DPAD_UP, BTN_DPAD_DOWN, BTN_DPAD_LEFT, BTN_DPAD_RIGHT,
> + 0 /* 0 signals end of array */
> };
>
> static int joycon_input_create(struct joycon_ctlr *ctlr)
> --
> 2.35.1
>

Thanks.

--
Dmitry

2022-07-21 11:51:05

by Jiri Kosina

[permalink] [raw]
Subject: Re: [PATCH] HID: nintendo: Add missing array termination

On Tue, 12 Jul 2022, Dmitry Torokhov wrote:

> On Tue, Jul 12, 2022 at 03:17:05PM -0700, Guenter Roeck wrote:
> > joycon_dpad_inputs_jc[] is unterminated. This may result in odd warnings
> > such as
> >
> > input: input_set_capability: invalid code 3077588140 for type 1
> >
> > or in kernel crashes in nintendo_hid_probe(). Terminate the array to fix
> > the problem.
> >
> > Fixes: 2af16c1f846bd ("HID: nintendo: add nintendo switch controller driver")
> > Cc: Daniel J. Ogorchock <[email protected]>
> > Signed-off-by: Guenter Roeck <[email protected]>
>
> Reviewed-by: Dmitry Torokhov <[email protected]>
>
> I'd recommend tagging stable on this one.

I did so and applied, thanks.

--
Jiri Kosina
SUSE Labs