[rds-devel] cq event handler - using mutex
Steve Wise
swise at opengridcomputing.com
Tue Jan 13 11:56:42 PST 2009
Steve Wise wrote:
> Andy,
>
> I think rds_ib_recv_cq_comp_handler() shouldn't be using a mutex. If
> you turn on mutex debugging, you'll see a DEBUG_LOCKS_WARN_ON() from
> spin_lock_mutex() in kernel/mutex_debug.h because in_interrupt() is TRUE.
>
> The RDMA kernel mode cq completion callback func is called from the
> interrupt context...
>
So I think you either need to change the mutex to a spin lock, which
will then force GFP_ATOMIC allocations, or create a work item for the
work queue thread to refill the recvs and just schedule that in the
interrupt path...
Steve.
More information about the rds-devel
mailing list