LinuxKPI: stub anon_inode_getfile
Although drm-kmod contains better implementation which is able to allocate real entries on pseudofs, this feature has never been used. Starting from drm-kmod v5.6 old implementation began to leak entries on each drm device close(). Now just drop pseudofs support instead of fixing it in drm-kmod and provide stub in base. Reviewed by: hselasky, manu MFC after: 2 weeks Differential revision: https://reviews.freebsd.org/D32069
This commit is contained in:
parent
f6823dac8f
commit
bd6d55adb4
48
sys/compat/linuxkpi/common/include/linux/anon_inodes.h
Normal file
48
sys/compat/linuxkpi/common/include/linux/anon_inodes.h
Normal file
@ -0,0 +1,48 @@
|
||||
/*-
|
||||
* SPDX-License-Identifier: BSD-2-Clause-FreeBSD
|
||||
*
|
||||
* Copyright (c) 2021 Vladimir Kondratyev <wulf@FreeBSD.org>
|
||||
*
|
||||
* Redistribution and use in source and binary forms, with or without
|
||||
* modification, are permitted provided that the following conditions are
|
||||
* met:
|
||||
* 1. Redistributions of source code must retain the above copyright
|
||||
* notice, this list of conditions and the following disclaimer.
|
||||
* 2. Redistributions in binary form must reproduce the above copyright
|
||||
* notice, this list of conditions and the following disclaimer in
|
||||
* the documentation and/or other materials provided with the
|
||||
* distribution.
|
||||
*
|
||||
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
|
||||
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
* ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
|
||||
* FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
|
||||
* DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
|
||||
* OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#ifndef _LINUX_ANON_INODES_H_
|
||||
#define _LINUX_ANON_INODES_H_
|
||||
|
||||
#include <linux/fs.h>
|
||||
#include <linux/file.h>
|
||||
#include <linux/types.h>
|
||||
|
||||
static inline struct file *
|
||||
anon_inode_getfile(const char *name __unused,
|
||||
const struct file_operations *fops, void *priv, int flags __unused)
|
||||
{
|
||||
struct file *file;
|
||||
|
||||
file = alloc_file(FMODE_READ, fops);
|
||||
file->private_data = priv;
|
||||
|
||||
return (file);
|
||||
}
|
||||
|
||||
#endif /* _LINUX_ANON_INODES_H_ */
|
Loading…
Reference in New Issue
Block a user