From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-io0-x232.google.com (mail-io0-x232.google.com [IPv6:2607:f8b0:4001:c06::232]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 5993C21DF808E for ; Tue, 29 Aug 2017 09:54:49 -0700 (PDT) Received: by mail-io0-x232.google.com with SMTP id g33so19246192ioj.3 for ; Tue, 29 Aug 2017 09:57:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=D2nEfqF71Fdd3wDGUtlCRwu4/lMn6sunfWGsVMUjUbg=; b=jmpjtGf5PqJ/LMxO9EmunGBfUunQFuHa/WpfPhg8l1mgq45NF2xh7GWE0vR0gvNMoQ emJkdZZJTT/XZxEysxFmRYOePra/Fz02SXEPFurknfQrQiz7alWqPhef3ouJRTBlpDjr SoJOS0sEgM2j52wHBbTlS5rhmOFEAoc+8+g6Q= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=D2nEfqF71Fdd3wDGUtlCRwu4/lMn6sunfWGsVMUjUbg=; b=iX5PR+TXEtnCfPjDIbLpk1+KPy38b23y0RkyykR3TR1KXNmIsNPZ/x55n4OSjhsOA/ keRk0mChvY1piBUZsXJciwMVEjnweZ1hQ5tXRlzoc1GVVg1b6+HjeJMb0NTtM+Juo28m Q5luvFNACY/9wvfb5AXVPsC7I/vnLaCfgptXT561Ay8r8EiVBCxHk8GcSYeZ7Sjrs3w9 rFIaBkKvAE9Bcn7nbldzieouGXgyvgkcA2I+gBl5aLUNNDzOZsmehaD4WdKp9GM9jgXZ OY1b3TubFObmg3MbNfIkAK3OBERfkcfcTQsCpaMNvGQ1ixxr+2Q1DAjkuRzKjQwllGJ0 Nusw== X-Gm-Message-State: AHYfb5hAU1RLc3TLaHUlSL1LiBeta1CHUsH7wtJB4b0c9u8/sJdKQTQA hpQTm1jTwN90LFnlrcL8axN/+mQcNioV X-Received: by 10.36.178.87 with SMTP id h23mr2881255iti.128.1504025849470; Tue, 29 Aug 2017 09:57:29 -0700 (PDT) MIME-Version: 1.0 Received: by 10.107.162.1 with HTTP; Tue, 29 Aug 2017 09:57:29 -0700 (PDT) In-Reply-To: References: <20170825121014.15739-1-ard.biesheuvel@linaro.org> <20170829154446.d32yijnzbzlhw6b5@bivouac.eciton.net> From: Ard Biesheuvel Date: Tue, 29 Aug 2017 17:57:29 +0100 Message-ID: To: Leif Lindholm Cc: "edk2-devel@lists.01.org" Subject: Re: [PATCH 0/5] ArmPkg et al: remove UncachedMemoryallocationLib X-BeenThere: edk2-devel@lists.01.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: EDK II Development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Aug 2017 16:54:49 -0000 Content-Type: text/plain; charset="UTF-8" On 29 August 2017 at 16:47, Ard Biesheuvel wrote: > On 29 August 2017 at 16:44, Leif Lindholm wrote: >> On Fri, Aug 25, 2017 at 01:10:09PM +0100, Ard Biesheuvel wrote: >>> This series is a followup to 'ArmPkg/ArmDmaLib: remove dependency on >>> UncachedMemoryAllocationLib' sent out yesterday, and removes library >>> entirely. >>> >>> There are two reasons for this: >>> - UncachedMemoryAllocationLib is often abused by drivers that should >>> be using DMA abstractions instead. It is up to the platform to decide >>> whether DMA is cache coherent or not, and the fact that non-cache >>> coherent DMA may be implemented using uncached allocations should remain >>> an implementation detail of the DmaLib instance. >>> >>> - The code is poorly maintained, only frees its allocations in the destructor, >>> and misleads by exposing pool allocate/free entry points that are actually >>> backed by page based allocations. >>> >>> Patches #1 and #2 add a DmaAllocateAlignedBuffer() to DmaLib and both >>> its implementations. This is required for current users of >>> UncachedMemoryAllocationLib that rely on minimum alignment to be able >>> to switch the DmaLib. >>> >>> Patches #3 and #4 remove a couple of stale references. >>> >>> Patch #5 actually removes the library and its single remaining implementation. >> >> For the series: >> Reviewed-by: Leif Lindholm >> >> However, this breaks a bunch of (edk2-)platforms: juno, fvp, tc2, >> hikey and armada70x0. Is there a follow-on patch coming for those, >> and could you hold off on pushing this series until that is ready? >> >> Armada has the only non-bogus UncachedMemoryAllocationLib dependency, >> the others are just trivial deletions. >> > > Yes. There are interdependencies between repos, so I will just merge > #1 and #2 and hold off with the rest until after all dependencies have > been removed. Patches #1 .. #4 pushed as deef290f95e0 EmbeddedPkg/DmaLib: add routine to allocate aligned buffers 4b4104d87e28 ArmPkg/ArmDmaLib: implement DmaAllocateAlignedBuffer() b56397ba9f67 BeagleBoardPkg: remove UncachedMemoryAllocationLib resolutions c1d799b91509 Omap35xxPkg: remove bogus UncachedMemoryAllocationLib dependency I will push the remaining patch that actually removes UncachedMemoryAllocationLib once the dependencies are gone from edk2-platforms.