diff options
author | David S. Miller <davem@sunset.davemloft.net> | 2007-07-20 05:30:25 -0400 |
---|---|---|
committer | David S. Miller <davem@sunset.davemloft.net> | 2007-07-20 20:14:30 -0400 |
commit | 028ebff26915df18ab0cda664e2f0582650af155 (patch) | |
tree | 9b15fa56de4c8956479b14a8b150b10eeaac1f8c /drivers/net/sunvnet.h | |
parent | 5fc986100cb253897b4e16992e805343d30a819e (diff) |
[SPARC64]: Add proper multicast support to VNET driver.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/sunvnet.h')
-rw-r--r-- | drivers/net/sunvnet.h | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/net/sunvnet.h b/drivers/net/sunvnet.h index 7d3a0cac727b..d347a5bf24b0 100644 --- a/drivers/net/sunvnet.h +++ b/drivers/net/sunvnet.h | |||
@@ -30,6 +30,8 @@ struct vnet_port { | |||
30 | 30 | ||
31 | struct hlist_node hash; | 31 | struct hlist_node hash; |
32 | u8 raddr[ETH_ALEN]; | 32 | u8 raddr[ETH_ALEN]; |
33 | u8 switch_port; | ||
34 | u8 __pad; | ||
33 | 35 | ||
34 | struct vnet *vp; | 36 | struct vnet *vp; |
35 | 37 | ||
@@ -53,6 +55,13 @@ static inline unsigned int vnet_hashfn(u8 *mac) | |||
53 | return val & (VNET_PORT_HASH_MASK); | 55 | return val & (VNET_PORT_HASH_MASK); |
54 | } | 56 | } |
55 | 57 | ||
58 | struct vnet_mcast_entry { | ||
59 | u8 addr[ETH_ALEN]; | ||
60 | u8 sent; | ||
61 | u8 hit; | ||
62 | struct vnet_mcast_entry *next; | ||
63 | }; | ||
64 | |||
56 | struct vnet { | 65 | struct vnet { |
57 | /* Protects port_list and port_hash. */ | 66 | /* Protects port_list and port_hash. */ |
58 | spinlock_t lock; | 67 | spinlock_t lock; |
@@ -65,6 +74,8 @@ struct vnet { | |||
65 | 74 | ||
66 | struct hlist_head port_hash[VNET_PORT_HASH_SIZE]; | 75 | struct hlist_head port_hash[VNET_PORT_HASH_SIZE]; |
67 | 76 | ||
77 | struct vnet_mcast_entry *mcast_list; | ||
78 | |||
68 | struct list_head list; | 79 | struct list_head list; |
69 | u64 local_mac; | 80 | u64 local_mac; |
70 | }; | 81 | }; |