From patchwork Fri May 10 13:50:24 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938861 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id B0637112C for ; Fri, 10 May 2019 13:50:47 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A05F428C3A for ; Fri, 10 May 2019 13:50:47 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 9481828C3D; Fri, 10 May 2019 13:50:47 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 35F7128C3A for ; Fri, 10 May 2019 13:50:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 564456B0291; Fri, 10 May 2019 09:50:43 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 4521A6B028F; Fri, 10 May 2019 09:50:43 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0F19C6B0287; Fri, 10 May 2019 09:50:43 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pg1-f198.google.com (mail-pg1-f198.google.com [209.85.215.198]) by kanga.kvack.org (Postfix) with ESMTP id C170D6B0288 for ; Fri, 10 May 2019 09:50:42 -0400 (EDT) Received: by mail-pg1-f198.google.com with SMTP id e14so4086874pgg.12 for ; Fri, 10 May 2019 06:50:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=x3QMzWs32Ka8iEInbNwmU942Ku6RIUdAQkunVS8M82U=; b=d9cZpZUdsIb0EGf6OCZf0UwSEv3iW+WSFcXvk/O+JfWiJnHOHAKnvyIYXHuBuMsnXV MURngenMxLvCF3cwROlEbIZ11KFJVHXisXPYhFNDFQ+RmBo7fOp1mt4LYu43PDd73gPi ae7baPIJJiXHfclqQX4n/pLeUnF09IS3UJxr5xH5szR2AckV1YZXQG8AzyVuUgU+THOl s14N4Ke90wx/sbTY2bq1ss5leOZ7XpOn2vKQ+wvRiSCX8b2ujPIEG/DZPThsR9jNrQpr hOw0DNFbxKbGViQGeRnWufzaAdtRYIKZBzgVz0SfSfkukv0V47yP4edVVT9na0SfvSol 786w== X-Gm-Message-State: APjAAAVGc+6rAkfDXzcpRMth+v1lzK5KXJKtiqTKwDMigfu1m9kOYLDv aT6HcdtHFKrZ2g251Z7Op090ls0/WubjlpgNf9VUTkqIJ/VLb3InzXr8/yB6J5TiErK4e7B4Aj/ EB5NupGzMnPbhxm580OiIWUNYJJqZqsYuC8R0P/ogbCO8VSpkqVLJHwCGaaGNDAljmQ== X-Received: by 2002:aa7:8251:: with SMTP id e17mr14617535pfn.147.1557496242215; Fri, 10 May 2019 06:50:42 -0700 (PDT) X-Google-Smtp-Source: APXvYqxmQ8xvgjxJikLQyY2bPTqiO3/QlDkeOo1r/gVXXYc0zkyDIozDMEO/c7RgCt0Qnl0NSfFF X-Received: by 2002:aa7:8251:: with SMTP id e17mr14617339pfn.147.1557496240785; Fri, 10 May 2019 06:50:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496240; cv=none; d=google.com; s=arc-20160816; b=ovvH65xja+TNBsHOmpU6AHIr91m+w8oWM6eMwTSTkvlt8+ibRI62wASymjumSIFMXP hCJi+DF7U/e3hvqis6tyiHBoQMfBkcklZJKwpl9C/zAWSRK8RKvF7/mzZqsoQ6QxAYAK YJyTwdlpUncb69WbQjrOfesHredYsMj+Ec1JEB7sR5n7bs1SY2Bqi9Fe3su0Lz/0Vsq+ pXLavbCtUv68BKH1no2R4htypaWAss1DbtGNTIyKg32gY2ma7rhJ+ndXqZc6Zab9h6eF HF4dDjTcbiF2jAac2v2Hv6R8oRoC0HNmWnD7OwmPLwJhwj/5Dxh9Wglpt9fBlaXMYE4U UNSQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=x3QMzWs32Ka8iEInbNwmU942Ku6RIUdAQkunVS8M82U=; b=KUlrGNbYspxWjXSTV3kNpur9LFe1umbwqB5kU5yj9aSWWmqSAHadBBrIwaP9eEuRvB VrlKI001VrvRDFsVz/cL2Jc3c+SgyzyxC4+Z3rfTHy8Bh07Ai9cvcHPKrkOzKOVWy3mQ G8E2DclfEGTGUyJlzvs3rsRXQ9H0RYKXD8hZUlXo7xkrZWsdDu8e2mm11vul/SmIJ4q0 M6YZ0/BedJ8YrinTfr9lW76/n0mXBA2MfO5zUrkxNeaGpy4rSPb0oiAWHOT3MIdAcgi3 d6MoGv5gMM1qKFnlDHzQCgXNjyskWPIAVa2tEnkMF6hGbHy19QCV6FE8ETp3w6f5btDy OzRg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=FcPOknlM; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id j1si6802235pgq.173.2019.05.10.06.50.40 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:40 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=FcPOknlM; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=x3QMzWs32Ka8iEInbNwmU942Ku6RIUdAQkunVS8M82U=; b=FcPOknlMXHmkD0S+xX0Fbm0Ze rFpDuGDSx1wH1J809MOUuJLOT+sn+mXG7OAA2ZMJrJdXmP8+oXRgKps056fst30tlGkdHun4ltPPB ljjEtsARBYkdqUbVnDUgvvbxfygdr0p8v5r6jdOz5NcxXpDIi20zYjyP0u7F16GrCcFbuAZnstbzR ZCs5Q8quF0UiimYuSAQ6Lx0p0nMew4iq9fcY2XTW6oPAxGb0TFDweEdGGrJd3w+dg5NxfJN0xv9Ix jJbI2+q90cvvMlGU1bjgKZdpt/TrxM+FmwiMM8IBmG5qbzp1woQwUvmG3Ne8eZ74673Gcs5wT8UjL 2IQNCXWtA==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v6-0004TJ-7o; Fri, 10 May 2019 13:50:40 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 01/15] mm: Remove gfp_flags argument from rmqueue_pcplist Date: Fri, 10 May 2019 06:50:24 -0700 Message-Id: <20190510135038.17129-2-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Unused argument. Signed-off-by: Matthew Wilcox (Oracle) --- mm/page_alloc.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 1f99db76b1ff..57373327712e 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -3161,8 +3161,8 @@ static struct page *__rmqueue_pcplist(struct zone *zone, int migratetype, /* Lock and remove page from the per-cpu list */ static struct page *rmqueue_pcplist(struct zone *preferred_zone, - struct zone *zone, gfp_t gfp_flags, - int migratetype, unsigned int alloc_flags) + struct zone *zone, int migratetype, + unsigned int alloc_flags) { struct per_cpu_pages *pcp; struct list_head *list; @@ -3194,8 +3194,8 @@ struct page *rmqueue(struct zone *preferred_zone, struct page *page; if (likely(order == 0)) { - page = rmqueue_pcplist(preferred_zone, zone, gfp_flags, - migratetype, alloc_flags); + page = rmqueue_pcplist(preferred_zone, zone, migratetype, + alloc_flags); goto out; } From patchwork Fri May 10 13:50:25 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938859 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 66643112C for ; Fri, 10 May 2019 13:50:45 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 54A6228C3D for ; Fri, 10 May 2019 13:50:45 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 491D828C45; Fri, 10 May 2019 13:50:45 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id A9DD428C3D for ; Fri, 10 May 2019 13:50:44 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 0F5986B028B; Fri, 10 May 2019 09:50:43 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 07C006B028C; Fri, 10 May 2019 09:50:42 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E37F36B028B; Fri, 10 May 2019 09:50:42 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pf1-f199.google.com (mail-pf1-f199.google.com [209.85.210.199]) by kanga.kvack.org (Postfix) with ESMTP id AA4096B0287 for ; Fri, 10 May 2019 09:50:42 -0400 (EDT) Received: by mail-pf1-f199.google.com with SMTP id 5so4154433pff.11 for ; Fri, 10 May 2019 06:50:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=yieLPTiJ/w5q+ZATwrCdQrxoQxWL2rhW/PBUbYFBM/8=; b=C0NNhDsEIlBLNAkVhe+OsyyKzpJyodq4zsew4ljsQfNKF7q/5O+hPTJ8lrsOpBmhRG uj/KJq/b9YEjAvi5dBbj8R97pWZR8Mv1u95wpGOCOTdWahRIi9cJUIBwFgZomKdA7yrK fe0hUdAnalfypY/bTev+DjwHbjArzwTy5lqQmAwXdnjZcEOYZrbHGAzjJdP/Yc5JzYXn C3h7Ewue3l1vYUA4C12SRtqPwTvgraNNVqL16yASlMqSxR1/QvOk2AJFKlAwIFWXwuPF rub+5OpsMCuDqH0zruCsBJP7/3/i/ScB4hUmBlB2FmzKLFGgAr3EVxYJtXrpvYXMupfT uf1w== X-Gm-Message-State: APjAAAV4LJ04oRjBC+RFF2v1H7eGIEBnQjn5i++Qb17aY+kNAuEyEe3W 7Ajx5AfOu6L0gAhUS5GY8SN0Bb9z43NPMWc5+XTpCeJ3hCRvDP2x7W5yB7B7MDBTRcX75iuOMVT ttwGX8NEKq0jjD2rbHBHsAnFjkIVj26vaT5FpRoVy/wPaZ9BjGI/+r1TrRgcshJ9gTA== X-Received: by 2002:a17:902:7486:: with SMTP id h6mr13036872pll.58.1557496242196; Fri, 10 May 2019 06:50:42 -0700 (PDT) X-Google-Smtp-Source: APXvYqwlOfjURb50W7fAFMdbEhHOTPPc/cXiCQR01ezgYYUQg9Ac3OTkISaubH1md5nIHbxrljQ+ X-Received: by 2002:a17:902:7486:: with SMTP id h6mr13036729pll.58.1557496240902; Fri, 10 May 2019 06:50:40 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496240; cv=none; d=google.com; s=arc-20160816; b=IjVz5GPJB5rSkuapUrUBMzIbAzjjyHsiEL8LccDZw6FRsgg1Z/MVgK7Z8BVd7wuDdA bGdItgHGrNgQo9pB7n75+oiaIh8WkP0cTTAtUHbM/mJWnKrtuIdPhE5xQp7kVkaZtsls vl6eRB/b0FRzyFpFTZEvEEWLD6YvxJZEqs3+A48gTEDdGtxTF4KMkcX5Ev+KylInRE9y X/v/VQTrrxz6w+zgiljyXBVv6vB0TqkZRgnwnGt8xej12bEp4QElOMehwUYzmLC5RWLx PysgLf4QWLMnlUel1eJCYu8VbykwFc4Q6UKYnmE87aVQ9tb9fUB0sT0IgGJpojjaVjzv dDIg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=yieLPTiJ/w5q+ZATwrCdQrxoQxWL2rhW/PBUbYFBM/8=; b=jJZW6ME6rC5homL9l/eEDM6GtBVDi21tuREf3c0Ww1nFE5kBP4VCQXQrT/h/2qIRc4 5keRsMBuaXn5NB4XVHpOEX2GgSvQh81FHF9f2warSAYcL+NsJbFrM6Xsah+xNjCxGDlc im3RmkBRfUYlr36yw2h4kVu/UNhBWuf3JblX0dgssbGgd8QPTIfCCT6XCUhuHQkeNHcD eK5HPimOcPW2WtwNdTYN+/qlxGvN/F2tEwWxew9oK0Zoppfi9LlXu4reMPhHcTUDFwVY iGTvrdCGdJY4WSYwZ5W232J33E/g1qe2A7sGKLEyR7a4h7E0gVvd2u+VBCNzatJGZ3de S13A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=MF2iXPw7; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id c10si8097501pge.278.2019.05.10.06.50.40 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:40 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=MF2iXPw7; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=yieLPTiJ/w5q+ZATwrCdQrxoQxWL2rhW/PBUbYFBM/8=; b=MF2iXPw7lxMPJw4ZofckmxXe5 5vTSFP9+9VQApg9apttxp0tzYyuBmYas3yfKBrpCJzWn++vvcSptrSrX1+y9dBsys+RlP2T/ya5WQ eqL+euBAFQVP9grVc5RxtV/KpvSVozM/g7Faqunurm6esHvwzpUNnj3YWSRLXein1UJ58e7foFACs jVlwY0CFmsJ1Et8LMa+/DHEAzQx5xt/Z5eOwBPN0RszmUdDbGfh4uqu+rl30IR2jTLFsggy1bY47s A0v8Gub33AKP5st2JK+hbuo7mBUZ05745Le60VA42UV5fSyoCIrgHLmcXQyD1RhmCAYqCAR85rSUf 1KIbNZhlQ==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v6-0004TR-D9; Fri, 10 May 2019 13:50:40 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 02/15] mm: Pass order to __alloc_pages_nodemask in GFP flags Date: Fri, 10 May 2019 06:50:25 -0700 Message-Id: <20190510135038.17129-3-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Save marshalling an extra argument in all the callers at the expense of using five bits of the GFP flags. We still have three GFP bits remaining after doing this (and we can release one more by reallocating NORETRY, RETRY_MAYFAIL and NOFAIL). Signed-off-by: Matthew Wilcox (Oracle) --- include/linux/gfp.h | 18 +++++++++++++++--- include/linux/migrate.h | 2 +- mm/hugetlb.c | 5 +++-- mm/mempolicy.c | 5 +++-- mm/page_alloc.c | 4 ++-- 5 files changed, 24 insertions(+), 10 deletions(-) diff --git a/include/linux/gfp.h b/include/linux/gfp.h index fb07b503dc45..c466b08df0ec 100644 --- a/include/linux/gfp.h +++ b/include/linux/gfp.h @@ -219,6 +219,18 @@ struct vm_area_struct; /* Room for N __GFP_FOO bits */ #define __GFP_BITS_SHIFT (23 + IS_ENABLED(CONFIG_LOCKDEP)) #define __GFP_BITS_MASK ((__force gfp_t)((1 << __GFP_BITS_SHIFT) - 1)) +#define __GFP_ORDER(order) ((__force gfp_t)(order << __GFP_BITS_SHIFT)) +#define __GFP_PMD __GFP_ORDER(PMD_SHIFT - PAGE_SHIFT) +#define __GFP_PUD __GFP_ORDER(PUD_SHIFT - PAGE_SHIFT) + +/* + * Extract the order from a GFP bitmask. + * Must be the top bits to avoid an AND operation. Don't let + * __GFP_BITS_SHIFT get over 27, or we won't be able to encode orders + * above 15 (some architectures allow configuring MAX_ORDER up to 64, + * but I doubt larger than 31 are ever used). + */ +#define gfp_order(gfp) (((__force unsigned int)gfp) >> __GFP_BITS_SHIFT) /** * DOC: Useful GFP flag combinations @@ -464,13 +476,13 @@ static inline void arch_alloc_page(struct page *page, int order) { } #endif struct page * -__alloc_pages_nodemask(gfp_t gfp_mask, unsigned int order, int preferred_nid, - nodemask_t *nodemask); +__alloc_pages_nodemask(gfp_t gfp_mask, int preferred_nid, nodemask_t *nodemask); static inline struct page * __alloc_pages(gfp_t gfp_mask, unsigned int order, int preferred_nid) { - return __alloc_pages_nodemask(gfp_mask, order, preferred_nid, NULL); + return __alloc_pages_nodemask(gfp_mask | __GFP_ORDER(order), + preferred_nid, NULL); } /* diff --git a/include/linux/migrate.h b/include/linux/migrate.h index e13d9bf2f9a5..ba4385144cc9 100644 --- a/include/linux/migrate.h +++ b/include/linux/migrate.h @@ -50,7 +50,7 @@ static inline struct page *new_page_nodemask(struct page *page, if (PageHighMem(page) || (zone_idx(page_zone(page)) == ZONE_MOVABLE)) gfp_mask |= __GFP_HIGHMEM; - new_page = __alloc_pages_nodemask(gfp_mask, order, + new_page = __alloc_pages_nodemask(gfp_mask | __GFP_ORDER(order), preferred_nid, nodemask); if (new_page && PageTransHuge(new_page)) diff --git a/mm/hugetlb.c b/mm/hugetlb.c index bf58cee30f65..c8ee747ca437 100644 --- a/mm/hugetlb.c +++ b/mm/hugetlb.c @@ -1409,10 +1409,11 @@ static struct page *alloc_buddy_huge_page(struct hstate *h, int order = huge_page_order(h); struct page *page; - gfp_mask |= __GFP_COMP|__GFP_RETRY_MAYFAIL|__GFP_NOWARN; + gfp_mask |= __GFP_COMP | __GFP_RETRY_MAYFAIL | __GFP_NOWARN | + __GFP_ORDER(order); if (nid == NUMA_NO_NODE) nid = numa_mem_id(); - page = __alloc_pages_nodemask(gfp_mask, order, nid, nmask); + page = __alloc_pages_nodemask(gfp_mask, nid, nmask); if (page) __count_vm_event(HTLB_BUDDY_PGALLOC); else diff --git a/mm/mempolicy.c b/mm/mempolicy.c index 2219e747df49..310ad69effdd 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -2093,7 +2093,8 @@ alloc_pages_vma(gfp_t gfp, int order, struct vm_area_struct *vma, nmask = policy_nodemask(gfp, pol); preferred_nid = policy_node(gfp, pol, node); - page = __alloc_pages_nodemask(gfp, order, preferred_nid, nmask); + page = __alloc_pages_nodemask(gfp | __GFP_ORDER(order), preferred_nid, + nmask); mpol_cond_put(pol); out: return page; @@ -2129,7 +2130,7 @@ struct page *alloc_pages_current(gfp_t gfp, unsigned order) if (pol->mode == MPOL_INTERLEAVE) page = alloc_page_interleave(gfp, order, interleave_nodes(pol)); else - page = __alloc_pages_nodemask(gfp, order, + page = __alloc_pages_nodemask(gfp | __GFP_ORDER(order), policy_node(gfp, pol, numa_node_id()), policy_nodemask(gfp, pol)); diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 57373327712e..6e968ab91660 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -4622,11 +4622,11 @@ static inline void finalise_ac(gfp_t gfp_mask, struct alloc_context *ac) * This is the 'heart' of the zoned buddy allocator. */ struct page * -__alloc_pages_nodemask(gfp_t gfp_mask, unsigned int order, int preferred_nid, - nodemask_t *nodemask) +__alloc_pages_nodemask(gfp_t gfp_mask, int preferred_nid, nodemask_t *nodemask) { struct page *page; unsigned int alloc_flags = ALLOC_WMARK_LOW; + unsigned int order = gfp_order(gfp_mask); gfp_t alloc_mask; /* The gfp_t that was actually used for allocation */ struct alloc_context ac = { }; From patchwork Fri May 10 13:50:26 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938867 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 998A5112C for ; Fri, 10 May 2019 13:50:54 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8877F28C3A for ; Fri, 10 May 2019 13:50:54 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 7CE8F28C3D; Fri, 10 May 2019 13:50:54 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 1CFBB28C3A for ; Fri, 10 May 2019 13:50:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EC7F96B0289; Fri, 10 May 2019 09:50:43 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id D7CDC6B0293; Fri, 10 May 2019 09:50:43 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 759166B028D; Fri, 10 May 2019 09:50:43 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pl1-f197.google.com (mail-pl1-f197.google.com [209.85.214.197]) by kanga.kvack.org (Postfix) with ESMTP id 10D226B028D for ; Fri, 10 May 2019 09:50:43 -0400 (EDT) Received: by mail-pl1-f197.google.com with SMTP id 61so2646839plr.21 for ; Fri, 10 May 2019 06:50:43 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=dfTZNTkYRHK8kF0M38AMgEw9C3ttVHJ548y3MQnHBKE=; b=G8+wR28SaN4CuNa/3PR4l2EJnaTGNCJ7FxM92Nq8xyDbK1LIXcZ9JmgYdDOUEYYDTh cK4+N3kLxuD2sf3wI9SdvpBah98/huAxVheBG0zeVN/9KXsT+niDNJm67zfl1XODZ1nB bR2vKkPnYrxV6Z7zfQaeUeFhKjmreim9Rm3inCF1tMq/gjOIKPMjzfh3Ma29gJ/l0F8t 6xd2mn78BN679HmCLcqbcNALgaNzIp9sruHnq9uUB0HdgIAIKuqqS/D2mABnls73b9/j Cnqg9JTn+a8uqKmOsTQre77qIhqBOiNnC4+ls1V0Otr1uyjF8wGvaLViLDpvcu89nULC kiOA== X-Gm-Message-State: APjAAAUoKSMkBlcPfbE1nWVc0L6ngzbFd1eSo2FSkOklHSR4UHxT1Ahc Vyl44SyN86t41tfwqPpub5U8tzSV2u1gsZw5h8Nu2PWUcHhKBZvz8sOnI0w8OAFmctmty5AzGxj PC4yoSfKlWWoYznV/PekloriiqKuVCdLw+ND2t1A6EEV7OBvBTylX78NL6sw5aQ42Lw== X-Received: by 2002:a63:4710:: with SMTP id u16mr2821497pga.447.1557496242633; Fri, 10 May 2019 06:50:42 -0700 (PDT) X-Google-Smtp-Source: APXvYqx+GF16ObzBonVdVoUXCD8PA/K3xbEHoxxbJbLKE6VEOjUtRoPTdi3lZsWIfS582Kk/urrz X-Received: by 2002:a63:4710:: with SMTP id u16mr2821319pga.447.1557496241087; Fri, 10 May 2019 06:50:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496241; cv=none; d=google.com; s=arc-20160816; b=Brum14NBK+iscMQNdtrXtl6jqkQF1Dx6MBNok4lFnFa6EZ2qLutbUEuSODdMjxj0cy U8r6Ny+DaJf9VR0JyNmm+6FSP7mR188Ph1zrV04SUXes+GI6H+ZMvf/yehmTnOAU/9Uj zbEgj81Up3/aHT/RPWUAVniL03lGD7stKzGQHmgFAGIXwjoriAzXf35Q3U2Qmfadz4XR wprhtj6j0XvzRWyMFLb96nhFAMYa3ONnhuon9WTWgSL9kezEX9vBn5SK3FpguwoKwPTW XvhzS8Be4t6lBm3DVEAIc4efV4AEqTx3XFtbR8geXWX7QSdGaDFrDnBGnOP3qVr8FmGn L1EQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=dfTZNTkYRHK8kF0M38AMgEw9C3ttVHJ548y3MQnHBKE=; b=x9TiAREFVLw+0cTObCElhEci0246Z7rXyE3sVQactd/gcUkUvTPrfl0aQFBEXBJZNg Uku3lGSEarlLXdoSPB1x2tIs+Vuh420WZme93pxr/v0p9WFAQ/+yYJmmQZKzcqbbWbdy kleGma4rnLRSTsJHYZ2PErvpJAayPZc2tCTKQMt1taK3rf9tbc+/o95BVkTvQ9uzLXKn NQbuSmFjaSQeuLgULvqOE0g/h3n7wDu4YH7mLlvtdMbdb8E/rhzKkjf/CF2jjGFg65Kn mttZk2OMVCVaKymFzfu6KDuR5ZokNa/myI02BkOOAv6W4p4zoRc4TiGfa9Bc1e7AiAv0 z8JA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=r7XvTFvU; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id q197si7116983pgq.411.2019.05.10.06.50.40 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:41 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=r7XvTFvU; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=dfTZNTkYRHK8kF0M38AMgEw9C3ttVHJ548y3MQnHBKE=; b=r7XvTFvUvtbaqkLFA0EBIY99Z UEhWg2KML4+gAOsDFbJFwYFz/0eHVayWVfm+dAYrATCf+k94BVXktRkkIuaNekUM9bOzPDTsigkk3 rbavvdW18UMXltdkdwjjwPMuVcrTsfXXuxQC6r6yzzK5hwQZavvyJ2o5zUzmNhYFVlVJRW2Mcxm8x hLXxDlYocLWq24OOizh99SYfjh732Zej/0szhF81+8B+0ASVGQW/oPvz29rGnOi/WPVggJy51YMJT tMIfPWxlbRoZx3Os0gcCMB1E4e0V1v+WsgXTntD/UDzqfRuR4vzpotkfQ3pvdUFgdFQFCZ7nFgKwW 6R7fhJi3g==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v6-0004TY-IU; Fri, 10 May 2019 13:50:40 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 03/15] mm: Pass order to __alloc_pages in GFP flags Date: Fri, 10 May 2019 06:50:26 -0700 Message-Id: <20190510135038.17129-4-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Matches the change to the __alloc_pages_nodemask API. Signed-off-by: Matthew Wilcox (Oracle) --- include/linux/gfp.h | 8 +++----- mm/mempolicy.c | 2 +- 2 files changed, 4 insertions(+), 6 deletions(-) diff --git a/include/linux/gfp.h b/include/linux/gfp.h index c466b08df0ec..9ddc7703ea81 100644 --- a/include/linux/gfp.h +++ b/include/linux/gfp.h @@ -478,11 +478,9 @@ static inline void arch_alloc_page(struct page *page, int order) { } struct page * __alloc_pages_nodemask(gfp_t gfp_mask, int preferred_nid, nodemask_t *nodemask); -static inline struct page * -__alloc_pages(gfp_t gfp_mask, unsigned int order, int preferred_nid) +static inline struct page *__alloc_pages(gfp_t gfp, int preferred_nid) { - return __alloc_pages_nodemask(gfp_mask | __GFP_ORDER(order), - preferred_nid, NULL); + return __alloc_pages_nodemask(gfp, preferred_nid, NULL); } /* @@ -495,7 +493,7 @@ __alloc_pages_node(int nid, gfp_t gfp_mask, unsigned int order) VM_BUG_ON(nid < 0 || nid >= MAX_NUMNODES); VM_WARN_ON((gfp_mask & __GFP_THISNODE) && !node_online(nid)); - return __alloc_pages(gfp_mask, order, nid); + return __alloc_pages(gfp_mask | __GFP_ORDER(order), nid); } /* diff --git a/mm/mempolicy.c b/mm/mempolicy.c index 310ad69effdd..0a22f106edb2 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -2011,7 +2011,7 @@ static struct page *alloc_page_interleave(gfp_t gfp, unsigned order, { struct page *page; - page = __alloc_pages(gfp, order, nid); + page = __alloc_pages(gfp | __GFP_ORDER(order), nid); /* skip NUMA_INTERLEAVE_HIT counter update if numa stats is disabled */ if (!static_branch_likely(&vm_numa_stat_key)) return page; From patchwork Fri May 10 13:50:27 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938885 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 6513E13AD for ; Fri, 10 May 2019 13:51:19 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 53BB528C3A for ; Fri, 10 May 2019 13:51:19 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 4814D28C3D; Fri, 10 May 2019 13:51:19 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D322728C3A for ; Fri, 10 May 2019 13:51:18 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C3DB76B029D; Fri, 10 May 2019 09:50:47 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id BEDA66B02A2; Fri, 10 May 2019 09:50:47 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id AB6D76B02A3; Fri, 10 May 2019 09:50:47 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pf1-f197.google.com (mail-pf1-f197.google.com [209.85.210.197]) by kanga.kvack.org (Postfix) with ESMTP id 54DF66B029D for ; Fri, 10 May 2019 09:50:47 -0400 (EDT) Received: by mail-pf1-f197.google.com with SMTP id j1so4184034pff.1 for ; Fri, 10 May 2019 06:50:47 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=RHY5H5dgXN4b1oxgjV6Sg58kOntjndk6XpDrn2FN3c0=; b=WWlsXMhVYsaau73kJuhJKQWzYjGx48Vy6o8ey1xIXGkWInr5642t42uka0c6AB9tFl S0FNbB2mdYZGpRm8PC6o1sk8WIXMJgET8a/yVyjUZcN4ztFn4DklRxWTX6fyllIIhXR+ bGxY5kiOaSt5H+mbWRvvn7Tr4oy5CVGux+qrVQ7rfFjNF9LFPFEBKHPNN6KQd0PKKFTi b2jVEgFa6TO69El2b+ilToN+j1hP0asF6arVTPhPi5yaIME/LW+BP8HVSk3Q3DKrtjXc Tjh4w43wCTEfg0BafrZHXs93DIjGCh044AgaBs3xldc8006awG5Pkq/nEiUzMiTk+8y8 fDXA== X-Gm-Message-State: APjAAAUy9TnPMmaReXRBu3lgBUV+FppxOe7ANrPnl+Z7TB8vnuYjP/G5 5kn3ufDGDoLibpkrxK8PKGmBhBNhRzWP9Cdz9vowARkD6kq1VEYPFBZ7UDyVaIYgPEkIS6rQOqm Re9VtsfOMe/CI1qy/I0Z/wack2lI8wFEdW/STgT/0DYymTor4OVhsXX6m1dvIjX4ung== X-Received: by 2002:aa7:9242:: with SMTP id 2mr14439234pfp.230.1557496246947; Fri, 10 May 2019 06:50:46 -0700 (PDT) X-Google-Smtp-Source: APXvYqwDojYAIq6AuFZDA/uJBlZgCiCC9qH47ui+stwseRnKOXbvqoU8yDL4NgX+w60ZYw5J3/hG X-Received: by 2002:aa7:9242:: with SMTP id 2mr14439038pfp.230.1557496245490; Fri, 10 May 2019 06:50:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496245; cv=none; d=google.com; s=arc-20160816; b=U/vGD2DMoANejckZQ+1QKlKQD4DRrIo1UprKeQxz/Eb6XQnCGLXWhskUlYmg3l7+oT W0fepdltWykVTvvqHjxYTNK6Ytt1hreOA1+OaxvLC0E5RdlKmwBGb2rqh9QOU26xhaB7 yvaMgjNM7zdGwIsLkJm2sHTVDyCiPrzKYK+zs+WqDanKS5IFUGS9hxpa2ACxeLQ7nHdI 5rt660gbrTfEHK6jJSYA8LtIxlSHJFzNatFho0Fy7QXdHGsMHXqmqghBO6gT7/EYju22 8T6E5TOA0OAbcjRGUe4KsIV/SbOTVA/D+OrfkBBb+mleimqdu/5VhTJMxQEjmCzw3R8O AioQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=RHY5H5dgXN4b1oxgjV6Sg58kOntjndk6XpDrn2FN3c0=; b=YF8ww5xES98/bgRDo0r9/5WuctfIG3F18/IX/6GqjZUR1JoOGFw6PJDRQukwKPjL0C UwhBvY4luo2s7byo46/tvXeEXWSpyx8yHUo2cL+IJ/ubleow9SqQxVPuSqueMUwv2mCk c+OcM8pEfVCeGF4OJcDfcCbwXVEoEAQfdfmFcK3CoOlfH3NEsiB41iTcmn2/Olx690PR APKkAPjJgWHNbHSLCVIwiyi3vo4p2mWTPCaZ8abEJDT5GpuWGIHYkk2AK1MLAVtbSLQZ FjuY8ukfi9tRLNKg2Ar4asiSmdL7hvV+FnJE5kwu2JSeL75yLc+JPBrrqasXZHkW4SZg NzVA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=EghpAUZR; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id k1si7257233pld.322.2019.05.10.06.50.41 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:41 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=EghpAUZR; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=RHY5H5dgXN4b1oxgjV6Sg58kOntjndk6XpDrn2FN3c0=; b=EghpAUZRUQe+I6NeuIG8k97L8 KdICvvmNkLrSP++jajBlIUDmGiQ4yge0cNQ9zwyHmKhW7RcICo2exbauD7E/ZW2xwBR/dHSm06PzL 0xpPteMm3M/kaAzdGO2SUDIFhzK6MXPVWzIFKggGAEdN9g7oKUMYjFyUu+0/xjt+B2qCc/NrjYsZq ZT0bAaftQw/cTwJhgSmrgRNETCukt3drqRhLTU9iFBJ/AJ8bDMvhuNopw0otdXNyradj/EWry2qre NxH5tyNs2afWiwkmIa3+fIMM02SrBCmLbiaOirn4tp9lZZGwZEA7c+/124eB1IPco0F08ESPnQJDP XjjMba8Rw==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v6-0004Te-Ns; Fri, 10 May 2019 13:50:40 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 04/15] mm: Pass order to alloc_page_interleave in GFP flags Date: Fri, 10 May 2019 06:50:27 -0700 Message-Id: <20190510135038.17129-5-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Matches the change to the __alloc_pages_nodemask API. Signed-off-by: Matthew Wilcox (Oracle) --- mm/mempolicy.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/mm/mempolicy.c b/mm/mempolicy.c index 0a22f106edb2..8d5375cdd928 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -2006,12 +2006,11 @@ bool mempolicy_nodemask_intersects(struct task_struct *tsk, /* Allocate a page in interleaved policy. Own path because it needs to do special accounting. */ -static struct page *alloc_page_interleave(gfp_t gfp, unsigned order, - unsigned nid) +static struct page *alloc_page_interleave(gfp_t gfp, unsigned nid) { struct page *page; - page = __alloc_pages(gfp | __GFP_ORDER(order), nid); + page = __alloc_pages(gfp, nid); /* skip NUMA_INTERLEAVE_HIT counter update if numa stats is disabled */ if (!static_branch_likely(&vm_numa_stat_key)) return page; @@ -2062,7 +2061,7 @@ alloc_pages_vma(gfp_t gfp, int order, struct vm_area_struct *vma, nid = interleave_nid(pol, vma, addr, PAGE_SHIFT + order); mpol_cond_put(pol); - page = alloc_page_interleave(gfp, order, nid); + page = alloc_page_interleave(gfp | __GFP_ORDER(order), nid); goto out; } @@ -2128,7 +2127,8 @@ struct page *alloc_pages_current(gfp_t gfp, unsigned order) * nor system default_policy */ if (pol->mode == MPOL_INTERLEAVE) - page = alloc_page_interleave(gfp, order, interleave_nodes(pol)); + page = alloc_page_interleave(gfp | __GFP_ORDER(order), + interleave_nodes(pol)); else page = __alloc_pages_nodemask(gfp | __GFP_ORDER(order), policy_node(gfp, pol, numa_node_id()), From patchwork Fri May 10 13:50:28 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938869 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id D2504933 for ; Fri, 10 May 2019 13:50:56 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BE0B828C3A for ; Fri, 10 May 2019 13:50:56 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id AEA3128C3D; Fri, 10 May 2019 13:50:56 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3A2DC28C3A for ; Fri, 10 May 2019 13:50:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3EF5A6B028F; Fri, 10 May 2019 09:50:44 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 27DEC6B0297; Fri, 10 May 2019 09:50:44 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A40CD6B0290; Fri, 10 May 2019 09:50:43 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pg1-f199.google.com (mail-pg1-f199.google.com [209.85.215.199]) by kanga.kvack.org (Postfix) with ESMTP id 36EF96B0288 for ; Fri, 10 May 2019 09:50:43 -0400 (EDT) Received: by mail-pg1-f199.google.com with SMTP id h14so4067241pgn.23 for ; Fri, 10 May 2019 06:50:43 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=q9WVpS/XRZo3IbNhcOGMhrxuleT/Y4xb+FSNGOlKeoQ=; b=Rquy+5w6Umt4kBYCV6GjMiD6rRuTgmEuuFCrzXdoFlBTr4RiamvO3u8F0bndiou33g fMYghkEll5mHFBBYQ/MKID2dMJsrfjmz3Smdt1ZOk7lyc7aWejHpHVi46asVXJs7jNMr EvByoxTQqCDLMsvH9ljwI8eBeVxU+t4i49JfkUjXqZZonpHUly2p34R50lYRkofVfeG/ 7fiAsldzJ3pWGVJ7ru9tq0LapJhu6PweD1aoastotmmIcXz9qnFZ5zPFhLOR8Ms6ajup 8+T9uKBMjv4lS/MIwC9MkWPcjfd+7jWVIA1ftOk1Ju9QRuPwQy/5d2REDyONSY9NnMXs A0/g== X-Gm-Message-State: APjAAAVM0HYEk+N7EcVXXE1KzYFARAqMdJkQCzgSLo4oqDx5usQgyM2D sXgJ8+iu1DuRWQMmLti4TrtsKN+lY/teCR53QM/DeEqJ07pToYNula8VsZxzYrN8w6IiKgj9ryQ QnfeGlqNMwD2kFJlDM4AzJmN8MfYUqZsiffKJypoXYEKJub+9IL41IAceDxCSvwnQFg== X-Received: by 2002:a62:2e46:: with SMTP id u67mr14523532pfu.206.1557496242681; Fri, 10 May 2019 06:50:42 -0700 (PDT) X-Google-Smtp-Source: APXvYqzg9Fg7hAF2VClkjVbShwzweJPoMQOZU6fthZOUsUV8iBS3v/pvXrWlN2oh99WW8CJJ2PzN X-Received: by 2002:a62:2e46:: with SMTP id u67mr14523369pfu.206.1557496241389; Fri, 10 May 2019 06:50:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496241; cv=none; d=google.com; s=arc-20160816; b=N3PxyrgUbN7zchhLmu8b8v0B3BlohLqXh5Gp3LxLa/96UKKhHV+bm9AY5EAjg06RmO hcXozsokAfhy3uZKxhxxz18GjZ2WmibrAbrpwViH/CrZZmMNd02IlPrpqjbzpARklDVJ nz7QxQsu4RjksdE13RYEVbg8WjC+vpptRysempecQGPkUA6BNC5Qb3k9mz2qURvP3jgu /viFLrrXMQ457wE/Jc8SALqZiEt9TeVfI9FNLTgK9BqCvxMZLDnBZ8yq9wFZZdDxQyr4 m0NktoogcOw+11LIghKBbprh0G4shJTJFJ2X3khquE0X8ShFuwbPKjo/0Fipky/chiug eH6A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=q9WVpS/XRZo3IbNhcOGMhrxuleT/Y4xb+FSNGOlKeoQ=; b=PcKh7EKRJhJ9b5/X4FG7U0vkNIUS3in2/iMhMT+BNxGnBaPar5OjvyoLn1YWstdOXK Dz3Q01D17CjexGiTFmgr6w9V4VATYXLuvGB1m4bxAjsLMCEwTG5GACT13+CQvmCtlCU+ xZbotKgUxiVlHRxzOhxD/RG+DnwZlc7Hfd/ltZL6CW+a1ln/HFJqWSgfMDh0u4utpgwu Sj9sE1TWxI7cSRNrbst03Rce6OmTXW/FWpIiriYi1YjEnTSlkxBSBRyVVMZAN7cD5aKc 3e0HeOERAPKNEUIbQjGwotc+so4jhc/UwroSLDWNRSBxmlNsAN1lqe5l512iGw1Qvshh 4hUg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=WvgmbUmS; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id k13si7264703pgh.410.2019.05.10.06.50.41 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:41 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=WvgmbUmS; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=q9WVpS/XRZo3IbNhcOGMhrxuleT/Y4xb+FSNGOlKeoQ=; b=WvgmbUmStQViYakqufiN4FIn1 lgm/TlYgHi600Llt/L9Ii78ZqHf1cltvEXFjJocIzTFpyt+1nvLPk2BoCOj3O/apZj34mSsIAaGN3 AXZXysEDw9B/9gpozNWuyWdhfAF3PFn+aaBBX69q6rFvoRguojWs5MAjZ6ZJV/TQmgygBSwSbqZbm P4GODopxHzI7Sb0FDUfBAd8DdH0iUCV5YhDBajkPKKegaDHBq/wlpCb8BwhWfG6MRHLSZl9r3qPvD sI1hPIqKDb2MKToxM0ePVJz6Y46f9djvzCPXylyLC/ixQ74BwYRlamhPsblDjeP3HeT1K3E+Lty8U QhGSuOUvA==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v6-0004Tj-Sz; Fri, 10 May 2019 13:50:40 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 05/15] mm: Pass order to alloc_pages_current in GFP flags Date: Fri, 10 May 2019 06:50:28 -0700 Message-Id: <20190510135038.17129-6-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Matches the change to the __alloc_pages_nodemask API. Signed-off-by: Matthew Wilcox (Oracle) --- include/linux/gfp.h | 4 ++-- mm/mempolicy.c | 10 ++++------ 2 files changed, 6 insertions(+), 8 deletions(-) diff --git a/include/linux/gfp.h b/include/linux/gfp.h index 9ddc7703ea81..94ba8a6172e4 100644 --- a/include/linux/gfp.h +++ b/include/linux/gfp.h @@ -511,12 +511,12 @@ static inline struct page *alloc_pages_node(int nid, gfp_t gfp_mask, } #ifdef CONFIG_NUMA -extern struct page *alloc_pages_current(gfp_t gfp_mask, unsigned order); +extern struct page *alloc_pages_current(gfp_t gfp_mask); static inline struct page * alloc_pages(gfp_t gfp_mask, unsigned int order) { - return alloc_pages_current(gfp_mask, order); + return alloc_pages_current(gfp_mask | __GFP_ORDER(order)); } extern struct page *alloc_pages_vma(gfp_t gfp_mask, int order, struct vm_area_struct *vma, unsigned long addr, diff --git a/mm/mempolicy.c b/mm/mempolicy.c index 8d5375cdd928..eec0b9c21962 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -2108,13 +2108,12 @@ alloc_pages_vma(gfp_t gfp, int order, struct vm_area_struct *vma, * %GFP_HIGHMEM highmem allocation, * %GFP_FS don't call back into a file system. * %GFP_ATOMIC don't sleep. - * @order: Power of two of allocation size in pages. 0 is a single page. * * Allocate a page from the kernel page pool. When not in - * interrupt context and apply the current process NUMA policy. + * interrupt context apply the current process NUMA policy. * Returns NULL when no page can be allocated. */ -struct page *alloc_pages_current(gfp_t gfp, unsigned order) +struct page *alloc_pages_current(gfp_t gfp) { struct mempolicy *pol = &default_policy; struct page *page; @@ -2127,10 +2126,9 @@ struct page *alloc_pages_current(gfp_t gfp, unsigned order) * nor system default_policy */ if (pol->mode == MPOL_INTERLEAVE) - page = alloc_page_interleave(gfp | __GFP_ORDER(order), - interleave_nodes(pol)); + page = alloc_page_interleave(gfp, interleave_nodes(pol)); else - page = __alloc_pages_nodemask(gfp | __GFP_ORDER(order), + page = __alloc_pages_nodemask(gfp, policy_node(gfp, pol, numa_node_id()), policy_nodemask(gfp, pol)); From patchwork Fri May 10 13:50:29 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938863 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 4252F933 for ; Fri, 10 May 2019 13:50:50 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3115528C3A for ; Fri, 10 May 2019 13:50:50 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 25B1028C3D; Fri, 10 May 2019 13:50:50 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8C27228C3A for ; Fri, 10 May 2019 13:50:49 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 883806B0292; Fri, 10 May 2019 09:50:43 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 660086B0287; Fri, 10 May 2019 09:50:43 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 29ECD6B0289; Fri, 10 May 2019 09:50:43 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pl1-f199.google.com (mail-pl1-f199.google.com [209.85.214.199]) by kanga.kvack.org (Postfix) with ESMTP id C9B2F6B0289 for ; Fri, 10 May 2019 09:50:42 -0400 (EDT) Received: by mail-pl1-f199.google.com with SMTP id a17so3733559pls.5 for ; Fri, 10 May 2019 06:50:42 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=IH5sYaGTLmuEqV+PYxXcRKN75X7GsCPszHle6ldwerc=; b=CmpYIs285I9kyXot4r53nAbcmCwln1ZMFDR5rMcuzMJljNzYAy5TIzb4YVbpfkFekx yQnPGv8eBNPN/w+ZKrwgX2sWrmyuFw7H7JUJYQseB4awPgBt2JAY9gDiC0RYOKko4oTK P9GLAFKRmijtFT04jBxBTkkZ+WTch1n7TouUXGi2SUd7IN7LE/K7RVoiVqrmn+TliPst sEeskZXaal6YP0NSCa9dCMZPFKEEykMRW5NIU0f7Kw7n/rdPLSI770TtHIOm4UoPSPfv o0z64m0rkF1wK68SOaKuKkY+pybhOw7T5rrT65YvRMBnnN9BmgenI/tiy7TrQzQMZhnY u2vQ== X-Gm-Message-State: APjAAAU4o95Kz5w91KDfIAfYMpyE3OQ1l4bJtjBSyKHD2uTJ86pSKMl3 49oZGl/fOnIGT1p9A6S5Co9NKxmGaB/pzwwp9ekGS77q86SmhLCcYMq3MtnY1GqxnmL12bKPte+ biEch+TMETlKR26CbsGs4Urd6UtdEs88uUyif/okCl5q4OtNsNTOG/eL/Yq8v11Tphw== X-Received: by 2002:a62:528b:: with SMTP id g133mr14232383pfb.246.1557496242425; Fri, 10 May 2019 06:50:42 -0700 (PDT) X-Google-Smtp-Source: APXvYqyv8255UOkeh1lkBqE3LQhZaz7FlhbEfJKH2HlcmWv2YBEAGDL4GCXL47O6QvHd6lID/G21 X-Received: by 2002:a62:528b:: with SMTP id g133mr14232258pfb.246.1557496241525; Fri, 10 May 2019 06:50:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496241; cv=none; d=google.com; s=arc-20160816; b=eWqWEItkG1PrdF3GImriOQO9at5OdJGEt0/zk9MqWOWkO+StTP2gonDP5FHXPmYX49 90HqRkAXQY7Cg3NTGr5zTaFk9/i3zrt6hV3CAIGGKkT8qkWXCL8dhcUO6hdapzweIl3T v8ft0KyTb5sX4yWu38tQa3lj7UYni444PJ9kn3ORphZxQQ7bo2TejJuM7xZ1/kWA4Gmk bMWNR3MUvKz8RpdyXsH2wabMhWr05wgNfFtQ+w56WizvYkBguR+t03HQqavA+gj+TSCA GL/w7u4gUh+3OP6JLKAb+53Zk+F5JTb3Hz8H/MSl9SaMKmP9mkllKFT/XclRDvS1B6Ix imkg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=IH5sYaGTLmuEqV+PYxXcRKN75X7GsCPszHle6ldwerc=; b=RRNkuKpM8MGI8eplTyaFkYdXDBaQ3ngNLD3aVm7L5CJ6Uu2MKnJ2MQzOjNOfIoCO1A HnkyMzeKF/2EMmPntuJr6I156NEA1uGGNGytxgqmQ0jeKACH1B3mNgPd+Bgb3L25ilfL MhCiWrudndD23T3bTuwpwLzyzNmhCOqZ4tZ9QjUTJbJIrCd+91Lc4q5qz1GrPnyPwyeA 2HknrsAZi8Gi4L3C5QwVKIqGETd7NU1n0Bync4MImvpw+607qf47LCR7e0BSC51LOhvo TRTY+aKVqMyqCu+W8YJlUr1b1RwzNnCWyfUiSa7Mmf9wHrUGlf82wNwd7m1D4HpPNxRN DJHg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=KKpKmH9R; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id y9si7570588pgq.233.2019.05.10.06.50.41 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:41 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=KKpKmH9R; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=IH5sYaGTLmuEqV+PYxXcRKN75X7GsCPszHle6ldwerc=; b=KKpKmH9Rmr9oBQhDLdvKxiel5 H+CC9S9wN+/usTQouzfL8dMTFSxotJdL3h6pQrNLYkCx/6jikLD37bHF4Vgtcj7ibunr0DMLzVS8Z gDIIuzVFU8qkX5bfy0NGotuKP4nmPyMXRudKZi94+nvi0ApxjtcD1N4maAdcBREQSss/MmwcMm291 IPxtgverV9/C1njFH+TpHOC6nOvdmgOMhT1CPHCICF0PaB+k/zWUJjbubzuACg/Pxd1zScGINLkEH EwKwCB0XUf2FW4aExnrEeIMrpWJX9BNYEBrECSvLf1mn0pHSp+MFnK0ylLrtMyTaj4swIOB9Aw5Xe 0NhWCgORg==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v7-0004Tr-1v; Fri, 10 May 2019 13:50:41 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 06/15] mm: Pass order to alloc_pages_vma in GFP flags Date: Fri, 10 May 2019 06:50:29 -0700 Message-Id: <20190510135038.17129-7-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Matches the change to the __alloc_pages_nodemask API. Signed-off-by: Matthew Wilcox (Oracle) --- include/linux/gfp.h | 20 ++++++++++---------- mm/mempolicy.c | 15 +++++++-------- mm/shmem.c | 5 +++-- 3 files changed, 20 insertions(+), 20 deletions(-) diff --git a/include/linux/gfp.h b/include/linux/gfp.h index 94ba8a6172e4..6133f77abc91 100644 --- a/include/linux/gfp.h +++ b/include/linux/gfp.h @@ -518,24 +518,24 @@ alloc_pages(gfp_t gfp_mask, unsigned int order) { return alloc_pages_current(gfp_mask | __GFP_ORDER(order)); } -extern struct page *alloc_pages_vma(gfp_t gfp_mask, int order, - struct vm_area_struct *vma, unsigned long addr, - int node, bool hugepage); -#define alloc_hugepage_vma(gfp_mask, vma, addr, order) \ - alloc_pages_vma(gfp_mask, order, vma, addr, numa_node_id(), true) +extern struct page *alloc_pages_vma(gfp_t gfp, struct vm_area_struct *vma, + unsigned long addr, int node, bool hugepage); +#define alloc_hugepage_vma(gfp, vma, addr, order) \ + alloc_pages_vma(gfp | __GFP_ORDER(order), vma, addr, numa_node_id(), \ + true) #else #define alloc_pages(gfp_mask, order) \ - alloc_pages_node(numa_node_id(), gfp_mask, order) -#define alloc_pages_vma(gfp_mask, order, vma, addr, node, false)\ - alloc_pages(gfp_mask, order) + alloc_pages_node(numa_node_id(), gfp_mask, order) +#define alloc_pages_vma(gfp, vma, addr, node, false) \ + alloc_pages(gfp, 0) #define alloc_hugepage_vma(gfp_mask, vma, addr, order) \ alloc_pages(gfp_mask, order) #endif #define alloc_page(gfp_mask) alloc_pages(gfp_mask, 0) #define alloc_page_vma(gfp_mask, vma, addr) \ - alloc_pages_vma(gfp_mask, 0, vma, addr, numa_node_id(), false) + alloc_pages_vma(gfp_mask, vma, addr, numa_node_id(), false) #define alloc_page_vma_node(gfp_mask, vma, addr, node) \ - alloc_pages_vma(gfp_mask, 0, vma, addr, node, false) + alloc_pages_vma(gfp_mask, vma, addr, node, false) extern unsigned long __get_free_pages(gfp_t gfp_mask, unsigned int order); extern unsigned long get_zeroed_page(gfp_t gfp_mask); diff --git a/mm/mempolicy.c b/mm/mempolicy.c index eec0b9c21962..e81d4a94878b 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -2032,7 +2032,6 @@ static struct page *alloc_page_interleave(gfp_t gfp, unsigned nid) * %GFP_FS allocation should not call back into a file system. * %GFP_ATOMIC don't sleep. * - * @order:Order of the GFP allocation. * @vma: Pointer to VMA or NULL if not available. * @addr: Virtual Address of the allocation. Must be inside the VMA. * @node: Which node to prefer for allocation (modulo policy). @@ -2046,8 +2045,8 @@ static struct page *alloc_page_interleave(gfp_t gfp, unsigned nid) * NULL when no page can be allocated. */ struct page * -alloc_pages_vma(gfp_t gfp, int order, struct vm_area_struct *vma, - unsigned long addr, int node, bool hugepage) +alloc_pages_vma(gfp_t gfp, struct vm_area_struct *vma, unsigned long addr, + int node, bool hugepage) { struct mempolicy *pol; struct page *page; @@ -2059,9 +2058,10 @@ alloc_pages_vma(gfp_t gfp, int order, struct vm_area_struct *vma, if (pol->mode == MPOL_INTERLEAVE) { unsigned nid; - nid = interleave_nid(pol, vma, addr, PAGE_SHIFT + order); + nid = interleave_nid(pol, vma, addr, + PAGE_SHIFT + gfp_order(gfp)); mpol_cond_put(pol); - page = alloc_page_interleave(gfp | __GFP_ORDER(order), nid); + page = alloc_page_interleave(gfp, nid); goto out; } @@ -2085,15 +2085,14 @@ alloc_pages_vma(gfp_t gfp, int order, struct vm_area_struct *vma, if (!nmask || node_isset(hpage_node, *nmask)) { mpol_cond_put(pol); page = __alloc_pages_node(hpage_node, - gfp | __GFP_THISNODE, order); + gfp | __GFP_THISNODE, 0); goto out; } } nmask = policy_nodemask(gfp, pol); preferred_nid = policy_node(gfp, pol, node); - page = __alloc_pages_nodemask(gfp | __GFP_ORDER(order), preferred_nid, - nmask); + page = __alloc_pages_nodemask(gfp, preferred_nid, nmask); mpol_cond_put(pol); out: return page; diff --git a/mm/shmem.c b/mm/shmem.c index 1bb3b8dc8bb2..fdbab5dbf1fd 100644 --- a/mm/shmem.c +++ b/mm/shmem.c @@ -1463,8 +1463,9 @@ static struct page *shmem_alloc_hugepage(gfp_t gfp, return NULL; shmem_pseudo_vma_init(&pvma, info, hindex); - page = alloc_pages_vma(gfp | __GFP_COMP | __GFP_NORETRY | __GFP_NOWARN, - HPAGE_PMD_ORDER, &pvma, 0, numa_node_id(), true); + page = alloc_pages_vma(gfp | __GFP_COMP | __GFP_NORETRY | + __GFP_NOWARN | __GFP_PMD, + &pvma, 0, numa_node_id(), true); shmem_pseudo_vma_destroy(&pvma); if (page) prep_transhuge_page(page); From patchwork Fri May 10 13:50:30 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938889 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id CFF9C1515 for ; Fri, 10 May 2019 13:51:26 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BCB8B28C3A for ; Fri, 10 May 2019 13:51:26 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B0C2028C3D; Fri, 10 May 2019 13:51:26 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id C262E28C3A for ; Fri, 10 May 2019 13:51:25 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 31C846B02A4; Fri, 10 May 2019 09:50:57 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 27B9B6B02A7; Fri, 10 May 2019 09:50:57 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id EAC686B02A4; Fri, 10 May 2019 09:50:56 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pl1-f200.google.com (mail-pl1-f200.google.com [209.85.214.200]) by kanga.kvack.org (Postfix) with ESMTP id 92B2F6B02A4 for ; Fri, 10 May 2019 09:50:56 -0400 (EDT) Received: by mail-pl1-f200.google.com with SMTP id g89so3738226plb.3 for ; Fri, 10 May 2019 06:50:56 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=usjNBCQ+qj6LaoBc8jv6CR6/S12urfuggCLXdsJwxBs=; b=isO3lhy8RLf1EjU8uOYrHKV3TlRedMiemi519NDcZs3APO0PW57mA8fILyVhr/EW2y ZhlDBmSHmMWw5EziQRS3BV0f4T2hdjgo4D9AQZFUt4AFXb/FIwGJu1OxBYmp8/0eSWrd iuni6H/eTpTOsVpGucjPaKJjGBgqanA8Ooo3UtsZotMpO3aatkyu2w81ilJnopqr2Xrz tazo3q2JD97A80sY9WWgOn6V/qktyBEUl0whf53xW72kPd+tKeUYJqW+nTVdO0wEUQ+h rJInL3Mpml7uNa4e7sjX9xtZeg/IP3gtsupd7Ezqpqphcxzz/kIO2UtxvwH6gPTy+58P ktYA== X-Gm-Message-State: APjAAAXynJY7oLlibvpAKQ22PC/IDrPk6PfJTjqGdN9Rt3P2ZSrUGPmz amRuoXN68Vw6H+vLOph0KNo+7FdwmRNyhzYIsRaYr6/Oz4EWA2aLyq9OtdFwC2y9uSOw74Bb0dH UyCd13HJpOHPt3R0cY7B1TsWFgupCTHYKZGQJXjyrt60KhRA37YqxE9ApCRVklRUL4A== X-Received: by 2002:aa7:92c4:: with SMTP id k4mr14609526pfa.183.1557496256116; Fri, 10 May 2019 06:50:56 -0700 (PDT) X-Google-Smtp-Source: APXvYqyl96LhY7m53pPQ2GIrjl5yingaxwGHINxAzhFuANO+NsXbDYQRtRJQiBR7h8mJy84WJQYE X-Received: by 2002:aa7:92c4:: with SMTP id k4mr14607596pfa.183.1557496241856; Fri, 10 May 2019 06:50:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496241; cv=none; d=google.com; s=arc-20160816; b=lDZRek0fiJui13MSwxfEX/ncGpt5JmjWJZeZ1wWNeXZBZKjetteEJo2DFN11Vkd0LQ NEQgn5QkaB9QkNjoC4ngaQ0viDzW65vla5zfxef3EHxoCPYEnk9bsCKz/9ohAJsLxtvk Art9lZqGqEgnf/rnBwy4hgJuSa2DG/PoZXXqo2g9lrJMeIODlz2RZywuuBiIe55VIY1p fegMtMfXaQsPaOQYYKiyxiLIWoIM3cF4F+kLHONBUdpr/BJhS+Qs+vzHjOQLmbyGqQ9w A2CLBEdadsmWvoZYlo6or7+pVQshr5qnyk4rpRgduhqoNr3qElB67zoN+RiMMTw/a5Aj jfeQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=usjNBCQ+qj6LaoBc8jv6CR6/S12urfuggCLXdsJwxBs=; b=SVzUCL/sZTBISZTTs5qIrrlrJxKMIY0OcFo5iN87OBTcL+ZaeNPAub5geq+mYtY7XZ 9z5P3Fs3FZ5jSrDp97D1pEOEi6BxT7CZ5/GS1nDqK9AfanV5pZ5vSTuSOxmS/IKvv6Rp SJnwSsu6ttRFyY8teKjwQxLv9qtOBInKGlknxkyoflwk4ArSgiTdkQi4S7BjKoEPF+Qe 9s3m2gFHSnFrOkqa4Mava7zoJqOfOeI5VFz30y7R/fSwssA4zGCWvmOr+/gdmuKvlV9G 5nSmHTdxDZcBvJqFQyqh5ODh1dDONCPPqJIGmOlVPs46qyUiC/HgG/Mo661g7LPlrPkj JVIg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=G+mHGCb2; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id a73si7413113pfj.174.2019.05.10.06.50.41 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:41 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=G+mHGCb2; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=usjNBCQ+qj6LaoBc8jv6CR6/S12urfuggCLXdsJwxBs=; b=G+mHGCb2x0Py+nLXWaodfIsqW dLtqiSN+rJibWNVtReM/UORuTFfzTu7CMZNQsO5FKQ+SHd2YNHRyiNIWrAAkxKY2QEbg/4hzU4jQ3 /hPiec+bXw2lLgfsBePnqP0TwjT5e2KHMBOltlStFr2XQ3UdqnpYuuGDpAHp5vSZ5Kx3Tm0wLKCUr +zpjES4w/OPtT1K3eXqMjh7nOaNNn/iSqIS32F5hQFsllp8lWzrrQOTzJfAOj+4bQ180i3Yx9Tp3f yPd/tviMr+DNCEanaNSYX97yHUAoCEPPkgE84o2LPLHTfr9znFNCU9OCiSf5QHiZD5g2JMx5pUVre /cU3tFvOA==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v7-0004Ty-6g; Fri, 10 May 2019 13:50:41 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 07/15] mm: Pass order to __alloc_pages_node in GFP flags Date: Fri, 10 May 2019 06:50:30 -0700 Message-Id: <20190510135038.17129-8-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Matches the change to the __alloc_pages_nodemask API. Also switch the order of node and gfp to match the other memory allocation APIs. Signed-off-by: Matthew Wilcox (Oracle) --- arch/ia64/kernel/uncached.c | 6 +++--- arch/ia64/sn/pci/pci_dma.c | 4 ++-- arch/powerpc/platforms/cell/ras.c | 5 ++--- arch/x86/events/intel/ds.c | 4 ++-- arch/x86/kvm/vmx/vmx.c | 4 ++-- drivers/misc/sgi-xp/xpc_uv.c | 5 ++--- include/linux/gfp.h | 9 ++++----- kernel/profile.c | 2 +- mm/filemap.c | 2 +- mm/gup.c | 4 ++-- mm/khugepaged.c | 2 +- mm/mempolicy.c | 8 ++++---- mm/migrate.c | 9 ++++----- mm/slab.c | 3 ++- mm/slob.c | 2 +- mm/slub.c | 2 +- 16 files changed, 34 insertions(+), 37 deletions(-) diff --git a/arch/ia64/kernel/uncached.c b/arch/ia64/kernel/uncached.c index 583f7ff6b589..2e53b7311777 100644 --- a/arch/ia64/kernel/uncached.c +++ b/arch/ia64/kernel/uncached.c @@ -98,9 +98,9 @@ static int uncached_add_chunk(struct uncached_pool *uc_pool, int nid) /* attempt to allocate a granule's worth of cached memory pages */ - page = __alloc_pages_node(nid, - GFP_KERNEL | __GFP_ZERO | __GFP_THISNODE, - IA64_GRANULE_SHIFT-PAGE_SHIFT); + page = __alloc_pages_node(GFP_KERNEL | __GFP_ZERO | __GFP_THISNODE | + __GFP_ORDER(IA64_GRANULE_SHIFT-PAGE_SHIFT), + nid); if (!page) { mutex_unlock(&uc_pool->add_chunk_mutex); return -1; diff --git a/arch/ia64/sn/pci/pci_dma.c b/arch/ia64/sn/pci/pci_dma.c index b7d42e4edc1f..77e24145189c 100644 --- a/arch/ia64/sn/pci/pci_dma.c +++ b/arch/ia64/sn/pci/pci_dma.c @@ -92,8 +92,8 @@ static void *sn_dma_alloc_coherent(struct device *dev, size_t size, */ node = pcibus_to_node(pdev->bus); if (likely(node >=0)) { - struct page *p = __alloc_pages_node(node, - flags, get_order(size)); + struct page *p = __alloc_pages_node(flags | + __GFP_ORDER(get_order(size)), node); if (likely(p)) cpuaddr = page_address(p); diff --git a/arch/powerpc/platforms/cell/ras.c b/arch/powerpc/platforms/cell/ras.c index 2f704afe9af3..8d2dcb07bacd 100644 --- a/arch/powerpc/platforms/cell/ras.c +++ b/arch/powerpc/platforms/cell/ras.c @@ -123,9 +123,8 @@ static int __init cbe_ptcal_enable_on_node(int nid, int order) area->nid = nid; area->order = order; - area->pages = __alloc_pages_node(area->nid, - GFP_KERNEL|__GFP_THISNODE, - area->order); + area->pages = __alloc_pages_node(GFP_KERNEL | __GFP_THISNODE | + __GFP_ORDER(area->order), nid); if (!area->pages) { printk(KERN_WARNING "%s: no page on node %d\n", diff --git a/arch/x86/events/intel/ds.c b/arch/x86/events/intel/ds.c index 7a9f5dac5abe..2de66bd6fac5 100644 --- a/arch/x86/events/intel/ds.c +++ b/arch/x86/events/intel/ds.c @@ -315,13 +315,13 @@ static void ds_clear_cea(void *cea, size_t size) preempt_enable(); } -static void *dsalloc_pages(size_t size, gfp_t flags, int cpu) +static void *dsalloc_pages(size_t size, gfp_t gfp, int cpu) { unsigned int order = get_order(size); int node = cpu_to_node(cpu); struct page *page; - page = __alloc_pages_node(node, flags | __GFP_ZERO, order); + page = __alloc_pages_node(gfp | __GFP_ZERO | __GFP_ORDER(order), node); return page ? page_address(page) : NULL; } diff --git a/arch/x86/kvm/vmx/vmx.c b/arch/x86/kvm/vmx/vmx.c index cbf66e23a1a6..b643057486ff 100644 --- a/arch/x86/kvm/vmx/vmx.c +++ b/arch/x86/kvm/vmx/vmx.c @@ -2379,13 +2379,13 @@ static __init int setup_vmcs_config(struct vmcs_config *vmcs_conf, return 0; } -struct vmcs *alloc_vmcs_cpu(bool shadow, int cpu, gfp_t flags) +struct vmcs *alloc_vmcs_cpu(bool shadow, int cpu, gfp_t gfp) { int node = cpu_to_node(cpu); struct page *pages; struct vmcs *vmcs; - pages = __alloc_pages_node(node, flags, vmcs_config.order); + pages = __alloc_pages_node(gfp | __GFP_ORDER(vmcs_config.order), node); if (!pages) return NULL; vmcs = page_address(pages); diff --git a/drivers/misc/sgi-xp/xpc_uv.c b/drivers/misc/sgi-xp/xpc_uv.c index 0c6de97dd347..ed6c4f42ce8c 100644 --- a/drivers/misc/sgi-xp/xpc_uv.c +++ b/drivers/misc/sgi-xp/xpc_uv.c @@ -240,9 +240,8 @@ xpc_create_gru_mq_uv(unsigned int mq_size, int cpu, char *irq_name, mq->mmr_blade = uv_cpu_to_blade_id(cpu); nid = cpu_to_node(cpu); - page = __alloc_pages_node(nid, - GFP_KERNEL | __GFP_ZERO | __GFP_THISNODE, - pg_order); + page = __alloc_pages_node(GFP_KERNEL | __GFP_ZERO | __GFP_THISNODE | + __GFP_ORDER(pg_order), nid); if (page == NULL) { dev_err(xpc_part, "xpc_create_gru_mq_uv() failed to alloc %d " "bytes of memory on nid=%d for GRU mq\n", mq_size, nid); diff --git a/include/linux/gfp.h b/include/linux/gfp.h index 6133f77abc91..faf3586419ce 100644 --- a/include/linux/gfp.h +++ b/include/linux/gfp.h @@ -487,13 +487,12 @@ static inline struct page *__alloc_pages(gfp_t gfp, int preferred_nid) * Allocate pages, preferring the node given as nid. The node must be valid and * online. For more general interface, see alloc_pages_node(). */ -static inline struct page * -__alloc_pages_node(int nid, gfp_t gfp_mask, unsigned int order) +static inline struct page *__alloc_pages_node(gfp_t gfp, int nid) { VM_BUG_ON(nid < 0 || nid >= MAX_NUMNODES); - VM_WARN_ON((gfp_mask & __GFP_THISNODE) && !node_online(nid)); + VM_WARN_ON((gfp & __GFP_THISNODE) && !node_online(nid)); - return __alloc_pages(gfp_mask | __GFP_ORDER(order), nid); + return __alloc_pages(gfp, nid); } /* @@ -507,7 +506,7 @@ static inline struct page *alloc_pages_node(int nid, gfp_t gfp_mask, if (nid == NUMA_NO_NODE) nid = numa_mem_id(); - return __alloc_pages_node(nid, gfp_mask, order); + return __alloc_pages_node(gfp_mask | __GFP_ORDER(order), nid); } #ifdef CONFIG_NUMA diff --git a/kernel/profile.c b/kernel/profile.c index 9c08a2c7cb1d..1453ac0b1c21 100644 --- a/kernel/profile.c +++ b/kernel/profile.c @@ -359,7 +359,7 @@ static int profile_prepare_cpu(unsigned int cpu) if (per_cpu(cpu_profile_hits, cpu)[i]) continue; - page = __alloc_pages_node(node, GFP_KERNEL | __GFP_ZERO, 0); + page = __alloc_pages_node(GFP_KERNEL | __GFP_ZERO, node); if (!page) { profile_dead_cpu(cpu); return -ENOMEM; diff --git a/mm/filemap.c b/mm/filemap.c index 3ad18fa56057..9a4d0b6e5fc3 100644 --- a/mm/filemap.c +++ b/mm/filemap.c @@ -945,7 +945,7 @@ struct page *__page_cache_alloc(gfp_t gfp) do { cpuset_mems_cookie = read_mems_allowed_begin(); n = cpuset_mem_spread_node(); - page = __alloc_pages_node(n, gfp, 0); + page = __alloc_pages_node(gfp, n); } while (!page && read_mems_allowed_retry(cpuset_mems_cookie)); return page; diff --git a/mm/gup.c b/mm/gup.c index 2c08248d4fa2..8427ff9d42e4 100644 --- a/mm/gup.c +++ b/mm/gup.c @@ -1316,14 +1316,14 @@ static struct page *new_non_cma_page(struct page *page, unsigned long private) * CMA area again. */ thp_gfpmask &= ~__GFP_MOVABLE; - thp = __alloc_pages_node(nid, thp_gfpmask, HPAGE_PMD_ORDER); + thp = __alloc_pages_node(thp_gfpmask | __GFP_PMD, nid); if (!thp) return NULL; prep_transhuge_page(thp); return thp; } - return __alloc_pages_node(nid, gfp_mask, 0); + return __alloc_pages_node(nid, gfp_mask); } static long check_and_migrate_cma_pages(struct task_struct *tsk, diff --git a/mm/khugepaged.c b/mm/khugepaged.c index a335f7c1fac4..2f643ee74edc 100644 --- a/mm/khugepaged.c +++ b/mm/khugepaged.c @@ -770,7 +770,7 @@ khugepaged_alloc_page(struct page **hpage, gfp_t gfp, int node) { VM_BUG_ON_PAGE(*hpage, *hpage); - *hpage = __alloc_pages_node(node, gfp, HPAGE_PMD_ORDER); + *hpage = __alloc_pages_node(gfp | __GFP_PMD, node); if (unlikely(!*hpage)) { count_vm_event(THP_COLLAPSE_ALLOC_FAILED); *hpage = ERR_PTR(-ENOMEM); diff --git a/mm/mempolicy.c b/mm/mempolicy.c index e81d4a94878b..a2006e5e0f67 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -974,8 +974,8 @@ struct page *alloc_new_node_page(struct page *page, unsigned long node) prep_transhuge_page(thp); return thp; } else - return __alloc_pages_node(node, GFP_HIGHUSER_MOVABLE | - __GFP_THISNODE, 0); + return __alloc_pages_node(GFP_HIGHUSER_MOVABLE | + __GFP_THISNODE, node); } /* @@ -2084,8 +2084,8 @@ alloc_pages_vma(gfp_t gfp, struct vm_area_struct *vma, unsigned long addr, nmask = policy_nodemask(gfp, pol); if (!nmask || node_isset(hpage_node, *nmask)) { mpol_cond_put(pol); - page = __alloc_pages_node(hpage_node, - gfp | __GFP_THISNODE, 0); + page = __alloc_pages_node(gfp | __GFP_THISNODE, + hpage_node); goto out; } } diff --git a/mm/migrate.c b/mm/migrate.c index f2ecc2855a12..01466e82a387 100644 --- a/mm/migrate.c +++ b/mm/migrate.c @@ -1880,11 +1880,10 @@ static struct page *alloc_misplaced_dst_page(struct page *page, int nid = (int) data; struct page *newpage; - newpage = __alloc_pages_node(nid, - (GFP_HIGHUSER_MOVABLE | - __GFP_THISNODE | __GFP_NOMEMALLOC | - __GFP_NORETRY | __GFP_NOWARN) & - ~__GFP_RECLAIM, 0); + newpage = __alloc_pages_node((GFP_HIGHUSER_MOVABLE | __GFP_THISNODE | + __GFP_NOMEMALLOC | __GFP_NORETRY | + __GFP_NOWARN) & ~__GFP_RECLAIM, + nid); return newpage; } diff --git a/mm/slab.c b/mm/slab.c index 2915d912e89a..63c3a8a0d796 100644 --- a/mm/slab.c +++ b/mm/slab.c @@ -1393,7 +1393,8 @@ static struct page *kmem_getpages(struct kmem_cache *cachep, gfp_t flags, flags |= cachep->allocflags; - page = __alloc_pages_node(nodeid, flags, cachep->gfporder); + page = __alloc_pages_node(flags | __GFP_ORDER(cachep->gfporder), + nodeid); if (!page) { slab_out_of_memory(cachep, flags, nodeid); return NULL; diff --git a/mm/slob.c b/mm/slob.c index 84aefd9b91ee..510f0941d032 100644 --- a/mm/slob.c +++ b/mm/slob.c @@ -194,7 +194,7 @@ static void *slob_new_pages(gfp_t gfp, int order, int node) #ifdef CONFIG_NUMA if (node != NUMA_NO_NODE) - page = __alloc_pages_node(node, gfp, order); + page = __alloc_pages_node(gfp | __GFP_ORDER(order), node); else #endif page = alloc_pages(gfp, order); diff --git a/mm/slub.c b/mm/slub.c index e6ce13c54cb0..51453216a1ed 100644 --- a/mm/slub.c +++ b/mm/slub.c @@ -1488,7 +1488,7 @@ static inline struct page *alloc_slab_page(struct kmem_cache *s, if (node == NUMA_NO_NODE) page = alloc_pages(flags, order); else - page = __alloc_pages_node(node, flags, order); + page = __alloc_pages_node(flags | __GFP_ORDER(order), node); if (page && memcg_charge_slab(page, flags, order, s)) { __free_pages(page, order); From patchwork Fri May 10 13:50:31 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938887 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id EDD6B13AD for ; Fri, 10 May 2019 13:51:23 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DBBB328C3A for ; Fri, 10 May 2019 13:51:23 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id CEDD228C3F; Fri, 10 May 2019 13:51:23 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 81BF028C3D for ; Fri, 10 May 2019 13:51:22 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EAF516B02A5; Fri, 10 May 2019 09:50:56 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id E5E476B02A7; Fri, 10 May 2019 09:50:56 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D2A886B02A6; Fri, 10 May 2019 09:50:56 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pf1-f198.google.com (mail-pf1-f198.google.com [209.85.210.198]) by kanga.kvack.org (Postfix) with ESMTP id 84A4A6B02A2 for ; Fri, 10 May 2019 09:50:56 -0400 (EDT) Received: by mail-pf1-f198.google.com with SMTP id x5so4178429pfi.5 for ; Fri, 10 May 2019 06:50:56 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=SRc9kn+HFVEFfAHO5FxSDOwPRCh50tB+PZDD7cIygmU=; b=SW7unpFYejAQwEkCLD77jyCD3OnY2jPf+DSlUp0alRCeYMnHmlByPXDRJ7JktBIx1s fAcjfewCcYa54XyDDb2UGLArCCUL39WbFFVsM2jDI2rq6RrhciB4VkeAjHt3bhEl5di8 YfJSibGEzxXtLK+LEpJTQ9H+tssU88v62fwmz4NIFcRgopC66cGbyLgDD+zGo7ByfwM1 q0RiWQ2K+fHJdukHIo8Sfkg4l2MXKdrH/gLfe/4DwYH5+7Djk7/188Do6BdnPKjZkt7S UkCFyTz5ECLDRIVJfT7wgvYsYOu6ScvDvk6o5Q4/klr5ePcPnTVcJvtVrjUdpsKWj5nG n3ZA== X-Gm-Message-State: APjAAAXleaTLQWFbB+sJkmpw1smg4ijQXwy7yRcCqwq/rc/eIVUDg6jG Rsp5+ikCFLj72uGBZtMkkNFYz8H5513zJPBLiXsqyyMdZEDTrm8uD0OjXN/Agay3BJsWwwpUJcR JKBcPsKnFmFOCFP+ic3m2a5fRuHLSLT5nQgKuo+OUsyVFGbismu73C+lUrLx0EFG9Ew== X-Received: by 2002:a63:754b:: with SMTP id f11mr13839355pgn.32.1557496256188; Fri, 10 May 2019 06:50:56 -0700 (PDT) X-Google-Smtp-Source: APXvYqzhoT26UzMuyEc0/gY5vKKSs1z8rH/N4F7FSeq8tFlxqM2DLFry4t0+DXcLTC0/37sQQ8MZ X-Received: by 2002:a63:754b:: with SMTP id f11mr13838130pgn.32.1557496245490; Fri, 10 May 2019 06:50:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496245; cv=none; d=google.com; s=arc-20160816; b=ZJ9DQ9ltdzT2YgqwjrBUAHSBpanD8uDGXECeMwQxPVCkSvasLsbp0EI1lSBbxpfRQ+ AlkmDz2RjhuNW0nDlrb90wo0YhQTHXLJVLd8QN/oWGZPrig18pYvLVWU1z4I0IFII6m+ cq1+0+zhStJmNgEjtdAR25UVNpG9nCLD8M5W6cv0yOuzzDx0rBySl8qUBZxtjnTKDzEC CLfSLFEZtDHY2ofAU7qtWqtLQ00lfLuJwDD0Mn1n8NsSN0Iwoq1FJ5LEBKorqR8pDvKb 6oyHNzMdIjGZi/WTsXdW6m2JYj74lu007l5rnRN3BxkNQoJAA7D1miDei+V3WEuzAqKD 04Yg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=SRc9kn+HFVEFfAHO5FxSDOwPRCh50tB+PZDD7cIygmU=; b=poZG53A3Xir3S0m92HUZ0jTAysA+HK89BGw/xklQfh453vDTPOEbUUn4I+kYiArw0m Co6+dRtp7UGMojTaMPka6AGfox5x4Uu9dzxyiFtdb65fdjBRL9ZaifC6zX3//cXdHGdP 7VeBXAj8mT4ttTcLNRcKmHIrCKtrQ2l62snaG6m5pNCsNUOw/sX/mxFuK65DtipqaOqv TZKxGjivixBlGyvim2o73dlv6gZtnIAuELax1txr55X8nlFD+phB2HnIspjMpAAr5ApV Z35MxsyEV6brErf2zcUCGu5I8k3OSd5Yb7Q8rMLsnXB0GcvuSxrE1Vt3P75zmYr+tH0G zPgw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b="K0d1or/U"; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id w12si1537930plz.280.2019.05.10.06.50.41 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:41 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b="K0d1or/U"; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=SRc9kn+HFVEFfAHO5FxSDOwPRCh50tB+PZDD7cIygmU=; b=K0d1or/UF5n1nkGyTfKVMivL9 WUIJ+mPuFcUQDWgtAC4xlPYzgwg7TpUuBZ3bgobWRZGdYar48/yopDYzy5Hs9g2FHYtjo6tqkBHQ6 Wt+r0OvksQSrGqyDpys1agi9j9zD0elp0Zvzuo0SOBUHjZBZ9d8gkletEcIT+wNSSKEq2aUKj94sY CghSAZzmfuPaJgwio/i5mzpDYosiFsDKZ0zMFKkNE1YE2v8HjLHCHXcdMtvoCCUQxm35VMox4fXUY 2WjqK995+1vcbxhMCEubxnen2oEr0ggC1u5G8JE8IegCUv3nciI+nkZslIamxtxuz2xeNWY2IHxtj zlqOap34Q==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v7-0004U4-Bd; Fri, 10 May 2019 13:50:41 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 08/15] mm: Pass order to __get_free_page in GFP flags Date: Fri, 10 May 2019 06:50:31 -0700 Message-Id: <20190510135038.17129-9-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Switch __get_free_page() to be the implementation and __get_free_pages() to be the wrapper that calls __get_free_page() with the appropriate argument. Signed-off-by: Matthew Wilcox (Oracle) --- include/linux/gfp.h | 6 +++--- mm/page_alloc.c | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/include/linux/gfp.h b/include/linux/gfp.h index faf3586419ce..dac282ac1158 100644 --- a/include/linux/gfp.h +++ b/include/linux/gfp.h @@ -536,15 +536,15 @@ extern struct page *alloc_pages_vma(gfp_t gfp, struct vm_area_struct *vma, #define alloc_page_vma_node(gfp_mask, vma, addr, node) \ alloc_pages_vma(gfp_mask, vma, addr, node, false) -extern unsigned long __get_free_pages(gfp_t gfp_mask, unsigned int order); +extern unsigned long __get_free_page(gfp_t gfp_mask); extern unsigned long get_zeroed_page(gfp_t gfp_mask); void *alloc_pages_exact(size_t size, gfp_t gfp_mask); void free_pages_exact(void *virt, size_t size); void * __meminit alloc_pages_exact_nid(int nid, size_t size, gfp_t gfp_mask); -#define __get_free_page(gfp_mask) \ - __get_free_pages((gfp_mask), 0) +#define __get_free_pages(gfp_mask, order) \ + __get_free_page(gfp_mask | __GFP_ORDER(order)) #define __get_dma_pages(gfp_mask, order) \ __get_free_pages((gfp_mask) | GFP_DMA, (order)) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 6e968ab91660..eefe3c81c383 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -4693,16 +4693,16 @@ EXPORT_SYMBOL(__alloc_pages_nodemask); * address cannot represent highmem pages. Use alloc_pages and then kmap if * you need to access high mem. */ -unsigned long __get_free_pages(gfp_t gfp_mask, unsigned int order) +unsigned long __get_free_page(gfp_t gfp_mask) { struct page *page; - page = alloc_pages(gfp_mask & ~__GFP_HIGHMEM, order); + page = alloc_page(gfp_mask & ~__GFP_HIGHMEM); if (!page) return 0; return (unsigned long) page_address(page); } -EXPORT_SYMBOL(__get_free_pages); +EXPORT_SYMBOL(__get_free_page); unsigned long get_zeroed_page(gfp_t gfp_mask) { From patchwork Fri May 10 13:50:32 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938883 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id CE88413AD for ; Fri, 10 May 2019 13:51:15 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BCFED28C3A for ; Fri, 10 May 2019 13:51:15 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id B115F28C3D; Fri, 10 May 2019 13:51:15 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5278528C3A for ; Fri, 10 May 2019 13:51:15 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 697C46B02A0; Fri, 10 May 2019 09:50:47 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 6229F6B02A2; Fri, 10 May 2019 09:50:47 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3FF5E6B02A1; Fri, 10 May 2019 09:50:47 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pl1-f197.google.com (mail-pl1-f197.google.com [209.85.214.197]) by kanga.kvack.org (Postfix) with ESMTP id 092306B029D for ; Fri, 10 May 2019 09:50:47 -0400 (EDT) Received: by mail-pl1-f197.google.com with SMTP id g11so3703503plt.23 for ; Fri, 10 May 2019 06:50:47 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=DcVuILn13FfUqLdv2VznsgASPoufcMHzUgxnV9bVUr0=; b=cJKENHEP09SwwDVAqDG8GOa7oGb387AaBraasb+mUiXbT7VbE0RA2pJoE1JskstCHI sytb5AZ+FNHYwwWm3nHepeijegAfGhlUVc6PXSzjydexuZNIcdZKY+0fsx/EsuUKOh0q mP2o3nHvNYyac1nKwt1XVNMrd2AXfbaX3Ou70cjpxhMRGpPr85lDGpBGWMUDQWXftUFj Yii1aZyQK1/+zBHxfNRQwAu46D7ncqKtrz9IkWSetNI6yYJSPZyQPpG8o3cTtobM2IUF XJenXpm+FDGeyg3ZdtBD+ZQm/t76aaX0pyT2TVz0a5MC9QAcBDZG6IHm0wJX/f5Qd4D1 GYTQ== X-Gm-Message-State: APjAAAX0CSJTcKYaRgnub4BeqAlTTMzJ9vdTOyNL0WDJ3zkSlTZgqZCc lb18MpSZ0iNu85awhmtkZ6x7nuOvq83ufyxP8c8gPM88qyBPOQHe+ErV7Vkj96A8BhOUmFqrky9 iRbZt4lqQ25x6o/BC2fhMjDGBZVRAx9jBnxWDE9qvtwhVF5KPo9SOC/WlrYCa+atTrQ== X-Received: by 2002:a65:554d:: with SMTP id t13mr13545436pgr.171.1557496246682; Fri, 10 May 2019 06:50:46 -0700 (PDT) X-Google-Smtp-Source: APXvYqzziuLLljQ15M4gzBFqNF9hT+VdMlUp2ceZmqcoDUKPeileBw0N51zAw3GCYOM9dFib2MoX X-Received: by 2002:a65:554d:: with SMTP id t13mr13545308pgr.171.1557496245490; Fri, 10 May 2019 06:50:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496245; cv=none; d=google.com; s=arc-20160816; b=mT54/2GSEzm++sgQob1YTkE3S1u+KjnisSx+GQNf/+jty3awYhGNKUBOpRGiHqUL19 Zs1BEZYeMIQbRAgm5NqjKTZKPQ5gA6ewc72JEryz+ZK6DR/ZGWBc4LJFeMQl/aF3R4QF GNzhdbiAC+eBOI7wTlVHS9kG5tvnesPM1F7RUzg7b0p/wcRiEDD9qzQiMFzDAs28WHT0 S7dDlXUMAZTjxHHH8e12PMs8RqjvLqjPRCs2bb0sl2vyVLaGiAhz6RNkDl9mGwgzdP8D MwFk+9OweSCh1q1eCGYmXuUJfll3itRGdUUuoqlW0VeD7wwfh8jSqJxxtNm/ljBPUnOL Z1rQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=DcVuILn13FfUqLdv2VznsgASPoufcMHzUgxnV9bVUr0=; b=ZKBVBbwVUm4mOJTCekeO7gIY6NWxIXkdPLYWASUEVt32j0rLpvUqCLsAxCoHNCKhhE N/gdrY1JZTPw4XlKMlV0tEcNXi0WoXjlQeBxreoWhIzXg1u4X4Qiz7zxuwguBhcU0Ix5 nm1tYOknxp/P+9fz5aYCJb51T+MOGlWveIy3F0K6v+YRTr+53eKAVtyeOW/CCS/xhRtl a4jiTypGN0L9JainGp2YtIpk/qTq6xpbs6ukW+oInYJtxWX0ggFtn1zt9wnWdd5s+h44 rhxk99QX76xSJPt9kbjpyyVdMyuLWgjEt5qZrJPDq03DHP8/bD6rgN9d1vTUeS3iBw7d pJuQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=PaKHOusx; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id j9si7005855plk.125.2019.05.10.06.50.41 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:41 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=PaKHOusx; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=DcVuILn13FfUqLdv2VznsgASPoufcMHzUgxnV9bVUr0=; b=PaKHOusxuf7k+VDn0MNcz1JTg sJrTfbJpHbct6ChkOtdWMUh+gg/Qf0gneIuII+ntTvSaNpLCRg5NWUMAg+Kwp1qCRdir7WZi64O4a 3ZZsNOw0UYNdXRkg1/GD4Uy7aH2N+K2hg2QR2Qf1lV/G3gs4EOyDZfBDdPhK4iHusF5jffUOHJP4p Z5l6e0lFXhrwDm+CLq0tytnsDoNWMuQmYxyzD+uPSE+6n7YkUH0rKesA2c9NyTPvy6n/Twn6DRRfc iAIL6/QjoWSB/K6HvMR6E5P0T+EPSqc1OpNurXVQGiL9J5ZGpwYSQhxT5zL+iiVmxrrHZWkeDkCK+ ECr1JIxXw==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v7-0004UB-Gi; Fri, 10 May 2019 13:50:41 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 09/15] mm: Pass order to prep_new_page in GFP flags Date: Fri, 10 May 2019 06:50:32 -0700 Message-Id: <20190510135038.17129-10-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Matches the change to the __alloc_pages_nodemask API. Signed-off-by: Matthew Wilcox (Oracle) --- mm/page_alloc.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index eefe3c81c383..91d8bafa7945 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -2071,10 +2071,11 @@ inline void post_alloc_hook(struct page *page, unsigned int order, set_page_owner(page, order, gfp_flags); } -static void prep_new_page(struct page *page, unsigned int order, gfp_t gfp_flags, - unsigned int alloc_flags) +static void prep_new_page(struct page *page, gfp_t gfp_flags, + unsigned int alloc_flags) { int i; + unsigned int order = gfp_order(gfp_flags); post_alloc_hook(page, order, gfp_flags); @@ -3615,7 +3616,7 @@ get_page_from_freelist(gfp_t gfp_mask, unsigned int order, int alloc_flags, page = rmqueue(ac->preferred_zoneref->zone, zone, order, gfp_mask, alloc_flags, ac->migratetype); if (page) { - prep_new_page(page, order, gfp_mask, alloc_flags); + prep_new_page(page, gfp_mask, alloc_flags); /* * If this is a high-order atomic allocation then check @@ -3840,7 +3841,7 @@ __alloc_pages_direct_compact(gfp_t gfp_mask, unsigned int order, /* Prep a captured page if available */ if (page) - prep_new_page(page, order, gfp_mask, alloc_flags); + prep_new_page(page, gfp_mask, alloc_flags); /* Try get a page from the freelist if available */ if (!page) From patchwork Fri May 10 13:50:33 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938871 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id CAC5A112C for ; Fri, 10 May 2019 13:50:58 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BA88328C3A for ; Fri, 10 May 2019 13:50:58 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id AEB7F28C3D; Fri, 10 May 2019 13:50:58 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 5240E28C3A for ; Fri, 10 May 2019 13:50:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6FAE76B028C; Fri, 10 May 2019 09:50:44 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 628426B0298; Fri, 10 May 2019 09:50:44 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2C7296B0296; Fri, 10 May 2019 09:50:43 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pf1-f200.google.com (mail-pf1-f200.google.com [209.85.210.200]) by kanga.kvack.org (Postfix) with ESMTP id 867466B028F for ; Fri, 10 May 2019 09:50:43 -0400 (EDT) Received: by mail-pf1-f200.google.com with SMTP id a17so4172911pff.6 for ; Fri, 10 May 2019 06:50:43 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=YXi2Vb1hST3grI1sk61d7V/axR7tySOZeDPQ8IsaO4o=; b=qXIHMmIhm2aE1m8H/3Go74qfefRwPUYRFIxicQAKajpAAK+8SGoc78i4HKUMMRkLS/ EpD+6Tmow3HD+c5gXaU2laxgfO+MYWOoqsfsnVGHTmVAibrwIdFTeqfUjRUDBCDsp7tp XDzB2NqDU5psDVk0k19Py7K4fmGKT9886VbnmRKQJsg5llDX+JMA3otc+7CuizUXKkWB Fa+WUDV4g6u/HNmtWrhqreyspyD4x4b+zsApeWULIln6yDpBdoE8QViesALpz6CxYIbo 63rmkl9Dnn/7D4NCJTKEZA4H57+zMMklxWmrltjgPv/XaIAMJGRudoNs1Ixix/ueOwxb weyA== X-Gm-Message-State: APjAAAUZFgkD9fPYLqa5RqWi2HCPh650VJ+293b5qyfwpE6wRtWC/EBZ MqXypAy+oyOM9EN23bFr40jx1ENYKbfhEwpRidyVxYOB29B6OgDXiOCj1GYuD4lZ0uhUH9EOqbW TX24e/doHp7gWNSBV5Y1k0dkgo0UHj7UBzBM4fVzsBvUh4+8qgp+yiGE8v/w3WAgi8g== X-Received: by 2002:a17:902:be09:: with SMTP id r9mr13131507pls.215.1557496243133; Fri, 10 May 2019 06:50:43 -0700 (PDT) X-Google-Smtp-Source: APXvYqxoqLtWodtWl08KLD2Df46yILHObzagoHzcs5cvWQKV7IwZbgG6QzsOP6+p3rmgkQPOVmhx X-Received: by 2002:a17:902:be09:: with SMTP id r9mr13131401pls.215.1557496242142; Fri, 10 May 2019 06:50:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496242; cv=none; d=google.com; s=arc-20160816; b=0TmwaEwWmu5CrJKf4FpJgcNqRYWylgZ/hqXRkhEGe9KAl5Y5jzGn4yES9JzvodAwjS lgk2fcWZDdiRTfSMFrTD2qNAxiRdypJ1UogTxj39C+poGEqb1AQq7tbQdLkCYV5i90na VEyn3N5Ec6XQv745ePrk6pQXeShZp0f0bJyT+XVT+yS6sNnQSVfygxFUh6q4yaIiHnZ4 J59EqN9T6J6jp233g751xfUrrBoRM68S449K6zm/djWKTJNkXKRfXW1X4zn2TpXuZaJH NifdV7DxOt2HT0qLbP+HFjfVHCvpbU9OdzldleL6UuHIerju6ObyxEdscPGqCYGGsn2e ggkA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=YXi2Vb1hST3grI1sk61d7V/axR7tySOZeDPQ8IsaO4o=; b=E+hRqocoFEEjAYFyY1xpi7+MthTbcAQbUPAluxPa2bBPCfkDQSYv5Ep7W9pdopnIX0 7cQtlH+rFurk3fn2oLimrHrpkAcNcqnzz8ZT5GW1W4U143MkvOudjU5Zbmf2Ke0VUE4e 86cY9WkfwC7qId+ZN6y9HFghKayoeSGCZhcwPBwxOBUZErRQvaFZMaGIpNP0H4ZzJ8xN UaVh7wUatGEaQJr0vPRCu7xkSMChdBihlJmDhUWv8clb9LkwSmJFaKOawHXENgVS7iuL XOluvk9kWOAIOs6wCiI/3mY0qde6VSDZd7k9ZVMscxVLvpQEBDkkuArk+GP2leM61pKS sLdg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b="r/0QAaBE"; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id b15si7943894pfb.231.2019.05.10.06.50.42 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:42 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b="r/0QAaBE"; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=YXi2Vb1hST3grI1sk61d7V/axR7tySOZeDPQ8IsaO4o=; b=r/0QAaBET2nYELz9uZmSUU8Se /QC0ORBAefxx0rya7fkAsJm05M+NuVuuth/V5L2dBsHzOW0+Lmxnbz7pjLr9zV3pdQUtzvBEj6TLy jPavN0ikTdwiN6D9DZgO6doOKE33lMZmlYn9CZUHdCUZjHtMvTnoyt+1r5qBXYCgalk3/vcZ9dY5c KpGJvXjztdarzB1Xd2ZxZyC2z9KGmzIjV1O1W59NOzTilUZ/nnxgDLl3CNi/bomPaU6hyxW7tZDbb Q5d4e3IFpfYcxqW6m7Y4v37ZiBgxOWtQZcoD6b6nE7pyAqKf/WNL/bfo9ql9WVK/3qyiTMGhZodGY uZmo5ULow==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v7-0004UH-Lj; Fri, 10 May 2019 13:50:41 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 10/15] mm: Pass order to rmqueue in GFP flags Date: Fri, 10 May 2019 06:50:33 -0700 Message-Id: <20190510135038.17129-11-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Matches the change to the __alloc_pages_nodemask API. Signed-off-by: Matthew Wilcox (Oracle) --- mm/page_alloc.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 91d8bafa7945..6cff996289be 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -3186,11 +3186,10 @@ static struct page *rmqueue_pcplist(struct zone *preferred_zone, * Allocate a page from the given zone. Use pcplists for order-0 allocations. */ static inline -struct page *rmqueue(struct zone *preferred_zone, - struct zone *zone, unsigned int order, - gfp_t gfp_flags, unsigned int alloc_flags, - int migratetype) +struct page *rmqueue(struct zone *preferred_zone, struct zone *zone, + gfp_t gfp_flags, unsigned int alloc_flags, int migratetype) { + unsigned int order = gfp_order(gfp_flags); unsigned long flags; struct page *page; @@ -3613,7 +3612,7 @@ get_page_from_freelist(gfp_t gfp_mask, unsigned int order, int alloc_flags, } try_this_zone: - page = rmqueue(ac->preferred_zoneref->zone, zone, order, + page = rmqueue(ac->preferred_zoneref->zone, zone, gfp_mask, alloc_flags, ac->migratetype); if (page) { prep_new_page(page, gfp_mask, alloc_flags); From patchwork Fri May 10 13:50:34 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938875 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 7D29C933 for ; Fri, 10 May 2019 13:51:03 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 6BEE428C3A for ; Fri, 10 May 2019 13:51:03 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 604C228C3D; Fri, 10 May 2019 13:51:03 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E0D3F28C3A for ; Fri, 10 May 2019 13:51:02 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E26FC6B0297; Fri, 10 May 2019 09:50:44 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id B7B216B029A; Fri, 10 May 2019 09:50:44 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 9AAC66B0296; Fri, 10 May 2019 09:50:44 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pf1-f200.google.com (mail-pf1-f200.google.com [209.85.210.200]) by kanga.kvack.org (Postfix) with ESMTP id D8EBE6B0295 for ; Fri, 10 May 2019 09:50:43 -0400 (EDT) Received: by mail-pf1-f200.google.com with SMTP id c7so4159704pfp.14 for ; Fri, 10 May 2019 06:50:43 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=sF+bxGTHBBT93BL/DvuLBhBopFxumPieKkRcP90cXYE=; b=B25jRK0OcxXcY1G39oD09nPc6Q+aP9odUT8RhpWrfdzjT7Wq4N3210rNdXk/+Z5+nE Dwec9udjWD7IktoXn6aD4g3inbitai73V5FcoBJkWB0JYZRVqSH94AM4VbJOyashqiSr QNM3fhQd5SxeEoahVOGnZo6QZ2QC9a5tJr8q57GjtHzCyDzIM91JQYQlftlb0bVmg1fu 3/iehSLV9/wnYbOKrnbIZZPaTPAY8vhkb9iswbtuTtQPc+ogdsUtAMvPTcNf38/+MAt7 YFW1ynSXkqspYCAE8+B1gYmuqS3Sxhf2z3ZesHXEaOmgC4I/L0l2LD/v5wvfWctRuEnD G8GQ== X-Gm-Message-State: APjAAAWhVYdPK6i4vKM+xyochhZIr2LOLT0DjKNexBytO0R+T/DxKUsV uHa8Pbnj8FpBLK7KVlnAfNKtWEAHQ4A87qSme+8MmNJj6+Ko8+qpbWh5CcJBSz8GxW43fMwQnxf FRuMuyT6aj1zuKdpzRa2J3o9lZHeFo1rpV8Xbv0acpiR+6/elN3Sl8em06IH4A3I8Bw== X-Received: by 2002:a62:d44a:: with SMTP id u10mr13852313pfl.227.1557496243558; Fri, 10 May 2019 06:50:43 -0700 (PDT) X-Google-Smtp-Source: APXvYqwcXoxaUQiyCUZSBaPEHURPNBvtsH43wlcIIAVnpOe7Ht3WK9cOQgwNXJH8atvati9QN2uA X-Received: by 2002:a62:d44a:: with SMTP id u10mr13852132pfl.227.1557496242290; Fri, 10 May 2019 06:50:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496242; cv=none; d=google.com; s=arc-20160816; b=iIIpLb9sKkwpIYHy803DdBrr06fJyNbuaAuRk8x3D3qOFhGX15dQuHgAX2NQxzm7i2 5wb2fYZSGGEHD3tGfzBqI6J9sMq8OKI9c2f7Sd6/wX//UKnzBU8uvCvEKwv1c8C1w4Nm G5OvSN+GJnYI9JOz6Pp2LER49Qe3XMDJtozWQh3GJR4t7ENTwGvpuos9s2+u4vX/5+Lx 4ccMNdR2wdIoDIBUVhp8h9IjesDrnlXL7G9gr7AffutFlhjfEtyNaqNGJ/ylWSlp+dq0 3ypuvg7E2FzXPgbZgoOXy7IRiEIiirXlvUv31e/qbaQ9ALcTzcs7zGgzzjvqIepjOSkt /O4g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=sF+bxGTHBBT93BL/DvuLBhBopFxumPieKkRcP90cXYE=; b=BmYADiy1NiKtFZb5yobBAUivU21peK15DxvIb7ikunOl3Pf5nNbWw9Sbqd7+SYZV5B sjZFgE7Xs+gywCZbiLApN6p9ulU6RDULiI19yRuk0AKanle70J2LRC25d50W4+Xk9+9i /W1TTFrOi2gy8RntNMgjeMWNP/eVZGZY8ZIP+kqLwsiqCs3UuFA0aMCKvk2nOftUk5DG p38/cCEDklDE40Dv3P9pBPUgXRVRkW1grqMeRgRbdCyhAt1FfE7S+D+GGDtbqioPB/zy zJq99ZSYAXyP2uEhTIy8TSbDteoNOc+cUY1MGlwIEGKWnwKiPgq1VSl6/otpSZ3svc8j qqrA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=SdxTTHMH; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id 1si7857835pgx.176.2019.05.10.06.50.42 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:42 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=SdxTTHMH; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=sF+bxGTHBBT93BL/DvuLBhBopFxumPieKkRcP90cXYE=; b=SdxTTHMHG3GpKrqFdl981JFSO Tw18atuShga8eoKgdB6WTv6oBwZ8FVssJ/JFM6sg5bo0ELlTk4qHYDRAoC9tzZY+hq9WXet4O5Ky8 KU9S839uknvxe1H3Ih24KVUKbcIEoelDyHJQuaczKuXpcTQcvrmx3/TYkEWRIzmnW1yxCqDZG73J2 qsLAbWVeiGeXlnOEJmGXXvO5VZJLdAMjL+U7A0pb+Y2ijoM2fIJj+ui883Yy19Qo302mraEG1t2Ed 955iwPxBiowk2BuooQz5XYzDoa7GIIz6Y6VHXO/6KMYxBxWc6US88YnuYqMSKh3mgqGTSTSf9O+w+ IxPO08DGQ==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v7-0004UM-QV; Fri, 10 May 2019 13:50:41 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 11/15] mm: Pass order to get_page_from_freelist in GFP flags Date: Fri, 10 May 2019 06:50:34 -0700 Message-Id: <20190510135038.17129-12-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Matches the change to the __alloc_pages_nodemask API. Signed-off-by: Matthew Wilcox (Oracle) --- mm/page_alloc.c | 23 +++++++++++------------ 1 file changed, 11 insertions(+), 12 deletions(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 6cff996289be..38211bc541a7 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -3500,13 +3500,14 @@ alloc_flags_nofragment(struct zone *zone, gfp_t gfp_mask) * a page. */ static struct page * -get_page_from_freelist(gfp_t gfp_mask, unsigned int order, int alloc_flags, - const struct alloc_context *ac) +get_page_from_freelist(gfp_t gfp_mask, int alloc_flags, + const struct alloc_context *ac) { struct zoneref *z; struct zone *zone; struct pglist_data *last_pgdat_dirty_limit = NULL; bool no_fallback; + unsigned int order = gfp_order(gfp_mask); retry: /* @@ -3702,15 +3703,13 @@ __alloc_pages_cpuset_fallback(gfp_t gfp_mask, unsigned int order, { struct page *page; - page = get_page_from_freelist(gfp_mask, order, - alloc_flags|ALLOC_CPUSET, ac); + page = get_page_from_freelist(gfp_mask, alloc_flags|ALLOC_CPUSET, ac); /* * fallback to ignore cpuset restriction if our nodes * are depleted */ if (!page) - page = get_page_from_freelist(gfp_mask, order, - alloc_flags, ac); + page = get_page_from_freelist(gfp_mask, alloc_flags, ac); return page; } @@ -3748,7 +3747,7 @@ __alloc_pages_may_oom(gfp_t gfp_mask, unsigned int order, * allocation which will never fail due to oom_lock already held. */ page = get_page_from_freelist((gfp_mask | __GFP_HARDWALL) & - ~__GFP_DIRECT_RECLAIM, order, + ~__GFP_DIRECT_RECLAIM, ALLOC_WMARK_HIGH|ALLOC_CPUSET, ac); if (page) goto out; @@ -3844,7 +3843,7 @@ __alloc_pages_direct_compact(gfp_t gfp_mask, unsigned int order, /* Try get a page from the freelist if available */ if (!page) - page = get_page_from_freelist(gfp_mask, order, alloc_flags, ac); + page = get_page_from_freelist(gfp_mask, alloc_flags, ac); if (page) { struct zone *zone = page_zone(page); @@ -4071,7 +4070,7 @@ __alloc_pages_direct_reclaim(gfp_t gfp_mask, unsigned int order, return NULL; retry: - page = get_page_from_freelist(gfp_mask, order, alloc_flags, ac); + page = get_page_from_freelist(gfp_mask, alloc_flags, ac); /* * If an allocation failed after direct reclaim, it could be because @@ -4376,7 +4375,7 @@ __alloc_pages_slowpath(gfp_t gfp_mask, unsigned int order, * The adjusted alloc_flags might result in immediate success, so try * that first */ - page = get_page_from_freelist(gfp_mask, order, alloc_flags, ac); + page = get_page_from_freelist(gfp_mask, alloc_flags, ac); if (page) goto got_pg; @@ -4446,7 +4445,7 @@ __alloc_pages_slowpath(gfp_t gfp_mask, unsigned int order, } /* Attempt with potentially adjusted zonelist and alloc_flags */ - page = get_page_from_freelist(gfp_mask, order, alloc_flags, ac); + page = get_page_from_freelist(gfp_mask, alloc_flags, ac); if (page) goto got_pg; @@ -4653,7 +4652,7 @@ __alloc_pages_nodemask(gfp_t gfp_mask, int preferred_nid, nodemask_t *nodemask) alloc_flags |= alloc_flags_nofragment(ac.preferred_zoneref->zone, gfp_mask); /* First allocation attempt */ - page = get_page_from_freelist(alloc_mask, order, alloc_flags, &ac); + page = get_page_from_freelist(alloc_mask, alloc_flags, &ac); if (likely(page)) goto out; From patchwork Fri May 10 13:50:35 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938873 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 03DDA112C for ; Fri, 10 May 2019 13:51:01 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E7F3428C3A for ; Fri, 10 May 2019 13:51:00 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id DC58528C3D; Fri, 10 May 2019 13:51:00 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 8213228C3A for ; Fri, 10 May 2019 13:51:00 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B2B356B0295; Fri, 10 May 2019 09:50:44 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 7FA256B0297; Fri, 10 May 2019 09:50:44 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 649716B0293; Fri, 10 May 2019 09:50:44 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pf1-f199.google.com (mail-pf1-f199.google.com [209.85.210.199]) by kanga.kvack.org (Postfix) with ESMTP id C4DCB6B028C for ; Fri, 10 May 2019 09:50:43 -0400 (EDT) Received: by mail-pf1-f199.google.com with SMTP id 17so4156776pfi.12 for ; Fri, 10 May 2019 06:50:43 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=YfkW4qIwUGsBhoWlrqnKDkQtprDC3cp1HvmKaBgk21U=; b=aDkB/Z0C9xoM1Vivx5CgOAzmM5hcE5SgQ98t/HjFldlaNHMARpp+kCBuQy/QxkZdqy joasoF2ssWNJ+mWr4n3z/33ddC804gepGb/emmvX8BloBNqkKPeu9Wg7cmlBfHsBVgCY I/Z5ULOWZNurDhRvquvPGt4YVL+Gh74G4/+eOYu1j3iViXC/uE2sc1wBfSd+FQf8foQP ZZ6UdcACp24xHYyW7nGek2wnOEons49qclmYv1lHAIQleb9KJxqjO00Lh12QUs15926S tjzDKd91VOufr48AJVkt9PV8oNiwo4Co/jPzgGw3CtRFvee9hZ+bPXBY2IBSSslvm/pr /ARw== X-Gm-Message-State: APjAAAUCf9g9BUxmn9Fxv+7w11/eQnietNqW4RlcXxrsBzeBbxi0RlNk r0XzHOE2LphX/qs3dmVh7o2jhpaQGdjpkDZ1YvsxTw2uAkE1769kIg8H1KrcFKk2YQNO1DZ2nAo SyDtnHIjSRr09kcnTVOuf5QS5jtBZswTn5/xiolVzgwmH6cMhv6g30XRoVSzc6EQd0Q== X-Received: by 2002:aa7:87d7:: with SMTP id i23mr14160332pfo.211.1557496243503; Fri, 10 May 2019 06:50:43 -0700 (PDT) X-Google-Smtp-Source: APXvYqxUEx6mD+hlNyVbcEeyhK+/k+3qsYH5FjJ+JO9vWEvq2qhbgCtpmvE2LZtn4KMaJklK/XGu X-Received: by 2002:aa7:87d7:: with SMTP id i23mr14160190pfo.211.1557496242455; Fri, 10 May 2019 06:50:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496242; cv=none; d=google.com; s=arc-20160816; b=XJgRmsPsfFsXkvtAnCnTme3SblUVZyiEC5C1uD5jwKjsgLgEjsvKxlLvL+c60X9Zmm c1C1hw+f+sdYplr41Bg15A+u6Hw4IqA+Lo0ybCtSF6GW+SV8SOKbq2n1dSs3005zUKZG reOA88Ft1IDyGzYhptJIuti1hSpWpi/VMXRAb9/bEnlRD4pq3MRDBacyfLIQRaIcDFtf Cz4cTH7tugzi1A9mb+l+OWYUXvYQUQgiCw/7e8/DyFwr9mBDSRQwPQbLGtgcz+oDCP5o qjB74wzR2mvIGcxksHKJEMZ6As6rNf/7ah+icYSAxOTEMFRUWArGRdyrV5fLBclTj1eJ I5lQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=YfkW4qIwUGsBhoWlrqnKDkQtprDC3cp1HvmKaBgk21U=; b=u8A2ZOyEcxFFkQOlTw/h6IXfTTfUUAzA3hejNJU8adh5AxRoqOOlQdc+ST3pvH5J1t DJuHpg/V38wcG5xckM0FKEmV+ZGttCGUqfy7bxw0/T8071oHkRtsmUjL3zRmsmpUBsGK EdTcGlHlOOzs8fREQ3TBIgf3LHemjk3iURhow1mwiTrrqnb6/2jNrABf3jkQa+SiijbJ UJs70aSlqoo0MB3SIMynQ+ide3GdUmUuHe+icMnTKMW78mORpATSLuAehKAb658hN7OS q1o26V45apM9TljCxxczjWrAaPoFz5wBT72EoDyuPraesAyet1im1BdQKyqc+es/4jsR o9UQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=r6bl2BJo; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id 37si7248083pgm.55.2019.05.10.06.50.42 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:42 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=r6bl2BJo; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=YfkW4qIwUGsBhoWlrqnKDkQtprDC3cp1HvmKaBgk21U=; b=r6bl2BJoeDq9XStVs7LDpm78J N+brn3qzoRVrTGMHVJVNOH6OPs4OqDiewvgZCiCiYDnOTqxNFldQcZtKLs0p7tPG7zBG4ay6GB44S VnK0Jb8PqeUiiWz2sm1sVrrvz+JGFlL3Mj44iAmHrJkrbhCqmDwJeYRWWvO2ysgKJOHBohsZwVYG4 lJaVtqCmecRn2QiIEA5fxvrPL9n2uUmyH5yyMMcUDXYV0ofpp2eSOW4Q2tmpXQxteCieeudSxUYiB c0OqHWqwSFVG2XviJuhSsF2h3rk+3ArLIFuWeSmiO2Vb1k7UlHqZzcUZF/cNdRKNX5+kB+tlv46pW AmkJ0XmWg==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v7-0004UT-Vb; Fri, 10 May 2019 13:50:41 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 12/15] mm: Pass order to __alloc_pages_cpuset_fallback in GFP flags Date: Fri, 10 May 2019 06:50:35 -0700 Message-Id: <20190510135038.17129-13-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Matches the change to the __alloc_pages_nodemask API. Signed-off-by: Matthew Wilcox (Oracle) --- mm/page_alloc.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 38211bc541a7..d4ac38780e44 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -3697,8 +3697,7 @@ void warn_alloc(gfp_t gfp_mask, nodemask_t *nodemask, const char *fmt, ...) } static inline struct page * -__alloc_pages_cpuset_fallback(gfp_t gfp_mask, unsigned int order, - unsigned int alloc_flags, +__alloc_pages_cpuset_fallback(gfp_t gfp_mask, unsigned int alloc_flags, const struct alloc_context *ac) { struct page *page; @@ -3794,7 +3793,7 @@ __alloc_pages_may_oom(gfp_t gfp_mask, unsigned int order, * reserves */ if (gfp_mask & __GFP_NOFAIL) - page = __alloc_pages_cpuset_fallback(gfp_mask, order, + page = __alloc_pages_cpuset_fallback(gfp_mask, ALLOC_NO_WATERMARKS, ac); } out: @@ -4556,7 +4555,7 @@ __alloc_pages_slowpath(gfp_t gfp_mask, unsigned int order, * could deplete whole memory reserves which would just make * the situation worse */ - page = __alloc_pages_cpuset_fallback(gfp_mask, order, ALLOC_HARDER, ac); + page = __alloc_pages_cpuset_fallback(gfp_mask, ALLOC_HARDER, ac); if (page) goto got_pg; From patchwork Fri May 10 13:50:36 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938881 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 49B6913AD for ; Fri, 10 May 2019 13:51:12 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3924F28C3A for ; Fri, 10 May 2019 13:51:12 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 2D9FC28C3D; Fri, 10 May 2019 13:51:12 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BA74528C3A for ; Fri, 10 May 2019 13:51:11 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id CD9A76B029B; Fri, 10 May 2019 09:50:45 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id C64D76B029D; Fri, 10 May 2019 09:50:45 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B559B6B029F; Fri, 10 May 2019 09:50:45 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pg1-f199.google.com (mail-pg1-f199.google.com [209.85.215.199]) by kanga.kvack.org (Postfix) with ESMTP id 6FEC96B029D for ; Fri, 10 May 2019 09:50:45 -0400 (EDT) Received: by mail-pg1-f199.google.com with SMTP id z7so4125625pgc.1 for ; Fri, 10 May 2019 06:50:45 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=BeA/9uKT7ZXEzolLTDukLC/4yDvl5hwqa5LtLKqZMsw=; b=N+6PLZ7x1MAqxLhRmBc23yAZ5EbAsV1GpDi7aJ9J8Jlw1d8O6rgNUmxwhmmYgRwVTg 7VxNWgUSSKrzBpKCwrp0RNroY2ogNMy3W1g5W43Oja4HeKKxC8IbnkhEF0ig7OP9cbby T8xrxbCAaXlVyFzUm4OnQPsa+eQCImz/1aCHbRjEer4u70OVt1LYaIAun8Tb/CeaHesg ao26fbIsoSmbiyTCumMhNJWEzDvfTJ8FIjJTkqcl5WevbXzEFSGOEa5MTN+LTRbFYTjq BvTMRS3zqTK3voZUw2dvgGaqkyB0GV3QbRdXa2eRsoR6fMBLU9sD7WYpRZuEQ0CiFAN/ EEoA== X-Gm-Message-State: APjAAAUiFoaJnCQZzmFd3jP9VL/ndcXfVuwd6jIJBppbefeAQJuFqt2K NhdXB/IzCPGuqmjNH6G/VnWxUqvnh+eOxoRIFx0bNZcP94rooRXtRIudvf5ocg9H1nMN3AiGSOB 0yg4CqwlH4EvB+JzWjNbzd57fUJCx0/p8k8XXjOqkiOutTdNwZKPj+dnETmbzwQBr4A== X-Received: by 2002:a62:520b:: with SMTP id g11mr13750435pfb.215.1557496244962; Fri, 10 May 2019 06:50:44 -0700 (PDT) X-Google-Smtp-Source: APXvYqzHaP8kxFqevXfWXmOv6jecFCTqlGqb24uQoTU6f8l6hr6Q2g1yLMFz2UOw24qnWeCDjb9I X-Received: by 2002:a62:520b:: with SMTP id g11mr13750271pfb.215.1557496243622; Fri, 10 May 2019 06:50:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496243; cv=none; d=google.com; s=arc-20160816; b=Fbl3m3I7agFukygkwOWuaZ+eObWGPmAITef8lP9pCg/KCc+TzppbDpggfOB1hibDVl m+x4nOBO9gJ5rRD345vfo/2/e+zBFjoPC7ytRF4NQ1pVrPxnCAu+xgn9KYRJgrkuuxcx zZWyX+mYo6Tjv08e/Tj8S5DxqfTqWpgrzib+5g4wZCGHNMFyzcio560zumijeXR++ynJ k3u6mHm2rgda6ZjecxOgiY0bxgbX/NDQSvdcsRHgxZ2r08WeUEM6oR4Fyfb4D4a1G+kS FtGGpS/wTWFyCHAH6eBuRNS/ZCGuFaByA6q72cgt2EAc7NjNfoiE/rW5UvIrUJPYk1nD 1YBg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=BeA/9uKT7ZXEzolLTDukLC/4yDvl5hwqa5LtLKqZMsw=; b=dRrfdPlRo5/98qgDs+xNGhdosEweXUS2NQn6Y8TPQ3v/MikWHtRtR9fWZJ6gFG0W5r RvWYKNLc1EvkrYQOsxwVySZIBtQEVii3oq0MzB4sV5h6zu4HyZdqte+Z/AWrXzMo8Ywe pLqi8hnuciAmmL7VDfUeWVb8lG99Lt5LlZ/OrzR/gEw1EbNre9mQqopxvbk49ZO/nvIc py+GiybRsMZKYzd6AryhvGuaZby+x20fhVTWGfOYcyfLnzdy8Nb+e+yQRAHjqtXA+2+8 BfPrsLc73tAp09KvjTlxNJNIFUm+aXcebYAW8TMiBJ2PU73NwCBiG2d0d1He+v2W+5Li KkmA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=dbK+UaqM; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id c12si6611803pgq.390.2019.05.10.06.50.42 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:43 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=dbK+UaqM; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=BeA/9uKT7ZXEzolLTDukLC/4yDvl5hwqa5LtLKqZMsw=; b=dbK+UaqME/uL/sfYyaa/qoTEC Kq5uwi5/gq18XhBUgg8brDI9r44sa+/jOWyGlLXZ+ZqyD1Hmo29EvvXAJoRRSUcNX8v+FSbeQ1Q8y QWtTxtDMbf9jHawPu+EMcjueJ90UosyEtsv6jSoYoExU+BM4eaALyLnrenoKZb4MbwT0URS9KVaEL fy1GjnhtLdVFJapMA7JIr7QioJzibEFJSn+liNkrCI3bXdgHHjfoRAxhrrTM6kRYcWRQ5lfivnNfF FOs9AS6i/WwjDjEIHfUT5yJ8Uhd4/qPYedLVcY34bZLslVMp9FMhFcDi3K+x3Cq5KvcBmbdvRUO/Q l17fukKxw==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v8-0004UZ-48; Fri, 10 May 2019 13:50:42 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 13/15] mm: Pass order to prepare_alloc_pages in GFP flags Date: Fri, 10 May 2019 06:50:36 -0700 Message-Id: <20190510135038.17129-14-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Also pass the order to should_fail_alloc_page() in the GFP flags, which only used the order when calling prepare_alloc_pages(). Signed-off-by: Matthew Wilcox (Oracle) --- mm/page_alloc.c | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/mm/page_alloc.c b/mm/page_alloc.c index d4ac38780e44..d457dfa8a0ac 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -3262,8 +3262,9 @@ static int __init setup_fail_page_alloc(char *str) } __setup("fail_page_alloc=", setup_fail_page_alloc); -static bool __should_fail_alloc_page(gfp_t gfp_mask, unsigned int order) +static bool __should_fail_alloc_page(gfp_t gfp_mask) { + unsigned int order = gfp_order(gfp_mask); if (order < fail_page_alloc.min_order) return false; if (gfp_mask & __GFP_NOFAIL) @@ -3302,16 +3303,16 @@ late_initcall(fail_page_alloc_debugfs); #else /* CONFIG_FAIL_PAGE_ALLOC */ -static inline bool __should_fail_alloc_page(gfp_t gfp_mask, unsigned int order) +static inline bool __should_fail_alloc_page(gfp_t gfp_mask) { return false; } #endif /* CONFIG_FAIL_PAGE_ALLOC */ -static noinline bool should_fail_alloc_page(gfp_t gfp_mask, unsigned int order) +static noinline bool should_fail_alloc_page(gfp_t gfp_mask) { - return __should_fail_alloc_page(gfp_mask, order); + return __should_fail_alloc_page(gfp_mask); } ALLOW_ERROR_INJECTION(should_fail_alloc_page, TRUE); @@ -4569,7 +4570,7 @@ __alloc_pages_slowpath(gfp_t gfp_mask, unsigned int order, return page; } -static inline bool prepare_alloc_pages(gfp_t gfp_mask, unsigned int order, +static inline bool prepare_alloc_pages(gfp_t gfp_mask, int preferred_nid, nodemask_t *nodemask, struct alloc_context *ac, gfp_t *alloc_mask, unsigned int *alloc_flags) @@ -4592,7 +4593,7 @@ static inline bool prepare_alloc_pages(gfp_t gfp_mask, unsigned int order, might_sleep_if(gfp_mask & __GFP_DIRECT_RECLAIM); - if (should_fail_alloc_page(gfp_mask, order)) + if (should_fail_alloc_page(gfp_mask)) return false; if (IS_ENABLED(CONFIG_CMA) && ac->migratetype == MIGRATE_MOVABLE) @@ -4639,7 +4640,7 @@ __alloc_pages_nodemask(gfp_t gfp_mask, int preferred_nid, nodemask_t *nodemask) gfp_mask &= gfp_allowed_mask; alloc_mask = gfp_mask; - if (!prepare_alloc_pages(gfp_mask, order, preferred_nid, nodemask, &ac, &alloc_mask, &alloc_flags)) + if (!prepare_alloc_pages(gfp_mask, preferred_nid, nodemask, &ac, &alloc_mask, &alloc_flags)) return NULL; finalise_ac(gfp_mask, &ac); From patchwork Fri May 10 13:50:37 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938877 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id A4BED112C for ; Fri, 10 May 2019 13:51:06 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 93B7228C3A for ; Fri, 10 May 2019 13:51:06 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 881F628C3D; Fri, 10 May 2019 13:51:06 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id CF45F28C3A for ; Fri, 10 May 2019 13:51:05 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 33C926B029A; Fri, 10 May 2019 09:50:45 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 2EF766B029B; Fri, 10 May 2019 09:50:45 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0A5EC6B029C; Fri, 10 May 2019 09:50:44 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pf1-f198.google.com (mail-pf1-f198.google.com [209.85.210.198]) by kanga.kvack.org (Postfix) with ESMTP id A4C4D6B0293 for ; Fri, 10 May 2019 09:50:44 -0400 (EDT) Received: by mail-pf1-f198.google.com with SMTP id k22so4147288pfg.18 for ; Fri, 10 May 2019 06:50:44 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=PqulRINVpvsq2J604tj2thFYFHwDrhSryMKnJlWbiV8=; b=PLnnroCZMEfgYi5xdFLiDEWBl4LwQ2BWeKUnGMr8tQnnaFGa3LhSjQEXSD0wvEKQfR t13Qwkhkip0NPnTekC5TLaaI5HXoxt2EFqSuI0Yh+DWBn0KV1/RBCoGWilDQyH4PqH0y AutVvxFwws9KjgYTxDeRLejHJO4dbhgWy09QZLCsjxIXnit9iiLEbfL01VnT2n4mOFTP mU5Axi9/gVc5xaEtiCUsPsJYyHg3rNARTmcR1j3peJdDxHI4igpY0pU2GF/tTusAPs/+ xoJU30IKeTLqc6uvAGtcwAcxegi4zk6JC/k5ZhdtLutVOEThQFZmvIGMoeJ7ORmtNlkl tbJQ== X-Gm-Message-State: APjAAAVDZAFISZa6rji27E3KL2n/cMyoQQHjdQe64EwiCoWJRZNzg1bf W1QRqtM9MEyj2damjfTOq/zdVUo8hLAr2SarLPD9dMYb3TgBu6fKVEripgEDxXu6i8xyFnPYNSH CbzVEE7NRvHIUikC5EDtz8I4pSncKSEAQ4UYAW5b6RFOjv4MFUZhhQecE7MrtCEDaBQ== X-Received: by 2002:a63:2c4a:: with SMTP id s71mr13520159pgs.373.1557496244136; Fri, 10 May 2019 06:50:44 -0700 (PDT) X-Google-Smtp-Source: APXvYqyDaV736uVhEim2EF+nDN7ewiAKJgcSSQgaeT0o56E0AIQkmg7J+1v7Xme5M0h8Ob4JXKUJ X-Received: by 2002:a63:2c4a:: with SMTP id s71mr13520006pgs.373.1557496242764; Fri, 10 May 2019 06:50:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496242; cv=none; d=google.com; s=arc-20160816; b=0BaRB6M+vGJtaqKcWcLM2SC4pMxkyK+oa9bkps6kfrzmxR1wR2IVUEXdgxZGBGjtiM 3zKDFubp///o8Vb/BTUxVni6TiBozFuYouXGjN8z4Mcn7lOHNjwq55/QyI9eCk5s52qM /c03KMBYEA02LQ8C9JqWB+dpux+BpQ6lcDZoilWbqABLyAWR8BlGjCJurREeaWPwAvgM fFFI88Jm2PhwqG46zKwYyCAofXCfWl951pyVn5T0C+N6lwF/TezQy7BqFpben5/EaY8T K0sd1HuJrpILoy1nerDprL8dnJZiC9+z3X6twoXFIG/GnD+1Hn4ILf+sh4fngcUmURLP 0o8g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=PqulRINVpvsq2J604tj2thFYFHwDrhSryMKnJlWbiV8=; b=YizQhgNdI9Ge17V2xRrfN4KAlDCiv0+Fq6WkPJytuUPK/YvBJRhgG6/SBxV+3D5H+C I0al4J0DfTzzkMvk8pfEQHYjxNnLNFVRtolY4v5l+rJvhZ5CUBBB6ALfQq1/mla4OQw6 iXzYQsVsQXTqbUeKMKmC2o95cxvO/5w5x6efqR22t8kD90mKB5Z8t3zgZRHPNItiVjeI wBDOml1QqgZ2FBhg6ksLRVKFKc+pZTVk/bMeAMUKxI2a1ara2uJhcUM5FVYJEx3VRpua IJsjGYOoII/CxsA8xhK8LhUDpyjEHIq2HSUQaYDuu/Beg5IjaztKNblfhLiBbys8YtMv PR/Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=eLBEkc3T; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id n6si7522973pgv.458.2019.05.10.06.50.42 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:42 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=eLBEkc3T; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=PqulRINVpvsq2J604tj2thFYFHwDrhSryMKnJlWbiV8=; b=eLBEkc3TahbbwK0JMhMPmPMuY YWnor/eQWzRz2NVYT12CCftldd4Ej2zlU7KkJ+9pO5edcsV3PFo2JKcGDvRSdidVlMbJkfazQI+0v BNlbmv373XE3eXpMx/FcHI9bXAsPtbS0RyKz3UC49QBVEqUekbv+YgcmpsYT03cXpyIAVYTeSd69H 4/ZdSY19MlwQVorwHTozvJcQ+qc4UxjwO/zdaSr8I/4WtIX8/Ro6gGVIT81sCz4zMcKotkEbqYj4p R4l5tzLQgJ3TqwjhvHq200738DmKs6+tfk6tGuMKyq6ODe81dmmRAATLdlCv2bDqSryjoAkQb28xH nqjk8t/tw==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v8-0004Ue-8w; Fri, 10 May 2019 13:50:42 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 14/15] mm: Pass order to try_to_free_pages in GFP flags Date: Fri, 10 May 2019 06:50:37 -0700 Message-Id: <20190510135038.17129-15-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Also remove the order argument from __perform_reclaim() and __alloc_pages_direct_reclaim() which only passed the argument down. Signed-off-by: Matthew Wilcox (Oracle) --- include/linux/swap.h | 2 +- include/trace/events/vmscan.h | 20 +++++++++----------- mm/page_alloc.c | 15 ++++++--------- mm/vmscan.c | 13 ++++++------- 4 files changed, 22 insertions(+), 28 deletions(-) diff --git a/include/linux/swap.h b/include/linux/swap.h index 4bfb5c4ac108..029737fec38b 100644 --- a/include/linux/swap.h +++ b/include/linux/swap.h @@ -348,7 +348,7 @@ extern void lru_cache_add_active_or_unevictable(struct page *page, /* linux/mm/vmscan.c */ extern unsigned long zone_reclaimable_pages(struct zone *zone); -extern unsigned long try_to_free_pages(struct zonelist *zonelist, int order, +extern unsigned long try_to_free_pages(struct zonelist *zonelist, gfp_t gfp_mask, nodemask_t *mask); extern int __isolate_lru_page(struct page *page, isolate_mode_t mode); extern unsigned long try_to_free_mem_cgroup_pages(struct mem_cgroup *memcg, diff --git a/include/trace/events/vmscan.h b/include/trace/events/vmscan.h index a5ab2973e8dc..a6b1b20333b4 100644 --- a/include/trace/events/vmscan.h +++ b/include/trace/events/vmscan.h @@ -100,45 +100,43 @@ TRACE_EVENT(mm_vmscan_wakeup_kswapd, DECLARE_EVENT_CLASS(mm_vmscan_direct_reclaim_begin_template, - TP_PROTO(int order, gfp_t gfp_flags), + TP_PROTO(gfp_t gfp_flags), - TP_ARGS(order, gfp_flags), + TP_ARGS(gfp_flags), TP_STRUCT__entry( - __field( int, order ) __field( gfp_t, gfp_flags ) ), TP_fast_assign( - __entry->order = order; __entry->gfp_flags = gfp_flags; ), TP_printk("order=%d gfp_flags=%s", - __entry->order, + gfp_order(__entry->gfp_flags), show_gfp_flags(__entry->gfp_flags)) ); DEFINE_EVENT(mm_vmscan_direct_reclaim_begin_template, mm_vmscan_direct_reclaim_begin, - TP_PROTO(int order, gfp_t gfp_flags), + TP_PROTO(gfp_t gfp_flags), - TP_ARGS(order, gfp_flags) + TP_ARGS(gfp_flags) ); #ifdef CONFIG_MEMCG DEFINE_EVENT(mm_vmscan_direct_reclaim_begin_template, mm_vmscan_memcg_reclaim_begin, - TP_PROTO(int order, gfp_t gfp_flags), + TP_PROTO(gfp_t gfp_flags), - TP_ARGS(order, gfp_flags) + TP_ARGS(gfp_flags) ); DEFINE_EVENT(mm_vmscan_direct_reclaim_begin_template, mm_vmscan_memcg_softlimit_reclaim_begin, - TP_PROTO(int order, gfp_t gfp_flags), + TP_PROTO(gfp_t gfp_flags), - TP_ARGS(order, gfp_flags) + TP_ARGS(gfp_flags) ); #endif /* CONFIG_MEMCG */ diff --git a/mm/page_alloc.c b/mm/page_alloc.c index d457dfa8a0ac..29daaf4ae4fb 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -4024,9 +4024,7 @@ EXPORT_SYMBOL_GPL(fs_reclaim_release); #endif /* Perform direct synchronous page reclaim */ -static int -__perform_reclaim(gfp_t gfp_mask, unsigned int order, - const struct alloc_context *ac) +static int __perform_reclaim(gfp_t gfp_mask, const struct alloc_context *ac) { struct reclaim_state reclaim_state; int progress; @@ -4043,8 +4041,7 @@ __perform_reclaim(gfp_t gfp_mask, unsigned int order, reclaim_state.reclaimed_slab = 0; current->reclaim_state = &reclaim_state; - progress = try_to_free_pages(ac->zonelist, order, gfp_mask, - ac->nodemask); + progress = try_to_free_pages(ac->zonelist, gfp_mask, ac->nodemask); current->reclaim_state = NULL; memalloc_noreclaim_restore(noreclaim_flag); @@ -4058,14 +4055,14 @@ __perform_reclaim(gfp_t gfp_mask, unsigned int order, /* The really slow allocator path where we enter direct reclaim */ static inline struct page * -__alloc_pages_direct_reclaim(gfp_t gfp_mask, unsigned int order, - unsigned int alloc_flags, const struct alloc_context *ac, +__alloc_pages_direct_reclaim(gfp_t gfp_mask, unsigned int alloc_flags, + const struct alloc_context *ac, unsigned long *did_some_progress) { struct page *page = NULL; bool drained = false; - *did_some_progress = __perform_reclaim(gfp_mask, order, ac); + *did_some_progress = __perform_reclaim(gfp_mask, ac); if (unlikely(!(*did_some_progress))) return NULL; @@ -4458,7 +4455,7 @@ __alloc_pages_slowpath(gfp_t gfp_mask, unsigned int order, goto nopage; /* Try direct reclaim and then allocating */ - page = __alloc_pages_direct_reclaim(gfp_mask, order, alloc_flags, ac, + page = __alloc_pages_direct_reclaim(gfp_mask, alloc_flags, ac, &did_some_progress); if (page) goto got_pg; diff --git a/mm/vmscan.c b/mm/vmscan.c index d9c3e873eca6..e4d4d9c1d7a9 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -3182,15 +3182,15 @@ static bool throttle_direct_reclaim(gfp_t gfp_mask, struct zonelist *zonelist, return false; } -unsigned long try_to_free_pages(struct zonelist *zonelist, int order, - gfp_t gfp_mask, nodemask_t *nodemask) +unsigned long try_to_free_pages(struct zonelist *zonelist, gfp_t gfp_mask, + nodemask_t *nodemask) { unsigned long nr_reclaimed; struct scan_control sc = { .nr_to_reclaim = SWAP_CLUSTER_MAX, .gfp_mask = current_gfp_context(gfp_mask), .reclaim_idx = gfp_zone(gfp_mask), - .order = order, + .order = gfp_order(gfp_mask), .nodemask = nodemask, .priority = DEF_PRIORITY, .may_writepage = !laptop_mode, @@ -3215,7 +3215,7 @@ unsigned long try_to_free_pages(struct zonelist *zonelist, int order, if (throttle_direct_reclaim(sc.gfp_mask, zonelist, nodemask)) return 1; - trace_mm_vmscan_direct_reclaim_begin(order, sc.gfp_mask); + trace_mm_vmscan_direct_reclaim_begin(sc.gfp_mask); nr_reclaimed = do_try_to_free_pages(zonelist, &sc); @@ -3244,8 +3244,7 @@ unsigned long mem_cgroup_shrink_node(struct mem_cgroup *memcg, sc.gfp_mask = (gfp_mask & GFP_RECLAIM_MASK) | (GFP_HIGHUSER_MOVABLE & ~GFP_RECLAIM_MASK); - trace_mm_vmscan_memcg_softlimit_reclaim_begin(sc.order, - sc.gfp_mask); + trace_mm_vmscan_memcg_softlimit_reclaim_begin(sc.gfp_mask); /* * NOTE: Although we can get the priority field, using it @@ -3294,7 +3293,7 @@ unsigned long try_to_free_mem_cgroup_pages(struct mem_cgroup *memcg, zonelist = &NODE_DATA(nid)->node_zonelists[ZONELIST_FALLBACK]; - trace_mm_vmscan_memcg_reclaim_begin(0, sc.gfp_mask); + trace_mm_vmscan_memcg_reclaim_begin(sc.gfp_mask); psi_memstall_enter(&pflags); noreclaim_flag = memalloc_noreclaim_save(); From patchwork Fri May 10 13:50:38 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Matthew Wilcox X-Patchwork-Id: 10938879 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 4ED8F112C for ; Fri, 10 May 2019 13:51:09 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 3DC8228C3A for ; Fri, 10 May 2019 13:51:09 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 325E628C3D; Fri, 10 May 2019 13:51:09 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.7 required=2.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,MAILING_LIST_MULTI,RCVD_IN_DNSWL_NONE autolearn=ham version=3.3.1 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 9CF3728C3A for ; Fri, 10 May 2019 13:51:08 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6E79D6B0298; Fri, 10 May 2019 09:50:45 -0400 (EDT) Delivered-To: linux-mm-outgoing@kvack.org Received: by kanga.kvack.org (Postfix, from userid 40) id 6496D6B029B; Fri, 10 May 2019 09:50:45 -0400 (EDT) X-Original-To: int-list-linux-mm@kvack.org X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 4A1876B029D; Fri, 10 May 2019 09:50:45 -0400 (EDT) X-Original-To: linux-mm@kvack.org X-Delivered-To: linux-mm@kvack.org Received: from mail-pl1-f197.google.com (mail-pl1-f197.google.com [209.85.214.197]) by kanga.kvack.org (Postfix) with ESMTP id F0A906B0298 for ; Fri, 10 May 2019 09:50:44 -0400 (EDT) Received: by mail-pl1-f197.google.com with SMTP id g89so3737960plb.3 for ; Fri, 10 May 2019 06:50:44 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:dkim-signature:from:to:cc:subject:date :message-id:in-reply-to:references; bh=VdAkE2CMlufia+8ESx14YyAFjGv8nNJgH1kN9Pr0oN4=; b=q3vnKygM69OkjjuWKraXFNesAX80tg9yq9PUonF6mveJsN7qQzumPOYWn51rqzcDqy 2FtGYnD/dDYgqir85B0tMXQnvlJxpVt2TTSHBnORHxXfZOcZKeBzM/5VjgTyiby/OY6C Bq7uIH8UsZCt5VF4yhNW+mJ5/jUVG/S5BBKS+MkTuybkRMzWUmsvEY4EAEqUV/VYsyfu 8WEZkx73tDHc+DSuHGAeaauBt5+by+6WmU9XttoyITqWe6K0xcKy+0O6SQkQxxwTmReD pevPQ4AIIL6sfnibYA6vRBt53X066PW+/fbSBRFN1itu2PSlTd1/zciOwXZs9ZenjjoG w0zQ== X-Gm-Message-State: APjAAAW+oF3ENB4z9m5WaxAsTZmRb+1qhJBxZGagHoleumtLr5oFCFFt yGcFeapkIetyRRkhO/jM5cRxSGaHeAKVz8S0QgLkbe9SBbkb4wOXP6qwRbhFAF8yVFcJDouAPPA y3qLBpBhQwtoEqIkjR05EZ1Je67aDG93iQVRerGTirxEs5WubTIesUXRJu/rPjl6zmA== X-Received: by 2002:a65:4105:: with SMTP id w5mr13675247pgp.260.1557496244643; Fri, 10 May 2019 06:50:44 -0700 (PDT) X-Google-Smtp-Source: APXvYqx0RxIF356tj1b7k6ao3/E8s3LzBBl1YW6wB6OMeVViKJlJ1ZHEsWjbvH7U4Ce5WAld8WYR X-Received: by 2002:a65:4105:: with SMTP id w5mr13675056pgp.260.1557496242890; Fri, 10 May 2019 06:50:42 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557496242; cv=none; d=google.com; s=arc-20160816; b=Z+K/I/pXvTZP9bEuExMuzhwAN97GNb/TEoY4d3DPvqtIC2fKAv2aLBVVNFTrRDzzXy RE/ZePPpg/kVAdLfuyei6DCMZ3t1t06CO7IpsNs6+vj1jXXQeVC4greZYW6g0PtRaawN Y2igHfb3Jap6cnlhEhNpmpG2fhxmvr0X6B/+je81kRHU2QZX+KldAoyQ+BoNLCWkKYAL y2cZid4kDkWXpN4qXLujytvGbo0Exq11BuO0Jf2KWv/m9aTqnbfggFBGeK55hiuyEjIx 8lHpO3nAmNIlD+r2MSsiyi6gy7pMJdfabq/lW1JBNUSYZh70ng66z2lTjvra6z4/E7fB L/KQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=VdAkE2CMlufia+8ESx14YyAFjGv8nNJgH1kN9Pr0oN4=; b=DqKvEPonHzkIgdxcPA87stgwHmp4PiAiwxB/K133KPd7Ru0Hy2jnQYCHDvNMkW6t34 qoEjGYu9+WFVL5bMmq1VlolwXTupYIQ5P0uV8YqGHTWMvzg4N5dFn0CTwBoc5xU7FOug xzQGExCVbB2cX1la/Ov9SWN3iFNQnXjJsuV6f6V3MmxmvDXezYsfsKefO7JAd4YpuPrX 9zsr2RnvsFez2BqmyE1e5EmxyffAUu69q/G5jhgGE6vXfx9OPdxYWOEHw0MRIN3T+/gV QtHNHo30t5lp+exDnXQwogkMr1VQddldh/7RrGRVpqCD5zpvG+sgDtWv3caguwYpAMwA AutQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=Oj0RDGM2; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org Received: from bombadil.infradead.org (bombadil.infradead.org. [2607:7c80:54:e::133]) by mx.google.com with ESMTPS id r23si48220pgj.234.2019.05.10.06.50.42 for (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 10 May 2019 06:50:42 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) client-ip=2607:7c80:54:e::133; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=bombadil.20170209 header.b=Oj0RDGM2; spf=pass (google.com: best guess record for domain of willy@infradead.org designates 2607:7c80:54:e::133 as permitted sender) smtp.mailfrom=willy@infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=References:In-Reply-To:Message-Id: Date:Subject:Cc:To:From:Sender:Reply-To:MIME-Version:Content-Type: Content-Transfer-Encoding:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id: List-Help:List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=VdAkE2CMlufia+8ESx14YyAFjGv8nNJgH1kN9Pr0oN4=; b=Oj0RDGM2TCsKpsQH+wafOr2z7 6A+z19XHmIwZaWhMk3k9/VU8eqrj672l7oLtDzQ8KkA6w6Ez0VcAzfGo9fOwkeifd79ZVccyvGhaB PutKpb4l0o14WAtudrjC/g26nJFUdBGUH2WlOxzMKiJm+Eqf5TEGau6SJMUoeGMTpOEupVlCRWzUZ V5p7ZyQVXLEuNt55Oh4Fh728TDyNVrgdvOV9zk/xngcnSjNp3SCqDteg6YXqyas61PS0mQTezDzIL 9VvYcS5WX1AzT+Jm2WwVoJQJbgyz/3QnYRwBKLXVWThx0ZXGyTYURMZl79OwkhGWHLA7ypc5mr1J/ wWUB/ySFg==; Received: from willy by bombadil.infradead.org with local (Exim 4.90_1 #2 (Red Hat Linux)) id 1hP5v8-0004Uk-Dn; Fri, 10 May 2019 13:50:42 +0000 From: Matthew Wilcox To: linux-mm@kvack.org Cc: "Matthew Wilcox (Oracle)" Subject: [PATCH v2 15/15] mm: Pass order to node_reclaim() in GFP flags Date: Fri, 10 May 2019 06:50:38 -0700 Message-Id: <20190510135038.17129-16-willy@infradead.org> X-Mailer: git-send-email 2.14.5 In-Reply-To: <20190510135038.17129-1-willy@infradead.org> References: <20190510135038.17129-1-willy@infradead.org> 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: X-Virus-Scanned: ClamAV using ClamSMTP From: "Matthew Wilcox (Oracle)" Signed-off-by: Matthew Wilcox (Oracle) --- include/trace/events/vmscan.h | 8 +++----- mm/internal.h | 5 ++--- mm/page_alloc.c | 2 +- mm/vmscan.c | 13 ++++++------- 4 files changed, 12 insertions(+), 16 deletions(-) diff --git a/include/trace/events/vmscan.h b/include/trace/events/vmscan.h index a6b1b20333b4..2714d9ef54e6 100644 --- a/include/trace/events/vmscan.h +++ b/include/trace/events/vmscan.h @@ -460,25 +460,23 @@ TRACE_EVENT(mm_vmscan_inactive_list_is_low, TRACE_EVENT(mm_vmscan_node_reclaim_begin, - TP_PROTO(int nid, int order, gfp_t gfp_flags), + TP_PROTO(int nid, gfp_t gfp_flags), - TP_ARGS(nid, order, gfp_flags), + TP_ARGS(nid, gfp_flags), TP_STRUCT__entry( __field(int, nid) - __field(int, order) __field(gfp_t, gfp_flags) ), TP_fast_assign( __entry->nid = nid; - __entry->order = order; __entry->gfp_flags = gfp_flags; ), TP_printk("nid=%d order=%d gfp_flags=%s", __entry->nid, - __entry->order, + gfp_order(__entry->gfp_flags), show_gfp_flags(__entry->gfp_flags)) ); diff --git a/mm/internal.h b/mm/internal.h index 9eeaf2b95166..353cefdc3f34 100644 --- a/mm/internal.h +++ b/mm/internal.h @@ -457,10 +457,9 @@ static inline void mminit_validate_memmodel_limits(unsigned long *start_pfn, #define NODE_RECLAIM_SUCCESS 1 #ifdef CONFIG_NUMA -extern int node_reclaim(struct pglist_data *, gfp_t, unsigned int); +extern int node_reclaim(struct pglist_data *, gfp_t); #else -static inline int node_reclaim(struct pglist_data *pgdat, gfp_t mask, - unsigned int order) +static inline int node_reclaim(struct pglist_data *pgdat, gfp_t mask) { return NODE_RECLAIM_NOSCAN; } diff --git a/mm/page_alloc.c b/mm/page_alloc.c index 29daaf4ae4fb..5365ee2e8c0b 100644 --- a/mm/page_alloc.c +++ b/mm/page_alloc.c @@ -3595,7 +3595,7 @@ get_page_from_freelist(gfp_t gfp_mask, int alloc_flags, !zone_allows_reclaim(ac->preferred_zoneref->zone, zone)) continue; - ret = node_reclaim(zone->zone_pgdat, gfp_mask, order); + ret = node_reclaim(zone->zone_pgdat, gfp_mask); switch (ret) { case NODE_RECLAIM_NOSCAN: /* did not scan */ diff --git a/mm/vmscan.c b/mm/vmscan.c index e4d4d9c1d7a9..b7f141de9814 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -4124,17 +4124,17 @@ static unsigned long node_pagecache_reclaimable(struct pglist_data *pgdat) /* * Try to free up some pages from this node through reclaim. */ -static int __node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask, unsigned int order) +static int __node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask) { /* Minimum pages needed in order to stay on node */ - const unsigned long nr_pages = 1 << order; + const unsigned long nr_pages = 1UL << gfp_order(gfp_mask); struct task_struct *p = current; struct reclaim_state reclaim_state; unsigned int noreclaim_flag; struct scan_control sc = { .nr_to_reclaim = max(nr_pages, SWAP_CLUSTER_MAX), .gfp_mask = current_gfp_context(gfp_mask), - .order = order, + .order = gfp_order(gfp_mask), .priority = NODE_RECLAIM_PRIORITY, .may_writepage = !!(node_reclaim_mode & RECLAIM_WRITE), .may_unmap = !!(node_reclaim_mode & RECLAIM_UNMAP), @@ -4142,8 +4142,7 @@ static int __node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask, unsigned in .reclaim_idx = gfp_zone(gfp_mask), }; - trace_mm_vmscan_node_reclaim_begin(pgdat->node_id, order, - sc.gfp_mask); + trace_mm_vmscan_node_reclaim_begin(pgdat->node_id, sc.gfp_mask); cond_resched(); fs_reclaim_acquire(sc.gfp_mask); @@ -4177,7 +4176,7 @@ static int __node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask, unsigned in return sc.nr_reclaimed >= nr_pages; } -int node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask, unsigned int order) +int node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask) { int ret; @@ -4213,7 +4212,7 @@ int node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask, unsigned int order) if (test_and_set_bit(PGDAT_RECLAIM_LOCKED, &pgdat->flags)) return NODE_RECLAIM_NOSCAN; - ret = __node_reclaim(pgdat, gfp_mask, order); + ret = __node_reclaim(pgdat, gfp_mask); clear_bit(PGDAT_RECLAIM_LOCKED, &pgdat->flags); if (!ret)