mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 02:01:24 +01:00
Building xen.rpm in SLES11 started to fail due to these compiler warnings: [ 1436s] ../grub-upstream/netboot/fsys_tftp.c:213: warning: operation on 'block' may be undefined [ 1437s] ../grub-upstream/netboot/main.c:444: warning: operation on 'block' may be undefined [ 1234s] E: xen sequence-point ../grub-upstream/netboot/fsys_tftp.c:213 [ 1234s] E: xen sequence-point ../grub-upstream/netboot/main.c:444 The reason for this is that the assignment is done twice: tp.u.ack.block = ((uint16_t)( (((uint16_t)((block = prevblock)) & (uint16_t)0x00ffU) << 8) | (((uint16_t)((block = prevblock)) & (uint16_t)0xff00U) >> 8))); Fix this package build error by adding another patch for grub, which moves the assignment out of the macro usage. Signed-off-by: Olaf Hering <olaf@aepfle.de> Acked-by: Ian Campbell <ian.campbell@citrix.com> Committed-by: Ian Campbell <ian.campbell@citrix.com>
46 lines
1.6 KiB
Diff
46 lines
1.6 KiB
Diff
[ 1436s] ../grub-upstream/netboot/fsys_tftp.c:213: warning: operation on 'block' may be undefined
|
|
[ 1437s] ../grub-upstream/netboot/main.c:444: warning: operation on 'block' may be undefined
|
|
|
|
[ 1234s] E: xen sequence-point ../grub-upstream/netboot/fsys_tftp.c:213
|
|
[ 1234s] E: xen sequence-point ../grub-upstream/netboot/main.c:444
|
|
|
|
---
|
|
netboot/fsys_tftp.c | 5 ++++-
|
|
netboot/main.c | 5 ++++-
|
|
2 files changed, 8 insertions(+), 2 deletions(-)
|
|
|
|
Index: grub-0.97/netboot/fsys_tftp.c
|
|
===================================================================
|
|
--- grub-0.97.orig/netboot/fsys_tftp.c
|
|
+++ grub-0.97/netboot/fsys_tftp.c
|
|
@@ -209,8 +209,11 @@ buf_fill (int abort)
|
|
break;
|
|
|
|
if ((block || bcounter) && (block != prevblock + (unsigned short) 1))
|
|
+ {
|
|
+ block = prevblock;
|
|
/* Block order should be continuous */
|
|
- tp.u.ack.block = htons (block = prevblock);
|
|
+ tp.u.ack.block = htons (block);
|
|
+ }
|
|
|
|
/* Should be continuous. */
|
|
tp.opcode = abort ? htons (TFTP_ERROR) : htons (TFTP_ACK);
|
|
Index: grub-0.97/netboot/main.c
|
|
===================================================================
|
|
--- grub-0.97.orig/netboot/main.c
|
|
+++ grub-0.97/netboot/main.c
|
|
@@ -440,8 +440,11 @@ tftp (const char *name, int (*fnc) (unsi
|
|
break;
|
|
|
|
if ((block || bcounter) && (block != prevblock + 1))
|
|
+ {
|
|
+ block = prevblock;
|
|
/* Block order should be continuous */
|
|
- tp.u.ack.block = htons (block = prevblock);
|
|
+ tp.u.ack.block = htons (block);
|
|
+ }
|
|
|
|
/* Should be continuous. */
|
|
tp.opcode = htons (TFTP_ACK);
|