*/
 static void dvb_net_ule( struct net_device *dev, const u8 *buf, size_t buf_len )
 {
-       struct dvb_net_priv *priv = dev->priv;
+       struct dvb_net_priv *priv = netdev_priv(dev);
        unsigned long skipped = 0L;
        const u8 *ts, *ts_end, *from_where = NULL;
        u8 ts_remain = 0, how_much = 0, new_ts = 1;
                                                /* Drop partly decoded SNDU, reset state, resync on PUSI. */
                                                if (priv->ule_skb) {
                                                        dev_kfree_skb( priv->ule_skb );
-                                                       ((struct dvb_net_priv *) dev->priv)->stats.rx_errors++;
-                                                       ((struct dvb_net_priv *) dev->priv)->stats.rx_frame_errors++;
+                                                       priv->stats.rx_errors++;
+                                                       priv->stats.rx_frame_errors++;
                                                }
                                                reset_ule(priv);
                                                priv->need_pusi = 1;
                        if (priv->ule_skb == NULL) {
                                printk(KERN_NOTICE "%s: Memory squeeze, dropping packet.\n",
                                       dev->name);
-                               ((struct dvb_net_priv *)dev->priv)->stats.rx_dropped++;
+                               priv->stats.rx_dropped++;
                                return;
                        }
 
 {
        u8 *eth;
        struct sk_buff *skb;
-       struct net_device_stats *stats = &(((struct dvb_net_priv *) dev->priv)->stats);
+       struct net_device_stats *stats =
+               &((struct dvb_net_priv *) netdev_priv(dev))->stats;
        int snap = 0;
 
        /* note: pkt_len includes a 32bit checksum */
                   struct dmx_section_filter **secfilter,
                   u8 *mac, u8 *mac_mask)
 {
-       struct dvb_net_priv *priv = dev->priv;
+       struct dvb_net_priv *priv = netdev_priv(dev);
        int ret;
 
        *secfilter=NULL;
 static int dvb_net_feed_start(struct net_device *dev)
 {
        int ret = 0, i;
-       struct dvb_net_priv *priv = dev->priv;
+       struct dvb_net_priv *priv = netdev_priv(dev);
        struct dmx_demux *demux = priv->demux;
        unsigned char *mac = (unsigned char *) dev->dev_addr;
 
 
 static int dvb_net_feed_stop(struct net_device *dev)
 {
-       struct dvb_net_priv *priv = dev->priv;
+       struct dvb_net_priv *priv = netdev_priv(dev);
        int i, ret = 0;
 
        dprintk("%s\n", __func__);
 
 static int dvb_set_mc_filter (struct net_device *dev, struct dev_mc_list *mc)
 {
-       struct dvb_net_priv *priv = dev->priv;
+       struct dvb_net_priv *priv = netdev_priv(dev);
 
        if (priv->multi_num == DVB_NET_MULTICAST_MAX)
                return -ENOMEM;
 
 static void dvb_net_set_multicast_list (struct net_device *dev)
 {
-       struct dvb_net_priv *priv = dev->priv;
+       struct dvb_net_priv *priv = netdev_priv(dev);
        schedule_work(&priv->set_multicast_list_wq);
 }
 
 
 static int dvb_net_set_mac (struct net_device *dev, void *p)
 {
-       struct dvb_net_priv *priv = dev->priv;
+       struct dvb_net_priv *priv = netdev_priv(dev);
        struct sockaddr *addr=p;
 
        memcpy(dev->dev_addr, addr->sa_data, dev->addr_len);
 
 static int dvb_net_open(struct net_device *dev)
 {
-       struct dvb_net_priv *priv = dev->priv;
+       struct dvb_net_priv *priv = netdev_priv(dev);
 
        priv->in_use++;
        dvb_net_feed_start(dev);
 
 static int dvb_net_stop(struct net_device *dev)
 {
-       struct dvb_net_priv *priv = dev->priv;
+       struct dvb_net_priv *priv = netdev_priv(dev);
 
        priv->in_use--;
        return dvb_net_feed_stop(dev);
 
 static struct net_device_stats * dvb_net_get_stats(struct net_device *dev)
 {
-       return &((struct dvb_net_priv*) dev->priv)->stats;
+       return &((struct dvb_net_priv *) netdev_priv(dev))->stats;
 }
 
 static const struct header_ops dvb_header_ops = {
 
        dvbnet->device[if_num] = net;
 
-       priv = net->priv;
+       priv = netdev_priv(net);
        priv->net = net;
        priv->demux = dvbnet->demux;
        priv->pid = pid;
 
        if (!dvbnet->state[num])
                return -EINVAL;
-       priv = net->priv;
+       priv = netdev_priv(net);
        if (priv->in_use)
                return -EBUSY;
 
 
                netdev = dvbnet->device[dvbnetif->if_num];
 
-               priv_data = netdev->priv;
+               priv_data = netdev_priv(netdev);
                dvbnetif->pid=priv_data->pid;
                dvbnetif->feedtype=priv_data->feedtype;
                break;
 
                netdev = dvbnet->device[dvbnetif->if_num];
 
-               priv_data = netdev->priv;
+               priv_data = netdev_priv(netdev);
                dvbnetif->pid=priv_data->pid;
                break;
        }