qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] 077f0f: hw/sparc/sun4m: Use UnimplementedDevi


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] 077f0f: hw/sparc/sun4m: Use UnimplementedDevice for I/O de...
Date: Tue, 09 Jun 2020 13:30:39 -0700

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: 077f0f3dade3dcb38f43cc728fa26c4f6affcdd0
      
https://github.com/qemu/qemu/commit/077f0f3dade3dcb38f43cc728fa26c4f6affcdd0
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/sparc/Kconfig
    M hw/sparc/sun4m.c

  Log Message:
  -----------
  hw/sparc/sun4m: Use UnimplementedDevice for I/O devices

These devices are not slots on a bus, but real I/O devices
that we do not implement. As the ISDN ROM would be a ROMD
device, also model it as UnimplementedDevice.

Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Message-Id: <20200510152840.13558-2-f4bug@amsat.org>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>


  Commit: 6c339493c8dbb709c98f471144eebf74c4cca1ad
      
https://github.com/qemu/qemu/commit/6c339493c8dbb709c98f471144eebf74c4cca1ad
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/core/empty_slot.c

  Log Message:
  -----------
  hw/misc/empty_slot: Lower address space priority

Empty slots model RAZ/WI access on a bus. Since we can still
(hot) plug devices on the bus, lower the slot priority, so
device added later is accessed first.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Acked-by: Artyom Tarasenko <atar4qemu@gmail.com>
Message-Id: <20200510152840.13558-3-f4bug@amsat.org>


  Commit: 4bbadef0e3da3f455374e83cb9249c2afe497b24
      
https://github.com/qemu/qemu/commit/4bbadef0e3da3f455374e83cb9249c2afe497b24
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/core/empty_slot.c

  Log Message:
  -----------
  hw/misc/empty_slot: Convert 'size' field as qdev property

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Acked-by: Artyom Tarasenko <atar4qemu@gmail.com>
Message-Id: <20200510152840.13558-4-f4bug@amsat.org>


  Commit: 07ddf5cbe2e9499cc2d238e5c864ac3f5bdd25ce
      
https://github.com/qemu/qemu/commit/07ddf5cbe2e9499cc2d238e5c864ac3f5bdd25ce
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/core/empty_slot.c

  Log Message:
  -----------
  hw/misc/empty_slot: Add a 'name' qdev property

Add a 'name' qdev property so when multiple slots are
accessed, we can notice which one is accessed.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Acked-by: Artyom Tarasenko <atar4qemu@gmail.com>
Message-Id: <20200510152840.13558-5-f4bug@amsat.org>


  Commit: c0e43084dd63daf63e8f7f5a866f2861a5e8d630
      
https://github.com/qemu/qemu/commit/c0e43084dd63daf63e8f7f5a866f2861a5e8d630
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/core/empty_slot.c
    M hw/core/trace-events

  Log Message:
  -----------
  hw/misc/empty_slot: Convert debug printf() to trace event

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Acked-by: Artyom Tarasenko <atar4qemu@gmail.com>
Message-Id: <20200510152840.13558-6-f4bug@amsat.org>


  Commit: 6007523a80bc5100c22a1caf642a9e8a3ea7bd15
      
https://github.com/qemu/qemu/commit/6007523a80bc5100c22a1caf642a9e8a3ea7bd15
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M MAINTAINERS
    M hw/core/Makefile.objs
    R hw/core/empty_slot.c
    M hw/core/trace-events
    M hw/mips/malta.c
    M hw/misc/Makefile.objs
    A hw/misc/empty_slot.c
    M hw/misc/trace-events
    M hw/sparc/sun4m.c
    R include/hw/empty_slot.h
    A include/hw/misc/empty_slot.h

  Log Message:
  -----------
  hw/misc/empty_slot: Move the 'hw/misc' and cover in MAINTAINERS

Add an entry for the 'empty_slot' device.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Acked-by: Artyom Tarasenko <atar4qemu@gmail.com>
Message-Id: <20200510152840.13558-7-f4bug@amsat.org>


  Commit: 28c78fe818257eb1229448ac672e9f350b37437d
      
