Hi!

There is a potential data race in drivers/scsi/megaraid.ko
Regards such case:

Thread 1                                        Thread 2
...                                             ...
-> megaraid_probe_one                                
   -> request_irq    - now an interrupt may arise
   -> mega_query_adapter
     -> issue_scb_block
                        interrupt comes         
                                                -> megaraid_isr_iomapped
                                                  -> mega_runpendq
                                                    -> __mega_runpendq
                                                      -> issue_skb

In this case the structure 'mbox' is modified from two threads simultaneously. Or, more correct, the first modification is interrupted by the second one. Likely, the first thread should acquire the same spinlock adapter->lock as the second one.

--
Pavel Andrianov
Linux Verification Center, ISPRAS
web: http://linuxtesting.org
e-mail: [email protected]
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to