[PATCH] shared ipv6 cards

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,
I ask for integration of the attached patch into the
stock kernel. The patch is against kernel version 2.5.59

This patch allows network device drivers to write their own IPv6 
address autoconfiguration function which will be then called by the 
IPv6 stack.The ipv6_generate_eui64(..) function is used as default.
The new net_device function pointer as well as the new struct member 
dev_id
is needed to avoid duplicate address conflicts on Linux for z/Series when 
shared
OSA cards are used with IPv6 so that it is allowed to replace the part 
0xFFFE
of an EUI-64 based interface indentifier by another 16 bit value. 
The following changes are performed:

drivers/net/net_init.c
        initialization of dev_id and generate_eui64 in ether_setup,
        tr_setup and fddi_setup.
include/linux/netdevice.h
        introduced new function pointer generate_eui64 and new variable 
dev_id
        in net_device structure.
include/net/addrconf.h
        function prototype for ipv6_generate_eui64 function 
net/ipv6/addrconf.c
        make ipv6_generate_eui64 non-static
        replace all ipv6_generate_eui64 calls with dev->generate_eui64
net/8021q/vlan.c
         Take it into account for VLAN devices in function
        register_802_1Q_vlan_device().


On Linux for zSeries OSA network cards can be shared among various
Linuxes. The OSA card has only one MAC address. This leads to
duplicate address conflicts in conjunction with IPv6 and a vanilla
kernel if more than one Linux use the same card.  But the device
driver for the card can deliver a unique 16-bit identifier for each
Linux sharing the same card. This identifier is placed instead of the
part 0xFFFE in the interface identifier.

The "u" bit of the interface identifier is not inverted when the new
feature is used. Hence the resulting interface identifier has local
scope according to RFC2373.  Consequently this change of the
autoconfiguration does not violate any RFCs. 


Mit  freundlichen Grüssen / Best regards
Frank Pavlic
 
Linux for eServer Development
Schoenaicher Str. 220, 71032 Boeblingen
Phone:  ext. +49-(0)7031/16-2463, int. *120-2463
mailto:   pavlic@de.ibm.com


-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux