summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/broadcom/cnic.c
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2012-03-15 21:07:57 +0000
committerArnd Bergmann <arnd@arndb.de>2012-03-15 21:07:57 +0000
commite7051e9dab77ddeaddbe12364939ae239d92ca73 (patch)
treeb1855cb663f64a374277df1a909cbac1ecf15fbf /drivers/net/ethernet/broadcom/cnic.c
parent38abdcd0d0689aaca94e740ac67a952c7918caef (diff)
parent5da30bb6d902a36265e74f7141a904b19ec25bd4 (diff)
Merge branch 'samsung/exynos5' into next/soc2
Diffstat (limited to 'drivers/net/ethernet/broadcom/cnic.c')
-rw-r--r--drivers/net/ethernet/broadcom/cnic.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/net/ethernet/broadcom/cnic.c b/drivers/net/ethernet/broadcom/cnic.c
index dd3a0a232ea0..818a573669e6 100644
--- a/drivers/net/ethernet/broadcom/cnic.c
+++ b/drivers/net/ethernet/broadcom/cnic.c
@@ -3584,7 +3584,11 @@ static int cnic_get_v6_route(struct sockaddr_in6 *dst_addr,
fl6.flowi6_oif = dst_addr->sin6_scope_id;
*dst = ip6_route_output(&init_net, NULL, &fl6);
- if (*dst)
+ if ((*dst)->error) {
+ dst_release(*dst);
+ *dst = NULL;
+ return -ENETUNREACH;
+ } else
return 0;
#endif