From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-9.1 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, INCLUDES_PATCH,MAILING_LIST_MULTI,NICE_REPLY_A,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_1 autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 83E64C47420 for ; Mon, 28 Sep 2020 19:13:01 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id F26E02073A for ; Mon, 28 Sep 2020 19:13:00 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=oracle.com header.i=@oracle.com header.b="jnhx7F4Q" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org F26E02073A Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=oracle.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id F38486B0093; Mon, 28 Sep 2020 15:12:59 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id EE6DC6B0095; Mon, 28 Sep 2020 15:12:59 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id DD68C8E0001; Mon, 28 Sep 2020 15:12:59 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0025.hostedemail.com [216.40.44.25]) by kanga.kvack.org (Postfix) with ESMTP id C56636B0093 for ; Mon, 28 Sep 2020 15:12:59 -0400 (EDT) Received: from smtpin29.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay05.hostedemail.com (Postfix) with ESMTP id 733AE181AE86B for ; Mon, 28 Sep 2020 19:12:59 +0000 (UTC) X-FDA: 77313417678.29.skin79_5d09e2d27184 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin29.hostedemail.com (Postfix) with ESMTP id 49CDC18086CAC for ; Mon, 28 Sep 2020 19:12:59 +0000 (UTC) X-HE-Tag: skin79_5d09e2d27184 X-Filterd-Recvd-Size: 6106 Received: from userp2120.oracle.com (userp2120.oracle.com [156.151.31.85]) by imf34.hostedemail.com (Postfix) with ESMTP for ; Mon, 28 Sep 2020 19:12:58 +0000 (UTC) Received: from pps.filterd (userp2120.oracle.com [127.0.0.1]) by userp2120.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08SJ90B3005177; Mon, 28 Sep 2020 19:12:47 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=subject : to : cc : references : from : message-id : date : mime-version : in-reply-to : content-type : content-transfer-encoding; s=corp-2020-01-29; bh=wL+FSbzPDyTOZYHdyTb21RdbTIUYUYpk4JKjFqxA86c=; b=jnhx7F4QDGM1NbmcFShUQeKxzQtv/FzNCBRIsBkwEQLErIqyQUey6TgIGFgKX7uHgxiW F9ni7U2s7HEgZXKtynTlY11+yJOzYADgZMp68Zihx4UrjNBV+2yr5UVpOQQPi7JEoSVv 8FdlqPxaraU8lm2MrDyrL8VXC9W9L/bnM0kgFxIxTlvcIMfhLygVSErP/gGWHXBsLIY2 2Hhok61N4fxmajmXTKNsRx6QuD+4ZGMQyO9HYLggNt+u6KG6uE/7XbDJRy3msKXdCMVH LV8sRdBZ7/vP7dW8wzdiKpkwHsgZN/Lt2pMcJyaJQSgiv5MP89H0idklvHh5b/IBP0fP SQ== Received: from aserp3020.oracle.com (aserp3020.oracle.com [141.146.126.70]) by userp2120.oracle.com with ESMTP id 33sx9mxt5x-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=FAIL); Mon, 28 Sep 2020 19:12:46 +0000 Received: from pps.filterd (aserp3020.oracle.com [127.0.0.1]) by aserp3020.oracle.com (8.16.0.42/8.16.0.42) with SMTP id 08SJAOOe011172; Mon, 28 Sep 2020 19:12:46 GMT Received: from aserv0122.oracle.com (aserv0122.oracle.com [141.146.126.236]) by aserp3020.oracle.com with ESMTP id 33tfhwnf26-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 28 Sep 2020 19:12:46 +0000 Received: from abhmp0009.oracle.com (abhmp0009.oracle.com [141.146.116.15]) by aserv0122.oracle.com (8.14.4/8.14.4) with ESMTP id 08SJCbl6008284; Mon, 28 Sep 2020 19:12:37 GMT Received: from [10.74.86.78] (/10.74.86.78) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Mon, 28 Sep 2020 12:12:36 -0700 Subject: Re: [PATCH v5 10/17] mm/memremap_pages: convert to 'struct range' To: Dan Williams , akpm@linux-foundation.org Cc: Paul Mackerras , Michael Ellerman , Benjamin Herrenschmidt , Vishal Verma , Vivek Goyal , Dave Jiang , Ben Skeggs , David Airlie , Daniel Vetter , Ira Weiny , Bjorn Helgaas , Juergen Gross , Stefano Stabellini , =?UTF-8?B?SsOpcsO0bWUgR2xpc3Nl?= , dave.hansen@linux.intel.com, linux-mm@kvack.org, linux-nvdimm@lists.01.org, linux-kernel@vger.kernel.org References: <160106109960.30709.7379926726669669398.stgit@dwillia2-desk3.amr.corp.intel.com> <160106115761.30709.13539840236873663620.stgit@dwillia2-desk3.amr.corp.intel.com> From: boris.ostrovsky@oracle.com Organization: Oracle Corporation Message-ID: <6186fa28-d123-12db-6171-a75cb6e615a5@oracle.com> Date: Mon, 28 Sep 2020 15:12:32 -0400 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:78.0) Gecko/20100101 Thunderbird/78.2.2 MIME-Version: 1.0 In-Reply-To: <160106115761.30709.13539840236873663620.stgit@dwillia2-desk3.amr.corp.intel.com> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Content-Language: en-US X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9758 signatures=668680 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 mlxlogscore=999 bulkscore=0 phishscore=0 malwarescore=0 adultscore=0 suspectscore=0 mlxscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009280146 X-Proofpoint-Virus-Version: vendor=nai engine=6000 definitions=9758 signatures=668680 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxlogscore=999 suspectscore=0 phishscore=0 mlxscore=0 lowpriorityscore=0 adultscore=0 clxscore=1011 spamscore=0 impostorscore=0 malwarescore=0 bulkscore=0 priorityscore=1501 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2006250000 definitions=main-2009280146 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On 9/25/20 3:12 PM, Dan Williams wrote: > > diff --git a/drivers/xen/unpopulated-alloc.c b/drivers/xen/unpopulated-alloc.c > index 3b98dc921426..091b8669eca3 100644 > --- a/drivers/xen/unpopulated-alloc.c > +++ b/drivers/xen/unpopulated-alloc.c > @@ -18,27 +18,37 @@ static unsigned int list_count; > static int fill_list(unsigned int nr_pages) > { > struct dev_pagemap *pgmap; > + struct resource *res; > void *vaddr; > unsigned int i, alloc_pages = round_up(nr_pages, PAGES_PER_SECTION); > - int ret; > + int ret = -ENOMEM; > + > + res = kzalloc(sizeof(*res), GFP_KERNEL); > + if (!res) > + return -ENOMEM; > > pgmap = kzalloc(sizeof(*pgmap), GFP_KERNEL); > if (!pgmap) > - return -ENOMEM; > + goto err_pgmap; > > pgmap->type = MEMORY_DEVICE_GENERIC; Can you move these last 5 lines ... > - pgmap->res.name = "Xen scratch"; > - pgmap->res.flags = IORESOURCE_MEM | IORESOURCE_BUSY; > + res->name = "Xen scratch"; > + res->flags = IORESOURCE_MEM | IORESOURCE_BUSY; > > - ret = allocate_resource(&iomem_resource, &pgmap->res, > + ret = allocate_resource(&iomem_resource, res, > alloc_pages * PAGE_SIZE, 0, -1, > PAGES_PER_SECTION * PAGE_SIZE, NULL, NULL); > if (ret < 0) { > pr_err("Cannot allocate new IOMEM resource\n"); > - kfree(pgmap); > - return ret; > + goto err_resource; > } > ... here, so that we deal with pgmap in the same place? The diff will be slightly larger but the code will read better I think. -boris > + pgmap->range = (struct range) { > + .start = res->start, > + .end = res->end, > + }; > + pgmap->owner = res; > + > #ifdef CONFIG_XEN_HAVE_PVMMU > /* > * memremap will build page tables for the new memory so