From patchwork Sat Mar 8 19:20:48 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Steve Wise X-Patchwork-Id: 3798691 Return-Path: X-Original-To: patchwork-linux-rdma@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork1.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork1.web.kernel.org (Postfix) with ESMTP id C07469F1CD for ; Sat, 8 Mar 2014 19:20:54 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id CA5AE201C0 for ; Sat, 8 Mar 2014 19:20:53 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 0384B2015D for ; Sat, 8 Mar 2014 19:20:53 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751694AbaCHTUu (ORCPT ); Sat, 8 Mar 2014 14:20:50 -0500 Received: from linode.aoot.com ([69.164.194.13]:54052 "EHLO linode.aoot.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751531AbaCHTUu (ORCPT ); Sat, 8 Mar 2014 14:20:50 -0500 Received: from [192.168.1.40] (pool-71-114-241-151.austtx.dsl-w.verizon.net [71.114.241.151]) by linode.aoot.com (Postfix) with ESMTP id EA819830A; Sat, 8 Mar 2014 13:20:48 -0600 (CST) Message-ID: <531B6D90.2090208@opengridcomputing.com> Date: Sat, 08 Mar 2014 13:20:48 -0600 From: Steve Wise User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.3.0 MIME-Version: 1.0 To: "'J. Bruce Fields'" , Tom Tucker CC: 'Yan Burman' , linux-nfs@vger.kernel.org, linux-rdma@vger.kernel.org, 'Or Gerlitz' Subject: Re: NFS over RDMA crashing References: <51127B3F.2090200@mellanox.com> <20130206222435.GL16417@fieldses.org> <20130207164134.GK3222@fieldses.org> <003601cf3a26$94523ee0$bcf6bca0$@opengridcomputing.com> <005d01cf3a45$94ced0d0$be6c7270$@opengridcomputing.com> <531B47B3.1070503@opengridcomputing.com> In-Reply-To: <531B47B3.1070503@opengridcomputing.com> Sender: linux-rdma-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-rdma@vger.kernel.org X-Spam-Status: No, score=-6.9 required=5.0 tests=BAYES_00, RCVD_IN_DNSWL_HI, T_RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP > I removed your change and started debugging original crash that > happens on top-o-tree. Seems like rq_next_pages is screwed up. It > should always be >= rq_respages, yes? I added a BUG_ON() to assert > this in rdma_read_xdr() we hit the BUG_ON(). Look > > crash> svc_rqst.rq_next_page 0xffff8800b84e6000 > rq_next_page = 0xffff8800b84e6228 > crash> svc_rqst.rq_respages 0xffff8800b84e6000 > rq_respages = 0xffff8800b84e62a8 > > Any ideas Bruce/Tom? > Guys, the patch below seems to fix the problem. Dunno if it is correct though. What do you think? offset = 0; --- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html diff --git a/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c b/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c index 0ce7552..6d62411 100644 --- a/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c +++ b/net/sunrpc/xprtrdma/svc_rdma_recvfrom.c @@ -90,6 +90,7 @@ static void rdma_build_arg_xdr(struct svc_rqst *rqstp, sge_no++; } rqstp->rq_respages = &rqstp->rq_pages[sge_no]; + rqstp->rq_next_page = rqstp->rq_respages; /* We should never run out of SGE because the limit is defined to * support the max allowed RPC data length @@ -276,6 +277,7 @@ static int fast_reg_read_chunks(struct svcxprt_rdma *xprt, /* rq_respages points one past arg pages */ rqstp->rq_respages = &rqstp->rq_arg.pages[page_no]; + rqstp->rq_next_page = rqstp->rq_respages; /* Create the reply and chunk maps */