From: Mark Rutland <mark.rutland-5wv7dgnIgG8@public.gmane.org>
To: Catalin Marinas <catalin.marinas-5wv7dgnIgG8@public.gmane.org>
Cc: linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
Matt Fleming
<matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>,
Will Deacon <will.deacon-5wv7dgnIgG8@public.gmane.org>,
Jeremy Linton <jeremy.linton-5wv7dgnIgG8@public.gmane.org>,
linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 1/3] efi: Introduce *_continue efi_memory_desc iterators
Date: Wed, 1 Jun 2016 11:34:47 +0100 [thread overview]
Message-ID: <20160601103446.GC9280@leverpostej> (raw)
In-Reply-To: <1464707672-21882-2-git-send-email-catalin.marinas-5wv7dgnIgG8@public.gmane.org>
Hi Catalin,
On Tue, May 31, 2016 at 04:14:30PM +0100, Catalin Marinas wrote:
> The for_each_efi_memory_desc_continue() macro and corresponding
> "_in_map" allow iterating over an efi_memory_map from a given position.
> For code reuse between the existing iterator and the _continue variant,
> this patch also introduces efi_memory_desc_next_entry_map().
>
> Cc: Matt Fleming <matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
> Signed-off-by: Catalin Marinas <catalin.marinas-5wv7dgnIgG8@public.gmane.org>
> ---
> include/linux/efi.h | 19 +++++++++++++++++--
> 1 file changed, 17 insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/efi.h b/include/linux/efi.h
> index c2db3ca22217..4b0d880f1cd7 100644
> --- a/include/linux/efi.h
> +++ b/include/linux/efi.h
> @@ -1002,11 +1002,16 @@ extern int efi_memattr_init(void);
> extern int efi_memattr_apply_permissions(struct mm_struct *mm,
> efi_memattr_perm_setter fn);
>
> +/* Find next entry in an efi_memory_map or NULL if md is last */
> +#define efi_memory_desc_next_entry_map(m, md) \
> + ((md) == (efi_memory_desc_t *)((m)->map_end - (m)->desc_size) \
> + ? NULL : (void *)(md) + (m)->desc_size)
> +
> /* Iterate through an efi_memory_map */
> #define for_each_efi_memory_desc_in_map(m, md) \
> for ((md) = (m)->map; \
> - (md) <= (efi_memory_desc_t *)((m)->map_end - (m)->desc_size); \
> - (md) = (void *)(md) + (m)->desc_size)
> + (md); \
> + (md) = efi_memory_desc_next_entry_map(m, md))
As a heads-up, this will conflict with the efi/urgent branch [1], due to
commit ee92562e33c516dd ("efi: Fix for_each_efi_memory_desc_in_map() for
empty memmaps"). A pull went out for that yesterday [2].
Thanks,
Mark.
[1] git://git.kernel.org/pub/scm/linux/kernel/git/mfleming/efi.git urgent
[2] http://lkml.kernel.org/r/1464690224-4503-1-git-send-email-matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org
WARNING: multiple messages have this Message-ID (diff)
From: mark.rutland@arm.com (Mark Rutland)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/3] efi: Introduce *_continue efi_memory_desc iterators
Date: Wed, 1 Jun 2016 11:34:47 +0100 [thread overview]
Message-ID: <20160601103446.GC9280@leverpostej> (raw)
In-Reply-To: <1464707672-21882-2-git-send-email-catalin.marinas@arm.com>
Hi Catalin,
On Tue, May 31, 2016 at 04:14:30PM +0100, Catalin Marinas wrote:
> The for_each_efi_memory_desc_continue() macro and corresponding
> "_in_map" allow iterating over an efi_memory_map from a given position.
> For code reuse between the existing iterator and the _continue variant,
> this patch also introduces efi_memory_desc_next_entry_map().
>
> Cc: Matt Fleming <matt@codeblueprint.co.uk>
> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
> ---
> include/linux/efi.h | 19 +++++++++++++++++--
> 1 file changed, 17 insertions(+), 2 deletions(-)
>
> diff --git a/include/linux/efi.h b/include/linux/efi.h
> index c2db3ca22217..4b0d880f1cd7 100644
> --- a/include/linux/efi.h
> +++ b/include/linux/efi.h
> @@ -1002,11 +1002,16 @@ extern int efi_memattr_init(void);
> extern int efi_memattr_apply_permissions(struct mm_struct *mm,
> efi_memattr_perm_setter fn);
>
> +/* Find next entry in an efi_memory_map or NULL if md is last */
> +#define efi_memory_desc_next_entry_map(m, md) \
> + ((md) == (efi_memory_desc_t *)((m)->map_end - (m)->desc_size) \
> + ? NULL : (void *)(md) + (m)->desc_size)
> +
> /* Iterate through an efi_memory_map */
> #define for_each_efi_memory_desc_in_map(m, md) \
> for ((md) = (m)->map; \
> - (md) <= (efi_memory_desc_t *)((m)->map_end - (m)->desc_size); \
> - (md) = (void *)(md) + (m)->desc_size)
> + (md); \
> + (md) = efi_memory_desc_next_entry_map(m, md))
As a heads-up, this will conflict with the efi/urgent branch [1], due to
commit ee92562e33c516dd ("efi: Fix for_each_efi_memory_desc_in_map() for
empty memmaps"). A pull went out for that yesterday [2].
Thanks,
Mark.
[1] git://git.kernel.org/pub/scm/linux/kernel/git/mfleming/efi.git urgent
[2] http://lkml.kernel.org/r/1464690224-4503-1-git-send-email-matt at codeblueprint.co.uk
next prev parent reply other threads:[~2016-06-01 10:34 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-31 15:14 [PATCH 0/3] arm64: Avoid overlapping EFI regions Catalin Marinas
2016-05-31 15:14 ` Catalin Marinas
[not found] ` <1464707672-21882-1-git-send-email-catalin.marinas-5wv7dgnIgG8@public.gmane.org>
2016-05-31 15:14 ` [PATCH 1/3] efi: Introduce *_continue efi_memory_desc iterators Catalin Marinas
2016-05-31 15:14 ` Catalin Marinas
[not found] ` <1464707672-21882-2-git-send-email-catalin.marinas-5wv7dgnIgG8@public.gmane.org>
2016-06-01 10:34 ` Mark Rutland [this message]
2016-06-01 10:34 ` Mark Rutland
2016-06-01 10:43 ` Catalin Marinas
2016-06-01 10:43 ` Catalin Marinas
[not found] ` <20160601104326.GA24749-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2016-06-02 14:36 ` Matt Fleming
2016-06-02 14:36 ` Matt Fleming
[not found] ` <20160602143650.GG2658-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2016-06-02 16:29 ` Catalin Marinas
2016-06-02 16:29 ` Catalin Marinas
[not found] ` <20160602162925.GC24938-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2016-06-02 16:31 ` Jeremy Linton
2016-06-02 16:31 ` Jeremy Linton
[not found] ` <57505F52.3040108-5wv7dgnIgG8@public.gmane.org>
2016-06-02 17:11 ` Catalin Marinas
2016-06-02 17:11 ` Catalin Marinas
[not found] ` <20160602171152.GE24938-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2016-06-02 17:15 ` Jeremy Linton
2016-06-02 17:15 ` Jeremy Linton
2016-06-03 20:43 ` Matt Fleming
2016-06-03 20:43 ` Matt Fleming
2016-05-31 15:14 ` [PATCH 2/3] arm64: efi: Ensure efi_create_mapping() does not map overlapping regions Catalin Marinas
2016-05-31 15:14 ` Catalin Marinas
[not found] ` <1464707672-21882-3-git-send-email-catalin.marinas-5wv7dgnIgG8@public.gmane.org>
2016-06-02 14:52 ` Matt Fleming
2016-06-02 14:52 ` Matt Fleming
[not found] ` <20160602145246.GH2658-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org>
2016-06-02 16:56 ` Catalin Marinas
2016-06-02 16:56 ` Catalin Marinas
[not found] ` <20160602165621.GD24938-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2016-06-03 20:56 ` Matt Fleming
2016-06-03 20:56 ` Matt Fleming
2016-06-06 9:43 ` Ard Biesheuvel
2016-06-06 9:43 ` Ard Biesheuvel
[not found] ` <CAKv+Gu-Kiq30-BtQ_aYamLyTB6d8WWmnBM6bOM-+c+WciUnUwA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-06-06 17:09 ` Catalin Marinas
2016-06-06 17:09 ` Catalin Marinas
[not found] ` <20160606170950.GD29910-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2016-06-06 17:26 ` Ard Biesheuvel
2016-06-06 17:26 ` Ard Biesheuvel
2016-06-06 17:42 ` Catalin Marinas
2016-06-06 17:42 ` Catalin Marinas
[not found] ` <20160606174207.GH29910-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2016-06-06 21:18 ` Ard Biesheuvel
2016-06-06 21:18 ` Ard Biesheuvel
[not found] ` <CAKv+Gu_3uKgFtvMryROwTMeGs=uXYU-OPrUC6LaNQiAKP=PZ3Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-06-28 16:05 ` Catalin Marinas
2016-06-28 16:05 ` Catalin Marinas
[not found] ` <20160628160528.GG4585-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2016-06-28 16:12 ` Ard Biesheuvel
2016-06-28 16:12 ` Ard Biesheuvel
[not found] ` <CAKv+Gu8RxZ2xpDC0pudewHu9Z5YTL8XbcjSPvGasRUQbhqm5qQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-06-29 9:39 ` Catalin Marinas
2016-06-29 9:39 ` Catalin Marinas
[not found] ` <20160629093938.GB2522-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2016-06-29 10:03 ` Ard Biesheuvel
2016-06-29 10:03 ` Ard Biesheuvel
[not found] ` <CAKv+Gu-=r=LJ17YKYAOMjaq4QuqN=g-yZmtPzUWDCF5zgezqdw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-06-29 10:50 ` Catalin Marinas
2016-06-29 10:50 ` Catalin Marinas
[not found] ` <20160629105037.GC2522-M2fw3Uu6cmfZROr8t4l/smS4ubULX0JqMm0uRHvK7Nw@public.gmane.org>
2016-06-29 11:03 ` Ard Biesheuvel
2016-06-29 11:03 ` Ard Biesheuvel
[not found] ` <CAKv+Gu8yHSVa3N9Yy_ifd9qyEeG3NOM+XUpfiSf8c83OtzrLeQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2016-06-29 12:03 ` Catalin Marinas
2016-06-29 12:03 ` Catalin Marinas
2016-05-31 15:14 ` [PATCH 3/3] arm64: mm: Remove split_p*d() functions Catalin Marinas
2016-05-31 15:14 ` Catalin Marinas
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-all 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=20160601103446.GC9280@leverpostej \
--to=mark.rutland-5wv7dgnigg8@public.gmane.org \
--cc=catalin.marinas-5wv7dgnIgG8@public.gmane.org \
--cc=jeremy.linton-5wv7dgnIgG8@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-efi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=matt-mF/unelCI9GS6iBeEJttW/XRex20P6io@public.gmane.org \
--cc=will.deacon-5wv7dgnIgG8@public.gmane.org \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.