From: Bastien Philbert Date: Sun, 3 Apr 2016 23:04:26 +0000 (-0400) Subject: bridge: Fix incorrect variable assignment on error path in br_sysfs_addbr X-Git-Tag: v4.6-rc3~14^2~28 X-Git-Url: https://asedeno.scripts.mit.edu/gitweb/?a=commitdiff_plain;h=c862cc9b70526a71d07e7bd86d9b61d1c792cead;p=linux.git bridge: Fix incorrect variable assignment on error path in br_sysfs_addbr This fixes the incorrect variable assignment on error path in br_sysfs_addbr for when the call to kobject_create_and_add fails to assign the value of -EINVAL to the returned variable of err rather then incorrectly return zero making callers think this function has succeededed due to the previous assignment being assigned zero when assigning it the successful return value of the call to sysfs_create_group which is zero. Signed-off-by: Bastien Philbert Signed-off-by: David S. Miller --- diff --git a/net/bridge/br_sysfs_br.c b/net/bridge/br_sysfs_br.c index 6b8091407ca3..f4d40edbe8a9 100644 --- a/net/bridge/br_sysfs_br.c +++ b/net/bridge/br_sysfs_br.c @@ -870,6 +870,7 @@ int br_sysfs_addbr(struct net_device *dev) br->ifobj = kobject_create_and_add(SYSFS_BRIDGE_PORT_SUBDIR, brobj); if (!br->ifobj) { + err = -EINVAL; pr_info("%s: can't add kobject (directory) %s/%s\n", __func__, dev->name, SYSFS_BRIDGE_PORT_SUBDIR); goto out3;