Received: by 2002:a05:6358:c692:b0:131:369:b2a3 with SMTP id fe18csp1115639rwb; Wed, 26 Jul 2023 07:51:02 -0700 (PDT) X-Google-Smtp-Source: APBJJlFBTDPFOc74o2KknVw8PIjLLVZPmVwBRK/39nuh9cY+906V3ApP/0rNHy4CtVKDohAauEJ/ X-Received: by 2002:a05:6a21:47ca:b0:13a:6413:9004 with SMTP id as10-20020a056a2147ca00b0013a64139004mr2373073pzc.43.1690383062663; Wed, 26 Jul 2023 07:51:02 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1690383062; cv=none; d=google.com; s=arc-20160816; b=AKWlmF6p/kKwlWW/h8vJUDHAcE6J8w3rFwdcwRMQ1xVLZnaskWM/kY1mxZlKwpsskc WN99WDZ4nFJ0rM8ikHvHCUCTj81PXna1Rvsa3/wz6NWZUZez9WvbsJX/+1OpjHAMr6Pq yGV/ZPCC6F7K3Yxo4h1W5rf4afvOWH/sb1QI2mbXxNTATLGt/LIYyzZMhDvQReADomSA D+AJdlWE4fl8pNsIN1EY3ePhuw7ILJ7Y8OBGwita2l9+pt82mMJsJ2bSJNp/vQOsKXt+ aMAenhazLKm9tmGhozmhVXIe5m+Bol5PW1wfWUmHiJQeRJjFc1XtJfCnSqdYGehMDuiM llyw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=iCvX+WYhj5dekGw4g3WHkvBAMFYYr8sXX+D13FHMfqA=; fh=11lMNcOeqCZodxavWUwntGt3EqXl+qjB7H/8A+5dkJg=; b=Fb2UKaz38VcynrXXaEonokHNOE609O6lCAfk6I3uixOOYs6gvWwFjEzObI5ld/ejVb lzEiPqSP9wjugwKXUsjSMd4KvxulI62aQv59moG+sCji6ZHLEWlai7MppddWkqcxSqLJ s3Bci5KXHE9PVEy+017dXgkLULwGqEMaCkAsuVVXrR1xkmsuIAAA7Wo5MMDqhjL44e4p SwAcKanF0HlMHCxU6DedfCfhqlpxD8xCApOrq03wBYoQqPmVyF9AsKPYflN2SrLN9pcP dBpIXwJaeAY0BxUTdiugqCm71zHwpFuYmCywpq01m5ha7UM2yENDOL2b0z2vE/0NPGEu ml6Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20221208 header.b=f3dsw2E2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id t33-20020a634461000000b005577fd7efa2si13082758pgk.444.2023.07.26.07.50.49; Wed, 26 Jul 2023 07:51:02 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20221208 header.b=f3dsw2E2; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234526AbjGZO2g (ORCPT + 99 others); Wed, 26 Jul 2023 10:28:36 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52026 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234502AbjGZO2e (ORCPT ); Wed, 26 Jul 2023 10:28:34 -0400 Received: from mail-pl1-x636.google.com (mail-pl1-x636.google.com [IPv6:2607:f8b0:4864:20::636]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 13D29B4 for ; Wed, 26 Jul 2023 07:28:34 -0700 (PDT) Received: by mail-pl1-x636.google.com with SMTP id d9443c01a7336-1bb119be881so51637415ad.3 for ; Wed, 26 Jul 2023 07:28:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1690381713; x=1690986513; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=iCvX+WYhj5dekGw4g3WHkvBAMFYYr8sXX+D13FHMfqA=; b=f3dsw2E2l/B/cUFrODAkpl1M5OV5n27zUh0TtgO7ZVOPLJBKhFVIHjs+5JB8zmB1sy suMKD2y9b0K4Ha7tTHZvAiIupK8FK/ggWg/Y/T30voOfQE9nbUOygUDJCgwPnd9DaIW0 rhc9Adfd7VRJR1ip84y2Y9F6pTcDx/3FbWxuI328R3IufSOP7emgXXaTsXCpvClztO8N aRpojkWDoGwkSrT36kghgwaJJfpZGLPkmeYyuHoXHAUu5yuqOu0HgxFmePOJ4EqIWhZz Vhs8N0aW0sG9/G/EVh3bo2AgKnFWIkcRjAzq950BlbibwDQSRCzGe3ZTXQMRBGglcWzq pD9A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1690381713; x=1690986513; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=iCvX+WYhj5dekGw4g3WHkvBAMFYYr8sXX+D13FHMfqA=; b=ETVQJy2L45w+HZOfGfjW/EAH134ydhU/dfEmXI2guTVT31CGJKjkjy3AWcHWD2Tw5s YNDcPoOh6I8RTA7+SCayP7x8miuRNTDuHSiagSUX8K2CMXzk7S+5FcNa9gJvTiV4F8Qs cWNWDlEWevYVh6gLWL03QnkeEpRQ+jm2WOpZcI6O2bMRE/fXz85pkAzOovKWc7Z5mPdO C4t0YTrBVf2474oGNQj+z8AWFD++HmJ3VTq3W0rr26DNOvLtuaYBZDWk4QdCCYri6sAd xWtF/PTmLv2sAorYF1d/S1zI0TGuPnd3iu3XOPeuYP3htLrJIH9iZxLfaYw0j9DLXg0+ +d0Q== X-Gm-Message-State: ABy/qLaJOUFgWDLTQ3agRH4bg8bQE1rBborDtiOwtKqQdR0DmO4/bC4A kXA9xjeteEIHq2UXWUstx9c= X-Received: by 2002:a17:902:ec8c:b0:1ab:11c8:777a with SMTP id x12-20020a170902ec8c00b001ab11c8777amr2739116plg.13.1690381713404; Wed, 26 Jul 2023 07:28:33 -0700 (PDT) Received: from linux.. (static.111.40.78.5.clients.your-server.de. [5.78.40.111]) by smtp.gmail.com with ESMTPSA id g4-20020a170902c38400b001b8b26fa6a9sm2189312plg.19.2023.07.26.07.28.30 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 26 Jul 2023 07:28:32 -0700 (PDT) From: Binglei Wang X-Google-Original-From: Binglei Wang To: hch@lst.de, m.szyprowski@samsung.com, robin.murphy@arm.com Cc: iommu@lists.linux.dev, linux-kernel@vger.kernel.org, l3b2w1@gmail.com Subject: [PATCH v3] cma: check for memory region overlapping Date: Wed, 26 Jul 2023 22:28:23 +0800 Message-Id: <20230726142823.6356-1-l3b2w1@gmail.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Binglei Wang In the process of parsing the DTS, checks whether the memory region specified by the DTS CMA node area overlaps with the kernel text memory space reserved by memblock before calling early_init_fdt_scan_reserved_mem. Maybe it's better to have some warning prompts printed. Signed-off-by: Binglei Wang --- Notes: v3: fix compile error. v2: delete the logic code for handling return -EBUSY. v1: return -EBUSY when detect overlapping and handle the return case. kernel/dma/contiguous.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/kernel/dma/contiguous.c b/kernel/dma/contiguous.c index 6ea80ae42..dc6d2af1e 100644 --- a/kernel/dma/contiguous.c +++ b/kernel/dma/contiguous.c @@ -410,6 +410,11 @@ static int __init rmem_cma_setup(struct reserved_mem *rmem) return -EBUSY; } + if (memblock_is_region_reserved(rmem->base, rmem->size)) { + pr_info("Reserved memory: overlap with other memblock reserved region\n"); + return -EBUSY; + } + if (!of_get_flat_dt_prop(node, "reusable", NULL) || of_get_flat_dt_prop(node, "no-map", NULL)) return -EINVAL; -- 2.34.1