Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp765282ybl; Wed, 4 Dec 2019 10:28:44 -0800 (PST) X-Google-Smtp-Source: APXvYqzu5Vmxh+s7WJktymA1iDRuHjASbgpJiuuDIaiFDixLnLhS5fDM0VL3+Q5vDOFT66uhlT63 X-Received: by 2002:a05:6808:6cc:: with SMTP id m12mr3579153oih.111.1575484124425; Wed, 04 Dec 2019 10:28:44 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1575484124; cv=none; d=google.com; s=arc-20160816; b=R7242iajeKCobiHMNke75UjW85SLfMzqPhVCuTRwVc/nsQyQlbo4llKSuhephQN5K3 WP2KQdTfsx9wGmP8HrDlPUiMGxCv3gC5YqR6AyfoXcgwPzI4M7XIZ1F4zjTdvcEIe/ye sw2PRUdhNuRMW2wLMpMORzXCA6fbuJDLBMcThXdwXVDXkUMen8NYf7Ci/DAJ2UcPflTT Ocngf0xqnPu1s22i76dKEiJFb/Xx7RdVv8YMfWL/ZwM09jj/psZjrP3bWlrrmUx9Gp8x JdhuYWEb8NCDjBH1GC5GXW4RGMtcaE9U/dObMfJKRH+xnu0sQiqKntof8rDFLenwH/AB ZMug== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=rv2upb6dm6QVejgx+Hel/vJqtdDCv3BQnJCUEMcjmt0=; b=PyOD/ClPB0nFAuFGZEOmAgnBrCzz+F6w32uqP8oqYU4I6/F/ZxpJVDYYtjXuZ28AQ/ 3ciQZ05PZxfia2yYoI0XEqxf2Ka7NaFtFC/iHbZl2Ks6lxp1k3Fr0v5G7MJHB8n+5mGm y4IJi3zAe3Q1+dgC8E2vdDGIzFcBULTmzKDdLQpklCyYTCnh8gpFoz4+YrBFWltOAr9z Im9TI4yMrino5jqWKougI0pQ+6a4DrvQVfAmpnMLcsylLTquHL30QNS7igdfNyceQH/Z cyWQwUEkSoRTt8fHr72VvGJRoM1OT7FYFUdRHZTiWsXMJp1ndS7/G25D8lRkkNddFts5 66zw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=yXuMa7MT; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d23si3146257oti.158.2019.12.04.10.28.30; Wed, 04 Dec 2019 10:28:44 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=yXuMa7MT; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729129AbfLDR7e (ORCPT + 99 others); Wed, 4 Dec 2019 12:59:34 -0500 Received: from mail.kernel.org ([198.145.29.99]:36068 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729113AbfLDR7a (ORCPT ); Wed, 4 Dec 2019 12:59:30 -0500 Received: from localhost (unknown [217.68.49.72]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id CE51B20863; Wed, 4 Dec 2019 17:59:29 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1575482370; bh=sadsCLSkfQewsBhR0p+TkkxkWdvvoH2esadazE9u5Gw=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=yXuMa7MTmBO6Qm1K3cCP18nuY3nMEWyAlRN+nelhjcbtt4n9kBdcWqiqVEAkLn504 UGV85pYadqxiTUud2oCp/CarIuJZZxfyWvAgOdy1Zoke4Q/7bY6Jvpp7eZorGQNPU7 +sW/1nPPTUC4Xvq+3/BWRXyRmxhUF7qhXCfXo0kQ= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Huang Shijie , Andrew Morton , Alexey Skidanov , Linus Torvalds , Sasha Levin Subject: [PATCH 4.4 60/92] lib/genalloc.c: use vzalloc_node() to allocate the bitmap Date: Wed, 4 Dec 2019 18:50:00 +0100 Message-Id: <20191204174333.997173869@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191204174327.215426506@linuxfoundation.org> References: <20191204174327.215426506@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Huang Shijie [ Upstream commit 6862d2fc81859f88c1f3f660886427893f2b4f3f ] Some devices may have big memory on chip, such as over 1G. In some cases, the nbytes maybe bigger then 4M which is the bounday of the memory buddy system (4K default). So use vzalloc_node() to allocate the bitmap. Also use vfree to free it. Link: http://lkml.kernel.org/r/20181225015701.6289-1-sjhuang@iluvatar.ai Signed-off-by: Huang Shijie Reviewed-by: Andrew Morton Cc: Alexey Skidanov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds Signed-off-by: Sasha Levin --- lib/genalloc.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/genalloc.c b/lib/genalloc.c index e4303fb2a7b28..38764572ddde8 100644 --- a/lib/genalloc.c +++ b/lib/genalloc.c @@ -187,7 +187,7 @@ int gen_pool_add_virt(struct gen_pool *pool, unsigned long virt, phys_addr_t phy int nbytes = sizeof(struct gen_pool_chunk) + BITS_TO_LONGS(nbits) * sizeof(long); - chunk = kzalloc_node(nbytes, GFP_KERNEL, nid); + chunk = vzalloc_node(nbytes, nid); if (unlikely(chunk == NULL)) return -ENOMEM; @@ -251,7 +251,7 @@ void gen_pool_destroy(struct gen_pool *pool) bit = find_next_bit(chunk->bits, end_bit, 0); BUG_ON(bit < end_bit); - kfree(chunk); + vfree(chunk); } kfree_const(pool->name); kfree(pool); -- 2.20.1