Messages in this thread | | | Date | Fri, 16 Mar 2012 17:58:35 +0900 | From | "Jun'ichi Nomura" <> | Subject | Re: Yet another hot unplug NULL pointer dereference (was Re: status of oops in sd_revalidate_disk?) |
| |
Hi,
On 03/14/12 03:10, Bart Van Assche wrote: > Now that I've had some more time to think about this: has anyone > considered to hold a reference on the SCSI host instead of the SCSI > device as long as sd_probe_async() is active ? If sd_prep_fn() can ever > see a NULL queuedata pointer then that means that > scsi_host_dev_release() can get invoked while sd_prep_fn() is running.
Holding a host reference does not help, I think. It does not stop __scsi_remove_device() setting NULL to sdev's q->queuedata.
So, while there might be another race between sd_probe_async and scsi_host_remove, I believe your "[PATCH] Fix device removal NULL pointer dereference" still makes sense.
> That doesn't look correct to me.
-- Jun'ichi Nomura, NEC Corporation
| |