bonding: fix rx_handler locking
This prevents possible race between bond_enslave and bond_handle_frame as reported by Nicolas by moving rx_handler register/unregister. slave->bond is added to hold pointer to master bonding sructure. That way dev->master is no longer used in bond_handler_frame. Also, this removes "BUG: scheduling while atomic" message Reported-by:Nicolas de Pesloüan <nicolas.2p.debian@gmail.com> Signed-off-by:
Jiri Pirko <jpirko@redhat.com> Signed-off-by:
Andy Gospodarek <andy@greyhouse.net> Tested-by:
Nicolas de Pesloüan <nicolas.2p.debian@free.fr> Signed-off-by:
David S. Miller <davem@davemloft.net>
Showing
Please register or sign in to comment