qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/5] spapr: Error handling fixes and cleanups (round 3)
@ 2020-10-19  8:47 Greg Kurz
  2020-10-19  8:48 ` [PATCH 1/5] pc-dimm: Drop @errp argument of pc_dimm_plug() Greg Kurz
                   ` (5 more replies)
  0 siblings, 6 replies; 27+ messages in thread
From: Greg Kurz @ 2020-10-19  8:47 UTC (permalink / raw)
  To: David Gibson
  Cc: Peter Maydell, Vladimir Sementsov-Ogievskiy, Daniel P. Berrange,
	Eduardo Habkost, Michael S. Tsirkin, Markus Armbruster,
	qemu-devel, qemu-ppc, Paolo Bonzini, Igor Mammedov,
	Richard Henderson

Hi,

This is a followup to a previous cleanup for the sPAPR code:

https://lists.gnu.org/archive/html/qemu-devel/2020-09/msg04860.html

The last two patches had to be dropped because they were wrongly assuming
that object_property_get_uint() returning zero meant failure. This led to
a discussion in which arose a consensus that most of the time (not to say
always) object property getters should never fail actually, ie. failure
is very likely the result of a programming error and QEMU should abort.

This series aims at demonstrating a revelant case I've found while auditing
object property getters (this is patch 4 that I've isolated from a huge
50-patch series I haven't dared to post yet). The sPAPR memory hotplug code
is tailored to support either regular PC DIMMs or NVDIMMs, which inherit
from PC DIMMs. They expect to get some properties from the DIMM object,
which happens to be set by default at the PC DIMM class level. It thus
doesn't make sense to pass an error object and propagate it when getting
them since this would lure the user into thinking they did something wrong.

Some preliminary cleanup is done on the way, especially dropping an unused
@errp argument of pc_dimm_plug(). This affects several platforms other than
sPAPR but I guess the patch is trivial enough to go through David's tree
if it gets acks from the relevant maintainers.

---

Greg Kurz (5):
      pc-dimm: Drop @errp argument of pc_dimm_plug()
      spapr: Use appropriate getter for PC_DIMM_ADDR_PROP
      spapr: Use appropriate getter for PC_DIMM_SLOT_PROP
      spapr: Pass &error_abort when getting some PC DIMM properties
      spapr: Simplify error handling in spapr_memory_plug()


 hw/arm/virt.c                 |    9 +-------
 hw/i386/pc.c                  |    8 +------
 hw/mem/pc-dimm.c              |    2 +-
 hw/ppc/spapr.c                |   48 +++++++++++++++--------------------------
 hw/ppc/spapr_nvdimm.c         |    5 +++-
 include/hw/mem/pc-dimm.h      |    2 +-
 include/hw/ppc/spapr_nvdimm.h |    2 +-
 7 files changed, 25 insertions(+), 51 deletions(-)

--
Greg



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

end of thread, other threads:[~2020-11-02  1:06 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-19  8:47 [PATCH 0/5] spapr: Error handling fixes and cleanups (round 3) Greg Kurz
2020-10-19  8:48 ` [PATCH 1/5] pc-dimm: Drop @errp argument of pc_dimm_plug() Greg Kurz
2020-10-21 14:29   ` Vladimir Sementsov-Ogievskiy
2020-10-22  4:06   ` David Gibson
2020-10-23 19:19   ` Igor Mammedov
2020-10-25 21:31     ` Greg Kurz
2020-10-19  8:48 ` [PATCH 2/5] spapr: Use appropriate getter for PC_DIMM_ADDR_PROP Greg Kurz
2020-10-19  9:05   ` Philippe Mathieu-Daudé
2020-10-22  4:07   ` David Gibson
2020-10-19  8:48 ` [PATCH 3/5] spapr: Use appropriate getter for PC_DIMM_SLOT_PROP Greg Kurz
2020-10-19  9:08   ` Philippe Mathieu-Daudé
2020-10-22  4:08   ` David Gibson
2020-10-19  8:48 ` [PATCH 4/5] spapr: Pass &error_abort when getting some PC DIMM properties Greg Kurz
2020-10-23 19:15   ` Igor Mammedov
2020-10-25 15:24     ` Greg Kurz
2020-10-27 11:54       ` Igor Mammedov
2020-10-27 15:18         ` Greg Kurz
2020-10-28 15:22           ` Igor Mammedov
2020-10-30 13:25             ` Greg Kurz
2020-11-02  0:57               ` David Gibson
2020-10-19  8:49 ` [PATCH 5/5] spapr: Simplify error handling in spapr_memory_plug() Greg Kurz
2020-10-19  9:10   ` Philippe Mathieu-Daudé
2020-10-23 19:17   ` Igor Mammedov
2020-10-22  4:11 ` [PATCH 0/5] spapr: Error handling fixes and cleanups (round 3) David Gibson
2020-10-25 10:13   ` Greg Kurz
2020-10-25 21:33     ` Greg Kurz
2020-10-26  5:44       ` David Gibson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).