Received: by 2002:a25:4158:0:0:0:0:0 with SMTP id o85csp1967157yba; Sun, 5 May 2019 19:02:12 -0700 (PDT) X-Google-Smtp-Source: APXvYqz9RdRjG5Y0pb76+yCaURRIRjNrEvSq4vs/AxeM4ntxdQzyJRhVHNwOo2l+2iVinqWsUS1s X-Received: by 2002:a62:579b:: with SMTP id i27mr11066442pfj.205.1557108132297; Sun, 05 May 2019 19:02:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1557108132; cv=none; d=google.com; s=arc-20160816; b=jAh+WD8Xkk+nwCS8S7/+dxq8mZOv6vvk6uJ1L264C823Z3ufDUIkTHLC2Im8qZdPQe D8sBK+tUOOy6009uve9ViYCQ4+9Xy46zRknUjJex6t5fl0WRfeosKYFFgB9sqW+IwmiJ sGv3q1YTATOVKNaGouUsDG062UZ9lBngyaaGeRee4O8K1/5smYnFlHmJYfxh4A6aWPF5 NHsiXtthr+YO8CJwGT2Lrq/r4fBZANnmWaTtiufxuAyGZkZiyL32nw5/dGAno6Db3VDC a+id5jUpNgNPxVkaX3sLjsk8tCUggoMHiIw4sZN2pwKa3Eedm6FqZJM0kWZeQXi+r1OJ eGtA== 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 :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:to:subject:cc; bh=kh+ojaykkeMZBiNv8hv+0whtbhkFehoUJOeTIkOPAjI=; b=GwVen7F1fqOabQHimlFT3pJpixtcgZPksK3OyvSJc1mWl5tRpHlSQ204kxQ9UVHXc4 NP6DSK4cc9NPK/OfUyYPPHVXze5WzrVDDdAlTbn9goz/obQ7fXYIxw95VpgaSimdHxdw 6/0SmF/6yrbn30kIOLKWHDTTAv/L0ph7wHBE/53B6GDoAGwOeKfnQcNNdB1JTOsqkZTP pPDPjUdIBGY5MNpUPx47RKS0SKrXU6pNDV3g8QWtrU6XKLBzMUBjZ8N+kBwtPG63L9VZ F5bfUSeM1517ruYmTYEz0CuLWHLkw+v1ZizdfzqhypYb5sNALvhIkEoIjFAkO30SELb1 EsiQ== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 1si13960846plf.240.2019.05.05.19.01.56; Sun, 05 May 2019 19:02:12 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726128AbfEFCA7 (ORCPT + 99 others); Sun, 5 May 2019 22:00:59 -0400 Received: from mga03.intel.com ([134.134.136.65]:54632 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725834AbfEFCA6 (ORCPT ); Sun, 5 May 2019 22:00:58 -0400 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga103.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 05 May 2019 19:00:58 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.60,435,1549958400"; d="scan'208";a="146642395" Received: from allen-box.sh.intel.com (HELO [10.239.159.136]) ([10.239.159.136]) by fmsmga008.fm.intel.com with ESMTP; 05 May 2019 19:00:55 -0700 Cc: baolu.lu@linux.intel.com, David Woodhouse , Joerg Roedel , ashok.raj@intel.com, jacob.jun.pan@intel.com, alan.cox@intel.com, kevin.tian@intel.com, mika.westerberg@linux.intel.com, pengfei.xu@intel.com, Konrad Rzeszutek Wilk , Marek Szyprowski , iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v3 02/10] swiotlb: Factor out slot allocation and free To: Christoph Hellwig , Robin Murphy References: <20190421011719.14909-3-baolu.lu@linux.intel.com> <20190422164555.GA31181@lst.de> <0c6e5983-312b-0d6b-92f5-64861cd6804d@linux.intel.com> <20190423061232.GB12762@lst.de> <20190424144532.GA21480@lst.de> <20190426150433.GA19930@lst.de> <93b3d627-782d-cae0-2175-77a5a8b3fe6e@linux.intel.com> <90182d27-5764-7676-8ca6-b2773a40cfe1@arm.com> <20190429114401.GA30333@lst.de> From: Lu Baolu Message-ID: <7033f384-7823-42ec-6bda-ae74ef689f4f@linux.intel.com> Date: Mon, 6 May 2019 09:54:30 +0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.6.1 MIME-Version: 1.0 In-Reply-To: <20190429114401.GA30333@lst.de> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Christoph, On 4/29/19 7:44 PM, Christoph Hellwig wrote: > On Mon, Apr 29, 2019 at 12:06:52PM +0100, Robin Murphy wrote: >> >> From the reply up-thread I guess you're trying to include an optimisation >> to only copy the head and tail of the buffer if it spans multiple pages, >> and directly map the ones in the middle, but AFAICS that's going to tie you >> to also using strict mode for TLB maintenance, which may not be a win >> overall depending on the balance between invalidation bandwidth vs. memcpy >> bandwidth. At least if we use standard SWIOTLB logic to always copy the >> whole thing, we should be able to release the bounce pages via the flush >> queue to allow 'safe' lazy unmaps. > > Oh. The head and tail optimization is what I missed. Yes, for that > we'd need the offset. Yes. > >> Either way I think it would be worth just implementing the straightforward >> version first, then coming back to consider optimisations later. > > Agreed, let's start simple. Especially as large DMA mappings or > allocations should usually be properly aligned anyway, and if not we > should fix that for multiple reasons. > Agreed. I will prepare the next version simply without the optimization, so the offset is not required. For your changes in swiotlb, will you formalize them in patches or want me to do this? Best regards, Lu Baolu