All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [Bug 1815078] [NEW] Qemu 3.1.0 risc-v mie.MEIE
@ 2019-02-07 16:01 RTOS Pharos
  2019-02-08  0:55 ` Alistair Francis
                   ` (6 more replies)
  0 siblings, 7 replies; 9+ messages in thread
From: RTOS Pharos @ 2019-02-07 16:01 UTC (permalink / raw)
  To: qemu-devel

Public bug reported:

Hello all,

There is a bug in qemu for Risc-v, related to the mie register: when we
try to set the MEIE bit (11) nothing is done, even when we are running
at machine mode.

Li   a0 , 1 << 11
Csrs mie , a0

And when we read mie it is as though nothing was done.

Going through the qemu source code I was able to correct it: on file
op_helper.c, line 94, the variable all_ints should be initialized with:

uint64_t all_ints = delegable_ints | MIP_MSIP | MIP_MTIP | MIP_MEIP;

That is, the MIP_MEIP was missing.

I've successfully triggered uart interrupts with this patch (virt
machine).

All the best,
Pharos team

** Affects: qemu
     Importance: Undecided
         Status: New

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

Title:
  Qemu 3.1.0 risc-v mie.MEIE

Status in QEMU:
  New

Bug description:
  Hello all,

  There is a bug in qemu for Risc-v, related to the mie register: when
  we try to set the MEIE bit (11) nothing is done, even when we are
  running at machine mode.

  Li   a0 , 1 << 11
  Csrs mie , a0

  And when we read mie it is as though nothing was done.

  Going through the qemu source code I was able to correct it: on file
  op_helper.c, line 94, the variable all_ints should be initialized
  with:

  uint64_t all_ints = delegable_ints | MIP_MSIP | MIP_MTIP | MIP_MEIP;

  That is, the MIP_MEIP was missing.

  I've successfully triggered uart interrupts with this patch (virt
  machine).

  All the best,
  Pharos team

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

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Qemu-devel] [Bug 1815078] [NEW] Qemu 3.1.0 risc-v mie.MEIE
  2019-02-07 16:01 [Qemu-devel] [Bug 1815078] [NEW] Qemu 3.1.0 risc-v mie.MEIE RTOS Pharos
@ 2019-02-08  0:55 ` Alistair Francis
  2019-02-13 18:15 ` [Qemu-devel] [Bug 1815078] " Palmer Dabbelt
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: Alistair Francis @ 2019-02-08  0:55 UTC (permalink / raw)
  To: Bug 1815078; +Cc: qemu-devel@nongnu.org Developers

On Thu, Feb 7, 2019 at 8:19 AM RTOS Pharos <1815078@bugs.launchpad.net> wrote:
>
> Public bug reported:
>
> Hello all,
>
> There is a bug in qemu for Risc-v, related to the mie register: when we
> try to set the MEIE bit (11) nothing is done, even when we are running
> at machine mode.
>
> Li   a0 , 1 << 11
> Csrs mie , a0
>
> And when we read mie it is as though nothing was done.
>
> Going through the qemu source code I was able to correct it: on file
> op_helper.c, line 94, the variable all_ints should be initialized with:
>
> uint64_t all_ints = delegable_ints | MIP_MSIP | MIP_MTIP | MIP_MEIP;
>
> That is, the MIP_MEIP was missing.
>
> I've successfully triggered uart interrupts with this patch (virt
> machine).

Would you like to send a patch?

Alistair

