| To: | Jeff Garzik <jgarzik@xxxxxxxxx> |
|---|---|
| Subject: | Re: [PATCH 2.5.70+] tun using alloc_netdev |
| From: | Stephen Hemminger <shemminger@xxxxxxxx> |
| Date: | Wed, 11 Jun 2003 13:27:15 -0700 |
| Cc: | maxk@xxxxxxxxxxxx, davem@xxxxxxxxxx, netdev@xxxxxxxxxxx |
| In-reply-to: | <20030611194317.GE31051@gtf.org> |
| Organization: | Open Source Development Lab |
| References: | <20030609115857.38bb31d6.shemminger@osdl.org> <5.1.0.14.2.20030611121155.0b659e20@unixmail.qualcomm.com> <20030611194317.GE31051@gtf.org> |
| Sender: | netdev-bounce@xxxxxxxxxxx |
On Wed, 11 Jun 2003 15:43:18 -0400
Jeff Garzik <jgarzik@xxxxxxxxx> wrote:
> 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.
>
Not possible in this case because device is created off socket ioctl so it is
called with rtnl_lock
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | RE: Route cache performance under stress, CIT/Paul |
|---|---|
| Next by Date: | Re: [PATCH 2.5.70+] tun using alloc_netdev, Max Krasnyansky |
| Previous by Thread: | Re: [PATCH 2.5.70+] tun using alloc_netdev, Jeff Garzik |
| Next by Thread: | Re: [PATCH 2.5.70+] tun using alloc_netdev, Max Krasnyansky |
| Indexes: | [Date] [Thread] [Top] [All Lists] |