Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
home:olh:xen-unstable
xen
xen.trc-ioreq_server_alloc_mfn.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File xen.trc-ioreq_server_alloc_mfn.patch of Package xen
From: Olaf Hering <olaf@aepfle.de> Date: Thu, 15 Jun 2023 08:41:16 +0000 Subject: trc ioreq_server_alloc_mfn Signed-off-by: Olaf Hering <olaf@aepfle.de> --- xen/common/ioreq.c | 6 ++++++ 1 file changed, 6 insertions(+) --- a/xen/common/ioreq.c +++ b/xen/common/ioreq.c @@ -335,24 +335,28 @@ bool vcpu_ioreq_handle_completion(struct vcpu *v) out: trc.out = true; trc.res = res; trc.state = vio->req.state; TRACE_trc(TRC_IOREQ_vcpu_ioreq_handle_completion); return res; } static int ioreq_server_alloc_mfn(struct ioreq_server *s, bool buf) { struct ioreq_page *iorp = buf ? &s->bufioreq : &s->ioreq; struct page_info *page; + trc_ioreq_server_alloc_mfn_t trc = { + .buf = buf, + .s = TRC_ePTR(s), + }; if ( iorp->page ) { /* * If a guest frame has already been mapped (which may happen * on demand if ioreq_server_get_info() is called), then * allocating a page is not permitted. */ if ( !gfn_eq(iorp->gfn, INVALID_GFN) ) return -EPERM; return 0; @@ -370,24 +374,26 @@ static int ioreq_server_alloc_mfn(struct ioreq_server *s, bool buf) * here is a clear indication of something fishy going on. */ domain_crash(s->emulator); return -ENODATA; } iorp->va = __map_domain_page_global(page); if ( !iorp->va ) goto fail; iorp->page = page; clear_page(iorp->va); + trc.mfn = mfn_x(page_to_mfn(page)); + TRACE_trc(TRC_IOREQ_ioreq_server_alloc_mfn); return 0; fail: put_page_alloc_ref(page); put_page_and_type(page); return -ENOMEM; } static void ioreq_server_free_mfn(struct ioreq_server *s, bool buf) { struct ioreq_page *iorp = buf ? &s->bufioreq : &s->ioreq;
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor