Re: [Xen-devel] [PATCH v5 08/12] arm/mem_access: Introduce GENMASK_ULL bit operation
Hi, On 04/07/17 22:44, Sergej Proskurin wrote: Hi Julien, On 07/04/2017 10:46 PM, Sergej Proskurin wrote: Hi Julien, On 07/04/2017 06:28 PM, Julien Grall wrote: Hi Sergej, On 06/27/2017 12:52 PM, Sergej Proskurin wrote: The current implementation of GENMASK is capable of creating bitmasks of 32-bit values on AArch32 and 64-bit values on AArch64. As we need to create masks for 64-bit values on AArch32 as well, in this commit we introduce the GENMASK_ULL bit operation. Signed-off-by: Sergej Proskurin> --- Cc: Stefano Stabellini Cc: Julien Grall --- xen/include/asm-arm/config.h | 2 ++ > xen/include/xen/bitops.h | 2 ++ This is common code and the relevant maintainers should have been CCed. According to ./scripts/get_maintainer.pl Stefano Stabellini and you were the only maintainers to put on Cc. I would appreciate it if you would point out what I am missing. Thank you very much in advance. This is not the first time we are trying to introduce GENMASK_ULL. I would recommend you to read the following discussion: https://patchwork.kernel.org/patch/9665869/ While I agree with you that GENMASK_ULL reduces potential mistakes by generating ULL masks manually, I don't think that we have more arguments for introducing GENMASK_ULL this time than the last two times.. I do feel GENMASK_ULL is a nice things to have. I am wondering if we could put GENMASK_ULL in ARM code if common code does not want it. Stefano, any opinion? So, anyway, I will gladly put the other maintainers on Cc and retry the submission one more time (it would be great if you would provide me with the list of the respective maintainers, as ./scripts/get_maintainer.pl apparently did not involve all parties). Thank you. You should avoid to rely blindly on scripts/get_maintainer.pl. It can get confused if you have patch modifying arch and common. You can look at MAINTAINERS to find the list of maintainers to CC. Cheers, -- Julien Grall ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] [PATCH v5 08/12] arm/mem_access: Introduce GENMASK_ULL bit operation
Hi Julien, On 07/04/2017 10:46 PM, Sergej Proskurin wrote: > Hi Julien, > > On 07/04/2017 06:28 PM, Julien Grall wrote: >> Hi Sergej, >> >> On 06/27/2017 12:52 PM, Sergej Proskurin wrote: >>> The current implementation of GENMASK is capable of creating bitmasks of >>> 32-bit values on AArch32 and 64-bit values on AArch64. As we need to >>> create masks for 64-bit values on AArch32 as well, in this commit we >>> introduce the GENMASK_ULL bit operation. >>> >>> Signed-off-by: Sergej Proskurin> --- >>> Cc: Stefano Stabellini >>> Cc: Julien Grall >>> --- >>> xen/include/asm-arm/config.h | 2 ++ > xen/include/xen/bitops.h >>> | 2 ++ >> >> This is common code and the relevant maintainers should have been CCed. >> > > According to ./scripts/get_maintainer.pl Stefano Stabellini and you were > the only maintainers to put on Cc. I would appreciate it if you would > point out what I am missing. Thank you very much in advance. > >> This is not the first time we are trying to introduce GENMASK_ULL. I >> would recommend you to read the following discussion: >> >> https://patchwork.kernel.org/patch/9665869/ >> > While I agree with you that GENMASK_ULL reduces potential mistakes by generating ULL masks manually, I don't think that we have more arguments for introducing GENMASK_ULL this time than the last two times.. So, anyway, I will gladly put the other maintainers on Cc and retry the submission one more time (it would be great if you would provide me with the list of the respective maintainers, as ./scripts/get_maintainer.pl apparently did not involve all parties). Thank you. Cheers, ~Sergej ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] [PATCH v5 08/12] arm/mem_access: Introduce GENMASK_ULL bit operation
Hi Julien, On 07/04/2017 06:28 PM, Julien Grall wrote: > Hi Sergej, > > On 06/27/2017 12:52 PM, Sergej Proskurin wrote: >> The current implementation of GENMASK is capable of creating bitmasks of >> 32-bit values on AArch32 and 64-bit values on AArch64. As we need to >> create masks for 64-bit values on AArch32 as well, in this commit we >> introduce the GENMASK_ULL bit operation. >> >> Signed-off-by: Sergej Proskurin> --- >> Cc: Stefano Stabellini >> Cc: Julien Grall >> --- >> xen/include/asm-arm/config.h | 2 ++ > xen/include/xen/bitops.h >> | 2 ++ > > This is common code and the relevant maintainers should have been CCed. > According to ./scripts/get_maintainer.pl Stefano Stabellini and you were the only maintainers to put on Cc. I would appreciate it if you would point out what I am missing. Thank you very much in advance. > This is not the first time we are trying to introduce GENMASK_ULL. I > would recommend you to read the following discussion: > > https://patchwork.kernel.org/patch/9665869/ > Thank you. Cheers, ~Sergej ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
Re: [Xen-devel] [PATCH v5 08/12] arm/mem_access: Introduce GENMASK_ULL bit operation
Hi Sergej, On 06/27/2017 12:52 PM, Sergej Proskurin wrote: The current implementation of GENMASK is capable of creating bitmasks of 32-bit values on AArch32 and 64-bit values on AArch64. As we need to create masks for 64-bit values on AArch32 as well, in this commit we introduce the GENMASK_ULL bit operation. Signed-off-by: Sergej Proskurin> --- Cc: Stefano Stabellini Cc: Julien Grall --- xen/include/asm-arm/config.h | 2 ++ > xen/include/xen/bitops.h | 2 ++ This is common code and the relevant maintainers should have been CCed. This is not the first time we are trying to introduce GENMASK_ULL. I would recommend you to read the following discussion: https://patchwork.kernel.org/patch/9665869/ Cheers, 2 files changed, 4 insertions(+) diff --git a/xen/include/asm-arm/config.h b/xen/include/asm-arm/config.h index 5b6f3c985d..7fa412f1b1 100644 --- a/xen/include/asm-arm/config.h +++ b/xen/include/asm-arm/config.h @@ -19,6 +19,8 @@ #define BITS_PER_LONG (BYTES_PER_LONG << 3) #define POINTER_ALIGN BYTES_PER_LONG +#define BITS_PER_LONG_LONG 64 + /* xen_ulong_t is always 64 bits */ #define BITS_PER_XEN_ULONG 64 diff --git a/xen/include/xen/bitops.h b/xen/include/xen/bitops.h index bd0883ab22..47170c9bfd 100644 --- a/xen/include/xen/bitops.h +++ b/xen/include/xen/bitops.h @@ -9,6 +9,8 @@ */ #define GENMASK(h, l) \ (((~0UL) << (l)) & (~0UL >> (BITS_PER_LONG - 1 - (h +#define GENMASK_ULL(h, l) \ +(((~0ULL) << (l)) & (~0ULL >> (BITS_PER_LONG_LONG - 1 - (h /* * ffs: find first bit set. This is defined the same way as -- Julien Grall ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel
[Xen-devel] [PATCH v5 08/12] arm/mem_access: Introduce GENMASK_ULL bit operation
The current implementation of GENMASK is capable of creating bitmasks of 32-bit values on AArch32 and 64-bit values on AArch64. As we need to create masks for 64-bit values on AArch32 as well, in this commit we introduce the GENMASK_ULL bit operation. Signed-off-by: Sergej Proskurin--- Cc: Stefano Stabellini Cc: Julien Grall --- xen/include/asm-arm/config.h | 2 ++ xen/include/xen/bitops.h | 2 ++ 2 files changed, 4 insertions(+) diff --git a/xen/include/asm-arm/config.h b/xen/include/asm-arm/config.h index 5b6f3c985d..7fa412f1b1 100644 --- a/xen/include/asm-arm/config.h +++ b/xen/include/asm-arm/config.h @@ -19,6 +19,8 @@ #define BITS_PER_LONG (BYTES_PER_LONG << 3) #define POINTER_ALIGN BYTES_PER_LONG +#define BITS_PER_LONG_LONG 64 + /* xen_ulong_t is always 64 bits */ #define BITS_PER_XEN_ULONG 64 diff --git a/xen/include/xen/bitops.h b/xen/include/xen/bitops.h index bd0883ab22..47170c9bfd 100644 --- a/xen/include/xen/bitops.h +++ b/xen/include/xen/bitops.h @@ -9,6 +9,8 @@ */ #define GENMASK(h, l) \ (((~0UL) << (l)) & (~0UL >> (BITS_PER_LONG - 1 - (h +#define GENMASK_ULL(h, l) \ +(((~0ULL) << (l)) & (~0ULL >> (BITS_PER_LONG_LONG - 1 - (h /* * ffs: find first bit set. This is defined the same way as -- 2.13.1 ___ Xen-devel mailing list Xen-devel@lists.xen.org https://lists.xen.org/xen-devel