Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp17518744rwd; Tue, 27 Jun 2023 04:18:13 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ6XDvNXAuficYZNnjhQwz9Ev7nFG6/oq3kjhLMNtSON/HwnVsi61PJj3YLUpWnZuKso08zh X-Received: by 2002:a0d:ca56:0:b0:573:974a:d264 with SMTP id m83-20020a0dca56000000b00573974ad264mr20240825ywd.49.1687864693360; Tue, 27 Jun 2023 04:18:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1687864693; cv=none; d=google.com; s=arc-20160816; b=aj9qRzP1Ssl77oR/UR/LrIBUob6ZDUt3B3Z3FuUD9Hg2IByuq0FB/+Zck0n2eQnCrB UAuFHiWZj/MjWwXuCtddje+yypUOQhxFl4B3WCk018nojc9cMlp8AmoddUx8Vyp06Vu9 ZEd8Y/EgR+40/H3wdwislGT0A10bHN1dZylYGYH/JZ47Xvh7YJR5Y7yAsNU5LvsxWFIb 8/Khj/Dm1FNWMpvOcOyANJ7nYIkft1HbE9lunGHr2baqDsMOQx/DeNrBB8ixNnwoSV4a o3NFPTJ50L1qKcviMM6X8Z1/yUfs2rjlnIegETey3TYCr00szOz0WRwh77lmnV1kwDT0 7ljQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id; bh=sIXdrwVHByhvDlv3yhuWGI7JsVP6zJL/dNmyt+Cmu9o=; fh=X33z1dOxIqsQ45MeVYKgAONr/4oCyYZ1ybMRq+obyCg=; b=P/z3USCXd8K0Nc7uEt49ng/2C9iK3WGgmJdXyO96LWgnG7EOqg6QN72QjwlhqBc6+g GzIFd1Wfi/nQ1o7W5u8DlDGKRnbVFsLKxU9ZGRcmRsQ1hpV2zfLPfWkZ1kXncFvhvZfz vj+Qy+qstfyhhPPH84dx6zHMFs1saptv05CrwyF8xxWc5rFvD4dzBv9rufRf4XYiF6+V KxUKvN6qcQDxXgPqZLRhuYhcawvtBvgh5NgcfUcoYuu/0jHNZBYkY7BCUOdxRu3iA+Qx YJkpVopTzLxTHI4NcT6cGBZOFCBwRAeq+TFuEqG85zQzD1sdEkHpgXmR7HsT2BVBPi+N Kqeg== ARC-Authentication-Results: i=1; mx.google.com; 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=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id j20-20020a63cf14000000b00557888f1a61si7104302pgg.259.2023.06.27.04.18.01; Tue, 27 Jun 2023 04:18:13 -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; 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=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231389AbjF0KzL (ORCPT + 99 others); Tue, 27 Jun 2023 06:55:11 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57230 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231268AbjF0KzJ (ORCPT ); Tue, 27 Jun 2023 06:55:09 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 813E219AA; Tue, 27 Jun 2023 03:55:08 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 2088D2F4; Tue, 27 Jun 2023 03:55:52 -0700 (PDT) Received: from [10.1.196.40] (e121345-lin.cambridge.arm.com [10.1.196.40]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id CAF8C3F64C; Tue, 27 Jun 2023 03:55:04 -0700 (PDT) Message-ID: <73f11258-1562-17c1-969e-b134dcb5f35c@arm.com> Date: Tue, 27 Jun 2023 11:55:00 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux aarch64; rv:102.0) Gecko/20100101 Thunderbird/102.11.0 Subject: Re: [PATCH v3 1/7] swiotlb: make io_tlb_default_mem local to swiotlb.c To: Greg Kroah-Hartman , Petr Tesarik Cc: Stefano Stabellini , Thomas Bogendoerfer , Thomas Gleixner , Ingo Molnar , Borislav Petkov , Dave Hansen , "maintainer:X86 ARCHITECTURE (32-BIT AND 64-BIT)" , "H. Peter Anvin" , "Rafael J. Wysocki" , Juergen Gross , Oleksandr Tyshchenko , Christoph Hellwig , Marek Szyprowski , Andy Shevchenko , Hans de Goede , Jason Gunthorpe , Kees Cook , Saravana Kannan , "moderated list:XEN HYPERVISOR ARM" , "moderated list:ARM PORT" , open list , "open list:MIPS" , "open list:XEN SWIOTLB SUBSYSTEM" , Roberto Sassu , Kefeng Wang , petr@tesarici.cz References: <2023062745-routing-palace-d0b4@gregkh> Content-Language: en-GB From: Robin Murphy In-Reply-To: <2023062745-routing-palace-d0b4@gregkh> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,NICE_REPLY_A, RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_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 On 27/06/2023 11:24 am, Greg Kroah-Hartman wrote: > On Tue, Jun 27, 2023 at 11:54:23AM +0200, Petr Tesarik wrote: >> +/** >> + * is_swiotlb_active() - check if the software IO TLB is initialized >> + * @dev: Device to check, or %NULL for the default IO TLB. >> + */ >> bool is_swiotlb_active(struct device *dev) >> { >> - struct io_tlb_mem *mem = dev->dma_io_tlb_mem; >> + struct io_tlb_mem *mem = dev >> + ? dev->dma_io_tlb_mem >> + : &io_tlb_default_mem; > > That's impossible to read and maintain over time, sorry. > > Please use real "if () else" lines, so that it can be maintained over > time. Moreover, it makes for a horrible interface anyway. If there's a need for a non-specific "is SWIOTLB present at all?" check unrelated to any particular device (which arguably still smells of poking into implementation details...), please encapsulate it in its own distinct helper like, say, is_swiotlb_present(void). However, the more I think about it, the more I doubt that logic like octeon_pci_setup() can continue to work properly at all if SWIOTLB allocation becomes dynamic... :/ Thanks, Robin.