// Skip function: __VERIFIER_error // Skip function: __VERIFIER_nondet_int // Skip function: __VERIFIER_nondet_ulong // Function: __blk_put_request // with type: void __blk_put_request(struct request_queue *, struct request *) // with return type: void void __blk_put_request(struct request_queue *arg0, struct request *arg1) { // Void type return; } // Function: __class_create // with type: struct class *__class_create(struct module *, const char *, struct lock_class_key *) // with return type: (struct class)* struct class *__class_create(struct module *arg0, const char *arg1, struct lock_class_key *arg2) { // Pointer type return ldv_malloc(sizeof(struct class)); } // Function: __copy_from_user_overflow // with type: void __copy_from_user_overflow() // with return type: void void __copy_from_user_overflow() { // Void type return; } // Function: __copy_to_user_overflow // with type: void __copy_to_user_overflow() // with return type: void void __copy_to_user_overflow() { // Void type return; } // Function: __free_pages // with type: void __free_pages(struct page *, unsigned int) // with return type: void void __free_pages(struct page *arg0, unsigned int arg1) { // Void type return; } // Function: __init_waitqueue_head // with type: void __init_waitqueue_head(wait_queue_head_t *, const char *, struct lock_class_key *) // with return type: void void __init_waitqueue_head(wait_queue_head_t *arg0, const char *arg1, struct lock_class_key *arg2) { // Void type return; } // Function: __might_fault // with type: void __might_fault(const char *, int) // with return type: void void __might_fault(const char *arg0, int arg1) { // Void type return; } // Function: __msecs_to_jiffies // with type: unsigned long int __msecs_to_jiffies(const unsigned int) // with return type: unsigned long int unsigned long __VERIFIER_nondet_ulong(void); unsigned long int __msecs_to_jiffies(const unsigned int arg0) { // Simple type return __VERIFIER_nondet_ulong(); } // Function: __mutex_init // with type: void __mutex_init(struct mutex *, const char *, struct lock_class_key *) // with return type: void void __mutex_init(struct mutex *arg0, const char *arg1, struct lock_class_key *arg2) { // Void type return; } // Function: __register_chrdev // with type: int __register_chrdev(unsigned int, unsigned int, unsigned int, const char *, const struct file_operations *) // with return type: int int __VERIFIER_nondet_int(void); int __register_chrdev(unsigned int arg0, unsigned int arg1, unsigned int arg2, const char *arg3, const struct file_operations *arg4) { // Simple type return __VERIFIER_nondet_int(); } // Function: __scsi_print_sense // with type: void __scsi_print_sense(const struct scsi_device *, const char *, const unsigned char *, int) // with return type: void void __scsi_print_sense(const struct scsi_device *arg0, const char *arg1, const unsigned char *arg2, int arg3) { // Void type return; } // Function: __unregister_chrdev // with type: void __unregister_chrdev(unsigned int, unsigned int, unsigned int, const char *) // with return type: void void __unregister_chrdev(unsigned int arg0, unsigned int arg1, unsigned int arg2, const char *arg3) { // Void type return; } // Function: _copy_from_user // with type: unsigned long int _copy_from_user(void *, const void *, unsigned int) // with return type: unsigned long int unsigned long __VERIFIER_nondet_ulong(void); unsigned long int _copy_from_user(void *arg0, const void *arg1, unsigned int arg2) { // Simple type return __VERIFIER_nondet_ulong(); } // Function: _copy_to_user // with type: unsigned long int _copy_to_user(void *, const void *, unsigned int) // with return type: unsigned long int unsigned long __VERIFIER_nondet_ulong(void); unsigned long int _copy_to_user(void *arg0, const void *arg1, unsigned int arg2) { // Simple type return __VERIFIER_nondet_ulong(); } // Function: _raw_write_lock // with type: void _raw_write_lock(rwlock_t *) // with return type: void void _raw_write_lock(rwlock_t *arg0) { // Void type return; } // Function: _raw_write_unlock // with type: void _raw_write_unlock(rwlock_t *) // with return type: void void _raw_write_unlock(rwlock_t *arg0) { // Void type return; } // Function: alloc_disk // with type: struct gendisk *alloc_disk(int) // with return type: (struct gendisk)* struct gendisk *alloc_disk(int arg0) { // Pointer type return ldv_malloc(sizeof(struct gendisk)); } // Function: alloc_pages_current // with type: struct page *alloc_pages_current(gfp_t , unsigned int) // with return type: (struct page)* struct page *alloc_pages_current(gfp_t arg0, unsigned int arg1) { // Pointer type return ldv_malloc(sizeof(struct page)); } // Function: blk_execute_rq_nowait // with type: void blk_execute_rq_nowait(struct request_queue *, struct gendisk *, struct request *, int, rq_end_io_fn *) // with return type: void void blk_execute_rq_nowait(struct request_queue *arg0, struct gendisk *arg1, struct request *arg2, int arg3, rq_end_io_fn *arg4) { // Void type return; } // Function: blk_get_request // with type: struct request *blk_get_request(struct request_queue *, int, gfp_t ) // with return type: (struct request)* struct request *blk_get_request(struct request_queue *arg0, int arg1, gfp_t arg2) { // Pointer type return ldv_malloc(sizeof(struct request)); } // Function: blk_put_request // with type: void blk_put_request(struct request *) // with return type: void void blk_put_request(struct request *arg0) { // Void type return; } // Function: blk_rq_map_kern // with type: int blk_rq_map_kern(struct request_queue *, struct request *, void *, unsigned int, gfp_t ) // with return type: int int __VERIFIER_nondet_int(void); int blk_rq_map_kern(struct request_queue *arg0, struct request *arg1, void *arg2, unsigned int arg3, gfp_t arg4) { // Simple type return __VERIFIER_nondet_int(); } // Function: blk_rq_map_user // with type: int blk_rq_map_user(struct request_queue *, struct request *, struct rq_map_data *, void *, unsigned long, gfp_t ) // with return type: int int __VERIFIER_nondet_int(void); int blk_rq_map_user(struct request_queue *arg0, struct request *arg1, struct rq_map_data *arg2, void *arg3, unsigned long arg4, gfp_t arg5) { // Simple type return __VERIFIER_nondet_int(); } // Function: blk_rq_set_block_pc // with type: void blk_rq_set_block_pc(struct request *) // with return type: void void blk_rq_set_block_pc(struct request *arg0) { // Void type return; } // Function: blk_rq_unmap_user // with type: int blk_rq_unmap_user(struct bio *) // with return type: int int __VERIFIER_nondet_int(void); int blk_rq_unmap_user(struct bio *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Skip function: calloc // Function: capable // with type: bool capable(int) // with return type: bool bool __VERIFIER_nondet_bool(void); bool capable(int arg0) { // Typedef type // Real type: _Bool // Simple type return __VERIFIER_nondet_bool(); } // Function: class_destroy // with type: void class_destroy(struct class *) // with return type: void void class_destroy(struct class *arg0) { // Void type return; } // Function: complete // with type: void complete(struct completion *) // with return type: void void complete(struct completion *arg0) { // Void type return; } // Function: device_create // with type: struct device *device_create(struct class *, struct device *, dev_t , void *, const char *, ...) // with return type: (struct device)* struct device *device_create(struct class *arg0, struct device *arg1, dev_t arg2, void *arg3, const char *arg4, ...) { // Pointer type return ldv_malloc(sizeof(struct device)); } // Function: device_create_file // with type: int device_create_file(struct device *, const struct device_attribute *) // with return type: int int __VERIFIER_nondet_int(void); int device_create_file(struct device *arg0, const struct device_attribute *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: device_destroy // with type: void device_destroy(struct class *, dev_t ) // with return type: void void device_destroy(struct class *arg0, dev_t arg1) { // Void type return; } // Function: driver_create_file // with type: int driver_create_file(struct device_driver *, const struct driver_attribute *) // with return type: int int __VERIFIER_nondet_int(void); int driver_create_file(struct device_driver *arg0, const struct driver_attribute *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: driver_remove_file // with type: void driver_remove_file(struct device_driver *, const struct driver_attribute *) // with return type: void void driver_remove_file(struct device_driver *arg0, const struct driver_attribute *arg1) { // Void type return; } // Function: driver_unregister // with type: void driver_unregister(struct device_driver *) // with return type: void void driver_unregister(struct device_driver *arg0) { // Void type return; } // Function: jiffies_to_msecs // with type: unsigned int jiffies_to_msecs(const unsigned long) // with return type: unsigned int unsigned int __VERIFIER_nondet_uint(void); unsigned int jiffies_to_msecs(const unsigned long arg0) { // Simple type return __VERIFIER_nondet_uint(); } // Skip function: kfree // Function: ldv_initialize // with type: void ldv_initialize() // with return type: void void ldv_initialize() { // Void type return; } // Skip function: malloc // Skip function: memcmp // Skip function: memcpy // Skip function: memset // Function: msleep // with type: void msleep(unsigned int) // with return type: void void msleep(unsigned int arg0) { // Void type return; } // Function: mutex_lock // with type: void mutex_lock(struct mutex *) // with return type: void void mutex_lock(struct mutex *arg0) { // Void type return; } // Function: mutex_lock_interruptible // with type: int mutex_lock_interruptible(struct mutex *) // with return type: int int __VERIFIER_nondet_int(void); int mutex_lock_interruptible(struct mutex *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: mutex_trylock // with type: int mutex_trylock(struct mutex *) // with return type: int int __VERIFIER_nondet_int(void); int mutex_trylock(struct mutex *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: mutex_unlock // with type: void mutex_unlock(struct mutex *) // with return type: void void mutex_unlock(struct mutex *arg0) { // Void type return; } // Function: noop_llseek // with type: loff_t noop_llseek(struct file *, loff_t , int) // with return type: loff_t long __VERIFIER_nondet_long(void); loff_t noop_llseek(struct file *arg0, loff_t arg1, int arg2) { // Typedef type // Real type: __kernel_loff_t // Typedef type // Real type: long long // Simple type return __VERIFIER_nondet_long(); } // Function: panic // with type: void panic(const char *, ...) // with return type: void void panic(const char *arg0, ...) { // Void type return; } // Function: printk // with type: int printk(const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int printk(const char *arg0, ...) { // Simple type return __VERIFIER_nondet_int(); } // Function: put_disk // with type: void put_disk(struct gendisk *) // with return type: void void put_disk(struct gendisk *arg0) { // Void type return; } // Function: schedule_timeout_interruptible // with type: long int schedule_timeout_interruptible(long) // with return type: long int long __VERIFIER_nondet_long(void); long int schedule_timeout_interruptible(long arg0) { // Simple type return __VERIFIER_nondet_long(); } // Function: scsi_block_when_processing_errors // with type: int scsi_block_when_processing_errors(struct scsi_device *) // with return type: int int __VERIFIER_nondet_int(void); int scsi_block_when_processing_errors(struct scsi_device *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: scsi_device_get // with type: int scsi_device_get(struct scsi_device *) // with return type: int int __VERIFIER_nondet_int(void); int scsi_device_get(struct scsi_device *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: scsi_device_put // with type: void scsi_device_put(struct scsi_device *) // with return type: void void scsi_device_put(struct scsi_device *arg0) { // Void type return; } // Function: scsi_get_sense_info_fld // with type: int scsi_get_sense_info_fld(const u8 *, int, u64 *) // with return type: int int __VERIFIER_nondet_int(void); int scsi_get_sense_info_fld(const u8 *arg0, int arg1, u64 *arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: scsi_ioctl // with type: int scsi_ioctl(struct scsi_device *, int, void *) // with return type: int int __VERIFIER_nondet_int(void); int scsi_ioctl(struct scsi_device *arg0, int arg1, void *arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: scsi_ioctl_block_when_processing_errors // with type: int scsi_ioctl_block_when_processing_errors(struct scsi_device *, int, bool ) // with return type: int int __VERIFIER_nondet_int(void); int scsi_ioctl_block_when_processing_errors(struct scsi_device *arg0, int arg1, bool arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: scsi_normalize_sense // with type: bool scsi_normalize_sense(const u8 *, int, struct scsi_sense_hdr *) // with return type: bool bool __VERIFIER_nondet_bool(void); bool scsi_normalize_sense(const u8 *arg0, int arg1, struct scsi_sense_hdr *arg2) { // Typedef type // Real type: _Bool // Simple type return __VERIFIER_nondet_bool(); } // Function: scsi_register_driver // with type: int scsi_register_driver(struct device_driver *) // with return type: int int __VERIFIER_nondet_int(void); int scsi_register_driver(struct device_driver *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: scsi_sense_desc_find // with type: const u8 *scsi_sense_desc_find(const u8 *, int, int) // with return type: (const u8 )* const u8 *scsi_sense_desc_find(const u8 *arg0, int arg1, int arg2) { // Pointer type return ldv_malloc(sizeof(u8)); } // Function: scsi_set_medium_removal // with type: int scsi_set_medium_removal(struct scsi_device *, char) // with return type: int int __VERIFIER_nondet_int(void); int scsi_set_medium_removal(struct scsi_device *arg0, char arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: sdev_prefix_printk // with type: void sdev_prefix_printk(const char *, const struct scsi_device *, const char *, const char *, ...) // with return type: void void sdev_prefix_printk(const char *arg0, const struct scsi_device *arg1, const char *arg2, const char *arg3, ...) { // Void type return; } // Function: sg_next // with type: struct scatterlist *sg_next(struct scatterlist *) // with return type: (struct scatterlist)* struct scatterlist *sg_next(struct scatterlist *arg0) { // Pointer type return ldv_malloc(sizeof(struct scatterlist)); } // Skip function: snprintf // Skip function: sprintf // Skip function: strcpy // Function: strlcpy // with type: size_t strlcpy(char *, const char *, size_t ) // with return type: size_t unsigned long __VERIFIER_nondet_ulong(void); size_t strlcpy(char *arg0, const char *arg1, size_t arg2) { // Typedef type // Real type: __kernel_size_t // Typedef type // Real type: __kernel_ulong_t // Typedef type // Real type: unsigned long // Simple type return __VERIFIER_nondet_ulong(); } // Skip function: strlen // Skip function: strncmp // Function: vfree // with type: void vfree(const void *) // with return type: void void vfree(const void *arg0) { // Void type return; } // Function: vmalloc // with type: void *vmalloc(unsigned long) // with return type: (void)* void *vmalloc(unsigned long arg0) { // Pointer type return ldv_malloc(arg0); } // Function: wait_for_completion // with type: void wait_for_completion(struct completion *) // with return type: void void wait_for_completion(struct completion *arg0) { // Void type return; }