mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	udf: Properly detect stale inodes
NFS can easily ask for inodes that are already deleted. Currently UDF happily returns such inodes which is a bug. Return -ESTALE if udf_read_inode() is asked to read deleted inode. Signed-off-by: Jan Kara <jack@suse.cz>
This commit is contained in:
		
							parent
							
								
									6d3d5e860a
								
							
						
					
					
						commit
						4071b91362
					
				
					 1 changed files with 4 additions and 2 deletions
				
			
		| 
						 | 
					@ -1435,8 +1435,10 @@ static int udf_read_inode(struct inode *inode)
 | 
				
			||||||
	read_unlock(&sbi->s_cred_lock);
 | 
						read_unlock(&sbi->s_cred_lock);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	link_count = le16_to_cpu(fe->fileLinkCount);
 | 
						link_count = le16_to_cpu(fe->fileLinkCount);
 | 
				
			||||||
	if (!link_count)
 | 
						if (!link_count) {
 | 
				
			||||||
		link_count = 1;
 | 
							ret = -ESTALE;
 | 
				
			||||||
 | 
							goto out;
 | 
				
			||||||
 | 
						}
 | 
				
			||||||
	set_nlink(inode, link_count);
 | 
						set_nlink(inode, link_count);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
	inode->i_size = le64_to_cpu(fe->informationLength);
 | 
						inode->i_size = le64_to_cpu(fe->informationLength);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue