Re: [PATCH] fix a file reference leak in drivers/misc/ntsync.c

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

 



On Tuesday, 14 January 2025 20:50:02 CST Al Viro wrote:
> 	struct ntsync_obj contains a reference to struct file
> and that reference contributes to refcount - ntsync_alloc_obj()
> grabs it.  Normally the object is destroyed (and reference
> to obj->file dropped) in ntsync_obj_release().  However, in
> case of ntsync_obj_get_fd() failure the object is destroyed
> directly by its creator.
> 
> 	That case should also drop obj->file; plain kfree(obj)
> is not enough there - it ends up leaking struct file * reference.
> 
> 	Take that logics into a helper (ntsync_free_obj()) and
> use it in both codepaths that destroy ntsync_obj instances.
> 
> Fixes: b46271ec40a05 "ntsync: Introduce NTSYNC_IOC_CREATE_SEM"
> Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
> ---

Reviewed-by: Elizabeth Figura <zfigura@xxxxxxxxxxxxxxx>


---

Thanks for catching this. There's a similar problem with the other newly introduced object types in the char-misc-next tree (and this patch doesn't apply cleanly there anyway). I'll send a similar patch for those, unless you have one already.






[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [NTFS 3]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [NTFS 3]     [Samba]     [Device Mapper]     [CEPH Development]

  Powered by Linux