[PATCH v3 10/17] ASoC: Intel: avs: Add basefw runtime-parameter requests

Ranjani Sridharan ranjani.sridharan at linux.intel.com
Mon Mar 7 17:41:55 CET 2022


> > > +	kfree(payload);
> > I think it would be easier to understand this kfree if payload was
> > also
> > allocated in this function in stead of inside the
> > get_large_config().
> 
> That's a good thinking. There was an internal conversation regarding 
> this back in time when we have been implementing getters for the
> first 
> time. There are no clear victors, there are drawbacks - as you do
> not 
> know the size upfront, caller has to guess and then reallocate the 
> buffer accordingly to retrieved payload size from the firmware. So,
> even 
> if you allocate buffer here, chances are, it's not the same buffer
> when 
> the avs_ipc_get_large_config() returns to the caller.
> 
> We have decided to reduce the code size by letting the single,
> common 
> handler do the allocation and leave the other responsibilities to
> the 
> caller.

What could make it simpler is if you allocate MAX IPC size for payload
in this function and then copy the right size in the
avs_ipc_get_large_config(). payload_size tells you that information
anyway right?

Thanks,
Ranjani



More information about the Alsa-devel mailing list