// Skip function: __VERIFIER_error // Skip function: __VERIFIER_nondet_int // Skip function: __VERIFIER_nondet_ulong // Function: __devm_request_region // with type: struct resource *__devm_request_region(struct device *, struct resource *, resource_size_t , resource_size_t , const char *) // with return type: (struct resource)* struct resource *__devm_request_region(struct device *arg0, struct resource *arg1, resource_size_t arg2, resource_size_t arg3, const char *arg4) { // Pointer type return ldv_malloc(sizeof(struct resource)); } // Function: __dynamic_dev_dbg // with type: int __dynamic_dev_dbg(struct _ddebug *, const struct device *, const char *, ...) // with return type: int int __VERIFIER_nondet_int(void); int __dynamic_dev_dbg(struct _ddebug *arg0, const struct device *arg1, const char *arg2, ...) { // Simple type return __VERIFIER_nondet_int(); } // Function: __local_bh_disable_ip // with type: void __local_bh_disable_ip(unsigned long, unsigned int) // with return type: void void __local_bh_disable_ip(unsigned long arg0, unsigned int arg1) { // Void type return; } // Function: __local_bh_enable_ip // with type: void __local_bh_enable_ip(unsigned long, unsigned int) // with return type: void void __local_bh_enable_ip(unsigned long arg0, unsigned int arg1) { // Void type return; } // Function: __might_sleep // with type: void __might_sleep(const char *, int, int) // with return type: void void __might_sleep(const char *arg0, int arg1, int arg2) { // Void type return; } // Function: __napi_schedule // with type: void __napi_schedule(struct napi_struct *) // with return type: void void __napi_schedule(struct napi_struct *arg0) { // Void type return; } // Function: __netdev_alloc_skb // with type: struct sk_buff *__netdev_alloc_skb(struct net_device *, unsigned int, gfp_t ) // with return type: (struct sk_buff)* struct sk_buff *__netdev_alloc_skb(struct net_device *arg0, unsigned int arg1, gfp_t arg2) { // Pointer type struct sk_buff *skb = ldv_malloc(sizeof(struct sk_buff)); if(skb) { skb->dev = arg0; skb->head = ldv_malloc(arg1); skb->data = skb->head; skb->tail = 0; } return skb; } // Function: __netif_schedule // with type: void __netif_schedule(struct Qdisc *) // with return type: void void __netif_schedule(struct Qdisc *arg0) { // Void type return; } // Function: __platform_driver_register // with type: int __platform_driver_register(struct platform_driver *, struct module *) // with return type: int int __VERIFIER_nondet_int(void); int __platform_driver_register(struct platform_driver *arg0, struct module *arg1) { // Simple type return __VERIFIER_nondet_int(); } // 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_irq // with type: void _raw_spin_lock_irq(raw_spinlock_t *) // with return type: void void _raw_spin_lock_irq(raw_spinlock_t *arg0) { // Void type return; } // 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_irq // with type: void _raw_spin_unlock_irq(raw_spinlock_t *) // with return type: void void _raw_spin_unlock_irq(raw_spinlock_t *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(); } // Skip function: calloc // Function: clk_get_rate // with type: unsigned long int clk_get_rate(struct clk *) // with return type: unsigned long int unsigned long __VERIFIER_nondet_ulong(void); unsigned long int clk_get_rate(struct clk *arg0) { // Simple type return __VERIFIER_nondet_ulong(); } // Function: consume_skb // with type: void consume_skb(struct sk_buff *) // with return type: void void consume_skb(struct sk_buff *arg0) { // Void type return; } // 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: 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_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: devm_clk_get // with type: struct clk *devm_clk_get(struct device *, const char *) // with return type: (struct clk)* struct clk *devm_clk_get(struct device *arg0, const char *arg1) { // Pointer type return ldv_malloc(0UL); } // Function: devm_ioremap_nocache // with type: void *devm_ioremap_nocache(struct device *, resource_size_t , unsigned long) // with return type: (void)* void *devm_ioremap_nocache(struct device *arg0, resource_size_t arg1, unsigned long arg2) { // Pointer type return ldv_malloc(0UL); } // Function: devm_kmalloc // with type: void *devm_kmalloc(struct device *, size_t , gfp_t ) // with return type: (void)* void *devm_kmalloc(struct device *arg0, size_t arg1, gfp_t arg2) { // Pointer type return ldv_malloc(0UL); } // Function: dmam_alloc_coherent // with type: void *dmam_alloc_coherent(struct device *, size_t , dma_addr_t *, gfp_t ) // with return type: (void)* void *dmam_alloc_coherent(struct device *arg0, size_t arg1, dma_addr_t *arg2, gfp_t arg3) { // Pointer type return ldv_malloc(0UL); } // 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: ether_setup // with type: void ether_setup(struct net_device *) // with return type: void void ether_setup(struct net_device *arg0) { // Void type return; } // Function: ethtool_op_get_link // with type: u32 ethtool_op_get_link(struct net_device *) // with return type: u32 unsigned int __VERIFIER_nondet_uint(void); u32 ethtool_op_get_link(struct net_device *arg0) { // Typedef type // Real type: unsigned int // Simple type return __VERIFIER_nondet_uint(); } // Function: ethtool_op_get_ts_info // with type: int ethtool_op_get_ts_info(struct net_device *, struct ethtool_ts_info *) // with return type: int int __VERIFIER_nondet_int(void); int ethtool_op_get_ts_info(struct net_device *arg0, struct ethtool_ts_info *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Skip function: free // 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: ioread32 // with type: unsigned int ioread32(void *) // with return type: unsigned int unsigned int __VERIFIER_nondet_uint(void); unsigned int ioread32(void *arg0) { // Simple type return __VERIFIER_nondet_uint(); } // Function: iowrite32 // with type: void iowrite32(u32 , void *) // with return type: void void iowrite32(u32 arg0, void *arg1) { // Void type return; } // Skip function: kfree // Function: ldv_after_alloc // with type: void ldv_after_alloc(void *) // with return type: void void ldv_after_alloc(void *arg0) { // Void type return; } // Function: ldv_assert // with type: void ldv_assert(const char *, int) // with return type: void void ldv_assert(const char *arg0, int arg1) { // Void type return; } // Function: ldv_check_alloc_flags // with type: void ldv_check_alloc_flags(gfp_t ) // with return type: void void ldv_check_alloc_flags(gfp_t arg0) { // Void type return; } // Function: ldv_initialize // with type: void ldv_initialize() // with return type: void void ldv_initialize() { // Void type return; } // Function: ldv_pre_probe // with type: void ldv_pre_probe() // with return type: void void ldv_pre_probe() { // Void type return; } // Function: ldv_pre_register_netdev // with type: int ldv_pre_register_netdev() // with return type: int int __VERIFIER_nondet_int(void); int ldv_pre_register_netdev() { // Simple type return __VERIFIER_nondet_int(); } // Function: ldv_switch_to_interrupt_context // with type: void ldv_switch_to_interrupt_context() // with return type: void void ldv_switch_to_interrupt_context() { // Void type return; } // Function: ldv_switch_to_process_context // with type: void ldv_switch_to_process_context() // with return type: void void ldv_switch_to_process_context() { // Void type return; } // Skip function: malloc // Function: mdiobus_alloc_size // with type: struct mii_bus *mdiobus_alloc_size(size_t ) // with return type: (struct mii_bus)* struct mii_bus *mdiobus_alloc_size(size_t arg0) { // Pointer type return ldv_malloc(sizeof(struct mii_bus)); } // Function: mdiobus_free // with type: void mdiobus_free(struct mii_bus *) // with return type: void void mdiobus_free(struct mii_bus *arg0) { // Void type return; } // Function: mdiobus_register // with type: int mdiobus_register(struct mii_bus *) // with return type: int int __VERIFIER_nondet_int(void); int mdiobus_register(struct mii_bus *arg0) { // Simple type return __VERIFIER_nondet_int(); } // Function: mdiobus_unregister // with type: void mdiobus_unregister(struct mii_bus *) // with return type: void void mdiobus_unregister(struct mii_bus *arg0) { // Void type return; } // 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: napi_complete // with type: void napi_complete(struct napi_struct *) // with return type: void void napi_complete(struct napi_struct *arg0) { // Void type return; } // Function: net_ratelimit // with type: int net_ratelimit() // with return type: int int __VERIFIER_nondet_int(void); int net_ratelimit() { // Simple type return __VERIFIER_nondet_int(); } // Function: netif_napi_add // with type: void netif_napi_add(struct net_device *, struct napi_struct *, int (*)(struct napi_struct *, int), int) // with return type: void void netif_napi_add(struct net_device *arg0, struct napi_struct *arg1, int (*arg2)(struct napi_struct *, int), int arg3) { // Void type return; } // Function: netif_napi_del // with type: void netif_napi_del(struct napi_struct *) // with return type: void void netif_napi_del(struct napi_struct *arg0) { // Void type return; } // Function: netif_receive_skb // with type: int netif_receive_skb(struct sk_buff *) // with return type: int int __VERIFIER_nondet_int(void); int netif_receive_skb(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: phy_connect_direct // with type: int phy_connect_direct(struct net_device *, struct phy_device *, void (*)(struct net_device *), phy_interface_t ) // with return type: int int __VERIFIER_nondet_int(void); int phy_connect_direct(struct net_device *arg0, struct phy_device *arg1, void (*arg2)(struct net_device *), phy_interface_t arg3) { // Simple type return __VERIFIER_nondet_int(); } // Function: phy_disconnect // with type: void phy_disconnect(struct phy_device *) // with return type: void void phy_disconnect(struct phy_device *arg0) { // Void type return; } // Function: phy_ethtool_gset // with type: int phy_ethtool_gset(struct phy_device *, struct ethtool_cmd *) // with return type: int int __VERIFIER_nondet_int(void); int phy_ethtool_gset(struct phy_device *arg0, struct ethtool_cmd *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: phy_ethtool_sset // with type: int phy_ethtool_sset(struct phy_device *, struct ethtool_cmd *) // with return type: int int __VERIFIER_nondet_int(void); int phy_ethtool_sset(struct phy_device *arg0, struct ethtool_cmd *arg1) { // Simple type return __VERIFIER_nondet_int(); } // Function: phy_find_first // with type: struct phy_device *phy_find_first(struct mii_bus *) // with return type: (struct phy_device)* struct phy_device *phy_find_first(struct mii_bus *arg0) { // Pointer type return ldv_malloc(sizeof(struct phy_device)); } // Function: phy_mii_ioctl // with type: int phy_mii_ioctl(struct phy_device *, struct ifreq *, int) // with return type: int int __VERIFIER_nondet_int(void); int phy_mii_ioctl(struct phy_device *arg0, struct ifreq *arg1, int arg2) { // Simple type return __VERIFIER_nondet_int(); } // Function: phy_start // with type: void phy_start(struct phy_device *) // with return type: void void phy_start(struct phy_device *arg0) { // Void type return; } // Function: phy_stop // with type: void phy_stop(struct phy_device *) // with return type: void void phy_stop(struct phy_device *arg0) { // Void type return; } // Function: platform_driver_unregister // with type: void platform_driver_unregister(struct platform_driver *) // with return type: void void platform_driver_unregister(struct platform_driver *arg0) { // Void type return; } // Function: platform_get_resource // with type: struct resource *platform_get_resource(struct platform_device *, unsigned int, unsigned int) // with return type: (struct resource)* struct resource *platform_get_resource(struct platform_device *arg0, unsigned int arg1, unsigned int arg2) { // Pointer type return ldv_malloc(sizeof(struct resource)); } // 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: skb_clone_tx_timestamp // with type: void skb_clone_tx_timestamp(struct sk_buff *) // with return type: void void skb_clone_tx_timestamp(struct sk_buff *arg0) { // Void type return; } // 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: skb_tstamp_tx // with type: void skb_tstamp_tx(struct sk_buff *, struct skb_shared_hwtstamps *) // with return type: void void skb_tstamp_tx(struct sk_buff *arg0, struct skb_shared_hwtstamps *arg1) { // Void type return; } // Skip function: snprintf // Function: synchronize_irq // with type: void synchronize_irq(unsigned int) // with return type: void void synchronize_irq(unsigned int arg0) { // Void type return; } // 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: usleep_range // with type: void usleep_range(unsigned long, unsigned long) // with return type: void void usleep_range(unsigned long arg0, unsigned long arg1) { // 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; }