From: stephen hemminger Date: Sat, 31 Dec 2011 13:26:46 +0000 (+0000) Subject: bonding: fix error handling if slave is busy (v2) X-Git-Tag: v3.3-rc1~182^2~52 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f7d9821a6a9c83450ac35e76d3709e32fd38b76f;p=pandora-kernel.git bonding: fix error handling if slave is busy (v2) If slave device already has a receive handler registered, then the error unwind of bonding device enslave function is broken. The following will leave a pointer to freed memory in the slave device list, causing a later kernel panic. # modprobe dummy # ip li add dummy0-1 link dummy0 type macvlan # modprobe bonding # echo +dummy0 >/sys/class/net/bond0/bonding/slaves The fix is to detach the slave (which removes it from the list) in the unwind path. Signed-off-by: Stephen Hemminger Reviewed-by: Nicolas de Pesloüan Signed-off-by: David S. Miller --- Reading git-diff-tree failed