Re: ALSA: Soc_compress open file node allows more than once

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

 



On 2017-11-27 11:20, Vinod Koul wrote:
On Thu, Nov 23, 2017 at 02:41:00PM +0100, Takashi Iwai wrote:
On Thu, 23 Nov 2017 14:18:30 +0100,
b_lkasam@xxxxxxxxxxxxxx wrote:
>
> Hi ALSA team,
> This is regarding compress offload framework file operations wrt open
> system call.
>
> For open call to this driver currently allows for same node more than
> once.
>
> This may result in memleak issues or data corruption if same node in
> use by multiple instances.

This only depends on the driver side implementation.  There is no
restriction in the core side, as the multiple open is possible
depending on the hardware design and the driver implementation.

sounds right to me, also is the leak on core side or your driver?

Sorry for delay in getting back.. Yes, leak was in driver not on core side.
Thanks everyone for inputs...We have fixed it in our driver.

> can we have restriction to avoid open of same node using some refcount?
>
> we can either have refcount under compr->private_data and cross check
> in below function before proceeding.
> static int snd_compr_open(struct inode *inode, struct file *f)
>
> Please suggest accordingly.

I'd suggest just to add an exclusive open check in the driver side.
The open/close callbacks are protected via a mutex, so it can be a
simple bool flag check.

If the exclusive access is regarded as a common pattern, we can add
some flag to snd_compr later and check it in the core, instead, too.
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel



[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux