[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-arm] [kvm-unit-tests PATCH v5 08/11] libcflat: add IS_ALIGNED(
From: |
Alex Bennée |
Subject: |
Re: [Qemu-arm] [kvm-unit-tests PATCH v5 08/11] libcflat: add IS_ALIGNED() macro, and page sizes |
Date: |
Fri, 11 Nov 2016 15:02:42 +0000 |
User-agent: |
mu4e 0.9.17; emacs 25.1.50.16 |
Andrew Jones <address@hidden> writes:
> From: Peter Xu <address@hidden>
>
> These macros will be useful to do page alignment checks.
>
> Reviewed-by: Andre Przywara <address@hidden>
> Signed-off-by: Peter Xu <address@hidden>
> [drew: also added SZ_64K]
> Signed-off-by: Andrew Jones <address@hidden>
> ---
> lib/libcflat.h | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/lib/libcflat.h b/lib/libcflat.h
> index 82005f5d014f..143fc53061fe 100644
> --- a/lib/libcflat.h
> +++ b/lib/libcflat.h
> @@ -33,6 +33,12 @@
> #define __ALIGN_MASK(x, mask) (((x) + (mask)) & ~(mask))
> #define __ALIGN(x, a) __ALIGN_MASK(x, (typeof(x))(a) - 1)
> #define ALIGN(x, a) __ALIGN((x), (a))
> +#define IS_ALIGNED(x, a) (((x) & ((typeof(x))(a) - 1)) == 0)
> +
> +#define SZ_4K (0x1000)
> +#define SZ_64K (0x10000)
> +#define SZ_2M (0x200000)
> +#define SZ_1G (0x40000000)
We don't seem to use IS_ALIGNED, or in fact anything apart from SZ_64K
(which is multiplied by 2 anyway) so I'm not sure if this patch is worth
it for this series.
Stylistically I thought (1 << foo) was preferred for setting of
individual bits? Otherwise I'd be tempted to line the values up with
zero padding to make it easier to read the bit position.
>
> typedef uint8_t u8;
> typedef int8_t s8;
--
Alex Bennée
[Qemu-arm] [kvm-unit-tests PATCH v5 09/11] arm/arm64: add initial gicv3 support, Andrew Jones, 2016/11/10
[Qemu-arm] [kvm-unit-tests PATCH v5 10/11] arm/arm64: gicv3: add an IPI test, Andrew Jones, 2016/11/10