summaryrefslogtreecommitdiffstats
path: root/include/net/dst.h
diff options
context:
space:
mode:
authorStephen Hemminger2011-05-24 19:50:52 +0200
committerDavid S. Miller2011-05-24 19:50:52 +0200
commit1f37070d3ff325827c6213e51b57f21fd5ac9d05 (patch)
treeac0d1bc0a5e2cdaaeedb72b2ba049141ea16121c /include/net/dst.h
parentbe2net: hash key for rss-config cmd not set (diff)
downloadkernel-qcow2-linux-1f37070d3ff325827c6213e51b57f21fd5ac9d05.tar.gz
kernel-qcow2-linux-1f37070d3ff325827c6213e51b57f21fd5ac9d05.tar.xz
kernel-qcow2-linux-1f37070d3ff325827c6213e51b57f21fd5ac9d05.zip
dst: catch uninitialized metrics
Catch cases where dst_metric_set() and other functions are called but _metrics is NULL. Signed-off-by: Stephen Hemminger <shemminger@vyatta.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net/dst.h')
-rw-r--r--include/net/dst.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/net/dst.h b/include/net/dst.h
index 07a0402c52e6..7d15d238b6ec 100644
--- a/include/net/dst.h
+++ b/include/net/dst.h
@@ -111,6 +111,8 @@ static inline u32 *dst_metrics_write_ptr(struct dst_entry *dst)
{
unsigned long p = dst->_metrics;
+ BUG_ON(!p);
+
if (p & DST_METRICS_READ_ONLY)
return dst->ops->cow_metrics(dst, p);
return __DST_METRICS_PTR(p);