 e7db2d3588
			
		
	
	
		e7db2d3588
		
	
	
	
	
		
			
			This driver can be loaded as an overlay on top of a real block device, and can then be used to generate block-level failures for certain transfer requests. Specifically, a rule-based system allows the user to introduce (overt and silent) data corruption and errors. It exposes itself through /dev/fbd, and a file system can be mounted on top of it. The new fbdctl(8) tool can be used to control the driver; see ``man fbdctl'' for details. It also comes with a test set, located in test/fbdtest.
		
			
				
	
	
		
			13 lines
		
	
	
		
			408 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			13 lines
		
	
	
		
			408 B
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef _FBD_ACTION_H
 | |
| #define _FBD_ACTION_H
 | |
| 
 | |
| extern int action_mask(struct fbd_rule *rule);
 | |
| 
 | |
| extern void action_pre_hook(struct fbd_rule *rule, iovec_t *iov,
 | |
| 	unsigned *count, size_t *size, u64_t *pos);
 | |
| extern void action_io_hook(struct fbd_rule *rule, char *buf, size_t size,
 | |
| 	u64_t pos, int flag);
 | |
| extern void action_post_hook(struct fbd_rule *rule, size_t osize, int *result);
 | |
| 
 | |
| #endif /* _FBD_ACTION_H */
 |