ata_piix: fix locking around SIDPR access
SIDPR window registers are shared across ports and as each access is done in two steps, accesses to different ports under EH may race. This primarily is caused by incorrect host locking in EH context and should be fixed by defining locking requirements for each EH operation which can be used during EH and enforcing them but for now work around the problem by adding a dedicated SIDPR lock and grabbing it for each SIDPR access. Signed-off-by: NTejun Heo <tj@kernel.org> Reported-by: NMark Knecht <markknecht@gmail.com> Reported-by: NPaul Check <paul@thechecks.ca> Cc: stable@kernel.org Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
Showing
想要评论请 注册 或 登录