mpt2sas: Refcount sas_device objects and fix unsafe list usage
These objects can be referenced concurrently throughout the driver, we need a way to make sure threads can't delete them out from under each other. This patch adds the refcount, and refactors the code to use it. Additionally, we cannot iterate over the sas_device_list without holding the lock, or we risk corrupting random memory if items are added or deleted as we iterate. This patch refactors _scsih_probe_sas() to use the sas_device_list in a safe way. Signed-off-by: NCalvin Owens <calvinowens@fb.com> Reviewed-by: NChristoph Hellwig <hch@lst.de> Reviewed-by: NNicholas Bellinger <nab@linux-iscsi.org> Tested-by: NChaitra Basappa <chaitra.basappa@avagotech.com> Acked-by: NSreekanth Reddy <sreekanth.reddy@avagotech.com> Signed-off-by: NJames Bottomley <JBottomley@Odin.com>
Showing
想要评论请 注册 或 登录