From nobody Sun Feb 8 17:37:17 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zoho.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1548694544597859.66426005055; Mon, 28 Jan 2019 08:55:44 -0800 (PST) Received: from localhost ([127.0.0.1]:35075 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1goACD-00038m-3v for importer@patchew.org; Mon, 28 Jan 2019 11:55:41 -0500 Received: from eggs.gnu.org ([209.51.188.92]:50403) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1goAAg-0002Bs-5k for qemu-devel@nongnu.org; Mon, 28 Jan 2019 11:54:07 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1goAAf-0004a3-5p for qemu-devel@nongnu.org; Mon, 28 Jan 2019 11:54:06 -0500 Received: from smtp.duncanthrax.net ([2001:470:70c5:1111::170]:41415) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1goAAe-0004Ye-OC for qemu-devel@nongnu.org; Mon, 28 Jan 2019 11:54:05 -0500 Received: from hsi-kbw-109-193-150-175.hsi7.kabel-badenwuerttemberg.de ([109.193.150.175] helo=t470p.stackframe.org) by smtp.eurescom.eu with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1goAAc-00046j-6t; Mon, 28 Jan 2019 17:54:02 +0100 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=duncanthrax.net; s=dkim; h=Content-Transfer-Encoding:MIME-Version: Message-Id:Date:Subject:Cc:To:From; bh=NDtCxH8SSoynmaatWUZCM3Z1GYLKc0jdMlokTc3Z65o=; b=CHk6eaXQT01jqx/1qCHaftUENJ ZxY2AAARteYhQGKYqQ8sxZaxzKA07DDQfElrdJR84BFWEure1CzHDnPuQkiaXpIKdt1iCYZyo4fxe PgGd7CHL+u7yKIiMGjMs+MtfrvQVdyQ8/gk2y0DOTMOwROqBFMvTGC/SYk1C/oL1vf7M=; From: Sven Schnelle To: qemu-devel@nongnu.org Date: Mon, 28 Jan 2019 17:53:33 +0100 Message-Id: <20190128165333.3814-1-svens@stackframe.org> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2001:470:70c5:1111::170 Subject: [Qemu-devel] [PATCH] target/hppa: fix setting registers via gdb X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Sven Schnelle , Richard Henderson Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Type: text/plain; charset="utf-8" While doing 'set $pcoqh=3D0xf0000000' i triggered the assertion below. From= looking at the source, it looks like the argument order for deposit64() is wrong, a= nd val needs to be moved to the end. Signed-off-by: Sven Schnelle qemu-system-hppa: /home/svens/qemu/include/qemu/bitops.h:419: deposit64: As= sertion `start >=3D 0 && length > 0 && length <=3D 64 - start' failed. Thread 1 "qemu-system-hpp" received signal SIGABRT, Aborted. __GI_raise (sig=3Dsig@entry=3D0x6) at ../sysdeps/unix/sysv/linux/raise.c:50 50 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. (gdb) bt #0 0x00007ffff4f8785b in __GI_raise (sig=3Dsig@entry=3D0x6) at ../sysdeps= /unix/sysv/linux/raise.c:50 #1 0x00007ffff4f72535 in __GI_abort () at abort.c:79 #2 0x00007ffff4f7240f in __assert_fail_base (fmt=3D0x7ffff50d4ee0 "%s%s%s:%u: %s%sAssertion `%s' failed.\n%n", asse= rtion=3D0x555555cc62a8 "start >=3D 0 && length > 0 && length <=3D 64 - star= t", file=3D0x555555cc6280 "/home/svens/qemu/include/qemu/bitops.h", line=3D= 0x1a3, function=3D) at assert.c:92 #3 0x00007ffff4f800a2 in __GI___assert_fail (assertion=3D0x555555cc62a8 "start >=3D 0 && length > 0 && length <=3D = 64 - start", file=3D0x555555cc6280 "/home/svens/qemu/include/qemu/bitops.h"= , line=3D0x1a3, function=3D0x555555cc6760 <__PRETTY_FUNCTION__.15114> "depo= sit64") at assert.c:101 #4 0x00005555558dd0db in deposit64 (value=3D0x0, start=3D0x0, length=3D0x= 0, fieldval=3D0x20) at /home/svens/qemu/include/qemu/bitops.h:419 #5 0x00005555558dd87a in hppa_cpu_gdb_write_register (cs=3D0x5555563394e0= , mem_buf=3D0x7fffffffb134 "", n=3D0x41) at /home/svens/qemu/target/hppa/gd= bstub.c:269 #6 0x0000555555822397 in gdb_write_register (cpu=3D0x5555563394e0, mem_bu= f=3D0x7fffffffb134 "", reg=3D0x41) at /home/svens/qemu/gdbstub.c:905 #7 0x0000555555823802 in gdb_handle_packet (s=3D0x555556992020, line_buf= =3D0x55555699203c "G", '0' , "fff1", '0' , "1", '0' , "6"...) at /home/svens/qemu/gdbstub.c:1481 #8 0x000055555582573c in gdb_read_byte (s=3D0x555556992020, ch=3D0x35) at= /home/svens/qemu/gdbstub.c:2131 #9 0x0000555555825972 in gdb_chr_receive (opaque=3D0x555556992020, buf=3D= 0x7fffffffd170 "$G", '0' , "fff1", '0' , "1", '0' ..., size=3D0x405) at /home/svens/qemu/gdbstu= b.c:2369 #10 0x0000555555bd51bc in qemu_chr_be_write_impl (s=3D0x5555566cd100, buf= =3D0x7fffffffd170 "$G", '0' , "fff1", '0' , "1", '0' ..., len=3D0x405) at chardev/char.c:175 #11 0x0000555555bd5220 in qemu_chr_be_write (s=3D0x5555566cd100, buf=3D0x7= fffffffd170 "$G", '0' , "fff1", '0' , = "1", '0' ..., len=3D0x405) at chardev/char.c:187 #12 0x0000555555bdde8d in tcp_chr_read (chan=3D0x55555697ea00, cond=3DG_IO= _IN, opaque=3D0x5555566cd100) at chardev/char-socket.c:490 #13 0x0000555555bf81c3 in qio_channel_fd_source_dispatch (source=3D0x55555= 69c6220, callback=3D0x555555bddcdf , user_data=3D0x5555566cd1= 00) at io/channel-watch.c:84 #14 0x00007ffff6937cb8 in g_main_context_dispatch () at /usr/lib/x86_64-li= nux-gnu/libglib-2.0.so.0 #15 0x0000555555c73851 in glib_pollfds_poll () at util/main-loop.c:215 #16 0x0000555555c738cb in os_host_main_loop_wait (timeout=3D0x3b9aca00) at= util/main-loop.c:238 #17 0x0000555555c73984 in main_loop_wait (nonblocking=3D0x0) at util/main-= loop.c:497 #18 0x00005555558f4130 in main_loop () at vl.c:1925 #19 0x00005555558fbb43 in main (argc=3D0xd, argv=3D0x7fffffffe5e8, envp=3D= 0x7fffffffe658) at vl.c:4662 Signed-off-by: Sven Schnelle --- target/hppa/gdbstub.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/target/hppa/gdbstub.c b/target/hppa/gdbstub.c index e2e9c4d77f..3157a690f2 100644 --- a/target/hppa/gdbstub.c +++ b/target/hppa/gdbstub.c @@ -266,7 +266,7 @@ int hppa_cpu_gdb_write_register(CPUState *cs, uint8_t *= mem_buf, int n) case 65 ... 127: { uint64_t *fr =3D &env->fr[(n - 64) / 2]; - *fr =3D deposit64(*fr, val, (n & 1 ? 0 : 32), 32); + *fr =3D deposit64(*fr, (n & 1 ? 0 : 32), 32, val); } break; default: --=20 2.20.1