RTAX_MTU
metric == RTAX_MTU);
return rt->rt_mtu_locked || dst_metric_locked(dst, RTAX_MTU);
mtu = dst_metric_raw(dst, RTAX_MTU);
#define fib6_pmtu fib6_metrics->metrics[RTAX_MTU-1]
if (!forwarding || dst_metric_locked(dst, RTAX_MTU)) {
mtu = dst_metric_raw(dst, RTAX_MTU);
#define fib_mtu fib_metrics->metrics[RTAX_MTU-1]
dst_metric_set(&br->fake_rtable.dst, RTAX_MTU, new_mtu);
dst_metric_set(&rt->dst, RTAX_MTU, br->dev->mtu);
unsigned int mtu = dst_metric_raw(dst, RTAX_MTU);
dst_metric_set(skb_dst(skb), RTAX_MTU, mtu);
if (type == RTAX_MTU && val > 65535 - 15)
fi->fib_metrics->metrics[RTAX_LOCK - 1] & (1 << RTAX_MTU))
metrics[RTAX_MTU - 1] = rt->rt_pmtu;
metrics[RTAX_LOCK - 1] |= BIT(RTAX_MTU);
fib6_metric_set(iter, RTAX_MTU,
fib6_metric_set(rt, RTAX_MTU, mtu);
if (dst_metric_raw(&nrt->dst, RTAX_MTU) >= fib6_mtu(res)) {
if (dst_metric_raw(&entry->dst, RTAX_MTU) &&
dst_metric_set(&entry->dst, RTAX_MTU, mtu);
dst_metric_set(&rt->dst, RTAX_MTU, mtu);
if (unlikely(fib6_metric_locked(f6i, RTAX_MTU))) {
mtu = dst_metric_raw(&rt->dst, RTAX_MTU);
fib6_metric_set(f6i, RTAX_MTU, arg->mtu);
if (fib6_metric_locked(f6i, RTAX_MTU))
[RTAX_MTU] = { .type = NLA_U32 },
if (tbx[RTAX_MTU])
mtu = nla_get_u32(tbx[RTAX_MTU]);
if (nla_put_u32(skb, RTAX_MTU, rt->mtu))
dst_metric_set(dst, RTAX_MTU, pmtu);
dst_metric_set(dst, RTAX_MTU, mtu);
unsigned int mtu = dst_metric_raw(dst, RTAX_MTU);