https://github.com/qemu/qemu/commit/28c78fe818257eb1229448ac672e9f350b37437d
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/mips/malta.c
    M hw/misc/empty_slot.c
    M hw/sparc/sun4m.c
    M include/hw/misc/empty_slot.h

  Log Message:
  -----------
  hw/misc/empty_slot: Name the slots when created

Directly set the slot name when creating the device,
to display the device name in trace events.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Acked-by: Artyom Tarasenko <atar4qemu@gmail.com>
Message-Id: <20200510152840.13558-8-f4bug@amsat.org>


  Commit: acd2a001e0a1658b90c912f7aaf7beb1e341b1d2
      
https://github.com/qemu/qemu/commit/acd2a001e0a1658b90c912f7aaf7beb1e341b1d2
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/sparc/leon3.c

  Log Message:
  -----------
  hw/sparc/leon3: Map the UART device unconditionally

The UART is present on the chipset regardless there is a
character device connected to it. Map it unconditionally.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Acked-by: Artyom Tarasenko <atar4qemu@gmail.com>
Reviewed-by: KONRAD Frederic <frederic.konrad@adacore.com>
Message-Id: <20200608172144.20461-2-f4bug@amsat.org>


  Commit: bec6e07afde3bffb52f1a9d26a90ccbdfff13690
      
https://github.com/qemu/qemu/commit/bec6e07afde3bffb52f1a9d26a90ccbdfff13690
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/sparc64/niagara.c

  Log Message:
  -----------
  hw/sparc64/niagara: Map the UART device unconditionally

The UART is present on the machine regardless there is a
character device connected to it. Map it unconditionally.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Message-Id: <20200608172144.20461-4-f4bug@amsat.org>


  Commit: aceeb71306b41ab0ad2eb82d15a2beb6d8ea0e49
      
https://github.com/qemu/qemu/commit/aceeb71306b41ab0ad2eb82d15a2beb6d8ea0e49
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/sparc64/niagara.c

  Log Message:
  -----------
  hw/sparc64/niagara: Remove duplicated NIAGARA_UART_BASE definition

NIAGARA_UART_BASE is already defined few lines earlier.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Message-Id: <20200608172144.20461-3-f4bug@amsat.org>


  Commit: bb15013ef34617eb1344f5276292cadd326c21b2
      
https://github.com/qemu/qemu/commit/bb15013ef34617eb1344f5276292cadd326c21b2
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/misc/grlib_ahb_apb_pnp.c

  Log Message:
  -----------
  hw/misc/grlib_ahb_apb_pnp: Avoid crash when writing to AHB PnP registers

Similarly to commit 158b659451 with the APB PnP registers, guests
can crash QEMU when writting to the AHB PnP registers:

  $ echo 'writeb 0xfffff042 69' | qemu-system-sparc -M leon3_generic -S -bios 
/etc/magic -qtest stdio
  [I 1571938309.932255] OPENED
  [R +0.063474] writeb 0xfffff042 69
  Segmentation fault (core dumped)

  (gdb) bt
  #0  0x0000000000000000 in  ()
  #1  0x0000562999110df4 in memory_region_write_with_attrs_accessor
      (mr=mr@entry=0x56299aa28ea0, addr=66, value=value@entry=0x7fff6abe13b8, 
size=size@entry=1, shift=<optimized out>, mask=mask@entry=255, attrs=...) at 
memory.c:503
  #2  0x000056299911095e in access_with_adjusted_size
      (addr=addr@entry=66, value=value@entry=0x7fff6abe13b8, size=size@entry=1, 
access_size_min=<optimized out>, access_size_max=<optimized out>, 
access_fn=access_fn@entry=
      0x562999110d70 <memory_region_write_with_attrs_accessor>, 
mr=0x56299aa28ea0, attrs=...) at memory.c:539
  #3  0x0000562999114fba in memory_region_dispatch_write 
