| To: | Max Krasnyansky <maxk@xxxxxxxxxxxx> |
|---|---|
| Subject: | Re: [PATCH 2.5.70+] tun using alloc_netdev |
| From: | Jeff Garzik <jgarzik@xxxxxxxxx> |
| Date: | Wed, 11 Jun 2003 15:43:18 -0400 |
| Cc: | Stephen Hemminger <shemminger@xxxxxxxx>, "David S. Miller" <davem@xxxxxxxxxx>, netdev@xxxxxxxxxxx |
| In-reply-to: | <5.1.0.14.2.20030611121155.0b659e20@xxxxxxxxxxxxxxxxxxxxx> |
| References: | <20030609115857.38bb31d6.shemminger@xxxxxxxx> <5.1.0.14.2.20030611121155.0b659e20@xxxxxxxxxxxxxxxxxxxxx> |
| Sender: | netdev-bounce@xxxxxxxxxxx |
| User-agent: | Mutt/1.3.28i |
On Wed, Jun 11, 2003 at 12:21:44PM -0700, Max Krasnyansky wrote:
> At 11:58 AM 6/9/2003, Stephen Hemminger wrote:
>
>
> >- if ((err = dev_alloc_name(&tun->dev, name)) < 0)
> >- goto failed;
> >- if ((err = register_netdevice(&tun->dev)))
> >+ dev = alloc_netdev(sizeof(struct tun_struct), name,
> >+ tun_setup);
> >+ if (!dev)
> >+ return -ENOMEM;
> >+
> >+ tun = dev->priv;
> >+ tun->flags = flags;
> >+
> >+ if ((err = register_netdevice(tun->dev))) {
> >+ kfree(dev);
> > goto failed;
> >+ }
>
>
> This is wrong. register_netdevice() does not expand name (ie %d stuff).
> So dev_alloc_name() is still needed. i.e.
Correct.
But, register_netdev() is preferred precisely for this reason.
Jeff
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: [PATCH 2.5.70+] tun using alloc_netdev, Max Krasnyansky |
|---|---|
| Next by Date: | Re: Route cache performance under stress, Florian Weimer |
| Previous by Thread: | Re: [PATCH 2.5.70+] tun using alloc_netdev, Max Krasnyansky |
| Next by Thread: | Re: [PATCH 2.5.70+] tun using alloc_netdev, Stephen Hemminger |
| Indexes: | [Date] [Thread] [Top] [All Lists] |