mbox series

[00/20] tools/xenstore: do some cleanup and fixes

Message ID 20221101152842.4257-1-jgross@suse.com (mailing list archive)
Headers show
Series tools/xenstore: do some cleanup and fixes | expand

Message

Jürgen Groß Nov. 1, 2022, 3:28 p.m. UTC
This is a first run of post-XSA patches which piled up during the
development phase of all the recent Xenstore related XSA patches.

At least the first 7 patches are completely independent from each
other. After those the dependencies are starting to be more complex.

This is a mixture of small fixes, enhancements and cleanups. Patch 2
was initially part of the XSA patches, which is the reason for having
a "Reviewed-by:" tag already. Even with fixing a previous commit it is
not urgent to put this patch in, so I don't think this is 4.17
material.

Juergen Gross (20):
  tools/xenstore: remove XEN_LIB_STORED and XENSTORED_ROOTDIR
  tools/xenstore: call remove_domid_from_perm() for special nodes
  tools/xenstore: let talloc_free() preserve errno
  tools/xenstore: let tdb_logger() preserve errno
  tools/xenstore: preserve errno across corrupt()
  tools/xenstore: remove all watches when a domain has stopped
  tools/xenstore: enhance hashtable implementation
  tools/xenstore: add hashlist for finding struct domain by domid
  tools/xenstore: introduce dummy nodes for special watch paths
  tools/xenstore: replace watch->relative_path with a prefix length
  tools/xenstore: move changed domain handling
  tools/xenstore: change per-domain node accounting interface
  tools/xenstore: don't allow creating too many nodes in a transaction
  tools/xenstore: replace literal domid 0 with dom0_domid
  tools/xenstore: make domain_is_unprivileged() an inline function
  tools/xenstore: let chk_domain_generation() return a bool
  tools/xenstore: switch hashtable to use the talloc framework
  tools/xenstore: make log macro globally available
  tools/xenstore: introduce trace classes
  tools/xenstore: let check_store() check the accounting data

 config/Paths.mk.in                            |   1 -
 configure                                     |   4 -
 docs/configure                                |   4 -
 docs/misc/xenstore.txt                        |  18 +-
 m4/paths.m4                                   |   3 -
 tools/configure                               |   7 +-
 tools/configure.ac                            |   1 -
 tools/hotplug/FreeBSD/rc.d/xencommons.in      |   6 -
 tools/hotplug/Linux/systemd/Makefile          |   1 -
 .../Linux/systemd/var-lib-xenstored.mount.in  |  12 -
 tools/libs/store/Makefile                     |   1 -
 tools/xenstore/.gdbinit                       |   4 -
 tools/xenstore/Makefile                       |   4 -
 tools/xenstore/Makefile.common                |   1 -
 tools/xenstore/hashtable.c                    | 134 ++--
 tools/xenstore/hashtable.h                    |  38 +-
 tools/xenstore/talloc.c                       |  25 +-
 tools/xenstore/xenstored_control.c            |  44 +-
 tools/xenstore/xenstored_core.c               | 223 ++++---
 tools/xenstore/xenstored_core.h               |  31 +
 tools/xenstore/xenstored_domain.c             | 596 ++++++++++--------
 tools/xenstore/xenstored_domain.h             |  21 +-
 tools/xenstore/xenstored_transaction.c        |  76 +--
 tools/xenstore/xenstored_transaction.h        |   7 +-
 tools/xenstore/xenstored_watch.c              |  43 +-
 tools/xenstore/xs_lib.c                       |  11 +-
 26 files changed, 707 insertions(+), 609 deletions(-)
 delete mode 100644 tools/hotplug/Linux/systemd/var-lib-xenstored.mount.in
 delete mode 100644 tools/xenstore/.gdbinit