Powered by Linux
Re: [PATCH] allocation: Track the size of allocated elements — Semantic Matching Tool

Re: [PATCH] allocation: Track the size of allocated elements

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Aug 25, 2022 at 07:54:20PM +0200, Christophe JAILLET wrote:
> Add a new parameter, 'elem_size', which tells which argument holds the
> size of an individual element.
> 
> Many checks need this parameter, and up to now, we only have an expression
> that shows how to compute the total amount of memory that is allocated.
> 
> Signed-off-by: Christophe JAILLET <christophe.jaillet@xxxxxxxxxx>
> ---
> Not sure it is the best way to do it.
> 
> In smatch.h, how are populated:
>  	struct expression *total_size;
>  	struct expression *nr_elems;
>  	struct expression *elem_size;
> ?
> 
> With my first trials, these expr are always NULL.

Yeah.  That code is not implemented yet.  Or more accurately, I
implemented it last week but I haven't tested it yet or published it.
I think once I publish that (later today probably) then it's a better
option than passing the strings.

I guess what I'm thinking there is that I quite like the size_str the
way it is.  It's easier to fill in the alloc_fns[] table with just the
size_str.  It's ultimate in flexibility.

Then I think for kmalloc() I'll fill in the ->total_size expression.
For kmalloc_array(), I'll leave total_size NULL and fill in the
->nr_elements and ->elem_size.  It feels like there should be another
way set of expressions for struct_size().

That's sort of roughly where I'd like to go.

If you really want this then I can apply it but hopefully you won't
want it if you have the expressions instead.  Expression pointers are
better.

regards,
dan carpenter




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux