aboutsummaryrefslogtreecommitdiffstats
path: root/fs/sysfs/inode.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/sysfs/inode.c')
-rw-r--r--fs/sysfs/inode.c12
1 files changed, 0 insertions, 12 deletions
diff --git a/fs/sysfs/inode.c b/fs/sysfs/inode.c
index 1ffd5559926f..9f783d4e4b51 100644
--- a/fs/sysfs/inode.c
+++ b/fs/sysfs/inode.c
@@ -205,17 +205,6 @@ static inline void set_inode_attr(struct inode * inode, struct iattr * iattr)
205 inode->i_ctime = iattr->ia_ctime; 205 inode->i_ctime = iattr->ia_ctime;
206} 206}
207 207
208
209/*
210 * sysfs has a different i_mutex lock order behavior for i_mutex than other
211 * filesystems; sysfs i_mutex is called in many places with subsystem locks
212 * held. At the same time, many of the VFS locking rules do not apply to
213 * sysfs at all (cross directory rename for example). To untangle this mess
214 * (which gives false positives in lockdep), we're giving sysfs inodes their
215 * own class for i_mutex.
216 */
217static struct lock_class_key sysfs_inode_imutex_key;
218
219static int sysfs_count_nlink(struct sysfs_dirent *sd) 208static int sysfs_count_nlink(struct sysfs_dirent *sd)
220{ 209{
221 struct sysfs_dirent *child; 210 struct sysfs_dirent *child;
@@ -268,7 +257,6 @@ static void sysfs_init_inode(struct sysfs_dirent *sd, struct inode *inode)
268 inode->i_mapping->a_ops = &sysfs_aops; 257 inode->i_mapping->a_ops = &sysfs_aops;
269 inode->i_mapping->backing_dev_info = &sysfs_backing_dev_info; 258 inode->i_mapping->backing_dev_info = &sysfs_backing_dev_info;
270 inode->i_op = &sysfs_inode_operations; 259 inode->i_op = &sysfs_inode_operations;
271 lockdep_set_class(&inode->i_mutex, &sysfs_inode_imutex_key);
272 260
273 set_default_inode_attr(inode, sd->s_mode); 261 set_default_inode_attr(inode, sd->s_mode);
274 sysfs_refresh_inode(sd, inode); 262 sysfs_refresh_inode(sd, inode);