[PATCH] net: add error handling for kmem_cache_create

From: Zhouyang Jia
Date: Tue Jun 12 2018 - 00:30:09 EST


When kmem_cache_create fails, the lack of error-handling code may
cause unexpected results.

This patch adds error-handling code after calling kmem_cache_create.

Signed-off-by: Zhouyang Jia <jiazhouyang09@xxxxxxxxx>
---
net/decnet/dn_route.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/net/decnet/dn_route.c b/net/decnet/dn_route.c
index e747650..2b743c7 100644
--- a/net/decnet/dn_route.c
+++ b/net/decnet/dn_route.c
@@ -1861,6 +1861,9 @@ void __init dn_route_init(void)
dn_dst_ops.kmem_cachep =
kmem_cache_create("dn_dst_cache", sizeof(struct dn_route), 0,
SLAB_HWCACHE_ALIGN|SLAB_PANIC, NULL);
+ if (!dn_dst_ops.kmem_cachep)
+ panic("Failed to create dn_dst_cache cache\n");
+
dst_entries_init(&dn_dst_ops);
timer_setup(&dn_route_timer, dn_dst_check_expire, 0);
dn_route_timer.expires = jiffies + decnet_dst_gc_interval * HZ;
--
2.7.4