Showing error 1825

User: Jiri Slaby
Error type: Invalid Pointer Dereference
Error type description: A pointer which is invalid is being dereferenced
File location: drivers/net/hamradio/yam.c
Line in file: 1127
Project: Linux Kernel
Project version: 2.6.28
Tools: Smatch (1.59)
Entered: 2013-09-11 08:47:26 UTC


Source:

1097
1098        skb_queue_head_init(&yp->send_queue);
1099
1100        dev->header_ops = &ax25_header_ops;
1101
1102        dev->set_mac_address = yam_set_mac_address;
1103
1104        dev->type = ARPHRD_AX25;
1105        dev->hard_header_len = AX25_MAX_HEADER_LEN;
1106        dev->mtu = AX25_MTU;
1107        dev->addr_len = AX25_ADDR_LEN;
1108        memcpy(dev->broadcast, &ax25_bcast, AX25_ADDR_LEN);
1109        memcpy(dev->dev_addr, &ax25_defaddr, AX25_ADDR_LEN);
1110}
1111
1112static int __init yam_init_driver(void)
1113{
1114        struct net_device *dev;
1115        int i, err;
1116        char name[IFNAMSIZ];
1117
1118        printk(yam_drvinfo);
1119
1120        for (i = 0; i < NR_PORTS; i++) {
1121                sprintf(name, "yam%d", i);
1122                
1123                dev = alloc_netdev(sizeof(struct yam_port), name,
1124                                   yam_setup);
1125                if (!dev) {
1126                        printk(KERN_ERR "yam: cannot allocate net device %s\n",
1127                               dev->name);
1128                        err = -ENOMEM;
1129                        goto error;
1130                }
1131                
1132                err = register_netdev(dev);
1133                if (err) {
1134                        printk(KERN_WARNING "yam: cannot register net device %s\n", dev->name);
1135                        goto error;
1136                }
1137                yam_devs[i] = dev;
Show full sources