Received: by 2002:ac0:a581:0:0:0:0:0 with SMTP id m1-v6csp4340296imm; Mon, 25 Jun 2018 14:04:29 -0700 (PDT) X-Google-Smtp-Source: ADUXVKIIUqxo0NZfrNks7yQ0CvU5UKx03Ye/Kz6BLDO/mTUxGf7ZfEyiiVz74f22ETfTeM88bMlb X-Received: by 2002:a63:9d87:: with SMTP id i129-v6mr5743058pgd.395.1529960669546; Mon, 25 Jun 2018 14:04:29 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1529960669; cv=none; d=google.com; s=arc-20160816; b=RUZGrWhZEGU8XWPkgBTAQPhAKI/S0kfTDe1PP3Ii/Di1G2/2PjeLV6xY96NnELHSeU BM1ZkXUfJAjiR65t0MwZdBjNGK20iV4WxxYrsSACAlDAGI6wVbRMi5YQHNtfE63avavR LVlgWqXPQxE93QnbwKYkQM4koehketlU5dgWfjc2jl8b+XfLTtQnEbdwIBkdo03jU+eP h6AdLdaIg1CzrGlLN0ddJ/BQkAgjpxxSGr1T2noLrp3iFqoxeUYz4aShfvTV+G38bc5Q QzJWnw/OrsEGa8cbhQ+MyEHQGzeVxVPSl4uGSj/QkP3iHPpdKHXa3I+u69xA2ScZz8rk 3gxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date:dkim-signature:arc-authentication-results; bh=26PjOELIio5WeNRsiGoAf6Y3T2ZsCa//PtVnwBIEr9k=; b=v1luaYrRJLj8DgKBj3NOcZj7wdKiLGBDCAIrF6FCXNh2TG2MGYfCxARgUcLKoKojim F7q8pqbzmMtD178j5/sh5PNZvLW0vu0bpI5WvFeY8Njs0lB7XCOrTFBGynJQpJdl7c58 W1Tw+rgsqa70lqBNbsO67KvpNexkXXCkhw5nVOsm8lJ0GJnKs2gPB1WM7dL4NDWpndSA YJwi/xXLGUnXBmPKhhbXKP9fsFJR160GVr2uSjYCfFEkmpOMaoiD21ezV6zBqDGlVBIc 0L0K2ptWATXZP7U3Jwrn5+dgg5X498iHH/Lja5TwgG8GWuWMDfgsqxn2Wjo6ILPU7jha DrVw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ziepe.ca header.s=google header.b=XUcBGu6m; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 38-v6si14833508pln.92.2018.06.25.14.04.14; Mon, 25 Jun 2018 14:04:29 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@ziepe.ca header.s=google header.b=XUcBGu6m; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752589AbeFYVBl (ORCPT + 99 others); Mon, 25 Jun 2018 17:01:41 -0400 Received: from mail-wr0-f194.google.com ([209.85.128.194]:44915 "EHLO mail-wr0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752474AbeFYVBi (ORCPT ); Mon, 25 Jun 2018 17:01:38 -0400 Received: by mail-wr0-f194.google.com with SMTP id p12-v6so13390535wrn.11 for ; Mon, 25 Jun 2018 14:01:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ziepe.ca; s=google; h=date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=26PjOELIio5WeNRsiGoAf6Y3T2ZsCa//PtVnwBIEr9k=; b=XUcBGu6mwbuHFPPvI5e2zzKRITcH7b6102pNui9QX+hoXj3W5/09mWaWKya8E5ekK8 9kbac1ju6Lf6A6bcQt0eudhSv+HeOlncdB03BYWYIvnMxg0PXZrL0LoYuEwiz1h31lO+ CzTAYsUYEca3wRiz0fv6QgrjHNKdYbPaRF9gWI/hbJgIt5NLd4wOyJfxKP5y49m0tD8X w/Xh4IsmsBI8D5vYxnI4cnBieLYkqPtwxltX8qgvCICbTUR5O7y2dKqy7XKP14WGVRfZ XcUsUD9rTcrMIW+l5Vu68WjbwQNdK5Wrp93lPoJUovXBUuHScBkBD24wCt+bPasJdb3Q RJ9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:from:to:cc:subject:message-id:references :mime-version:content-disposition:in-reply-to:user-agent; bh=26PjOELIio5WeNRsiGoAf6Y3T2ZsCa//PtVnwBIEr9k=; b=PgwZdSMMqPcc6q1NxwSnKu3WmEM3kvUwOLAax50nsauhrydcHktxP7xDJi0sVdovew elN4JLfeV1WnmvmSEohPxAZwCUbN0IZziBC/8SezL1qjx8SJXszsAUm4LMHmXExaE8Vv Jayif3YVpmOnbeNC9UbQ3o2lFAhqK3sxLvkHTIUUN8Gmp7GH2ij/I38WVkFbAOU7831W ItQUJcHHdNzuCDJXCqXMI5sCoAOm7glrxt7T2fRmSGAkl1WM49bK2Vquk2XsTeKhjyVJ k2tnortv6LadBAHW76BJHlpG8IbpmYIGE7uRL8L3UqbCuIX+jQbIT9lW3vRw/MkwoCR/ iY3g== X-Gm-Message-State: APt69E12e3FXvmQAgbP3FcbYG9r3xPjunrhKIDR8pfTvqtw7QFczdO33 oS/3RtSLZRo/vj/1wVpQ9ob5yA== X-Received: by 2002:adf:8806:: with SMTP id d6-v6mr5167697wrd.41.1529960497263; Mon, 25 Jun 2018 14:01:37 -0700 (PDT) Received: from ziepe.ca (S010614cc2056d97f.ed.shawcable.net. [174.3.196.123]) by smtp.gmail.com with ESMTPSA id 12-v6sm323845wmt.19.2018.06.25.14.01.36 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 25 Jun 2018 14:01:36 -0700 (PDT) Received: from jgg by mlx.ziepe.ca with local (Exim 4.86_2) (envelope-from ) id 1fXYc8-0007Bn-MF; Mon, 25 Jun 2018 15:01:32 -0600 Date: Mon, 25 Jun 2018 15:01:32 -0600 From: Jason Gunthorpe To: Tom Talpey Cc: longli@microsoft.com, Steve French , linux-cifs@vger.kernel.org, samba-technical@lists.samba.org, linux-kernel@vger.kernel.org, linux-rdma@vger.kernel.org Subject: Re: [Patch v2 02/15] CIFS: Add support for direct pages in rdata Message-ID: <20180625210132.GB5381@ziepe.ca> References: <20180530194807.31657-1-longli@linuxonhyperv.com> <20180530194807.31657-3-longli@linuxonhyperv.com> <67b8afe7-f5e0-b36a-fcc1-87f1ae08eaa4@talpey.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <67b8afe7-f5e0-b36a-fcc1-87f1ae08eaa4@talpey.com> User-Agent: Mutt/1.5.24 (2015-08-30) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Jun 23, 2018 at 09:50:20PM -0400, Tom Talpey wrote: > On 5/30/2018 3:47 PM, Long Li wrote: > >From: Long Li > > > >Add a function to allocate rdata without allocating pages for data > >transfer. This gives the caller an option to pass a number of pages > >that point to the data buffer. > > > >rdata is still reponsible for free those pages after it's done. > > "Caller" is still responsible? Or is the rdata somehow freeing itself > via another mechanism? > > > > >Signed-off-by: Long Li > > fs/cifs/cifsglob.h | 2 +- > > fs/cifs/file.c | 23 ++++++++++++++++++++--- > > 2 files changed, 21 insertions(+), 4 deletions(-) > > > >diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h > >index 8d16c3e..56864a87 100644 > >+++ b/fs/cifs/cifsglob.h > >@@ -1179,7 +1179,7 @@ struct cifs_readdata { > > unsigned int tailsz; > > unsigned int credits; > > unsigned int nr_pages; > >- struct page *pages[]; > >+ struct page **pages; > > Technically speaking, these are syntactically equivalent. It may not > be worth changing this historic definition. [] is a C99 'flex array', it has a different allocation behavior than ** and is not interchangeable.. Jason