Q: assumptions on make_request() and request_fn()
What are the assumtions for calling make_request() or the request_fn()?
Interrupt context or process context or both?
(2.4/2.5)
Thanks,
Signature · 1 line
Luben
Quoted 4 lines · Luben Tuikov
What are the assumtions for calling
make_request()or therequest_fn()?Interrupt context or process context or both?
make_request_fn() is called from process context, no locks held. It often sleeps.
request_fn() is called with (2.4: io_request_lock, 2.5: q->queue_lock) held, and interrupts disabled. The context _may_ be process, it may also be from an interrupt handler for requeueing etc.
Signature · 1 line
Jens Axboe