mirror of https://github.com/torvalds/linux.git
The UMAC_CMD register is written from different execution
contexts and has insufficient synchronization protections to
prevent possible corruption. Of particular concern are the
acceses from the phy_device delayed work context used by the
adjust_link call and the BH context that may be used by the
ndo_set_rx_mode call.
A spinlock is added to the driver to protect contended register
accesses (i.e. reg_lock) and it is used to synchronize accesses
to UMAC_CMD.
Fixes:
|
||
|---|---|---|
| .. | ||
| Makefile | ||
| bcmgenet.c | ||
| bcmgenet.h | ||
| bcmgenet_wol.c | ||
| bcmmii.c | ||