>
> All the best,
> Pharos team
>
> ** Affects: qemu
>      Importance: Undecided
>          Status: New
>
> --
> You received this bug notification because you are a member of qemu-
> devel-ml, which is subscribed to QEMU.
> https://bugs.launchpad.net/bugs/1815078
>
> Title:
>   Qemu 3.1.0 risc-v mie.MEIE
>
> Status in QEMU:
>   New
>
> Bug description:
>   Hello all,
>
>   There is a bug in qemu for Risc-v, related to the mie register: when
>   we try to set the MEIE bit (11) nothing is done, even when we are
>   running at machine mode.
>
>   Li   a0 , 1 << 11
>   Csrs mie , a0
>
>   And when we read mie it is as though nothing was done.
>
>   Going through the qemu source code I was able to correct it: on file
>   op_helper.c, line 94, the variable all_ints should be initialized
>   with:
>
>   uint64_t all_ints = delegable_ints | MIP_MSIP | MIP_MTIP | MIP_MEIP;
>
>   That is, the MIP_MEIP was missing.
>
>   I've successfully triggered uart interrupts with this patch (virt
>   machine).
>
>   All the best,
>   Pharos team
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/qemu/+bug/1815078/+subscriptions
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Qemu-devel] [Bug 1815078] Re: Qemu 3.1.0 risc-v mie.MEIE
  2019-02-07 16:01 [Qemu-devel] [Bug 1815078] [NEW] Qemu 3.1.0 risc-v mie.MEIE RTOS Pharos
  2019-02-08  0:55 ` Alistair Francis
@ 2019-02-13 18:15 ` Palmer Dabbelt
  2019-02-13 19:35 ` RTOS Pharos
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: Palmer Dabbelt @ 2019-02-13 18:15 UTC (permalink / raw)
  To: qemu-devel

It looks like this is fixed as of c7b951718815 ("RISC-V: Implement
modular CSR helper interface"), which was merged on January 14th.

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

Title:
  Qemu 3.1.0 risc-v mie.MEIE

Status in QEMU:
  New

Bug description:
  Hello all,

  There is a bug in qemu for Risc-v, related to the mie register: when
  we try to set the MEIE bit (11) nothing is done, even when we are
  running at machine mode.

  Li   a0 , 1 << 11
  Csrs mie , a0

  And when we read mie it is as though nothing was done.

  Going through the qemu source code I was able to correct it: on file
  op_helper.c, line 94, the variable all_ints should be initialized
  with:

  uint64_t all_ints = delegable_ints | MIP_MSIP | MIP_MTIP | MIP_MEIP;

  That is, the MIP_MEIP was missing.

  I've successfully triggered uart interrupts with this patch (virt
  machine).

  All the best,
  Pharos team

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

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Qemu-devel] [Bug 1815078] Re: Qemu 3.1.0 risc-v mie.MEIE
  2019-02-07 16:01 [Qemu-devel] [Bug 1815078] [NEW] Qemu 3.1.0 risc-v mie.MEIE RTOS Pharos
  2019-02-08  0:55 ` Alistair Francis
  2019-02-13 18:15 ` [Qemu-devel] [Bug 1815078] " Palmer Dabbelt
@ 2019-02-13 19:35 ` RTOS Pharos
  2019-02-14  2:15 ` Palmer Dabbelt
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: RTOS Pharos @ 2019-02-13 19:35 UTC (permalink / raw)
  To: qemu-devel

Good news,

Thanks

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

Title:
  Qemu 3.1.0 risc-v mie.MEIE

Status in QEMU:
  New

Bug description:
  Hello all,

  There is a bug in qemu for Risc-v, related to the mie register: when
  we try to set the MEIE bit (11) nothing is done, even when we are
  running at machine mode.

  Li   a0 , 1 << 11
  Csrs mie , a0

  And when we read mie it is as though nothing was done.

  Going through the qemu source code I was able to correct it: on file
  op_helper.c, line 94, the variable all_ints should be initialized
  with:

  uint64_t all_ints = delegable_ints | MIP_MSIP | MIP_MTIP | MIP_MEIP;

  That is, the MIP_MEIP was missing.

  I've successfully triggered uart interrupts with this patch (virt
  machine).

  All the best,
  Pharos team

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

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Qemu-devel] [Bug 1815078] Re: Qemu 3.1.0 risc-v mie.MEIE
  2019-02-07 16:01 [Qemu-devel] [Bug 1815078] [NEW] Qemu 3.1.0 risc-v mie.MEIE RTOS Pharos
                   ` (2 preceding siblings ...)
  2019-02-13 19:35 ` RTOS Pharos
@ 2019-02-14  2:15 ` Palmer Dabbelt
  2019-02-14  6:42 ` RTOS Pharos
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 9+ messages in thread
From: Palmer Dabbelt @ 2019-02-14  2:15 UTC (permalink / raw)
  To: qemu-devel

LMK if that patch doesn't fix your issue.  QEMU master is pretty stable
for RISC-V right now and since there's a handful of intertwined patches
the best bet is probably just to use the commit hash above.

This should be fixed in the 4.0 release, which is targeted for the
middle of April.

** Changed in: qemu
     Assignee: (unassigned) => Palmer Dabbelt (palmerdabbelt)

** Changed in: qemu
       Status: New => Fix Committed

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

Title:
  Qemu 3.1.0 risc-v mie.MEIE

Status in QEMU:
  Fix Committed

Bug description:
  Hello all,

  There is a bug in qemu for Risc-v, related to the mie register: when
  we try to set the MEIE bit (11) nothing is done, even when we are
  running at machine mode.

  Li   a0 , 1 << 11
  Csrs mie , a0

  And when we read mie it is as though nothing was done.

  Going through the qemu source code I was able to correct it: on file
  op_helper.c, line 94, the variable all_ints should be initialized
  with:

  uint64_t all_ints = delegable_ints | MIP_MSIP | MIP_MTIP | MIP_MEIP;

  That is, the MIP_MEIP was missing.

  I've successfully triggered uart interrupts with this patch (virt
  machine).

  All the best,
  Pharos team

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

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Qemu-devel] [Bug 1815078] Re: Qemu 3.1.0 risc-v mie.MEIE
  2019-02-07 16:01 [Qemu-devel] [Bug 1815078] [NEW] Qemu 3.1.0 risc-v mie.MEIE RTOS Pharos
                   ` (3 preceding siblings ...)
  2019-02-14  2:15 ` Palmer Dabbelt
@ 2019-02-14  6:42 ` RTOS Pharos
  2019-02-14  6:52 ` RTOS Pharos
  2019-04-24  6:10 ` Thomas Huth
  6 siblings, 0 replies; 9+ messages in thread
