Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp10564087ybi; Thu, 11 Jul 2019 07:20:15 -0700 (PDT) X-Google-Smtp-Source: APXvYqzmdrTPx9wPfbJ7TyG3bFU19/ShkOkkpvOiHrAo6Wb+YBUgajcRb1m8jGrQJcnn79LI+gzU X-Received: by 2002:a17:902:2bcb:: with SMTP id l69mr4977915plb.155.1562854815637; Thu, 11 Jul 2019 07:20:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1562854815; cv=none; d=google.com; s=arc-20160816; b=SMxW9zo9vXjHL2uwEC17TrQwE/8y021/iqMObnD2kDNBa8lfVqi2e08cLOPbJBFxo/ ojdcn3yyGZUnVf5yQxIdOwHt4+uBq9F1rioPJEj9KuDI6y6Pb4ey0OZrxIO0lXrp7pTq H2Cywv35ZcpykmaMvTiAQTNeA1pDeOPmFXGmXZ1kJghWRuKDUTXGn9x3rHoSizRZQOUY rehMRTy8QsMVVWeCZRr1QwL7YRvt6NyuIiKDJZ3a3iHo9OM1JxWSFdsGv9zRiBzjHRk8 ulvg18R9LOLI8sWLXVwppaiHNKx0N4X0El2VwgU+pxf4HylNtn6p2pp+AigEK33f83lK 3aMQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:message-id:date:subject:cc :to:from; bh=OCQb/MVCm/p4yrwaKwo5hsfR2NboZcVyIARZUabzii4=; b=g6bIU+MSyvvcKoPDBVAxEUSwQp99eneoeP2Xe+nXMp5FIMx29E8sU1+AlMttXIlVjO KcFcWAA69X0Gl4Ou9U1xJPRiotvlD0NhVoy0emCEZJWCOu45zIfW0O3teVSf23RT6WCF LReyrbwL1N6RnmuqTQt6q6lanW0A6aF0m661KenDGq93jX5IO7T9kDlPcyVRba3gci0g +Y12X+YDujKljd5SXW89s0ANrvj3yPHEs5UuzNQN1HZgL7V0UwWfbHuqzS4slcdZHDAR 3Zjf0ho6L9MlxmwY+7qi2FsjEoiOFwlWdAoWkfW1LT6XmSvWpi5cb1Ix3rbniIxKu4qN bPcA== ARC-Authentication-Results: i=1; mx.google.com; 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 z7si5677050pga.409.2019.07.11.07.20.00; Thu, 11 Jul 2019 07:20:15 -0700 (PDT) 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; 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 S1728613AbfGKOS6 (ORCPT + 99 others); Thu, 11 Jul 2019 10:18:58 -0400 Received: from szxga04-in.huawei.com ([45.249.212.190]:2207 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728045AbfGKOS6 (ORCPT ); Thu, 11 Jul 2019 10:18:58 -0400 Received: from DGGEMS410-HUB.china.huawei.com (unknown [172.30.72.58]) by Forcepoint Email with ESMTP id 50C1B3222C970C39F9BC; Thu, 11 Jul 2019 22:18:52 +0800 (CST) Received: from localhost (10.133.213.239) by DGGEMS410-HUB.china.huawei.com (10.3.19.210) with Microsoft SMTP Server id 14.3.439.0; Thu, 11 Jul 2019 22:18:45 +0800 From: YueHaibing To: , , , , CC: , , YueHaibing Subject: [PATCH -next] powerpc/powernv/ioda: using kfree_rcu() to simplify the code Date: Thu, 11 Jul 2019 22:18:18 +0800 Message-ID: <20190711141818.18044-1-yuehaibing@huawei.com> X-Mailer: git-send-email 2.10.2.windows.1 MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.133.213.239] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The callback function of call_rcu() just calls a kfree(), so we can use kfree_rcu() instead of call_rcu() + callback function. Signed-off-by: YueHaibing --- arch/powerpc/platforms/powernv/pci-ioda-tce.c | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/arch/powerpc/platforms/powernv/pci-ioda-tce.c b/arch/powerpc/platforms/powernv/pci-ioda-tce.c index e28f03e..05f80b1 100644 --- a/arch/powerpc/platforms/powernv/pci-ioda-tce.c +++ b/arch/powerpc/platforms/powernv/pci-ioda-tce.c @@ -332,14 +332,6 @@ long pnv_pci_ioda2_table_alloc_pages(int nid, __u64 bus_offset, return -ENOMEM; } -static void pnv_iommu_table_group_link_free(struct rcu_head *head) -{ - struct iommu_table_group_link *tgl = container_of(head, - struct iommu_table_group_link, rcu); - - kfree(tgl); -} - void pnv_pci_unlink_table_and_group(struct iommu_table *tbl, struct iommu_table_group *table_group) { @@ -355,7 +347,7 @@ void pnv_pci_unlink_table_and_group(struct iommu_table *tbl, list_for_each_entry_rcu(tgl, &tbl->it_group_list, next) { if (tgl->table_group == table_group) { list_del_rcu(&tgl->next); - call_rcu(&tgl->rcu, pnv_iommu_table_group_link_free); + kfree_rcu(tgl, rcu); found = true; break; } -- 2.7.4