mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 10:40:15 +02:00 
			
		
		
		
	fs: RWF_NOWAIT should imply IOCB_NOIO
With the change allowing read-ahead for IOCB_NOWAIT, we changed the
RWF_NOWAIT semantics of only doing cached reads. Since we know have
IOCB_NOIO to manage that specific side of it, just make RWF_NOWAIT
imply IOCB_NOIO as well to restore the previous behavior.
Fixes: 2e85abf053 ("mm: allow read-ahead with IOCB_NOWAIT set")
Reported-by: Dave Chinner <david@fromorbit.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
			
			
This commit is contained in:
		
							parent
							
								
									51a4cc112c
								
							
						
					
					
						commit
						efa8480a83
					
				
					 1 changed files with 1 additions and 1 deletions
				
			
		| 
						 | 
					@ -3293,7 +3293,7 @@ static inline int kiocb_set_rw_flags(struct kiocb *ki, rwf_t flags)
 | 
				
			||||||
	if (flags & RWF_NOWAIT) {
 | 
						if (flags & RWF_NOWAIT) {
 | 
				
			||||||
		if (!(ki->ki_filp->f_mode & FMODE_NOWAIT))
 | 
							if (!(ki->ki_filp->f_mode & FMODE_NOWAIT))
 | 
				
			||||||
			return -EOPNOTSUPP;
 | 
								return -EOPNOTSUPP;
 | 
				
			||||||
		kiocb_flags |= IOCB_NOWAIT;
 | 
							kiocb_flags |= IOCB_NOWAIT | IOCB_NOIO;
 | 
				
			||||||
	}
 | 
						}
 | 
				
			||||||
	if (flags & RWF_HIPRI)
 | 
						if (flags & RWF_HIPRI)
 | 
				
			||||||
		kiocb_flags |= IOCB_HIPRI;
 | 
							kiocb_flags |= IOCB_HIPRI;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in a new issue