Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp744011ybl; Wed, 4 Dec 2019 10:08:30 -0800 (PST) X-Google-Smtp-Source: APXvYqx053rAtjmI65OMB3A1Qe8ryFX+E0XYz0C3QsTWcuyzRnBWIpJehBlSf57GSnXDcvyV7Kpk X-Received: by 2002:a05:6830:1715:: with SMTP id 21mr3603538otk.67.1575482910553; Wed, 04 Dec 2019 10:08:30 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1575482910; cv=none; d=google.com; s=arc-20160816; b=EuEVnTFHSOBjnXJk4rf4QZO/ETEfyw73rZ+7UcgDmJgAiNWVpluDe/ZH90BtPn7dA7 7mmRUG4VbzdN+1T74lKQByVc2s0Ro/qOmNmdsnMXFqRTGQYYAV88Akkz8cjF4wJO2kYk mnwOK14n1yfKMMQC6mxF49KDQdzP0div/kK+bx7o3mBNKh6lau0mwkMFkCtqFBaacYJv 9iMAsm2e9q97O4URAR5tvXCKlxOVzX9QPnSaUQuFwu4Kbkaors1C+kw2DfNXaT/6y++d 67IZS5rthWHYFlkVAwpsDGxdN8pk47AJclyzUa2Vv0YTgH2JfaQRx8+iK8e4UMMT12ze iLeg== 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=RV2eVaILNs8id4M3cgMsvgRM4N77XItU2VcGpvQf7OM=; b=PWHCLUMSHBo13uojwzH7ka2LO46w8B7pNav/v+De8MVVcPe93Vwtjla+OD8DtonHW9 MxTwBIkBYN1h9b22+5/VVC1m4CAOMcvELf3Z+xoCAcJnst1yv5DjmgUgO5/sooHg2fOO zTQgauWpfxrtBya5PwnEu+jPa78UXS0SSgwdp6tFP/eQ5VlMugo34KPpZNeJKI+0Pg+F 30gVymLhKPAOty7Na2moA/qnELClarkFVisbn1AjhVq0dlkB3v3pE0d4UsHd81mJZWpr UUODMt34MpgCufDr2SiroY6XtszM+63nshf05gFrJmEhExm5aRN5OW8KC1vhjocMzZJQ +lxA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=NxsY90Jb; 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 l67si3579287oib.151.2019.12.04.10.08.18; Wed, 04 Dec 2019 10:08:30 -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=NxsY90Jb; 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 S1730492AbfLDSGF (ORCPT + 99 others); Wed, 4 Dec 2019 13:06:05 -0500 Received: from mail.kernel.org ([198.145.29.99]:53436 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729860AbfLDSF7 (ORCPT ); Wed, 4 Dec 2019 13:05:59 -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 10AF4214AF; Wed, 4 Dec 2019 18:05:57 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1575482758; bh=6N6utb28xFcbw1WnBmmazrCLf9h//ber+CLlhqfmkag=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=NxsY90JbwBYe3RhxwtiIzRlS8abwU66UlztifQlw7lN3QR5YHptSpggBwo/TdpRKR OfY5jWsF0hqQHzyHYI0TeDEfHPIXByF+7bZpTmAR87Bd8Et5F0UMd6Fk+5Nsy4Xcs6 f8CWl+PQ+YwXEb+yI8FTBRK8Hy1YMMnnZemHyLzU= 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.14 122/209] lib/genalloc.c: use vzalloc_node() to allocate the bitmap Date: Wed, 4 Dec 2019 18:55:34 +0100 Message-Id: <20191204175331.471748780@linuxfoundation.org> X-Mailer: git-send-email 2.24.0 In-Reply-To: <20191204175321.609072813@linuxfoundation.org> References: <20191204175321.609072813@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 5deb25c40a5a1..f365d71cdc774 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