On Tue, Jun 30, Michael Young wrote: > I get the following errors when trying to build xen-4.14.0-rc4 This happens to work for me. Olaf --- tools/debugger/kdd/kdd.c | 8 ++++---- 1 file changed, 3 insertions(+), 3 deletions(-) --- a/tools/debugger/kdd/kdd.c +++ b/tools/debugger/kdd/kdd.c @@ -742,25 +742,25 @@ static void kdd_tx(kdd_state *s) int i; /* Fix up the checksum before we send */ for (i = 0; i < s->txp.h.len; i++) sum += s->txp.payload[i]; s->txp.h.sum = sum; kdd_log_pkt(s, "TX", &s->txp); len = s->txp.h.len + sizeof (kdd_hdr); if (s->txp.h.dir == KDD_DIR_PKT) /* Append the mysterious 0xaa byte to each packet */ - s->txb[len++] = 0xaa; + s->txp.payload[len++] = 0xaa; (void) blocking_write(s->fd, s->txb, len); } /* Send an acknowledgement to the client */ static void kdd_send_ack(kdd_state *s, uint32_t id, uint16_t type) { s->txp.h.dir = KDD_DIR_ACK; s->txp.h.type = type; s->txp.h.len = 0; s->txp.h.id = id; @@ -775,25 +775,25 @@ static void kdd_send_cmd(kdd_state *s, uint32_t subtype, size_t extra) s->txp.h.type = KDD_PKT_CMD; s->txp.h.len = sizeof (kdd_cmd) + extra; s->txp.h.id = (s->next_id ^= 1); s->txp.h.sum = 0; s->txp.cmd.subtype = subtype; kdd_tx(s); } /* Cause the client to print a string */ static void kdd_send_string(kdd_state *s, char *fmt, ...) { uint32_t len = 0xffff - sizeof (kdd_msg); - char *buf = (char *) s->txb + sizeof (kdd_hdr) + sizeof (kdd_msg); + char *buf = (char *) &s->txp + sizeof (kdd_hdr) + sizeof (kdd_msg); va_list ap; va_start(ap, fmt); len = vsnprintf(buf, len, fmt, ap); va_end(ap); s->txp.h.dir = KDD_DIR_PKT; s->txp.h.type = KDD_PKT_MSG; s->txp.h.len = sizeof (kdd_msg) + len; s->txp.h.id = (s->next_id ^= 1); s->txp.h.sum = 0; s->txp.msg.subtype = KDD_MSG_PRINT; @@ -807,25 +807,25 @@ static void kdd_break(kdd_state *s) { uint16_t ilen; KDD_LOG(s, "Break\n"); if (s->running) kdd_halt(s->guest); s->running = 0; { unsigned int i; /* XXX debug pattern */ for (i = 0; i < 0x100 ; i++) - s->txb[sizeof (kdd_hdr) + i] = i; + s->txp.payload[sizeof (kdd_hdr) + i] = i; } /* Send a state-change message to the client so it knows we've stopped */ s->txp.h.dir = KDD_DIR_PKT; s->txp.h.type = KDD_PKT_STC; s->txp.h.len = sizeof (kdd_stc); s->txp.h.id = (s->next_id ^= 1); s->txp.stc.subtype = KDD_STC_STOP; s->txp.stc.stop.cpu = s->cpuid; s->txp.stc.stop.ncpus = kdd_count_cpus(s->guest); s->txp.stc.stop.kthread = 0; /* Let the debugger figure it out */ s->txp.stc.stop.status = KDD_STC_STATUS_BREAKPOINT;