> +struct svc_rdma_op_ctxt *svc_rdma_get_context_gfp(struct svcxprt_rdma *xprt,
> +                                               gfp_t flags)
> +{
> +     struct svc_rdma_op_ctxt *ctxt;
> +
> +     ctxt = kmem_cache_alloc(svc_rdma_ctxt_cachep, flags);
> +     if (!ctxt)
> +             return NULL;
> +     svc_rdma_init_context(xprt, ctxt);
> +     return ctxt;
> +}
> +
> +struct svc_rdma_op_ctxt *svc_rdma_get_context(struct svcxprt_rdma *xprt)
> +{
> +     struct svc_rdma_op_ctxt *ctxt;
> +
> +     ctxt = kmem_cache_alloc(svc_rdma_ctxt_cachep,
> +                             GFP_KERNEL | __GFP_NOFAIL);
> +     svc_rdma_init_context(xprt, ctxt);
>       return ctxt;

Sounds like you should have just added a gfp_t argument to
svc_rdma_get_context.  And if we have any way to avoid the __GFP_NOFAIL
I'd really appreciate if we could give that a try.
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to