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