Message ID | 20230826071654.564372-1-liaoyu15@huawei.com |
---|---|
State | Accepted |
Commit | 33908660e814203e996f6e775d033c5c32fcf9a7 |
Headers | show |
Series | [v2,1/2] ACPI: NFIT: Fix incorrect calculation of idt size | expand |
Yu Liao wrote: > acpi_nfit_interleave's field 'line_offset' is switched to flexible array [1], > but sizeof_idt() still calculates the size in the form of 1-element array. > > Therefore, fix incorrect calculation in sizeof_idt(). > > [1] https://lore.kernel.org/lkml/2652195.BddDVKsqQX@kreacher/ > > Fixes: 2a5ab99847bd ("ACPICA: struct acpi_nfit_interleave: Replace 1-element array with flexible array") > Cc: stable@vger.kernel.org # v6.4+ > Signed-off-by: Yu Liao <liaoyu15@huawei.com> > Reviewed-by: Dave Jiang <dave.jiang@intel.com> Reviewed-by: Ira Weiny <ira.weiny@intel.com> > --- > v1 -> v2: add Dave's review tag and cc nvdimm@lists.linux.dev > --- > drivers/acpi/nfit/core.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/acpi/nfit/core.c b/drivers/acpi/nfit/core.c > index 07204d482968..305f590c54a8 100644 > --- a/drivers/acpi/nfit/core.c > +++ b/drivers/acpi/nfit/core.c > @@ -855,7 +855,7 @@ static size_t sizeof_idt(struct acpi_nfit_interleave *idt) > { > if (idt->header.length < sizeof(*idt)) > return 0; > - return sizeof(*idt) + sizeof(u32) * (idt->line_count - 1); > + return sizeof(*idt) + sizeof(u32) * idt->line_count; > } > > static bool add_idt(struct acpi_nfit_desc *acpi_desc, > -- > 2.25.1 >
diff --git a/drivers/acpi/nfit/core.c b/drivers/acpi/nfit/core.c index 07204d482968..305f590c54a8 100644 --- a/drivers/acpi/nfit/core.c +++ b/drivers/acpi/nfit/core.c @@ -855,7 +855,7 @@ static size_t sizeof_idt(struct acpi_nfit_interleave *idt) { if (idt->header.length < sizeof(*idt)) return 0; - return sizeof(*idt) + sizeof(u32) * (idt->line_count - 1); + return sizeof(*idt) + sizeof(u32) * idt->line_count; } static bool add_idt(struct acpi_nfit_desc *acpi_desc,