qemu-trivial
[Top][All Lists]
Advanced

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

Re: [PATCH] /target/i386: fix gdbstub k_gs_base issue


From: Philippe Mathieu-Daudé
Subject: Re: [PATCH] /target/i386: fix gdbstub k_gs_base issue
Date: Fri, 27 Dec 2019 20:14:48 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2

Hi Marek,

If you look at the other patches, you'll notice no leading slash is used, so please remove it when resending.

Maybe you can use "target/i386: Fix handling of k_gs_base register in 32-bit mode in gdbstub" as patch subject.

Please Cc the maintainers. See:
https://wiki.qemu.org/Contribute/SubmitAPatch#CC_the_relevant_maintainer
Doing it for you now (adding Richard and Eduardo).

On 12/27/19 3:41 AM, Marek Dolata - address@hidden wrote:
Fixes: corrects clobbering of registers appearing after k_gs_base

Buglink: https://bugs.launchpad.net/qemu/+bug/1857640

Signed-off-by: Marek Dolata <address@hidden>

---

target/i386/gdbstub.c | 4 +++-

1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/target/i386/gdbstub.c b/target/i386/gdbstub.c

index aef25b70f1..7228d20674 100644

--- a/target/i386/gdbstub.c

+++ b/target/i386/gdbstub.c

I am having troubles trying to apply your patch:

Applying: /target/i386: fix gdbstub k_gs_base issue
error: corrupt patch at line 23
Patch failed at 0001 /target/i386: fix gdbstub k_gs_base issue
hint: Use 'git am --show-current-patch' to see the failed patch
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".

The information on the wiki might help you to use proper format:
https://wiki.qemu.org/Contribute/SubmitAPatch#Use_git_format-patch


@@ -350,14 +350,16 @@ int x86_cpu_gdb_write_register(CPUState *cs, uint8_t *mem_buf, int n)

              env->segs[R_GS].base = ldl_p(mem_buf);

              return 4;

-#ifdef TARGET_X86_64

          case IDX_SEG_REGS + 8:

+#ifdef TARGET_X86_64

              if (env->hflags & HF_CS64_MASK) {

                  env->kernelgsbase = ldq_p(mem_buf);

                  return 8;

              }

              env->kernelgsbase = ldl_p(mem_buf);

You can add here the

#endif


              return 4;

and remove the '#else return 4; #endif' lines.


+#else

+            return 4;

#endif

          case IDX_FP_REGS + 8:

--

2.21.0


Regards,

Phil.




reply via email to

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