2018-11-22 12:37:42

by Pan Bian

[permalink] [raw]
Subject: [PATCH] HID: intel-ish-hid: fixes incorrect error handling

The memory chunk allocated by hid_allocate_device() should be released
by hid_destroy_device(), not kfree().

Fixes: 0b28cb4bcb1("HID: intel-ish-hid: ISH HID client driver")
Signed-off-by: Pan Bian <[email protected]>
---
drivers/hid/intel-ish-hid/ishtp-hid.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/hid/intel-ish-hid/ishtp-hid.c b/drivers/hid/intel-ish-hid/ishtp-hid.c
index cd23903..e918d78 100644
--- a/drivers/hid/intel-ish-hid/ishtp-hid.c
+++ b/drivers/hid/intel-ish-hid/ishtp-hid.c
@@ -222,7 +222,7 @@ int ishtp_hid_probe(unsigned int cur_hid_dev,
err_hid_device:
kfree(hid_data);
err_hid_data:
- kfree(hid);
+ hid_destroy_device(hid);
return rv;
}

--
2.7.4




2018-12-07 14:24:42

by Benjamin Tissoires

[permalink] [raw]
Subject: Re: [PATCH] HID: intel-ish-hid: fixes incorrect error handling

On Thu, Nov 22, 2018 at 1:52 AM Pan Bian <[email protected]> wrote:
>
> The memory chunk allocated by hid_allocate_device() should be released
> by hid_destroy_device(), not kfree().
>
> Fixes: 0b28cb4bcb1("HID: intel-ish-hid: ISH HID client driver")
> Signed-off-by: Pan Bian <[email protected]>
> ---
> drivers/hid/intel-ish-hid/ishtp-hid.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/hid/intel-ish-hid/ishtp-hid.c b/drivers/hid/intel-ish-hid/ishtp-hid.c
> index cd23903..e918d78 100644
> --- a/drivers/hid/intel-ish-hid/ishtp-hid.c
> +++ b/drivers/hid/intel-ish-hid/ishtp-hid.c
> @@ -222,7 +222,7 @@ int ishtp_hid_probe(unsigned int cur_hid_dev,
> err_hid_device:
> kfree(hid_data);
> err_hid_data:
> - kfree(hid);
> + hid_destroy_device(hid);

Looks good to me. Srinivas, any comments?
FWIW:
Reviewed-by: Benjamin Tissoires <[email protected]>

Jiri, do you think we should send this one as 4.20/fixes material or
wait for 4.21?

Cheers,
Benjamin

> return rv;
> }
>
> --
> 2.7.4
>
>

2018-12-09 20:47:34

by Jiri Kosina

[permalink] [raw]
Subject: Re: [PATCH] HID: intel-ish-hid: fixes incorrect error handling

On Fri, 7 Dec 2018, Benjamin Tissoires wrote:

> > The memory chunk allocated by hid_allocate_device() should be released
> > by hid_destroy_device(), not kfree().
> >
> > Fixes: 0b28cb4bcb1("HID: intel-ish-hid: ISH HID client driver")
> > Signed-off-by: Pan Bian <[email protected]>
> > ---
> > drivers/hid/intel-ish-hid/ishtp-hid.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/hid/intel-ish-hid/ishtp-hid.c b/drivers/hid/intel-ish-hid/ishtp-hid.c
> > index cd23903..e918d78 100644
> > --- a/drivers/hid/intel-ish-hid/ishtp-hid.c
> > +++ b/drivers/hid/intel-ish-hid/ishtp-hid.c
> > @@ -222,7 +222,7 @@ int ishtp_hid_probe(unsigned int cur_hid_dev,
> > err_hid_device:
> > kfree(hid_data);
> > err_hid_data:
> > - kfree(hid);
> > + hid_destroy_device(hid);
>
> Looks good to me. Srinivas, any comments?
> FWIW:
> Reviewed-by: Benjamin Tissoires <[email protected]>
>
> Jiri, do you think we should send this one as 4.20/fixes material or
> wait for 4.21?

Given that this has been around since 4.9, I wouldn't be devastated if it
lands only in next merge window. So I'd just put it to 4.20/fixes and wait
for other more serious trigger for sending that to Linus eventually.

Thanks,

--
Jiri Kosina
SUSE Labs


2018-12-10 03:21:14

by srinivas pandruvada

[permalink] [raw]
Subject: Re: [PATCH] HID: intel-ish-hid: fixes incorrect error handling

On Sun, 2018-12-09 at 21:45 +0100, Jiri Kosina wrote:
> On Fri, 7 Dec 2018, Benjamin Tissoires wrote:
>
> > > The memory chunk allocated by hid_allocate_device() should be
> > > released
> > > by hid_destroy_device(), not kfree().
> > >
> > > Fixes: 0b28cb4bcb1("HID: intel-ish-hid: ISH HID client driver")
> > > Signed-off-by: Pan Bian <[email protected]>
> > > ---
> > > drivers/hid/intel-ish-hid/ishtp-hid.c | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > diff --git a/drivers/hid/intel-ish-hid/ishtp-hid.c
> > > b/drivers/hid/intel-ish-hid/ishtp-hid.c
> > > index cd23903..e918d78 100644
> > > --- a/drivers/hid/intel-ish-hid/ishtp-hid.c
> > > +++ b/drivers/hid/intel-ish-hid/ishtp-hid.c
> > > @@ -222,7 +222,7 @@ int ishtp_hid_probe(unsigned int cur_hid_dev,
> > > err_hid_device:
> > > kfree(hid_data);
> > > err_hid_data:
> > > - kfree(hid);
> > > + hid_destroy_device(hid);
> >
> > Looks good to me. Srinivas, any comments?
> > FWIW:
> > Reviewed-by: Benjamin Tissoires <[email protected]>
> >
> > Jiri, do you think we should send this one as 4.20/fixes material
> > or
> > wait for 4.21?
>
> Given that this has been around since 4.9, I wouldn't be devastated
> if it
> lands only in next merge window. So I'd just put it to 4.20/fixes and
> wait
> for other more serious trigger for sending that to Linus eventually.
>
Agree.

Thanks,
Srinivas

> Thanks,
>


2018-12-17 18:01:18

by Jiri Kosina

[permalink] [raw]
Subject: Re: [PATCH] HID: intel-ish-hid: fixes incorrect error handling

On Thu, 22 Nov 2018, Pan Bian wrote:

> The memory chunk allocated by hid_allocate_device() should be released
> by hid_destroy_device(), not kfree().
>
> Fixes: 0b28cb4bcb1("HID: intel-ish-hid: ISH HID client driver")
> Signed-off-by: Pan Bian <[email protected]>
> ---
> drivers/hid/intel-ish-hid/ishtp-hid.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/hid/intel-ish-hid/ishtp-hid.c b/drivers/hid/intel-ish-hid/ishtp-hid.c
> index cd23903..e918d78 100644
> --- a/drivers/hid/intel-ish-hid/ishtp-hid.c
> +++ b/drivers/hid/intel-ish-hid/ishtp-hid.c
> @@ -222,7 +222,7 @@ int ishtp_hid_probe(unsigned int cur_hid_dev,
> err_hid_device:
> kfree(hid_data);
> err_hid_data:
> - kfree(hid);
> + hid_destroy_device(hid);
> return rv;

Applied to for-4.20/upstream-fixes. Thanks,

--
Jiri Kosina
SUSE Labs