[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH v4 5/6] hppa: Add emulation of Artist graphics
From: |
Helge Deller |
Subject: |
Re: [PATCH v4 5/6] hppa: Add emulation of Artist graphics |
Date: |
Fri, 20 Dec 2019 08:26:33 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2 |
On 19.12.19 01:28, Richard Henderson wrote:
> On 11/3/19 10:56 AM, Sven Schnelle wrote:
>> This adds emulation of Artist graphics good enough
>> to get a Text console on both Linux and HP-UX. The
>> X11 server from HP-UX also works.
>>
>> Signed-off-by: Sven Schnelle <address@hidden>
>> ---
>> hw/display/Kconfig | 4 +
>> hw/display/Makefile.objs | 1 +
>> hw/display/artist.c | 1449 ++++++++++++++++++++++++++++++++++++++
>> hw/display/trace-events | 9 +
>> hw/hppa/Kconfig | 1 +
>> hw/hppa/hppa_hardware.h | 1 +
>> hw/hppa/machine.c | 9 +
>> 7 files changed, 1474 insertions(+)
>> create mode 100644 hw/display/artist.c
>
> Seems to have some problems rebased upon master:
>
>
>> Thread 6 "qemu-system-hpp" received signal SIGSEGV, Segmentation fault.
>> [Switching to Thread 0x7fffee3b6700 (LWP 11752)]
>> 0x00005555558bba54 in artist_rop8 (s=s@entry=0x555556105400,
>> dst=dst@entry=0x7fffed740000 "", val=0 '\000')
>> at /home/rth/qemu/qemu/hw/display/artist.c:288
>> 288 *dst |= val & plane_mask;
>> (gdb) where
>> #0 0x00005555558bba54 in artist_rop8
>> (s=s@entry=0x555556105400, dst=dst@entry=0x7fffed740000 "", val=0 '\000')
>> at /home/rth/qemu/qemu/hw/display/artist.c:288
>> #1 0x00005555558bc145 in vram_bit_write
>> (s=s@entry=0x555556105400, posx=<optimized out>, posy=<optimized out>,
>> incr_x=incr_x@entry=false, size=size@entry=4, data=<optimized out>,
>> data@entry=0)
>> at /home/rth/qemu/qemu/hw/display/artist.c:430
>> #2 0x00005555558bd33b in artist_reg_write
>> (opaque=0x555556105400, addr=1050144, val=0, size=4)
>> at /home/rth/qemu/qemu/hw/display/artist.c:862
>> #3 0x00005555557b271b in memory_region_write_accessor
>> (mr=mr@entry=0x5555561058f0, addr=addr@entry=1050144,
>> value=value@entry=0x7fffee3b4f08, size=size@entry=4, shift=shift@entry=0,
>> mask=mask@entry=4294967295, attrs=...) at /home/rth/qemu/qemu/memory.c:483
>> #4 0x00005555557b03d3 in access_with_adjusted_size
>> (addr=addr@entry=1050144, value=value@entry=0x7fffee3b4f08,
>> size=size@entry=4, access_size_min=<optimized out>,
>> access_size_max=<optimized out>, access_fn=access_fn@entry=
>> 0x5555557b25f0 <memory_region_write_accessor>, mr=0x5555561058f0,
>> attrs=...) at /home/rth/qemu/qemu/memory.c:539
>> #5 0x00005555557b4b34 in memory_region_dispatch_write
>> (mr=mr@entry=0x5555561058f0, addr=addr@entry=1050144, data=<optimized
>> out>, data@entry=0, op=op@entry=MO_BEUL, attrs=...)
>> at /home/rth/qemu/qemu/memory.c:1475
>> #6 0x00005555557c18ed in io_writex
>> (env=env@entry=0x5555563a6b60, mmu_idx=mmu_idx@entry=4, val=val@entry=0,
>> addr=addr@entry=4161799712, retaddr=140736415114886, op=MO_BEUL,
>> iotlbentry=<optimized out>, iotlbentry=<optimized out>)
>> at /home/rth/qemu/qemu/accel/tcg/cputlb.c:977
>> #7 0x00005555557c77bc in store_helper
>> (op=MO_BEUL, retaddr=140736415114886, oi=<optimized out>, val=0,
>> addr=4161799712, env=0x5555563a6b60) at
>> /home/rth/qemu/qemu/accel/tcg/cputlb.c:1716
>> #8 0x00005555557c77bc in helper_be_stl_mmu
>> (env=0x5555563a6b60, addr=4161799712, val=0, oi=<optimized out>,
>> retaddr=140736415114886) at /home/rth/qemu/qemu/accel/tcg/cputlb.c:1842
>> #9 0x00007fffc007a686 in code_gen_buffer ()
Richard, the attached patch (for seabios-hppa) fixes it for me.
Can you test as well?
It fixes the sti text column to go out-of-range and thus outside the
framebuffer memory.
Helge
sti.patch
Description: Text Data