All the flushes and workq stuff is very tricky. We (Mike Reed and I) had
a devil of a time with it on large SMP systems. So adding these quickly
is not advised.
I believe what we need to do is add a synchronization between the delete
and the add sequences, which right now, expect the workq and flushing to
provide it, but left other code paths, where it had to release the locks
post the state change, at risk. Let me put something together.
-- james s
Ralph Wuerthner wrote:
Your patch does not work: you are canceling the fast_fail work and
dev_loss work without initializing rport first.
We have to make sure that fc_remote_port_add(),
fc_remote_port_delete(), and fc_timeout_deleted_rport() do not
interfere with each other. Unfortunately I don't know yet how. I have to
think more about this.
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html