From: Vlad Yasevich <vyasevic@redhat.com>
To: Stephen Hemminger <stephen@networkplumber.org>
Cc: netdev@vger.kernel.org
Subject: Re: [PATCH net] tap: Mark devices of type "tun" as IFF_DONT_BRIDGE
Date: Wed, 04 Jun 2014 15:40:18 -0400 [thread overview]
Message-ID: <538F7622.2080104@redhat.com> (raw)
In-Reply-To: <20140604115448.644073d0@nehalam.linuxnetplumber.net>
On 06/04/2014 02:54 PM, Stephen Hemminger wrote:
> On Wed, 4 Jun 2014 14:06:08 -0400
> Vlad Yasevich <vyasevic@redhat.com> wrote:
>
>> Tun devices are layer 3 devices and do not work correctly
>> when bridged. Mark then as IFF_DONT_BRIDGE so that people
>> trying to bridge will get an error.
>>
>> Signed-off-by: Vlad Yasevich <vyasevic@redhat.com>
>> ---
>> drivers/net/tun.c | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/drivers/net/tun.c b/drivers/net/tun.c
>> index ee328ba..0161aa3 100644
>> --- a/drivers/net/tun.c
>> +++ b/drivers/net/tun.c
>> @@ -931,6 +931,7 @@ static void tun_net_init(struct net_device *dev)
>> /* Zero header length */
>> dev->type = ARPHRD_NONE;
>> dev->flags = IFF_POINTOPOINT | IFF_NOARP | IFF_MULTICAST;
>> + dev->priv_flags |= IFF_DONT_BRIDGE;
>> dev->tx_queue_len = TUN_READQ_SIZE; /* We prefer our own queue length */
>> break;
>>
>
> This should not be necessary since bridge already checks for non-ethernet
> devices.
>
> /* Don't allow bridging non-ethernet like devices */
> if ((dev->flags & IFF_LOOPBACK) ||
> dev->type != ARPHRD_ETHER || dev->addr_len != ETH_ALEN ||
> !is_valid_ether_addr(dev->dev_addr))
> return -EINVAL;
>
You are right... I was shown a snippet of the configure where this
worked, but I never asked which kernel version they were using...
Looks like the above code has been around since 3.2...
Thanks
-vlad
prev parent reply other threads:[~2014-06-04 19:40 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-06-04 18:06 [PATCH net] tap: Mark devices of type "tun" as IFF_DONT_BRIDGE Vlad Yasevich
2014-06-04 18:54 ` Stephen Hemminger
2014-06-04 19:40 ` Vlad Yasevich [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=538F7622.2080104@redhat.com \
--to=vyasevic@redhat.com \
--cc=netdev@vger.kernel.org \
--cc=stephen@networkplumber.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).