]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/um/drivers/pcap_kern.c
Merge branch 'linux-2.6' into for-2.6.22
[linux-2.6-omap-h63xx.git] / arch / um / drivers / pcap_kern.c
index 466ff2c2f9183074b7e0e5faf13d676a617c2fe7..948849343ca421f9ba81c5fc7c8c2e0c1e2bb461 100644 (file)
@@ -36,7 +36,7 @@ static int pcap_read(int fd, struct sk_buff **skb,
 {
        *skb = ether_adjust_skb(*skb, ETH_HEADER_OTHER);
        if(*skb == NULL) return(-ENOMEM);
-       return(pcap_user_read(fd, (*skb)->mac.raw, 
+       return(pcap_user_read(fd, skb_mac_header(*skb),
                              (*skb)->dev->mtu + ETH_HEADER_OTHER,
                              (struct pcap_data *) &lp->user));
 }
@@ -46,7 +46,7 @@ static int pcap_write(int fd, struct sk_buff **skb, struct uml_net_private *lp)
        return(-EPERM);
 }
 
-static struct net_kern_info pcap_kern_info = {
+static const struct net_kern_info pcap_kern_info = {
        .init                   = pcap_init,
        .protocol               = eth_protocol,
        .read                   = pcap_read,
@@ -76,7 +76,7 @@ int pcap_setup(char *str, char **mac_out, void *data)
        if(host_if != NULL)
                init->host_if = host_if;
 
-       for(i = 0; i < sizeof(options)/sizeof(options[0]); i++){
+       for(i = 0; i < ARRAY_SIZE(options); i++){
                if(options[i] == NULL)
                        continue;
                if(!strcmp(options[i], "promisc"))
@@ -109,4 +109,4 @@ static int register_pcap(void)
        return 0;
 }
 
-__initcall(register_pcap);
+late_initcall(register_pcap);