提交 7e68494b 编写于 作者: A Anthony Liguori

Merge remote-tracking branch 'agraf/ppc-for-upstream-1.3' into staging

* agraf/ppc-for-upstream-1.3:
  fbdev: fix pixman compile on old pixman
  vl.c: Fix broken -usb option
  pseries: Fix bug in PCI MSI allocation
  kvm: fix incorrect length in a loop over kvm dirty pages map
  PPC: Fix missing TRACE exception
  hw/ide/macio: Fix segfault caused by NULL DMAContext*
Signed-off-by: NAnthony Liguori <aliguori@us.ibm.com>
...@@ -76,7 +76,8 @@ static void pmac_ide_atapi_transfer_cb(void *opaque, int ret) ...@@ -76,7 +76,8 @@ static void pmac_ide_atapi_transfer_cb(void *opaque, int ret)
s->io_buffer_size = io->len; s->io_buffer_size = io->len;
qemu_sglist_init(&s->sg, io->len / MACIO_PAGE_SIZE + 1, NULL); qemu_sglist_init(&s->sg, io->len / MACIO_PAGE_SIZE + 1,
&dma_context_memory);
qemu_sglist_add(&s->sg, io->addr, io->len); qemu_sglist_add(&s->sg, io->addr, io->len);
io->addr += io->len; io->addr += io->len;
io->len = 0; io->len = 0;
...@@ -132,7 +133,8 @@ static void pmac_ide_transfer_cb(void *opaque, int ret) ...@@ -132,7 +133,8 @@ static void pmac_ide_transfer_cb(void *opaque, int ret)
s->io_buffer_index = 0; s->io_buffer_index = 0;
s->io_buffer_size = io->len; s->io_buffer_size = io->len;
qemu_sglist_init(&s->sg, io->len / MACIO_PAGE_SIZE + 1, NULL); qemu_sglist_init(&s->sg, io->len / MACIO_PAGE_SIZE + 1,
&dma_context_memory);
qemu_sglist_add(&s->sg, io->addr, io->len); qemu_sglist_add(&s->sg, io->addr, io->len);
io->addr += io->len; io->addr += io->len;
io->len = 0; io->len = 0;
......
...@@ -351,7 +351,7 @@ static void rtas_ibm_change_msi(sPAPREnvironment *spapr, ...@@ -351,7 +351,7 @@ static void rtas_ibm_change_msi(sPAPREnvironment *spapr,
/* There is no cached config, allocate MSIs */ /* There is no cached config, allocate MSIs */
if (!phb->msi_table[ndev].nvec) { if (!phb->msi_table[ndev].nvec) {
irq = spapr_allocate_irq_block(req_num, true); irq = spapr_allocate_irq_block(req_num, false);
if (irq < 0) { if (irq < 0) {
fprintf(stderr, "Cannot allocate MSIs for device#%d", ndev); fprintf(stderr, "Cannot allocate MSIs for device#%d", ndev);
rtas_st(rets, 0, -1); /* Hardware error */ rtas_st(rets, 0, -1); /* Hardware error */
......
...@@ -364,7 +364,7 @@ static int kvm_get_dirty_pages_log_range(MemoryRegionSection *section, ...@@ -364,7 +364,7 @@ static int kvm_get_dirty_pages_log_range(MemoryRegionSection *section,
unsigned int i, j; unsigned int i, j;
unsigned long page_number, c; unsigned long page_number, c;
hwaddr addr, addr1; hwaddr addr, addr1;
unsigned int len = ((section->size / TARGET_PAGE_SIZE) + HOST_LONG_BITS - 1) / HOST_LONG_BITS; unsigned int len = ((section->size / getpagesize()) + HOST_LONG_BITS - 1) / HOST_LONG_BITS;
unsigned long hpratio = getpagesize() / TARGET_PAGE_SIZE; unsigned long hpratio = getpagesize() / TARGET_PAGE_SIZE;
/* /*
......
...@@ -21,7 +21,9 @@ int qemu_pixman_get_type(int rshift, int gshift, int bshift) ...@@ -21,7 +21,9 @@ int qemu_pixman_get_type(int rshift, int gshift, int bshift)
if (rshift == 0) { if (rshift == 0) {
type = PIXMAN_TYPE_ABGR; type = PIXMAN_TYPE_ABGR;
} else { } else {
#if PIXMAN_VERSION >= PIXMAN_VERSION_ENCODE(0, 21, 8)
type = PIXMAN_TYPE_BGRA; type = PIXMAN_TYPE_BGRA;
#endif
} }
} }
return type; return type;
......
...@@ -3473,7 +3473,8 @@ static inline void gen_goto_tb(DisasContext *ctx, int n, target_ulong dest) ...@@ -3473,7 +3473,8 @@ static inline void gen_goto_tb(DisasContext *ctx, int n, target_ulong dest)
if (unlikely(ctx->singlestep_enabled)) { if (unlikely(ctx->singlestep_enabled)) {
if ((ctx->singlestep_enabled & if ((ctx->singlestep_enabled &
(CPU_BRANCH_STEP | CPU_SINGLE_STEP)) && (CPU_BRANCH_STEP | CPU_SINGLE_STEP)) &&
ctx->exception == POWERPC_EXCP_BRANCH) { (ctx->exception == POWERPC_EXCP_BRANCH ||
ctx->exception == POWERPC_EXCP_TRACE)) {
target_ulong tmp = ctx->nip; target_ulong tmp = ctx->nip;
ctx->nip = dest; ctx->nip = dest;
gen_exception(ctx, POWERPC_EXCP_TRACE); gen_exception(ctx, POWERPC_EXCP_TRACE);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册