| .. | .. | 
|---|
| 43 | 43 |   */ | 
|---|
| 44 | 44 |  struct affs_inode_info { | 
|---|
| 45 | 45 |  	atomic_t i_opencnt; | 
|---|
| 46 |  | -	struct semaphore i_link_lock;		/* Protects internal inode access. */  | 
|---|
| 47 |  | -	struct semaphore i_ext_lock;		/* Protects internal inode access. */  | 
|---|
 | 46 | +	struct mutex i_link_lock;		/* Protects internal inode access. */  | 
|---|
 | 47 | +	struct mutex i_ext_lock;		/* Protects internal inode access. */  | 
|---|
| 48 | 48 |  #define i_hash_lock i_ext_lock | 
|---|
| 49 | 49 |  	u32	 i_blkcnt;			/* block count */ | 
|---|
| 50 | 50 |  	u32	 i_extcnt;			/* extended block count */ | 
|---|
| .. | .. | 
|---|
| 293 | 293 |  static inline void | 
|---|
| 294 | 294 |  affs_lock_link(struct inode *inode) | 
|---|
| 295 | 295 |  { | 
|---|
| 296 |  | -	down(&AFFS_I(inode)->i_link_lock);  | 
|---|
 | 296 | +	mutex_lock(&AFFS_I(inode)->i_link_lock);  | 
|---|
| 297 | 297 |  } | 
|---|
| 298 | 298 |  static inline void | 
|---|
| 299 | 299 |  affs_unlock_link(struct inode *inode) | 
|---|
| 300 | 300 |  { | 
|---|
| 301 |  | -	up(&AFFS_I(inode)->i_link_lock);  | 
|---|
 | 301 | +	mutex_unlock(&AFFS_I(inode)->i_link_lock);  | 
|---|
| 302 | 302 |  } | 
|---|
| 303 | 303 |  static inline void | 
|---|
| 304 | 304 |  affs_lock_dir(struct inode *inode) | 
|---|
| 305 | 305 |  { | 
|---|
| 306 |  | -	down(&AFFS_I(inode)->i_hash_lock);  | 
|---|
 | 306 | +	mutex_lock_nested(&AFFS_I(inode)->i_hash_lock, SINGLE_DEPTH_NESTING);  | 
|---|
| 307 | 307 |  } | 
|---|
| 308 | 308 |  static inline void | 
|---|
| 309 | 309 |  affs_unlock_dir(struct inode *inode) | 
|---|
| 310 | 310 |  { | 
|---|
| 311 |  | -	up(&AFFS_I(inode)->i_hash_lock);  | 
|---|
 | 311 | +	mutex_unlock(&AFFS_I(inode)->i_hash_lock);  | 
|---|
| 312 | 312 |  } | 
|---|
| 313 | 313 |  static inline void | 
|---|
| 314 | 314 |  affs_lock_ext(struct inode *inode) | 
|---|
| 315 | 315 |  { | 
|---|
| 316 |  | -	down(&AFFS_I(inode)->i_ext_lock);  | 
|---|
 | 316 | +	mutex_lock(&AFFS_I(inode)->i_ext_lock);  | 
|---|
| 317 | 317 |  } | 
|---|
| 318 | 318 |  static inline void | 
|---|
| 319 | 319 |  affs_unlock_ext(struct inode *inode) | 
|---|
| 320 | 320 |  { | 
|---|
| 321 |  | -	up(&AFFS_I(inode)->i_ext_lock);  | 
|---|
 | 321 | +	mutex_unlock(&AFFS_I(inode)->i_ext_lock);  | 
|---|
| 322 | 322 |  } | 
|---|