From: RTOS Pharos @ 2019-02-14  6:42 UTC (permalink / raw)
  To: qemu-devel

OK, I'll give it a try and give you some feedback.

Thanks

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

Title:
  Qemu 3.1.0 risc-v mie.MEIE

Status in QEMU:
  Fix Committed

Bug description:
  Hello all,

  There is a bug in qemu for Risc-v, related to the mie register: when
  we try to set the MEIE bit (11) nothing is done, even when we are
  running at machine mode.

  Li   a0 , 1 << 11
  Csrs mie , a0

  And when we read mie it is as though nothing was done.

  Going through the qemu source code I was able to correct it: on file
  op_helper.c, line 94, the variable all_ints should be initialized
  with:

  uint64_t all_ints = delegable_ints | MIP_MSIP | MIP_MTIP | MIP_MEIP;

  That is, the MIP_MEIP was missing.

  I've successfully triggered uart interrupts with this patch (virt
  machine).

  All the best,
  Pharos team

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

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Qemu-devel] [Bug 1815078] Re: Qemu 3.1.0 risc-v mie.MEIE
  2019-02-07 16:01 [Qemu-devel] [Bug 1815078] [NEW] Qemu 3.1.0 risc-v mie.MEIE RTOS Pharos
                   ` (4 preceding siblings ...)
  2019-02-14  6:42 ` RTOS Pharos
@ 2019-02-14  6:52 ` RTOS Pharos
  2019-02-15  0:04   ` Alistair Francis
  2019-04-24  6:10 ` Thomas Huth
  6 siblings, 1 reply; 9+ messages in thread
From: RTOS Pharos @ 2019-02-14  6:52 UTC (permalink / raw)
  To: qemu-devel

So I tried it but got the error:

ERROR: missing file ../qemu-3.1.0/ui/keycodemapdb/README

This is not a GIT checkout but module content appears to
be missing. Do not use 'git archive' or GitHub download links
to acquire QEMU source archives. Non-GIT builds are only
supported with source archives linked from:

  https://www.qemu.org/download/

Developers working with GIT can use scripts/archive-source.sh
if they need to create valid source archives.

Makefile.cross-compiler:259: recipe for target 'qemu-3.1' failed
make: *** [qemu-3.1] Error 1


Get this is standard error, but I don't have time now to see how to work
around it. Maybe later I can

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

Title:
  Qemu 3.1.0 risc-v mie.MEIE

Status in QEMU:
  Fix Committed

Bug description:
  Hello all,

  There is a bug in qemu for Risc-v, related to the mie register: when
  we try to set the MEIE bit (11) nothing is done, even when we are
  running at machine mode.

  Li   a0 , 1 << 11
  Csrs mie , a0

  And when we read mie it is as though nothing was done.

  Going through the qemu source code I was able to correct it: on file
  op_helper.c, line 94, the variable all_ints should be initialized
  with:

  uint64_t all_ints = delegable_ints | MIP_MSIP | MIP_MTIP | MIP_MEIP;

  That is, the MIP_MEIP was missing.

  I've successfully triggered uart interrupts with this patch (virt
  machine).

  All the best,
  Pharos team

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

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [Qemu-devel] [Bug 1815078] Re: Qemu 3.1.0 risc-v mie.MEIE
  2019-02-14  6:52 ` RTOS Pharos
