|
@@ -938,7 +938,6 @@ EXPORT_SYMBOL_GPL(ip6_dst_lookup);
|
|
* @sk: socket which provides route info
|
|
* @sk: socket which provides route info
|
|
* @fl6: flow to lookup
|
|
* @fl6: flow to lookup
|
|
* @final_dst: final destination address for ipsec lookup
|
|
* @final_dst: final destination address for ipsec lookup
|
|
- * @can_sleep: we are in a sleepable context
|
|
|
|
*
|
|
*
|
|
* This function performs a route lookup on the given flow.
|
|
* This function performs a route lookup on the given flow.
|
|
*
|
|
*
|
|
@@ -946,8 +945,7 @@ EXPORT_SYMBOL_GPL(ip6_dst_lookup);
|
|
* error code.
|
|
* error code.
|
|
*/
|
|
*/
|
|
struct dst_entry *ip6_dst_lookup_flow(struct sock *sk, struct flowi6 *fl6,
|
|
struct dst_entry *ip6_dst_lookup_flow(struct sock *sk, struct flowi6 *fl6,
|
|
- const struct in6_addr *final_dst,
|
|
|
|
- bool can_sleep)
|
|
|
|
|
|
+ const struct in6_addr *final_dst)
|
|
{
|
|
{
|
|
struct dst_entry *dst = NULL;
|
|
struct dst_entry *dst = NULL;
|
|
int err;
|
|
int err;
|
|
@@ -957,8 +955,6 @@ struct dst_entry *ip6_dst_lookup_flow(struct sock *sk, struct flowi6 *fl6,
|
|
return ERR_PTR(err);
|
|
return ERR_PTR(err);
|
|
if (final_dst)
|
|
if (final_dst)
|
|
fl6->daddr = *final_dst;
|
|
fl6->daddr = *final_dst;
|
|
- if (can_sleep)
|
|
|
|
- fl6->flowi6_flags |= FLOWI_FLAG_CAN_SLEEP;
|
|
|
|
|
|
|
|
return xfrm_lookup(sock_net(sk), dst, flowi6_to_flowi(fl6), sk, 0);
|
|
return xfrm_lookup(sock_net(sk), dst, flowi6_to_flowi(fl6), sk, 0);
|
|
}
|
|
}
|
|
@@ -969,7 +965,6 @@ EXPORT_SYMBOL_GPL(ip6_dst_lookup_flow);
|
|
* @sk: socket which provides the dst cache and route info
|
|
* @sk: socket which provides the dst cache and route info
|
|
* @fl6: flow to lookup
|
|
* @fl6: flow to lookup
|
|
* @final_dst: final destination address for ipsec lookup
|
|
* @final_dst: final destination address for ipsec lookup
|
|
- * @can_sleep: we are in a sleepable context
|
|
|
|
*
|
|
*
|
|
* This function performs a route lookup on the given flow with the
|
|
* This function performs a route lookup on the given flow with the
|
|
* possibility of using the cached route in the socket if it is valid.
|
|
* possibility of using the cached route in the socket if it is valid.
|
|
@@ -980,8 +975,7 @@ EXPORT_SYMBOL_GPL(ip6_dst_lookup_flow);
|
|
* error code.
|
|
* error code.
|
|
*/
|
|
*/
|
|
struct dst_entry *ip6_sk_dst_lookup_flow(struct sock *sk, struct flowi6 *fl6,
|
|
struct dst_entry *ip6_sk_dst_lookup_flow(struct sock *sk, struct flowi6 *fl6,
|
|
- const struct in6_addr *final_dst,
|
|
|
|
- bool can_sleep)
|
|
|
|
|
|
+ const struct in6_addr *final_dst)
|
|
{
|
|
{
|
|
struct dst_entry *dst = sk_dst_check(sk, inet6_sk(sk)->dst_cookie);
|
|
struct dst_entry *dst = sk_dst_check(sk, inet6_sk(sk)->dst_cookie);
|
|
int err;
|
|
int err;
|
|
@@ -993,8 +987,6 @@ struct dst_entry *ip6_sk_dst_lookup_flow(struct sock *sk, struct flowi6 *fl6,
|
|
return ERR_PTR(err);
|
|
return ERR_PTR(err);
|
|
if (final_dst)
|
|
if (final_dst)
|
|
fl6->daddr = *final_dst;
|
|
fl6->daddr = *final_dst;
|
|
- if (can_sleep)
|
|
|
|
- fl6->flowi6_flags |= FLOWI_FLAG_CAN_SLEEP;
|
|
|
|
|
|
|
|
return xfrm_lookup(sock_net(sk), dst, flowi6_to_flowi(fl6), sk, 0);
|
|
return xfrm_lookup(sock_net(sk), dst, flowi6_to_flowi(fl6), sk, 0);
|
|
}
|
|
}
|