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

Re: [PATCH v4 0/4] tools/ocaml/xenstored: optimizations


  • To: Edwin Torok <edvin.torok@xxxxxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Christian Lindig <christian.lindig@xxxxxxxxxx>
  • Date: Thu, 21 Jan 2021 11:15:25 +0000
  • Accept-language: en-GB, en-US
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=3Qap24hRtVLwU/2aMRelJiJFTt/M3yixOdwiWj6whmE=; b=KzgB9cp7f5ndnVA7VR3JLJiN7L7mQdqo3HxaX5Ff8sK/w1zH/IwFdVieY6NjZ0JpPQcqKvqmi29TU1SuRW0uxS+AdwkOruzRbULs81gxGfMeJiWNMiGeBYj7ziYQ0FOVVtUIKLMt0Fvd4dbkqAis8gJcXJsrhS06ibuF9DiU9d6Y9wcOq/lT1Qyhxc5zLFH0vS4VXhAHHf/tCBqDtjnjoPit/doCd5uxlsnbZT2P4yFG2/9PYMm5tmM3HASWQRhTI/kAFkgOXJ6Qx7Aml/BS6vp3FSGXFGmquZwAbZmwp924zkGx9DhuXnKPBLgtWqQ53lcbUk7XSeUrh8FJOxiOOg==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=iwsfF6MThnce9VQtGcVFkj75uwnF+DaK011fIbSA18KCPAsSvS2HFqaJ7w7oO7B1mA641noWvJUsR0eHZKekOEcAkgEm4opTk24Pr+GzXBOcamgd/0mJdYot/bck3jBoyZWiX8jDMCy8xqug00weTb/fs3K9Y9TallhxNELsX/tUEE2xhZjvDvK1IRfjiBX4XnJNWvfFoWCR86CJww122E5uSXd4Vr4xDrHOAEGH/ncGfq5rsflSn+XT3RPnaGqJ8ZP0o5sPOLKVGk3au9hom4XFZKix0kurAs874/CiAvvXGpi/e6ijyODrP2HnFTP2Cqc8+E1pwX/nKbG0/zoJ+w==
  • Authentication-results: esa4.hc3370-68.iphmx.com; dkim=pass (signature verified) header.i=@citrix.onmicrosoft.com
  • Cc: David Scott <dave@xxxxxxxxxx>, Ian Jackson <iwj@xxxxxxxxxxxxxx>, Wei Liu <wl@xxxxxxx>
  • Delivery-date: Thu, 21 Jan 2021 11:15:34 +0000
  • Ironport-sdr: VOR7wacn6m986+btaG5/k9eLpOKgxAAMNEWJWwSvfMZMj1oetY62gkAf00jf27I2mGZ7NBoBn4 9NAofmqaWU2yzinQdfy4/xvQM664FSc5m/o3ofhDSOd6okzdmC9jtGWQHt1fUsRDox2Tzq48sy KBA1T3ilq8bVoLxA/nZIB3ydTKOJ7MQZdlz9bhKqMCmcc8Cx/ZQDVX1aiu8yFSML8q3o91d8yu bO6Ymf8CrPoIGyIRUHz+S3wCGLR8HqTnrhzXf/iRJQ2QhfHIh0j1SI2dftXAMk5M7gQYXAq/y+ ptA=
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>
  • Thread-index: AQHW7+a3y41OidoK2EOhatnJNoAWvQ==
  • Thread-topic: [PATCH v4 0/4] tools/ocaml/xenstored: optimizations

Acked-by: Christian Lindig <christian.lindig@xxxxxxxxxx>

I am providing feedback on https://github.com/edwintorok/xen/pull/1.

In general: this is a large patch and therefore difficult to review for 
correctness. However:

* It comes with a lot of testing and was fuzz-tested
* It improves building OCaml xenstore
* It improves functional and performance problems

I welcome this work and think it ends a period of stagnation of this code base. 
This applies not just to this patch but the other patches sent out by Edwin in 
the context of this.


________________________________________
From: Edwin Török <edvin.torok@xxxxxxxxxx>
Sent: 15 January 2021 22:28
To: xen-devel@xxxxxxxxxxxxxxxxxxxx
Cc: Edwin Torok; Christian Lindig; David Scott; Ian Jackson; Wei Liu
Subject: [PATCH v4 0/4] tools/ocaml/xenstored: optimizations

Various speed optimizations that have already been posted,
but committing them was delayed to avoid conflicts with XSAs.
The XSAs are out, so these are ready to go now.

The switch to Maps may expose bugs in certain xenstored clients,
which previously relied on iteration order of the DIRECTORY response.

In our testing we found one such case, which turned out to be a bug
in a testsuite (it always dropped the 1st xenstore key).

For convenience here is a tree with all patch series applied:
https://github.com/edwintorok/xen/pull/1

Edwin Török (4):
  tools/ocaml/xenstored: replace hand rolled GC with weak GC references
  tools/ocaml/xenstored: backport find_opt/update from 4.06
  tools/ocaml/xenstored: use more efficient node trees
  tools/ocaml/xenstored: use more efficient tries

 tools/ocaml/xenstored/connection.ml  |  3 --
 tools/ocaml/xenstored/connections.ml |  2 +-
 tools/ocaml/xenstored/history.ml     | 14 ------
 tools/ocaml/xenstored/stdext.ml      | 19 ++++++++
 tools/ocaml/xenstored/store.ml       | 51 +++++++++-----------
 tools/ocaml/xenstored/symbol.ml      | 70 +++++++---------------------
 tools/ocaml/xenstored/symbol.mli     | 22 +++------
 tools/ocaml/xenstored/trie.ml        | 61 +++++++++++-------------
 tools/ocaml/xenstored/trie.mli       | 26 +++++------
 tools/ocaml/xenstored/xenstored.ml   | 16 +------
 10 files changed, 109 insertions(+), 175 deletions(-)

--
2.29.2




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.