For the async thread, as well as the per-cpu done threads, move the
queue we copy all the requests into to the softc. This allows us to
dispaly this otherwise hidden state form the debugger.
Sponsored by: Netflix
Differential D44367
cam: Move temporary queue from stack to softc imp on Mar 15 2024, 4:16 AM. Authored by Tags None Referenced Files
Subscribers None
Details
Diff Detail
Event TimelineComment Actions My only complaint is that it puts the queue into the same cache line as the main queue, that may be modified by writers. But if you really need it for debugging, it could be understood. PS: You seem to be doing STAILQ_INIT() twice for doneqs. Comment Actions I think it's OK they share a cache line, but if we find that it's too much cache line traffic we can revisit. The xpt_done_td queues are used only for the non-MP safe things as well as I think for the error path, both of which are relatively rare. The async is for async messages, which are also rare. Comment Actions
They are used for all SIMs not using xpt_done_direct(), which are majority. But whatever, if you need it, I don't insist. |