Received: by 2002:a05:6a10:22f:0:0:0:0 with SMTP id 15csp4434881pxk; Wed, 30 Sep 2020 02:54:47 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwvKJ7cTB0c3g5+TRchG9P0mPvQsZhoiXVd30y8NYBpIzovQM3B3cJKStEf4uwUVP3aHgra X-Received: by 2002:a17:906:7f06:: with SMTP id d6mr1852875ejr.553.1601459687346; Wed, 30 Sep 2020 02:54:47 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1601459687; cv=none; d=google.com; s=arc-20160816; b=tR88ggo+tM797VtbhHchGRUXJZg7BMOHH6jePLwv225ig/C+BWhNCZ4rH0pUJNsD34 0Ms19R9kXzF/ufUTq7qKJEzrrovBPQHlxKYAkeCyjqJKrhpfn9Cq9xkF41g+zPiJnvZH oR68PJ0u6C9as2xXR73aBu7eo5tDQwYgM3i56Hckg9+rDA2iNmaVSTaxp7BM6hUydNXy 5mKZVP9hXrXx+FXitMVkg0UazsjLZrSqjeNAKfU4KAqLIH7lydule8BYHIS4VOjGyJz9 N/2dlqgRR80mz6JJaSczgg2VdLPMRBuF1iL8EbOytMfATw0d2ZwRNYjEgQk+2X5e45PS l8VQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=dIksRnNZyAZYAr4uXlZd1nME2EKIYcN7NwU3X3xbWTc=; b=lrFOXXNNGrO1ZmIL6OvrZ5BD5Og59sWDp1j9VSEfki/AgsRNLS/SOQWMfMIvoZn56q Khj/YyeONzyEN+N5985Lb/MLSFlcnJwsbq+SjgnHPBV7aeV0pRBGzYe6j1nyfUbAeRR8 BIs9/TOva8xyyDUPCmLYuidSqCHGmeibjpNe3Fo+CALBAcqYjrZtkww77Nu3P7Rl9GFJ Wg0BMnudR72he56Mxj5OfQKrkoEaNwt8oNV5rJzE1Tb4d9i5F7PbWhnvrFykMttyWwz6 pvdFYQ/hrgZyW2UMWvM+m9X60nlVTT9LLHbDEFR4aPa0yFJsh24jmdp9JvB3ZwvxCvee Z4pA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Zlp5hRjX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id dp1si980324ejc.662.2020.09.30.02.54.24; Wed, 30 Sep 2020 02:54:47 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=Zlp5hRjX; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728916AbgI3Jx1 (ORCPT + 99 others); Wed, 30 Sep 2020 05:53:27 -0400 Received: from mail.kernel.org ([198.145.29.99]:48594 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725776AbgI3Jx0 (ORCPT ); Wed, 30 Sep 2020 05:53:26 -0400 Received: from localhost (unknown [213.57.247.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 155502075F; Wed, 30 Sep 2020 09:53:24 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1601459605; bh=n7b9ZN9lWXqAAXqpvYhEZTZkNVvQeHxENX4KKFd7s9M=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=Zlp5hRjXAbo8Cb3tqMZFlDt2iXHugyplO5KpoQHA35xj21Luw9UV2SE1NMbzEn1Th NWaA9Dh177egigRZUNdHfS116GxaJNzvsoz+pogGkCK+t++5wVfb/Ldv+IEQ+Etwrw kiqvESwSIgjPGPTiDha1J90UvqA0M/RzaxWRdgvQ= Date: Wed, 30 Sep 2020 12:53:21 +0300 From: Leon Romanovsky To: Jason Gunthorpe Cc: Doug Ledford , Maor Gottlieb , Christoph Hellwig , Daniel Vetter , David Airlie , dri-devel@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, Jani Nikula , Joonas Lahtinen , linux-kernel@vger.kernel.org, linux-rdma@vger.kernel.org, Rodrigo Vivi , Roland Scheidegger , Tvrtko Ursulin , VMware Graphics Subject: Re: [PATCH rdma-next v4 4/4] RDMA/umem: Move to allocate SG table from pages Message-ID: <20200930095321.GL3094@unreal> References: <20200927064647.3106737-1-leon@kernel.org> <20200927064647.3106737-5-leon@kernel.org> <20200929195929.GA803555@nvidia.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20200929195929.GA803555@nvidia.com> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Sep 29, 2020 at 04:59:29PM -0300, Jason Gunthorpe wrote: > On Sun, Sep 27, 2020 at 09:46:47AM +0300, Leon Romanovsky wrote: > > @@ -296,11 +223,17 @@ static struct ib_umem *__ib_umem_get(struct ib_device *device, > > goto umem_release; > > > > cur_base += ret * PAGE_SIZE; > > - npages -= ret; > > - > > - sg = ib_umem_add_sg_table(sg, page_list, ret, > > - dma_get_max_seg_size(device->dma_device), > > - &umem->sg_nents); > > + npages -= ret; > > + sg = __sg_alloc_table_from_pages( > > + &umem->sg_head, page_list, ret, 0, ret << PAGE_SHIFT, > > + dma_get_max_seg_size(device->dma_device), sg, npages, > > + GFP_KERNEL); > > + umem->sg_nents = umem->sg_head.nents; > > + if (IS_ERR(sg)) { > > + unpin_user_pages_dirty_lock(page_list, ret, 0); > > + ret = PTR_ERR(sg); > > + goto umem_release; > > + } > > } > > > > sg_mark_end(sg); > > Does it still need the sg_mark_end? It is preserved here for correctness, the release logic doesn't rely on this marker, but it is better to leave it. Thanks > > Jason