Messages in this thread | | | Date | Fri, 5 Apr 2019 10:24:47 +0200 | From | Borislav Petkov <> | Subject | Re: [PATCH] overflow.h: Rename __ab_c_size() to __calc_size() |
| |
On Fri, Apr 05, 2019 at 10:09:31AM +0200, Rasmus Villemoes wrote: > On 05/04/2019 09.52, Borislav Petkov wrote: > > On Fri, Apr 05, 2019 at 08:26:45AM +0200, Rasmus Villemoes wrote: > > >> It computes a*b+c with overflow checking at each step. calc_size > >> is way too generic and doesn't say anything at all about how the > >> calc(ulation) is done. > > > > Ok, whatever. > > > > Then it would need at least a comment above it to state what it does. I > > don't want to go and parse the macros each time. > > It's an internal helper, and struct_size is fully kernel-doc'ed. But > yeah, a comment wouldn't hurt, and let's rename the parameters so they > match the abc naming. > > diff --git a/include/linux/overflow.h b/include/linux/overflow.h > index 40b48e2133cb..6534a727cadb 100644 > --- a/include/linux/overflow.h > +++ b/include/linux/overflow.h > @@ -278,11 +278,15 @@ static inline __must_check size_t > array3_size(size_t a, size_t b, size_t c) > return bytes; > } > > -static inline __must_check size_t __ab_c_size(size_t n, size_t size, > size_t c) > +/* > + * Compute a*b+c, returning SIZE_MAX on overflow. Internal helper for > + * struct_size() below. > + */ > +static inline __must_check size_t __ab_c_size(size_t a, size_t b, size_t c) > { > size_t bytes; > > - if (check_mul_overflow(n, size, &bytes)) > + if (check_mul_overflow(a, b, &bytes)) > return SIZE_MAX; > if (check_add_overflow(bytes, c, &bytes)) > return SIZE_MAX; > >
Reported-by: Borislav Petkov <bp@suse.de> Acked-by: Borislav Petkov <bp@suse.de>
Thx.
-- Regards/Gruss, Boris.
Good mailing practices for 400: avoid top-posting and trim the reply.
| |