qemu-devel
[Top][All Lists]
Advanced

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

[Bug 1858461] Re: Please refactor linux-user/mips/cpu_loop.c


From: Aleksandar Markovic
Subject: [Bug 1858461] Re: Please refactor linux-user/mips/cpu_loop.c
Date: Wed, 08 Jan 2020 18:45:57 -0000

Andrew,

Thanks for your input regarding linked patch. The patch is still under
review, and it is normal for patches under review to perhaps have some
faults, and that is improved in the process of reviewing - that is,
among other things, one of benefits of open source development. I will
take into account your opinion, and fix the patch in the next version of
the series.

As far your ideas on other improvements, my advice is to submit them to
the QEMU devel list - possibly as a short series of patches. Try to
organize your changes in several patches, each representing a logical
unit. For example:

   - one patch could be titled "linux-user: mips: Refactor enumerating of 
syscall numbers"
   - the second patch could be "linux-user: Automate updating syscall numbers" 
(but, yes, this should work preferably for all targets, as Peter said)
   - the third patch could be "linux-user: Fix execution of program 'emerge'" 
(I am not sure if there is a separate portion of code that fixes that)
   - etc. - whatever you think should be fixed/improved

As Thomas said, follow https://wiki.qemu.org/Contribute/SubmitAPatch .
For each patch, provide background information, problem that is fixed
with the patch, and why is the way you propose good.

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1858461

Title:
  Please refactor linux-user/mips/cpu_loop.c

Status in QEMU:
  New

Bug description:
  Hello. I am working with qemu on test images. I've added a new syscall
  (436) to qemu but received ENOSYS from mips application.

  Please open "linux-user/mips/cpu_loop.c". I've added at the end of
  "mips_syscall_args" the following:

  ```
  MIPS_SYS(sys_getdents64_x32, 3)
  ```

  But

  ```
  syscall_num = env->active_tc.gpr[2] - 4000;
  if (syscall_num >= sizeof(mips_syscall_args)) {
    ret = -TARGET_ENOSYS;
  ```

  returns -TARGET_ENOSYS

  We can see that "linux-user/mips/cpu_loop.c" differs a lot from
  "linux-user/arm/cpu_loop.c". Arm has it's own "ARM_NR_BASE" and etc.

  Can you please refactor mips cpu loop in the same way as arm? Thank
  you.

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1858461/+subscriptions



reply via email to

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