2018-01-22 08:18:13 -07:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0 */
|
2007-09-20 01:31:38 -07:00
|
|
|
/*
|
|
|
|
* fs/sysfs/sysfs.h - sysfs internal header file
|
|
|
|
*
|
|
|
|
* Copyright (c) 2001-3 Patrick Mochel
|
|
|
|
* Copyright (c) 2007 SUSE Linux Products GmbH
|
|
|
|
* Copyright (c) 2007 Tejun Heo <teheo@suse.de>
|
|
|
|
*/
|
|
|
|
|
2013-11-28 12:54:31 -07:00
|
|
|
#ifndef __SYSFS_INTERNAL_H
|
|
|
|
#define __SYSFS_INTERNAL_H
|
2009-09-09 11:25:37 -07:00
|
|
|
|
2013-11-28 12:54:31 -07:00
|
|
|
#include <linux/sysfs.h>
|
2007-06-13 12:27:24 -07:00
|
|
|
|
2007-09-20 00:05:10 -07:00
|
|
|
/*
|
|
|
|
* mount.c
|
|
|
|
*/
|
2013-12-11 12:11:53 -07:00
|
|
|
extern struct kernfs_node *sysfs_root_kn;
|
2005-04-16 15:20:36 -07:00
|
|
|
|
2007-09-20 00:05:10 -07:00
|
|
|
/*
|
|
|
|
* dir.c
|
|
|
|
*/
|
2013-10-30 07:28:36 -07:00
|
|
|
extern spinlock_t sysfs_symlink_target_lock;
|
2007-09-20 00:05:10 -07:00
|
|
|
|
2013-12-11 12:11:53 -07:00
|
|
|
void sysfs_warn_dup(struct kernfs_node *parent, const char *name);
|
2007-09-20 00:05:10 -07:00
|
|
|
|
|
|
|
/*
|
|
|
|
* file.c
|
|
|
|
*/
|
2013-12-11 12:11:53 -07:00
|
|
|
int sysfs_add_file_mode_ns(struct kernfs_node *parent,
|
2021-09-12 22:41:12 -07:00
|
|
|
const struct attribute *attr, umode_t amode, kuid_t uid,
|
|
|
|
kgid_t gid, const void *ns);
|
|
|
|
int sysfs_add_bin_file_mode_ns(struct kernfs_node *parent,
|
|
|
|
const struct bin_attribute *battr, umode_t mode,
|
|
|
|
kuid_t uid, kgid_t gid, const void *ns);
|
2013-10-01 14:42:07 -07:00
|
|
|
|
2007-09-20 00:05:10 -07:00
|
|
|
/*
|
|
|
|
* symlink.c
|
|
|
|
*/
|
2013-12-11 12:11:53 -07:00
|
|
|
int sysfs_create_link_sd(struct kernfs_node *kn, struct kobject *target,
|
2013-01-25 13:51:13 -07:00
|
|
|
const char *name);
|
2013-11-28 12:54:31 -07:00
|
|
|
|
|
|
|
#endif /* __SYSFS_INTERNAL_H */
|