diff mbox series

thermal: intel: hfi: Improve the type of hfi_features::nr_table_pages

Message ID 20221018112240.25647-1-ricardo.neri-calderon@linux.intel.com
State Accepted
Commit 54d9135cf223f221546bd51b0f5e4a73e99891f4
Headers show
Series thermal: intel: hfi: Improve the type of hfi_features::nr_table_pages | expand

Commit Message

Ricardo Neri Oct. 18, 2022, 11:22 a.m. UTC
A Coverity static code scan raised a potential overflow_before_widen
warning when hfi_features::nr_table_pages is used as an argument to
memcpy in intel_hfi_process_event().

Even though the overflow can never happen (the maximum number of pages of
the HFI table is 0x10 and 0x10 << PAGE_SHIFT = 0x10000), using size_t as
the data type of hfi_features::nr_table_pages makes Coverity happy and
matches the data type of the argument 'size' of memcpy().

Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Amit Kucheria <amitk@kernel.org>
Cc: Zhang Rui <rui.zhang@intel.com>
Cc: Len Brown <len.brown@intel.com>
Cc: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
Cc: Aubrey Li <aubrey.li@linux.intel.com>
Cc: Haowen Bai <baihaowen@meizu.com>
Cc: linux-pm@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
---
 drivers/thermal/intel/intel_hfi.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Rafael J. Wysocki Oct. 28, 2022, 6:13 p.m. UTC | #1
On Tue, Oct 18, 2022 at 1:16 PM Ricardo Neri
<ricardo.neri-calderon@linux.intel.com> wrote:
>
> A Coverity static code scan raised a potential overflow_before_widen
> warning when hfi_features::nr_table_pages is used as an argument to
> memcpy in intel_hfi_process_event().
>
> Even though the overflow can never happen (the maximum number of pages of
> the HFI table is 0x10 and 0x10 << PAGE_SHIFT = 0x10000), using size_t as
> the data type of hfi_features::nr_table_pages makes Coverity happy and
> matches the data type of the argument 'size' of memcpy().
>
> Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
> Cc: Amit Kucheria <amitk@kernel.org>
> Cc: Zhang Rui <rui.zhang@intel.com>
> Cc: Len Brown <len.brown@intel.com>
> Cc: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
> Cc: Aubrey Li <aubrey.li@linux.intel.com>
> Cc: Haowen Bai <baihaowen@meizu.com>
> Cc: linux-pm@vger.kernel.org
> Cc: linux-kernel@vger.kernel.org
> Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
> ---
>  drivers/thermal/intel/intel_hfi.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/thermal/intel/intel_hfi.c b/drivers/thermal/intel/intel_hfi.c
> index a0640f762dc5..239afe02e518 100644
> --- a/drivers/thermal/intel/intel_hfi.c
> +++ b/drivers/thermal/intel/intel_hfi.c
> @@ -137,7 +137,7 @@ struct hfi_instance {
>   * Parameters and supported features that are common to all HFI instances
>   */
>  struct hfi_features {
> -       unsigned int    nr_table_pages;
> +       size_t          nr_table_pages;
>         unsigned int    cpu_stride;
>         unsigned int    hdr_size;
>  };
> --

Applied as 6.2 material, thanks!
Ricardo Neri Oct. 29, 2022, 10:29 p.m. UTC | #2
On Fri, Oct 28, 2022 at 08:13:15PM +0200, Rafael J. Wysocki wrote:
> On Tue, Oct 18, 2022 at 1:16 PM Ricardo Neri
> <ricardo.neri-calderon@linux.intel.com> wrote:
> >
> > A Coverity static code scan raised a potential overflow_before_widen
> > warning when hfi_features::nr_table_pages is used as an argument to
> > memcpy in intel_hfi_process_event().
> >
> > Even though the overflow can never happen (the maximum number of pages of
> > the HFI table is 0x10 and 0x10 << PAGE_SHIFT = 0x10000), using size_t as
> > the data type of hfi_features::nr_table_pages makes Coverity happy and
> > matches the data type of the argument 'size' of memcpy().
> >
> > Cc: Daniel Lezcano <daniel.lezcano@linaro.org>
> > Cc: Amit Kucheria <amitk@kernel.org>
> > Cc: Zhang Rui <rui.zhang@intel.com>
> > Cc: Len Brown <len.brown@intel.com>
> > Cc: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
> > Cc: Aubrey Li <aubrey.li@linux.intel.com>
> > Cc: Haowen Bai <baihaowen@meizu.com>
> > Cc: linux-pm@vger.kernel.org
> > Cc: linux-kernel@vger.kernel.org
> > Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
> > ---
> >  drivers/thermal/intel/intel_hfi.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/thermal/intel/intel_hfi.c b/drivers/thermal/intel/intel_hfi.c
> > index a0640f762dc5..239afe02e518 100644
> > --- a/drivers/thermal/intel/intel_hfi.c
> > +++ b/drivers/thermal/intel/intel_hfi.c
> > @@ -137,7 +137,7 @@ struct hfi_instance {
> >   * Parameters and supported features that are common to all HFI instances
> >   */
> >  struct hfi_features {
> > -       unsigned int    nr_table_pages;
> > +       size_t          nr_table_pages;
> >         unsigned int    cpu_stride;
> >         unsigned int    hdr_size;
> >  };
> > --
> 
> Applied as 6.2 material, thanks!

Thank you Rafael!
diff mbox series

Patch

diff --git a/drivers/thermal/intel/intel_hfi.c b/drivers/thermal/intel/intel_hfi.c
index a0640f762dc5..239afe02e518 100644
--- a/drivers/thermal/intel/intel_hfi.c
+++ b/drivers/thermal/intel/intel_hfi.c
@@ -137,7 +137,7 @@  struct hfi_instance {
  * Parameters and supported features that are common to all HFI instances
  */
 struct hfi_features {
-	unsigned int	nr_table_pages;
+	size_t		nr_table_pages;
 	unsigned int	cpu_stride;
 	unsigned int	hdr_size;
 };