{
struct ethhdr *eth;
unsigned char *rawp;
- eth = skb->mac.ethernet;
+ eth = eth_hdr(skb);
if (*eth->h_dest & 1) {
if (memcmp(eth->h_dest, dev->broadcast, ETH_ALEN) == 0)
atmvcc->push = br2684_push;
skb_queue_head_init(©);
skb_migrate(&atmvcc->sk->sk_receive_queue, ©);
- while ((skb = skb_dequeue(©))) {
+ while ((skb = skb_dequeue(©)) != NULL) {
BRPRIV(skb->dev)->stats.rx_bytes -= skb->len;
BRPRIV(skb->dev)->stats.rx_packets--;
br2684_push(atmvcc, skb);
}
- (void) try_module_get(THIS_MODULE);
+ __module_get(THIS_MODULE);
return 0;
error:
write_unlock_irq(&devs_lock);