The patch titled IB/core: use correct gfp_mask in sa_query has been added to the -mm tree. Its filename is ib-core-use-correct-gfp_mask-in-sa_query.patch See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: IB/core: use correct gfp_mask in sa_query From: "Michael S. Tsirkin" <mst@xxxxxxxxxxxxxx> Avoid bogus out of memory errors: fix sa_query to actually pass gfp_mask supplied by the user to idr_pre_get. Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxxxxxx> Acked-by: "Sean Hefty" <mshefty@xxxxxxxxxxxxxxxx> Acked-by: "Roland Dreier" <rdreier@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- drivers/infiniband/core/sa_query.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff -puN drivers/infiniband/core/sa_query.c~ib-core-use-correct-gfp_mask-in-sa_query drivers/infiniband/core/sa_query.c --- a/drivers/infiniband/core/sa_query.c~ib-core-use-correct-gfp_mask-in-sa_query +++ a/drivers/infiniband/core/sa_query.c @@ -488,13 +488,13 @@ static void init_mad(struct ib_sa_mad *m spin_unlock_irqrestore(&tid_lock, flags); } -static int send_mad(struct ib_sa_query *query, int timeout_ms) +static int send_mad(struct ib_sa_query *query, int timeout_ms, gfp_t gfp_mask) { unsigned long flags; int ret, id; retry: - if (!idr_pre_get(&query_idr, GFP_ATOMIC)) + if (!idr_pre_get(&query_idr, gfp_mask)) return -ENOMEM; spin_lock_irqsave(&idr_lock, flags); ret = idr_get_new(&query_idr, query, &id); @@ -630,7 +630,7 @@ int ib_sa_path_rec_get(struct ib_device *sa_query = &query->sa_query; - ret = send_mad(&query->sa_query, timeout_ms); + ret = send_mad(&query->sa_query, timeout_ms, gfp_mask); if (ret < 0) goto err2; @@ -752,7 +752,7 @@ int ib_sa_service_rec_query(struct ib_de *sa_query = &query->sa_query; - ret = send_mad(&query->sa_query, timeout_ms); + ret = send_mad(&query->sa_query, timeout_ms, gfp_mask); if (ret < 0) goto err2; @@ -844,7 +844,7 @@ int ib_sa_mcmember_rec_query(struct ib_d *sa_query = &query->sa_query; - ret = send_mad(&query->sa_query, timeout_ms); + ret = send_mad(&query->sa_query, timeout_ms, gfp_mask); if (ret < 0) goto err2; _ Patches currently in -mm which might be from mst@xxxxxxxxxxxxxx are ib-mthca-fix-static-rate-returned-by-mthca_ah_query.patch ib-mthca-comment-fix.patch ib-cm-drop-req-when-out-of-memory.patch ib-addr-gid-structure-alignment-fix.patch srp-fix-fmr-error-handling.patch ib-cm-set-private-data-length-for-reject-messages.patch fmr-pool-remove-unnecessary-pointer-dereference.patch ib-core-use-correct-gfp_mask-in-sa_query.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html