diff options
Diffstat (limited to 'net/tipc')
-rw-r--r-- | net/tipc/eth_media.c | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/net/tipc/eth_media.c b/net/tipc/eth_media.c index 69bedd8a297b..413b33742a99 100644 --- a/net/tipc/eth_media.c +++ b/net/tipc/eth_media.c | |||
@@ -156,21 +156,15 @@ static int enable_bearer(struct tipc_bearer *tb_ptr) | |||
156 | if (!dev) | 156 | if (!dev) |
157 | return -ENODEV; | 157 | return -ENODEV; |
158 | 158 | ||
159 | /* Find Ethernet bearer for device (or create one) */ | 159 | /* Create Ethernet bearer for device */ |
160 | 160 | ||
161 | while ((eb_ptr != stop) && eb_ptr->dev && (eb_ptr->dev != dev)) | 161 | eb_ptr->dev = dev; |
162 | eb_ptr++; | 162 | eb_ptr->tipc_packet_type.type = htons(ETH_P_TIPC); |
163 | if (eb_ptr == stop) | 163 | eb_ptr->tipc_packet_type.dev = dev; |
164 | return -EDQUOT; | 164 | eb_ptr->tipc_packet_type.func = recv_msg; |
165 | if (!eb_ptr->dev) { | 165 | eb_ptr->tipc_packet_type.af_packet_priv = eb_ptr; |
166 | eb_ptr->dev = dev; | 166 | INIT_LIST_HEAD(&(eb_ptr->tipc_packet_type.list)); |
167 | eb_ptr->tipc_packet_type.type = htons(ETH_P_TIPC); | 167 | dev_add_pack(&eb_ptr->tipc_packet_type); |
168 | eb_ptr->tipc_packet_type.dev = dev; | ||
169 | eb_ptr->tipc_packet_type.func = recv_msg; | ||
170 | eb_ptr->tipc_packet_type.af_packet_priv = eb_ptr; | ||
171 | INIT_LIST_HEAD(&(eb_ptr->tipc_packet_type.list)); | ||
172 | dev_add_pack(&eb_ptr->tipc_packet_type); | ||
173 | } | ||
174 | 168 | ||
175 | /* Associate TIPC bearer with Ethernet bearer */ | 169 | /* Associate TIPC bearer with Ethernet bearer */ |
176 | 170 | ||