sysfs.h (970B)
1/* SPDX-License-Identifier: GPL-2.0 */ 2/* 3 * fs/sysfs/sysfs.h - sysfs internal header file 4 * 5 * Copyright (c) 2001-3 Patrick Mochel 6 * Copyright (c) 2007 SUSE Linux Products GmbH 7 * Copyright (c) 2007 Tejun Heo <teheo@suse.de> 8 */ 9 10#ifndef __SYSFS_INTERNAL_H 11#define __SYSFS_INTERNAL_H 12 13#include <linux/sysfs.h> 14 15/* 16 * mount.c 17 */ 18extern struct kernfs_node *sysfs_root_kn; 19 20/* 21 * dir.c 22 */ 23extern spinlock_t sysfs_symlink_target_lock; 24 25void sysfs_warn_dup(struct kernfs_node *parent, const char *name); 26 27/* 28 * file.c 29 */ 30int sysfs_add_file_mode_ns(struct kernfs_node *parent, 31 const struct attribute *attr, umode_t amode, kuid_t uid, 32 kgid_t gid, const void *ns); 33int sysfs_add_bin_file_mode_ns(struct kernfs_node *parent, 34 const struct bin_attribute *battr, umode_t mode, 35 kuid_t uid, kgid_t gid, const void *ns); 36 37/* 38 * symlink.c 39 */ 40int sysfs_create_link_sd(struct kernfs_node *kn, struct kobject *target, 41 const char *name); 42 43#endif /* __SYSFS_INTERNAL_H */