forked from mirrors/linux
		
	Move enum rw_hint into a new header file to prepare for using this data type in the block layer. Add the attribute __packed to reduce the space occupied by instances of this data type from four bytes to one byte. Change the data type of i_write_hint from u8 into enum rw_hint. Reviewed-by: Christoph Hellwig <hch@lst.de> Acked-by: Chao Yu <chao@kernel.org> # for the F2FS part Cc: Alexander Viro <viro@zeniv.linux.org.uk> Cc: Christian Brauner <brauner@kernel.org> Cc: Jan Kara <jack@suse.cz> Cc: Christoph Hellwig <hch@lst.de> Signed-off-by: Bart Van Assche <bvanassche@acm.org> Link: https://lore.kernel.org/r/20240202203926.2478590-5-bvanassche@acm.org Signed-off-by: Christian Brauner <brauner@kernel.org>
		
			
				
	
	
		
			24 lines
		
	
	
	
		
			702 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			24 lines
		
	
	
	
		
			702 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 */
 | |
| #ifndef _LINUX_RW_HINT_H
 | |
| #define _LINUX_RW_HINT_H
 | |
| 
 | |
| #include <linux/build_bug.h>
 | |
| #include <linux/compiler_attributes.h>
 | |
| #include <uapi/linux/fcntl.h>
 | |
| 
 | |
| /* Block storage write lifetime hint values. */
 | |
| enum rw_hint {
 | |
| 	WRITE_LIFE_NOT_SET	= RWH_WRITE_LIFE_NOT_SET,
 | |
| 	WRITE_LIFE_NONE		= RWH_WRITE_LIFE_NONE,
 | |
| 	WRITE_LIFE_SHORT	= RWH_WRITE_LIFE_SHORT,
 | |
| 	WRITE_LIFE_MEDIUM	= RWH_WRITE_LIFE_MEDIUM,
 | |
| 	WRITE_LIFE_LONG		= RWH_WRITE_LIFE_LONG,
 | |
| 	WRITE_LIFE_EXTREME	= RWH_WRITE_LIFE_EXTREME,
 | |
| } __packed;
 | |
| 
 | |
| /* Sparse ignores __packed annotations on enums, hence the #ifndef below. */
 | |
| #ifndef __CHECKER__
 | |
| static_assert(sizeof(enum rw_hint) == 1);
 | |
| #endif
 | |
| 
 | |
| #endif /* _LINUX_RW_HINT_H */
 |