(mr=mr@entry=0x56299aa28ea0, addr=66, data=<optimized out>, op=<optimized out>, 
attrs=attrs@entry=...) at memory.c:1482
  #4  0x00005629990c0860 in flatview_write_continue
      (fv=fv@entry=0x56299aa7d8a0, addr=addr@entry=4294963266, attrs=..., 
ptr=ptr@entry=0x7fff6abe1540, len=len@entry=1, addr1=<optimized out>, 
l=<optimized out>, mr=0x56299aa28ea0)
      at include/qemu/host-utils.h:164
  #5  0x00005629990c0a76 in flatview_write (fv=0x56299aa7d8a0, addr=4294963266, 
attrs=..., buf=0x7fff6abe1540, len=1) at exec.c:3165
  #6  0x00005629990c4c1b in address_space_write (as=<optimized out>, 
addr=<optimized out>, attrs=..., attrs@entry=..., buf=buf@entry=0x7fff6abe1540, 
len=len@entry=1) at exec.c:3256
  #7  0x000056299910f807 in qtest_process_command (chr=chr@entry=0x5629995ee920 
<qtest_chr>, words=words@entry=0x56299acfcfa0) at qtest.c:437

Instead of crashing, log the access as unimplemented.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: KONRAD Frederic <frederic.konrad@adacore.com>
Message-Id: <20200331105048.27989-3-f4bug@amsat.org>


  Commit: 1a5a5570889df9cdd42dd85223e03a5f35025a86
      
https://github.com/qemu/qemu/commit/1a5a5570889df9cdd42dd85223e03a5f35025a86
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/misc/grlib_ahb_apb_pnp.c

  Log Message:
  -----------
  hw/misc/grlib_ahb_apb_pnp: Fix AHB PnP 8-bit accesses

The Plug & Play region of the AHB/APB bridge can be accessed
by various word size, however the implementation is clearly
restricted to 32-bit:

  static uint64_t grlib_ahb_pnp_read(void *opaque, hwaddr offset, unsigned size)
  {
      AHBPnp *ahb_pnp = GRLIB_AHB_PNP(opaque);

      return ahb_pnp->regs[offset >> 2];
  }

Similarly to commit 0fbe394a64 with the APB PnP registers,
set the MemoryRegionOps::impl min/max fields to 32-bit, so
memory.c::access_with_adjusted_size() can adjust when the
access is not 32-bit.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: KONRAD Frederic <frederic.konrad@adacore.com>
Message-Id: <20200331105048.27989-4-f4bug@amsat.org>


  Commit: d15188ddcffe0239295f48756bab31e76d88007a
      
https://github.com/qemu/qemu/commit/d15188ddcffe0239295f48756bab31e76d88007a
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/misc/grlib_ahb_apb_pnp.c
    M hw/misc/trace-events

  Log Message:
  -----------
  hw/misc/grlib_ahb_apb_pnp: Add trace events on read accesses

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: KONRAD Frederic <frederic.konrad@adacore.com>
Message-Id: <20200331105048.27989-5-f4bug@amsat.org>


  Commit: 8e071cd40143d86e987b3616a63ccf1275750530
      
https://github.com/qemu/qemu/commit/8e071cd40143d86e987b3616a63ccf1275750530
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M hw/timer/trace-events

  Log Message:
  -----------
  hw/timer/grlib_gptimer: Display frequency in decimal

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: KONRAD Frederic <frederic.konrad@adacore.com>
Message-Id: <20200331105048.27989-6-f4bug@amsat.org>


  Commit: 304c1c8aa5e948ea11aa64acca0e485a185cedc9
      
https://github.com/qemu/qemu/commit/304c1c8aa5e948ea11aa64acca0e485a185cedc9
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M target/sparc/int32_helper.c

  Log Message:
  -----------
  target/sparc/int32_helper: Remove DEBUG_PCALL definition

We define DEBUG_PCALL since b884fc5e (2012-10-06).
7.5 years later it is safe to assume we can remove it :)

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: KONRAD Frederic <frederic.konrad@adacore.com>
Message-Id: <20200331105048.27989-7-f4bug@amsat.org>


  Commit: 86e8c353f705f14f2f2fd7a6195cefa431aa24d9
      
