From: Leif Lindholm <leif.lindholm@linaro.org>
To: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: edk2-devel@lists.01.org
Subject: Re: [PATCH 0/5] ArmPkg et al: remove UncachedMemoryallocationLib
Date: Tue, 29 Aug 2017 16:44:46 +0100 [thread overview]
Message-ID: <20170829154446.d32yijnzbzlhw6b5@bivouac.eciton.net> (raw)
In-Reply-To: <20170825121014.15739-1-ard.biesheuvel@linaro.org>
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 <leif.lindholm@linaro.org>
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.
/
Leif
> Ard Biesheuvel (5):
> EmbeddedPkg/DmaLib: add routine to allocate aligned buffers
> ArmPkg/ArmDmaLib: implement DmaAllocateAlignedBuffer()
> BeagleBoardPkg: remove UncachedMemoryAllocationLib resolutions
> Omap35xxPkg: remove bogus UncachedMemoryAllocationLib dependency
> ArmPkg: remove UncachedMemoryAllocationLib
>
> ArmPkg/ArmPkg.dec | 4 -
> ArmPkg/ArmPkg.dsc | 2 -
> ArmPkg/Include/Library/UncachedMemoryAllocationLib.h | 665 ------------------
> ArmPkg/Library/ArmDmaLib/ArmDmaLib.c | 42 +-
> ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.c | 719 --------------------
> ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf | 50 --
> BeagleBoardPkg/BeagleBoardPkg.dsc | 2 -
> EmbeddedPkg/Include/Library/DmaLib.h | 30 +-
> EmbeddedPkg/Library/NullDmaLib/NullDmaLib.c | 48 +-
> Omap35xxPkg/Library/DebugAgentTimerLib/DebugAgentTimerLib.inf | 1 +
> Omap35xxPkg/Library/OmapDmaLib/OmapDmaLib.inf | 1 -
> Omap35xxPkg/Omap35xxPkg.dsc | 2 -
> 12 files changed, 112 insertions(+), 1454 deletions(-)
> delete mode 100644 ArmPkg/Include/Library/UncachedMemoryAllocationLib.h
> delete mode 100644 ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.c
> delete mode 100644 ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf
>
> --
> 2.11.0
>
next prev parent reply other threads:[~2017-08-29 15:42 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-25 12:10 [PATCH 0/5] ArmPkg et al: remove UncachedMemoryallocationLib Ard Biesheuvel
2017-08-25 12:10 ` [PATCH 1/5] EmbeddedPkg/DmaLib: add routine to allocate aligned buffers Ard Biesheuvel
2017-08-25 12:10 ` [PATCH 2/5] ArmPkg/ArmDmaLib: implement DmaAllocateAlignedBuffer() Ard Biesheuvel
2017-08-25 12:10 ` [PATCH 3/5] BeagleBoardPkg: remove UncachedMemoryAllocationLib resolutions Ard Biesheuvel
2017-08-25 12:10 ` [PATCH 4/5] Omap35xxPkg: remove bogus UncachedMemoryAllocationLib dependency Ard Biesheuvel
2017-08-25 12:10 ` [PATCH 5/5] ArmPkg: remove UncachedMemoryAllocationLib Ard Biesheuvel
2017-08-31 14:00 ` Ard Biesheuvel
2017-08-29 15:44 ` Leif Lindholm [this message]
2017-08-29 15:47 ` [PATCH 0/5] ArmPkg et al: remove UncachedMemoryallocationLib Ard Biesheuvel
2017-08-29 16:57 ` Ard Biesheuvel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-list from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170829154446.d32yijnzbzlhw6b5@bivouac.eciton.net \
--to=devel@edk2.groups.io \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox