qemu-commits
[Top][All Lists]
Advanced

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

[Qemu-commits] [qemu/qemu] e6de76: s390x/sclp.c: remove unneeded label i


From: Peter Maydell
Subject: [Qemu-commits] [qemu/qemu] e6de76: s390x/sclp.c: remove unneeded label in sclp_servic...
Date: Mon, 27 Jan 2020 06:00:14 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: e6de76fca48012348d8c81b1399c861f444bd4a4
      
https://github.com/qemu/qemu/commit/e6de76fca48012348d8c81b1399c861f444bd4a4
  Author: Daniel Henrique Barboza <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M hw/s390x/sclp.c

  Log Message:
  -----------
  s390x/sclp.c: remove unneeded label in sclp_service_call()

'out' label can be replaced by 'return' with the appropriate
value. The 'r' integer, which is used solely to set the
return value for this label, can also be removed.

CC: Cornelia Huck <address@hidden>
CC: Halil Pasic <address@hidden>
CC: Christian Borntraeger <address@hidden>
Signed-off-by: Daniel Henrique Barboza <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 65569bbf37a68ea957819fc489dab708308e1588
      
https://github.com/qemu/qemu/commit/65569bbf37a68ea957819fc489dab708308e1588
  Author: Daniel Henrique Barboza <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M hw/intc/s390_flic_kvm.c

  Log Message:
  -----------
  intc/s390_flic_kvm.c: remove unneeded label in kvm_flic_load()

'out' label can be replaced by 'return' with the appropriate
value that is set by 'r' right before the jump.

Cc: Christian Borntraeger <address@hidden>
Signed-off-by: Daniel Henrique Barboza <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 9208270b6b16110fa0de367d6bc43e99019f967b
      
https://github.com/qemu/qemu/commit/9208270b6b16110fa0de367d6bc43e99019f967b
  Author: Daniel Henrique Barboza <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M hw/s390x/event-facility.c

  Log Message:
  -----------
  s390x/event-facility.c: remove unneeded labels

'out' label from write_event_mask() and write_event_data()
can be replaced by 'return'.

The 'out' label from read_event_data() can also be replaced.
However, as suggested by Cornelia Huck, instead of simply
replacing the 'out' label, let's also change the code flow
a bit to make it clearer that sccb events are always handled
regardless of the mask for unconditional reads, while selective
reads are handled if the mask is valid.

CC: Cornelia Huck <address@hidden>
CC: Thomas Huth <address@hidden>
CC: Halil Pasic <address@hidden>
CC: Christian Borntraeger <address@hidden>
Signed-off-by: Daniel Henrique Barboza <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 3c5fd8074335c67777d9391b84f97070c35d9c63
      
https://github.com/qemu/qemu/commit/3c5fd8074335c67777d9391b84f97070c35d9c63
  Author: Cornelia Huck <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M hw/intc/s390_flic_kvm.c
    M hw/s390x/virtio-ccw.c

  Log Message:
  -----------
  s390x: adapter routes error handling

If the kernel irqchip has been disabled, we don't want the
{add,release}_adapter_routes routines to call any kvm_irqchip_*
interfaces, as they may rely on an irqchip actually having been
created. Just take a quick exit in that case instead. If you are
trying to use irqfd without a kernel irqchip, we will fail with
an error.

Also initialize routes->gsi[] with -1 in the virtio-ccw handling,
to make sure we don't trip over other errors, either. (Nobody
else uses the gsi array in that structure.)

Fixes: d426d9fba8ea ("s390x/virtio-ccw: wire up irq routing and irqfds")
Reviewed-by: Thomas Huth <address@hidden>
Acked-by: Christian Borntraeger <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: d6a9858d24df4fc8633e1c3cb7bf928b80b9685c
      
https://github.com/qemu/qemu/commit/d6a9858d24df4fc8633e1c3cb7bf928b80b9685c
  Author: Cornelia Huck <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M hw/s390x/event-facility.c

  Log Message:
  -----------
  s390x/event-facility: fix error propagation

We currently check (by error) if the passed-in Error pointer errp
is non-null and return after realizing the first child of the
event facility in that case. Symptom is that 'virsh shutdown'
does not work, as the sclpquiesce device is not realized.

Fix this by (correctly) checking the local Error err.

Reported-by: Christian Borntraeger <address@hidden>
Fixes: 3d508334dd2c ("s390x/event-facility: Fix realize() error API violations")
Message-Id: <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Tested-by: Christian Borntraeger <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Reviewed-by: Markus Armbruster <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 596cc12ccd6c124758dee686a67287e8584b2fc7
      
https://github.com/qemu/qemu/commit/596cc12ccd6c124758dee686a67287e8584b2fc7
  Author: Philippe Mathieu-Daudé <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M target/s390x/excp_helper.c

  Log Message:
  -----------
  target/s390x: Remove duplicated ifdef macro

Commit ae71ed8610 replaced the use of global max_cpus variable
with a machine property, but introduced a unnecessary ifdef, as
this block is already in the 'not CONFIG_USER_ONLY' branch part:

   86 #if defined(CONFIG_USER_ONLY)
   87
  ...
  106 #else /* !CONFIG_USER_ONLY */
  107
  ...
  292 static void do_ext_interrupt(CPUS390XState *env)
  293 {
  ...
  313 #ifndef CONFIG_USER_ONLY
  314         MachineState *ms = MACHINE(qdev_get_machine());
  315         unsigned int max_cpus = ms->smp.max_cpus;
  316 #endif

To ease code review, remove the duplicated preprocessor macro,
and move the declarations at the beginning of the statement.

Signed-off-by: Philippe Mathieu-Daudé <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 174b72aa38df8b60eb624a5c6f65126fa62bc6d6
      
https://github.com/qemu/qemu/commit/174b72aa38df8b60eb624a5c6f65126fa62bc6d6
  Author: Cornelia Huck <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M docs/devel/stable-process.rst

  Log Message:
  -----------
  docs/devel: fix stable process doc formatting

Enumeration of stable criteria needs proper bullet points.

Message-Id: <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: a5c8617af6919515b84256978452edf07401c45e
      
https://github.com/qemu/qemu/commit/a5c8617af6919515b84256978452edf07401c45e
  Author: Thomas Huth <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M target/s390x/kvm.c

  Log Message:
  -----------
  target/s390x/kvm: Enable adapter interruption suppression again

The AIS feature has been disabled late in the v2.10 development cycle since
there were some issues with migration (see commit 3f2d07b3b01ea61126b -
"s390x/ais: for 2.10 stable: disable ais facility"). We originally wanted
to enable it again for newer machine types, but apparently we forgot to do
this so far. Let's do it now for the machines that support proper CPU models.

Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=1756946
Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Tested-by: Matthew Rosato <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: c9fc893404aa553a2c802fd823e2bc03c1d6601b
      
https://github.com/qemu/qemu/commit/c9fc893404aa553a2c802fd823e2bc03c1d6601b
  Author: Richard Henderson <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M target/s390x/translate.c

  Log Message:
  -----------
  target/s390x: Move struct DisasFields definition earlier

We will want to include the struct in DisasContext.

Signed-off-by: Richard Henderson <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 3f68884b56e96a8b9793dca47e33238bc930469f
      
https://github.com/qemu/qemu/commit/3f68884b56e96a8b9793dca47e33238bc930469f
  Author: Richard Henderson <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M target/s390x/translate.c

  Log Message:
  -----------
  target/s390x: Remove DisasFields argument from callbacks

The DisasFields data is available from DisasContext.
We do not need to pass a separate argument.

Signed-off-by: Richard Henderson <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: c30988d15bd6454b2e38f2e67d850f6450130da3
      
https://github.com/qemu/qemu/commit/c30988d15bd6454b2e38f2e67d850f6450130da3
  Author: Richard Henderson <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M target/s390x/translate.c
    M target/s390x/translate_vx.inc.c

  Log Message:
  -----------
  target/s390x: Pass DisasContext to get_field and have_field

All callers pass s->fields, so we might as well pass s directly.

Signed-off-by: Richard Henderson <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 344a7f656e8d211cdd6e248a0644612f386ef8ea
      
https://github.com/qemu/qemu/commit/344a7f656e8d211cdd6e248a0644612f386ef8ea
  Author: Richard Henderson <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M target/s390x/translate.c
    M target/s390x/translate_vx.inc.c

  Log Message:
  -----------
  target/s390x: Move DisasFields into DisasContext

I believe that the separate allocation of DisasFields from DisasContext
was meant to limit the places from which we could access fields.  But
that plan did not go unchanged, and since DisasContext contains a pointer
to fields, the substructure is accessible everywhere.

By allocating the substructure with DisasContext, we improve the locality
of the accesses by avoiding one level of pointer chasing.  In addition,
we avoid a dangling pointer to stack allocated memory, diagnosed by static
checkers.

Launchpad: https://bugs.launchpad.net/bugs/1661815
Signed-off-by: Richard Henderson <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: a2fb6b000ccc257b88b6a7159d179d367b5bf105
      
https://github.com/qemu/qemu/commit/a2fb6b000ccc257b88b6a7159d179d367b5bf105
  Author: Richard Henderson <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M target/s390x/translate.c

  Log Message:
  -----------
  target/s390x: Remove DisasFields argument from extract_insn

The separate pointer is now redundant.

Signed-off-by: Richard Henderson <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: Thomas Huth <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 3e0209bbd6027d60539976b39a8f2131a81e5127
      
https://github.com/qemu/qemu/commit/3e0209bbd6027d60539976b39a8f2131a81e5127
  Author: Thomas Huth <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M hw/s390x/s390-virtio-ccw.c

  Log Message:
  -----------
  hw/s390x: Add a more verbose comment about get_machine_class() and the 
wrappers

While working on the "Enable adapter interruption suppression again"
recently, I had to discover that the meaning of get_machine_class()
and the related *_allowed() wrappers is not very obvious. Add a more
verbose comment here to clarify how these should be used.

Signed-off-by: Thomas Huth <address@hidden>
Message-Id: <address@hidden>
Reviewed-by: David Hildenbrand <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 4103500e2fa934a6995e4cedab37423e606715bf
      
https://github.com/qemu/qemu/commit/4103500e2fa934a6995e4cedab37423e606715bf
  Author: Janosch Frank <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M target/s390x/sigp.c

  Log Message:
  -----------
  s390x: sigp: Fix sense running reporting

The logic was inverted and reported running if the cpu was stopped.
Let's fix that.

Signed-off-by: Janosch Frank <address@hidden>
Fixes: d1b468bc8869 ("s390x/tcg: implement SIGP SENSE RUNNING STATUS")
Reviewed-by: David Hildenbrand <address@hidden>
Message-Id: <address@hidden>
Signed-off-by: Cornelia Huck <address@hidden>


  Commit: 105b07f1ba462ec48b27e5cb74ddf81c6a79364c
      
https://github.com/qemu/qemu/commit/105b07f1ba462ec48b27e5cb74ddf81c6a79364c
  Author: Peter Maydell <address@hidden>
  Date:   2020-01-27 (Mon, 27 Jan 2020)

  Changed paths:
    M docs/devel/stable-process.rst
    M hw/intc/s390_flic_kvm.c
    M hw/s390x/event-facility.c
    M hw/s390x/s390-virtio-ccw.c
    M hw/s390x/sclp.c
    M hw/s390x/virtio-ccw.c
    M target/s390x/excp_helper.c
    M target/s390x/kvm.c
    M target/s390x/sigp.c
    M target/s390x/translate.c
    M target/s390x/translate_vx.inc.c

  Log Message:
  -----------
  Merge remote-tracking branch 'remotes/cohuck/tags/s390x-20200127' into staging

s390x changes:
- kvm: re-enable adapter interrupt suppression (AIS)
- fixes and cleanups

# gpg: Signature made Mon 27 Jan 2020 12:14:12 GMT
# gpg:                using RSA key C3D0D66DC3624FF6A8C018CEDECF6B93C6F02FAF
# gpg:                issuer "address@hidden"
# gpg: Good signature from "Cornelia Huck <address@hidden>" [marginal]
# gpg:                 aka "Cornelia Huck <address@hidden>" [full]
# gpg:                 aka "Cornelia Huck <address@hidden>" [full]
# gpg:                 aka "Cornelia Huck <address@hidden>" [marginal]
# gpg:                 aka "Cornelia Huck <address@hidden>" [marginal]
# Primary key fingerprint: C3D0 D66D C362 4FF6 A8C0  18CE DECF 6B93 C6F0 2FAF

* remotes/cohuck/tags/s390x-20200127:
  s390x: sigp: Fix sense running reporting
  hw/s390x: Add a more verbose comment about get_machine_class() and the 
wrappers
  target/s390x: Remove DisasFields argument from extract_insn
  target/s390x: Move DisasFields into DisasContext
  target/s390x: Pass DisasContext to get_field and have_field
  target/s390x: Remove DisasFields argument from callbacks
  target/s390x: Move struct DisasFields definition earlier
  target/s390x/kvm: Enable adapter interruption suppression again
  docs/devel: fix stable process doc formatting
  target/s390x: Remove duplicated ifdef macro
  s390x/event-facility: fix error propagation
  s390x: adapter routes error handling
  s390x/event-facility.c: remove unneeded labels
  intc/s390_flic_kvm.c: remove unneeded label in kvm_flic_load()
  s390x/sclp.c: remove unneeded label in sclp_service_call()

Signed-off-by: Peter Maydell <address@hidden>


Compare: https://github.com/qemu/qemu/compare/760df0d121a8...105b07f1ba46



reply via email to

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