As was made noticeable by the last of the commits referenced below,
using a fixed-size type for such purposes is not only against
./CODING_STYLE, but can lead to actual issues. Switch to using size_t
instead, thus also allowing calculations to be lighter-weight in 32-bit
builds.
No functional change for 64-bit builds.
Link: https://gitlab.com/xen-project/xen/-/jobs/7136417308
Fixes: b145b4a39c13 ("livepatch: Handle arbitrary size names with the list operation")
Fixes: 5083e0ff939d ("livepatch: Add metadata runtime retrieval mechanism")
Fixes: 43d5c5d5f70b ("xen: avoid UB in guest handle arithmetic")
Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
--- a/xen/common/livepatch.c
+++ b/xen/common/livepatch.c
@@ -1252,7 +1252,7 @@ static int livepatch_list(struct xen_sys
list->metadata_total_size = 0;
if ( list->nr )
{
- uint64_t name_offset = 0, metadata_offset = 0;
+ size_t name_offset = 0, metadata_offset = 0;
list_for_each_entry( data, &payload_list, list )
{
On Thu, Jun 20, 2024 at 8:16 AM Jan Beulich <jbeulich@suse.com> wrote:
>
> As was made noticeable by the last of the commits referenced below,
> using a fixed-size type for such purposes is not only against
> ./CODING_STYLE, but can lead to actual issues. Switch to using size_t
> instead, thus also allowing calculations to be lighter-weight in 32-bit
> builds.
>
> No functional change for 64-bit builds.
>
> Link: https://gitlab.com/xen-project/xen/-/jobs/7136417308
> Fixes: b145b4a39c13 ("livepatch: Handle arbitrary size names with the list operation")
> Fixes: 5083e0ff939d ("livepatch: Add metadata runtime retrieval mechanism")
> Fixes: 43d5c5d5f70b ("xen: avoid UB in guest handle arithmetic")
> Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
>
Reviewed-by: Ross Lagerwall <ross.lagerwall@citrix.com>
Thanks
On Thu, 2024-06-20 at 09:04 +0100, Ross Lagerwall wrote:
> On Thu, Jun 20, 2024 at 8:16 AM Jan Beulich <jbeulich@suse.com>
> wrote:
> >
> > As was made noticeable by the last of the commits referenced below,
> > using a fixed-size type for such purposes is not only against
> > ./CODING_STYLE, but can lead to actual issues. Switch to using
> > size_t
> > instead, thus also allowing calculations to be lighter-weight in
> > 32-bit
> > builds.
> >
> > No functional change for 64-bit builds.
> >
> > Link: https://gitlab.com/xen-project/xen/-/jobs/7136417308
> > Fixes: b145b4a39c13 ("livepatch: Handle arbitrary size names with
> > the list operation")
> > Fixes: 5083e0ff939d ("livepatch: Add metadata runtime retrieval
> > mechanism")
> > Fixes: 43d5c5d5f70b ("xen: avoid UB in guest handle arithmetic")
> > Reported-by: Andrew Cooper <andrew.cooper3@citrix.com>
> > Signed-off-by: Jan Beulich <jbeulich@suse.com>
> >
>
> Reviewed-by: Ross Lagerwall <ross.lagerwall@citrix.com>
Release-Acked-by: Oleksii Kurochko <oleksii.kurochko@gmail.com>
~ Oleksii
© 2016 - 2026 Red Hat, Inc.