https://github.com/qemu/qemu/commit/86e8c353f705f14f2f2fd7a6195cefa431aa24d9
  Author: Philippe Mathieu-Daudé <f4bug@amsat.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M target/sparc/int32_helper.c

  Log Message:
  -----------
  target/sparc/int32_helper: Extract and use excp_name_str()

Improve exception error report:

Before:

  qemu: fatal: Trap 0x06 while interrupts disabled, Error state

After:

  qemu: fatal: Trap 0x06 (Window Underflow) while interrupts disabled, Error 
state

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: KONRAD Frederic <frederic.konrad@adacore.com>
Message-Id: <20200331105048.27989-8-f4bug@amsat.org>


  Commit: 31d321c2b3574dcc74e9f6411af06bca6b5d10f4
      
https://github.com/qemu/qemu/commit/31d321c2b3574dcc74e9f6411af06bca6b5d10f4
  Author: Peter Maydell <peter.maydell@linaro.org>
  Date:   2020-06-09 (Tue, 09 Jun 2020)

  Changed paths:
    M MAINTAINERS
    M hw/core/Makefile.objs
    R hw/core/empty_slot.c
    M hw/mips/malta.c
    M hw/misc/Makefile.objs
    A hw/misc/empty_slot.c
    M hw/misc/grlib_ahb_apb_pnp.c
    M hw/misc/trace-events
    M hw/sparc/Kconfig
    M hw/sparc/leon3.c
    M hw/sparc/sun4m.c
    M hw/sparc64/niagara.c
    M hw/timer/trace-events
    R include/hw/empty_slot.h
    A include/hw/misc/empty_slot.h
    M target/sparc/int32_helper.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/philmd-gitlab/tags/sparc-next-20200609' 
into staging

SPARC patches

HW:
- Use UNIMP device instead of EMPTY_SLOT
- Make EMPTY_SLOT similar to UNIMP device
- Map UART devices unconditionally
- Pair of fixes for AHB PnP
- Add trace events to AHB PnP

TCG:
- Improve exception logging

CI:
- https://gitlab.com/philmd/qemu/-/pipelines/154231191
- https://travis-ci.org/github/philmd/qemu/builds/696321130

# gpg: Signature made Tue 09 Jun 2020 08:24:09 BST
# gpg:                using RSA key FAABE75E12917221DCFD6BB2E3E32C2CDEADC0DE
# gpg: Good signature from "Philippe Mathieu-Daudé (F4BUG) <f4bug@amsat.org>" 
[full]
# Primary key fingerprint: FAAB E75E 1291 7221 DCFD  6BB2 E3E3 2C2C DEAD C0DE

* remotes/philmd-gitlab/tags/sparc-next-20200609:
  target/sparc/int32_helper: Extract and use excp_name_str()
  target/sparc/int32_helper: Remove DEBUG_PCALL definition
  hw/timer/grlib_gptimer: Display frequency in decimal
  hw/misc/grlib_ahb_apb_pnp: Add trace events on read accesses
  hw/misc/grlib_ahb_apb_pnp: Fix AHB PnP 8-bit accesses
  hw/misc/grlib_ahb_apb_pnp: Avoid crash when writing to AHB PnP registers
  hw/sparc64/niagara: Remove duplicated NIAGARA_UART_BASE definition
  hw/sparc64/niagara: Map the UART device unconditionally
  hw/sparc/leon3: Map the UART device unconditionally
  hw/misc/empty_slot: Name the slots when created
  hw/misc/empty_slot: Move the 'hw/misc' and cover in MAINTAINERS
  hw/misc/empty_slot: Convert debug printf() to trace event
  hw/misc/empty_slot: Add a 'name' qdev property
  hw/misc/empty_slot: Convert 'size' field as qdev property
  hw/misc/empty_slot: Lower address space priority
  hw/sparc/sun4m: Use UnimplementedDevice for I/O devices

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>


Compare: https://github.com/qemu/qemu/compare/49ee11555262...31d321c2b357



reply via email to

[Prev in Thread] Current Thread [Next in Thread]