@ 2019-02-15  0:04   ` Alistair Francis
  0 siblings, 0 replies; 9+ messages in thread
From: Alistair Francis @ 2019-02-15  0:04 UTC (permalink / raw)
  To: Bug 1815078; +Cc: qemu-devel@nongnu.org Developers

On Wed, Feb 13, 2019 at 11:02 PM RTOS Pharos <1815078@bugs.launchpad.net> wrote:
>
> So I tried it but got the error:
>
> ERROR: missing file ../qemu-3.1.0/ui/keycodemapdb/README
>
> This is not a GIT checkout but module content appears to
> be missing. Do not use 'git archive' or GitHub download links
> to acquire QEMU source archives. Non-GIT builds are only
> supported with source archives linked from:
>
>   https://www.qemu.org/download/
>
> Developers working with GIT can use scripts/archive-source.sh
> if they need to create valid source archives.
>
> Makefile.cross-compiler:259: recipe for target 'qemu-3.1' failed
> make: *** [qemu-3.1] Error 1
>
>
> Get this is standard error, but I don't have time now to see how to work
> around it. Maybe later I can

The error describes how to fix the error. Just git clone the QEMU
source directly instead of using the GitHub tarballs.

Alistair

>
> --
> You received this bug notification because you are a member of qemu-
> devel-ml, which is subscribed to QEMU.
> https://bugs.launchpad.net/bugs/1815078
>
> Title:
>   Qemu 3.1.0 risc-v mie.MEIE
>
> Status in QEMU:
>   Fix Committed
>
> Bug description:
>   Hello all,
>
>   There is a bug in qemu for Risc-v, related to the mie register: when
>   we try to set the MEIE bit (11) nothing is done, even when we are
>   running at machine mode.
>
>   Li   a0 , 1 << 11
>   Csrs mie , a0
>
>   And when we read mie it is as though nothing was done.
>
>   Going through the qemu source code I was able to correct it: on file
>   op_helper.c, line 94, the variable all_ints should be initialized
>   with:
>
>   uint64_t all_ints = delegable_ints | MIP_MSIP | MIP_MTIP | MIP_MEIP;
>
>   That is, the MIP_MEIP was missing.
>
>   I've successfully triggered uart interrupts with this patch (virt
>   machine).
>
>   All the best,
>   Pharos team
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/qemu/+bug/1815078/+subscriptions
>

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [Qemu-devel] [Bug 1815078] Re: Qemu 3.1.0 risc-v mie.MEIE
  2019-02-07 16:01 [Qemu-devel] [Bug 1815078] [NEW] Qemu 3.1.0 risc-v mie.MEIE RTOS Pharos
                   ` (5 preceding siblings ...)
  2019-02-14  6:52 ` RTOS Pharos
@ 2019-04-24  6:10 ` Thomas Huth
  6 siblings, 0 replies; 9+ messages in thread
From: Thomas Huth @ 2019-04-24  6:10 UTC (permalink / raw)
  To: qemu-devel

** Changed in: qemu
       Status: Fix Committed => Fix Released

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

Title:
  Qemu 3.1.0 risc-v mie.MEIE

Status in QEMU:
  Fix Released

Bug description:
  Hello all,

  There is a bug in qemu for Risc-v, related to the mie register: when
  we try to set the MEIE bit (11) nothing is done, even when we are
  running at machine mode.

  Li   a0 , 1 << 11
  Csrs mie , a0

  And when we read mie it is as though nothing was done.

  Going through the qemu source code I was able to correct it: on file
  op_helper.c, line 94, the variable all_ints should be initialized
  with:

  uint64_t all_ints = delegable_ints | MIP_MSIP | MIP_MTIP | MIP_MEIP;

  That is, the MIP_MEIP was missing.

  I've successfully triggered uart interrupts with this patch (virt
  machine).

  All the best,
  Pharos team

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

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2019-04-24  6:20 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-02-07 16:01 [Qemu-devel] [Bug 1815078] [NEW] Qemu 3.1.0 risc-v mie.MEIE RTOS Pharos
2019-02-08  0:55 ` Alistair Francis
2019-02-13 18:15 ` [Qemu-devel] [Bug 1815078] " Palmer Dabbelt
2019-02-13 19:35 ` RTOS Pharos
2019-02-14  2:15 ` Palmer Dabbelt
2019-02-14  6:42 ` RTOS Pharos
2019-02-14  6:52 ` RTOS Pharos
2019-02-15  0:04   ` Alistair Francis
2019-04-24  6:10 ` Thomas Huth

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.