// Skip function: __VERIFIER_error // Skip function: __VERIFIER_nondet_int // Function: __const_udelay // with type: void __const_udelay(unsigned long) // with return type: void void __const_udelay(unsigned long arg0) { // Void type return; } // Function: __init_work // with type: void __init_work(struct work_struct *, int) // with return type: void void __init_work(struct work_struct *arg0, int arg1) { // Void type return; } extern _Bool __VERIFIER_nondet_bool(void) ; extern void *malloc(size_t) ; void *ldv_malloc(size_t size ) { if(__VERIFIER_nondet_bool()) return 0; return malloc(size); } // Function: __kmalloc // with type: void *__kmalloc(size_t , gfp_t ) // with return type: (void)* void *__kmalloc(size_t arg0, gfp_t arg1) { // Pointer type return ldv_malloc(arg0); } // Function: __list_add // with type: void __list_add(struct list_head *, struct list_head *, struct list_head *) // with return type: void void __list_add(struct list_head *arg0, struct list_head *arg1, struct list_head *arg2) { // Void type return; } // Function: __netif_schedule // with type: void __netif_schedule(struct Qdisc *) // with return type: void void __netif_schedule(struct Qdisc *arg0) { // Void type return; } // Function: __pci_register_driver // with type: int __pci_register_driver(struct pci_driver *, struct module *, const char *) // with return type: int int __VERIFIER_nondet_int(void); int __pci_register_driver(struct pci_driver *arg0, struct module *arg1, const char *arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: __phys_addr // with type: unsigned long int __phys_addr(unsigned long) // with return type: unsigned long int unsigned long __VERIFIER_nondet_ulong(void); unsigned long int __phys_addr(unsigned long arg0) { // Simple type return __VERIFIER_nondet_ulong(); } // Function: __raw_spin_lock_init // with type: void __raw_spin_lock_init(raw_spinlock_t *, const char *, struct lock_class_key *) // with return type: void void __raw_spin_lock_init(raw_spinlock_t *arg0, const char *arg1, struct lock_class_key *arg2) { // Void type return; } // Function: _dev_info // with type: int _dev_info(const struct device *, const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int _dev_info(const struct device *arg0, const char *arg1, ...) { // Simple type return __VERIFIER_nondet_int(); } // Function: _raw_spin_lock // with type: void _raw_spin_lock(raw_spinlock_t *) // with return type: void void _raw_spin_lock(raw_spinlock_t *arg0) { // Void type return; } // Function: _raw_spin_lock_irqsave // with type: unsigned long int _raw_spin_lock_irqsave(raw_spinlock_t *) // with return type: unsigned long int unsigned long __VERIFIER_nondet_ulong(void); unsigned long int _raw_spin_lock_irqsave(raw_spinlock_t *arg0) { // Simple type return __VERIFIER_nondet_ulong(); } // Function: _raw_spin_unlock // with type: void _raw_spin_unlock(raw_spinlock_t *) // with return type: void void _raw_spin_unlock(raw_spinlock_t *arg0) { // Void type return; } // Function: _raw_spin_unlock_irqrestore // with type: void _raw_spin_unlock_irqrestore(raw_spinlock_t *, unsigned long) // with return type: void void _raw_spin_unlock_irqrestore(raw_spinlock_t *arg0, unsigned long arg1) { // Void type return; } // Function: add_timer // with type: void add_timer(struct timer_list *) // with return type: void void add_timer(struct timer_list *arg0) { // Void type return; } // Function: alloc_etherdev_mqs // with type: struct net_device *alloc_etherdev_mqs(int, unsigned int, unsigned int) // with return type: (struct net_device)* struct net_device *alloc_etherdev_mqs(int arg0, unsigned int arg1, unsigned int arg2) { // Pointer type return ldv_malloc(sizeof(struct net_device)); } // Function: bitrev32 // with type: u32 bitrev32(u32 ) // with return type: u32 unsigned int __VERIFIER_nondet_uint(void); u32 bitrev32(u32 arg0) { // Typedef type // Real type: unsigned int // Simple type return __VERIFIER_nondet_uint(); } // 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: crc32_le // with type: u32 crc32_le(u32 , const unsigned char *, size_t ) // with return type: u32 unsigned int __VERIFIER_nondet_uint(void); u32 crc32_le(u32 arg0, const unsigned char *arg1, size_t arg2) { // Typedef type // Real type: unsigned int // Simple type return __VERIFIER_nondet_uint(); } // Function: debug_dma_alloc_coherent // with type: void debug_dma_alloc_coherent(struct device *, size_t , dma_addr_t , void *) // with return type: void void debug_dma_alloc_coherent(struct device *arg0, size_t arg1, dma_addr_t arg2, void *arg3) { // Void type return; } // Function: debug_dma_free_coherent // with type: void debug_dma_free_coherent(struct device *, size_t , void *, dma_addr_t ) // with return type: void void debug_dma_free_coherent(struct device *arg0, size_t arg1, void *arg2, dma_addr_t arg3) { // Void type return; } // Function: debug_dma_map_page // with type: void debug_dma_map_page(struct device *, struct page *, size_t , size_t , int, dma_addr_t , bool ) // with return type: void void debug_dma_map_page(struct device *arg0, struct page *arg1, size_t arg2, size_t arg3, int arg4, dma_addr_t arg5, bool arg6) { // Void type return; } // Function: debug_dma_unmap_page // with type: void debug_dma_unmap_page(struct device *, dma_addr_t , size_t , int, bool ) // with return type: void void debug_dma_unmap_page(struct device *arg0, dma_addr_t arg1, size_t arg2, int arg3, bool arg4) { // Void type return; } // Function: del_timer_sync // with type: int del_timer_sync(struct timer_list *) // with return type: int int __VERIFIER_nondet_int(void); int del_timer_sync(struct timer_list *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: dev_alloc_skb // with type: struct sk_buff *dev_alloc_skb(unsigned int) // with return type: (struct sk_buff)* struct sk_buff *dev_alloc_skb(unsigned int arg0) { // Pointer type return ldv_malloc(sizeof(struct sk_buff)); } // Function: dev_err // with type: int dev_err(const struct device *, const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int dev_err(const struct device *arg0, const char *arg1, ...) { // Simple type return __VERIFIER_nondet_int(); } // Function: dev_get_drvdata // with type: void *dev_get_drvdata(const struct device *) // with return type: (void)* void *dev_get_drvdata(const struct device *arg0) { // Pointer type return ldv_malloc(0UL); } // Function: dev_kfree_skb_any // with type: void dev_kfree_skb_any(struct sk_buff *) // with return type: void void dev_kfree_skb_any(struct sk_buff *arg0) { // Void type return; } // Function: dev_set_drvdata // with type: int dev_set_drvdata(struct device *, void *) // with return type: int int __VERIFIER_nondet_int(void); int dev_set_drvdata(struct device *arg0, void *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: dev_warn // with type: int dev_warn(const struct device *, const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int dev_warn(const struct device *arg0, const char *arg1, ...) { // Simple type return __VERIFIER_nondet_int(); } // Function: dma_set_mask // with type: int dma_set_mask(struct device *, u64 ) // with return type: int int __VERIFIER_nondet_int(void); int dma_set_mask(struct device *arg0, u64 arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: dma_supported // with type: int dma_supported(struct device *, u64 ) // with return type: int int __VERIFIER_nondet_int(void); int dma_supported(struct device *arg0, u64 arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: eth_type_trans // with type: __be16 eth_type_trans(struct sk_buff *, struct net_device *) // with return type: __be16 unsigned short __VERIFIER_nondet_ushort(void); __be16 eth_type_trans(struct sk_buff *arg0, struct net_device *arg1) { // Typedef type // Real type: __u16 // Typedef type // Real type: unsigned short // Simple type return __VERIFIER_nondet_ushort(); } // Function: free_irq // with type: void free_irq(unsigned int, void *) // with return type: void void free_irq(unsigned int arg0, void *arg1) { // Void type return; } // Function: free_netdev // with type: void free_netdev(struct net_device *) // with return type: void void free_netdev(struct net_device *arg0) { // Void type return; } // Function: get_random_bytes // with type: void get_random_bytes(void *, int) // with return type: void void get_random_bytes(void *arg0, int arg1) { // Void type return; } // Function: init_timer_key // with type: void init_timer_key(struct timer_list *, const char *, struct lock_class_key *) // with return type: void void init_timer_key(struct timer_list *arg0, const char *arg1, struct lock_class_key *arg2) { // Void type return; } // Function: iounmap // with type: void iounmap(volatile void *) // with return type: void void iounmap(volatile void *arg0) { // Void type return; } // Skip function: kfree // Function: kmem_cache_alloc // with type: void *kmem_cache_alloc(struct kmem_cache *, gfp_t ) // with return type: (void)* void *kmem_cache_alloc(struct kmem_cache *arg0, gfp_t arg1) { // Pointer type return ldv_malloc(0UL); } // Function: kmem_cache_create // with type: struct kmem_cache *kmem_cache_create(const char *, size_t , size_t , unsigned long, void (*)(void *)) // with return type: (struct kmem_cache)* struct kmem_cache *kmem_cache_create(const char *arg0, size_t arg1, size_t arg2, unsigned long arg3, void (*arg4)(void *)) { // Pointer type return ldv_malloc(sizeof(struct kmem_cache)); } // Function: kmem_cache_destroy // with type: void kmem_cache_destroy(struct kmem_cache *) // with return type: void void kmem_cache_destroy(struct kmem_cache *arg0) { // Void type return; } // Function: kmem_cache_free // with type: void kmem_cache_free(struct kmem_cache *, void *) // with return type: void void kmem_cache_free(struct kmem_cache *arg0, void *arg1) { // Void type return; } // Function: ldv_check_return_value // with type: void ldv_check_return_value(int) // with return type: void void ldv_check_return_value(int arg0) { // Void type return; } // Function: ldv_initialize // with type: void ldv_initialize() // with return type: void void ldv_initialize() { // Void type return; } // Function: ldv_undefined_int // with type: int ldv_undefined_int() // with return type: int int __VERIFIER_nondet_int(void); int ldv_undefined_int() { // Simple type return __VERIFIER_nondet_int(); } // Function: list_del // with type: void list_del(struct list_head *) // with return type: void void list_del(struct list_head *arg0) { // Void type return; } // Function: lockdep_init_map // with type: void lockdep_init_map(struct lockdep_map *, const char *, struct lock_class_key *, int) // with return type: void void lockdep_init_map(struct lockdep_map *arg0, const char *arg1, struct lock_class_key *arg2, int arg3) { // Void type return; } // Skip function: memcmp // Skip function: memmove // Skip function: memset // Function: mod_timer // with type: int mod_timer(struct timer_list *, unsigned long) // with return type: int int __VERIFIER_nondet_int(void); int mod_timer(struct timer_list *arg0, unsigned long arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: netif_carrier_off // with type: void netif_carrier_off(struct net_device *) // with return type: void void netif_carrier_off(struct net_device *arg0) { // Void type return; } // Function: netif_carrier_on // with type: void netif_carrier_on(struct net_device *) // with return type: void void netif_carrier_on(struct net_device *arg0) { // Void type return; } // Function: netif_rx // with type: int netif_rx(struct sk_buff *) // with return type: int int __VERIFIER_nondet_int(void); int netif_rx(struct sk_buff *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: netpoll_trap // with type: int netpoll_trap() // with return type: int int __VERIFIER_nondet_int(void); int netpoll_trap() { // Simple type return __VERIFIER_nondet_int(); } // Function: pci_bus_read_config_byte // with type: int pci_bus_read_config_byte(struct pci_bus *, unsigned int, int, u8 *) // with return type: int int __VERIFIER_nondet_int(void); int pci_bus_read_config_byte(struct pci_bus *arg0, unsigned int arg1, int arg2, u8 *arg3) { // Simple type return __VERIFIER_nondet_int(); } // Function: pci_bus_read_config_dword // with type: int pci_bus_read_config_dword(struct pci_bus *, unsigned int, int, u32 *) // with return type: int int __VERIFIER_nondet_int(void); int pci_bus_read_config_dword(struct pci_bus *arg0, unsigned int arg1, int arg2, u32 *arg3) { // Simple type return __VERIFIER_nondet_int(); } // Function: pci_bus_write_config_byte // with type: int pci_bus_write_config_byte(struct pci_bus *, unsigned int, int, u8 ) // with return type: int int __VERIFIER_nondet_int(void); int pci_bus_write_config_byte(struct pci_bus *arg0, unsigned int arg1, int arg2, u8 arg3) { // Simple type return __VERIFIER_nondet_int(); } // Function: pci_bus_write_config_dword // with type: int pci_bus_write_config_dword(struct pci_bus *, unsigned int, int, u32 ) // with return type: int int __VERIFIER_nondet_int(void); int pci_bus_write_config_dword(struct pci_bus *arg0, unsigned int arg1, int arg2, u32 arg3) { // Simple type return __VERIFIER_nondet_int(); } // Function: pci_bus_write_config_word // with type: int pci_bus_write_config_word(struct pci_bus *, unsigned int, int, u16 ) // with return type: int int __VERIFIER_nondet_int(void); int pci_bus_write_config_word(struct pci_bus *arg0, unsigned int arg1, int arg2, u16 arg3) { // Simple type return __VERIFIER_nondet_int(); } // Function: pci_dev_get // with type: struct pci_dev *pci_dev_get(struct pci_dev *) // with return type: (struct pci_dev)* struct pci_dev *pci_dev_get(struct pci_dev *arg0) { // Pointer type return ldv_malloc(sizeof(struct pci_dev)); } // Function: pci_dev_put // with type: void pci_dev_put(struct pci_dev *) // with return type: void void pci_dev_put(struct pci_dev *arg0) { // Void type return; } // Function: pci_disable_device // with type: void pci_disable_device(struct pci_dev *) // with return type: void void pci_disable_device(struct pci_dev *arg0) { // Void type return; } // Function: pci_enable_device // with type: int pci_enable_device(struct pci_dev *) // with return type: int int __VERIFIER_nondet_int(void); int pci_enable_device(struct pci_dev *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: pci_find_capability // with type: int pci_find_capability(struct pci_dev *, int) // with return type: int int __VERIFIER_nondet_int(void); int pci_find_capability(struct pci_dev *arg0, int arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: pci_ioremap_bar // with type: void *pci_ioremap_bar(struct pci_dev *, int) // with return type: (void)* void *pci_ioremap_bar(struct pci_dev *arg0, int arg1) { // Pointer type return ldv_malloc(0UL); } // Function: pci_release_regions // with type: void pci_release_regions(struct pci_dev *) // with return type: void void pci_release_regions(struct pci_dev *arg0) { // Void type return; } // Function: pci_request_regions // with type: int pci_request_regions(struct pci_dev *, const char *) // with return type: int int __VERIFIER_nondet_int(void); int pci_request_regions(struct pci_dev *arg0, const char *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: pci_save_state // with type: int pci_save_state(struct pci_dev *) // with return type: int int __VERIFIER_nondet_int(void); int pci_save_state(struct pci_dev *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: pci_set_master // with type: void pci_set_master(struct pci_dev *) // with return type: void void pci_set_master(struct pci_dev *arg0) { // Void type return; } // Function: pci_unregister_driver // with type: void pci_unregister_driver(struct pci_driver *) // with return type: void void pci_unregister_driver(struct pci_driver *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: register_netdev // with type: int register_netdev(struct net_device *) // with return type: int int __VERIFIER_nondet_int(void); int register_netdev(struct net_device *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: request_threaded_irq // with type: int request_threaded_irq(unsigned int, irqreturn_t (*)(int, void *), irqreturn_t (*)(int, void *), unsigned long, const char *, void *) // with return type: int int __VERIFIER_nondet_int(void); int request_threaded_irq(unsigned int arg0, irqreturn_t (*arg1)(int, void *), irqreturn_t (*arg2)(int, void *), unsigned long arg3, const char *arg4, void *arg5) { // Simple type return __VERIFIER_nondet_int(); } // Function: schedule_work // with type: int schedule_work(struct work_struct *) // with return type: int int __VERIFIER_nondet_int(void); int schedule_work(struct work_struct *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: skb_put // with type: unsigned char *skb_put(struct sk_buff *, unsigned int) // with return type: (unsigned char)* unsigned char *skb_put(struct sk_buff *arg0, unsigned int arg1) { unsigned char *ret_val = arg0->data + arg0->tail; // a more precise implementation of skb_put would actually re-allocate memory // here arg0->tail += arg1; // Pointer type return ret_val; } // Function: unregister_netdev // with type: void unregister_netdev(struct net_device *) // with return type: void void unregister_netdev(struct net_device *arg0) { // Void type return; } // Function: warn_slowpath_null // with type: void warn_slowpath_null(const char *, const int) // with return type: void void warn_slowpath_null(const char *arg0, const int arg1) { // Void type return; }