From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 9E040C761A6 for ; Thu, 6 Apr 2023 02:44:24 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231444AbjDFCoX (ORCPT ); Wed, 5 Apr 2023 22:44:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37602 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S234868AbjDFCoK (ORCPT ); Wed, 5 Apr 2023 22:44:10 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 1D22C8A46 for ; Wed, 5 Apr 2023 19:44:09 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id A95CC6421A for ; Thu, 6 Apr 2023 02:44:08 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 0F8F2C433EF; Thu, 6 Apr 2023 02:44:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1680749048; bh=T3MpYyps94BakKTUwbBhitNnwZfbl5IWWc2YoagNdaM=; h=Date:To:From:Subject:From; b=nvCR1RTLqaD41M62Zi+3x9EBAxxQ00j9z+rYMyY5N9ExDxaPkk9k2zy5oQzlUV0QP osEiNqNH4fQszKNzaLaegJHiSkjVROgRpx4v6ar4aups5Oizcw1udscylUt2bndJLZ 5MUPsRhnppHDF85AMWRerbq6psCvJlJz3ijBfLLs= Date: Wed, 05 Apr 2023 19:44:07 -0700 To: mm-commits@vger.kernel.org, willy@infradead.org, tonyb@cybernetics.com, hch@lst.de, kbusch@kernel.org, akpm@linux-foundation.org From: Andrew Morton Subject: [merged mm-stable] dmapool-simplify-freeing.patch removed from -mm tree Message-Id: <20230406024408.0F8F2C433EF@smtp.kernel.org> Precedence: bulk Reply-To: linux-kernel@vger.kernel.org List-ID: X-Mailing-List: mm-commits@vger.kernel.org The quilt patch titled Subject: dmapool: simplify freeing has been removed from the -mm tree. Its filename was dmapool-simplify-freeing.patch This patch was dropped because it was merged into the mm-stable branch of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm ------------------------------------------------------ From: Keith Busch Subject: dmapool: simplify freeing Date: Thu, 26 Jan 2023 13:51:22 -0800 The actions for busy and not busy are mostly the same, so combine these and remove the unnecessary function. Also, the pool is about to be freed so there's no need to poison the page data since we only check for poison on alloc, which can't be done on a freed pool. Link: https://lkml.kernel.org/r/20230126215125.4069751-10-kbusch@meta.com Signed-off-by: Keith Busch Reviewed-by: Christoph Hellwig Cc: Matthew Wilcox Cc: Tony Battersby Signed-off-by: Andrew Morton --- mm/dmapool.c | 22 ++++++---------------- 1 file changed, 6 insertions(+), 16 deletions(-) --- a/mm/dmapool.c~dmapool-simplify-freeing +++ a/mm/dmapool.c @@ -312,16 +312,6 @@ static inline bool is_page_busy(struct d return page->in_use != 0; } -static void pool_free_page(struct dma_pool *pool, struct dma_page *page) -{ - dma_addr_t dma = page->dma; - - pool_init_page(pool, page); - dma_free_coherent(pool->dev, pool->allocation, page->vaddr, dma); - list_del(&page->page_list); - kfree(page); -} - /** * dma_pool_destroy - destroys a pool of dma memory blocks. * @pool: dma pool that will be destroyed @@ -349,14 +339,14 @@ void dma_pool_destroy(struct dma_pool *p mutex_unlock(&pools_reg_lock); list_for_each_entry_safe(page, tmp, &pool->page_list, page_list) { - if (is_page_busy(page)) { + if (!is_page_busy(page)) + dma_free_coherent(pool->dev, pool->allocation, + page->vaddr, page->dma); + else dev_err(pool->dev, "%s %s, %p busy\n", __func__, pool->name, page->vaddr); - /* leak the still-in-use consistent memory */ - list_del(&page->page_list); - kfree(page); - } else - pool_free_page(pool, page); + list_del(&page->page_list); + kfree(page); } kfree(pool); _ Patches currently in -mm which might be from kbusch@kernel.org are