-
Notifications
You must be signed in to change notification settings - Fork 292
Merge master into feature/configure-ssh-phase2 #6409
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
This split is so that this part can be used by storage_migrate later on for its own multiplexing logic, to avoid dependency cycle. Signed-off-by: Vincent Liu <shuntian.liu2@cloud.com>
This is then used later for storage_migrate to multiplex based on the SMAPI version. Signed-off-by: Vincent Liu <shuntian.liu2@cloud.com>
This will be used later on to define the interface a migration module should implement. Signed-off-by: Vincent Liu <shuntian.liu2@cloud.com>
Signed-off-by: Vincent Liu <shuntian.liu2@cloud.com>
Use first class modules to generate modules for the remote SMAPIv2 calls to avoid code duplication. Signed-off-by: Vincent Liu <shuntian.liu2@cloud.com>
Signed-off-by: Vincent Liu <shuntian.liu2@cloud.com>
Signed-off-by: Vincent Liu <shuntian.liu2@cloud.com>
This keeps them contained, allowing them to easily be hidden in Jaeger Signed-off-by: Steven Woods <steven.woods@cloud.com>
…ty datasource array Several assumptions in the ds_update function expect at least one element to be present in the array, and will raise Invalid_argument("index out of bounds") otherwise. This could be triggered by disabling all datasources for a particular plugin/owner combination, for example. Signed-off-by: Andrii Sultanov <andrii.sultanov@cloud.com>
This keeps them contained, allowing them to easily be hidden in Jaeger. Below is a screenshot of it in action: 
This cleans up the root folder Signed-off-by: Pau Ruiz Safont <pau.ruizsafont@cloud.com>
Signed-off-by: Pau Ruiz Safont <pau.ruizsafont@cloud.com>
There are various refactors in this PR, details in each commit message. This is mainly for clean up purposes and also to prepare for the real refactoring of sxm for SMAPIv1 and SMAPIv3. No functional change. More to come...
This cleans up the root folder It's unclear whether this change is compatible with how the docs workflow uses setup-ocaml. I've updated it to use it the same way as the other workflows (except it doesn't install the test dependencies) This will need changes in the sync-xapi-metadata tool of xs-opam, but I can fix that later
…6393) Several assumptions in the `ds_update` function expect at least one element to be present in the array, and will raise `Invalid_argument("index out of bounds")` otherwise. This could be triggered by disabling all datasources for a particular plugin/owner combination, for example.
Many years ago, 'maybe' used to be a synonym for Option.iter, Option.map and other functions. Use Option.x directly to avoid any misunderstnadings Signed-off-by: Pau Ruiz Safont <pau.ruizsafont@cloud.com>
…ifetime Signed-off-by: Pau Ruiz Safont <pau.ruizsafont@cloud.com>
Now the numa node needs to be passed. A special value of -1n is used to signify that no node is meant to be used. Since this is arch-dependent, a Nativeint.t is used to encode the value. Signed-off-by: Pau Ruiz Safont <pau.ruizsafont@cloud.com>
This binding is only available in Xen 4.21 (unreleased) Signed-off-by: Pau Ruiz Safont <pau.ruizsafont@cloud.com>
Previously unit was returned every single time, but the result of the inner function will need to be used in the near future. Signed-off-by: Pau Ruiz Safont <pau.ruizsafont@cloud.com>
Xen currently supports to modes to claim memory for a domain: without any node in particular, or claim memory in a single NUMA node. When planning a domain, return the nodes that will host the domain, and how much memory. In the case where the domain fits in a single NUMA node, claim pages on that node, otherwise fall back to previous behaviour. The memory claims need to happen while the memory measurements hold valid, that is while no VMs are started, otherwise ENOMEM might be returned. Because the current mode is a best-effort, log when the claim does not work. Signed-off-by: Pau Ruiz Safont <pau.ruizsafont@cloud.com>
Neither xenguest nor emu-manager support passing the parameter just yet, so avoid passing the numa node to create the parameter. On top of that claiming memory conflicts with DMC, so it's better to keep previous behaviour of not claiming any pages before allocating. Signed-off-by: Pau Ruiz Safont <pau.ruizsafont@cloud.com>
This PR allows xenopsd to launch domains that are using memory allocated in a single NUMA node in a reliable way. (when restarting a VM in a host with most of the memory in use) Since this is only supported by Xen with this patchqueue: https://lists.xen.org/archives/html/xen-devel/2025-03/msg01127.html, and it needs support from xenguest and emu-manager, there are two commits that revert the changes to just claim memory pages without a NUMA memory node. These are easily revertable by patches to enable this functionality in cutting edge builds. Revertable patches: - xenctrl: Don't use numa_node in domain_claim_pages calls - xenopsd/xc: Do not try to allocate pages to a particular NUMA node
@@ -289,7 +289,7 @@ def span_of_tracers(wrapped=None, span_name_prefix=""): | |||
that the function is decorated properly on the second pass. | |||
""" | |||
if wrapped is None: # handle decorators with parameters | |||
return functools.partial(span_of_tracers, span_name_prefix=span_name_prefix) | |||
return functools.partial(span_of_tracers, span_name_prefix=span_name_prefix, parent_context=parent_context) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[pylint] reported by reviewdog 🐶
C0301: Line too long (119/100) (line-too-long)
def autoinstrument_module(amodule): | ||
"""Autoinstrument the classes and functions in a module.""" | ||
|
||
with tracers[0].start_as_current_span(f"auto_instrumentation.add_module: {amodule}"): | ||
with tracers[0].start_as_current_span(f"auto_instrumentation.add_module: {amodule}", context=parent_context): |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
[pylint] reported by reviewdog 🐶
C0301: Line too long (121/100) (line-too-long)
No description provided.