* [PATCH] domctl: cleanup
@ 2015-03-03 14:40 Jan Beulich
2015-03-03 14:51 ` Ian Campbell
2015-03-03 20:12 ` Andrew Cooper
0 siblings, 2 replies; 4+ messages in thread
From: Jan Beulich @ 2015-03-03 14:40 UTC (permalink / raw)
To: xen-devel; +Cc: Ian Campbell, Keir Fraser, Ian Jackson, Tim Deegan
[-- Attachment #1: Type: text/plain, Size: 7623 bytes --]
- drop redundant "ret = 0" statements
- drop unnecessary braces
- eliminate a few single use local variables
- move break statements inside case-specific braced scopes
Signed-off-by: Jan Beulich <jbeulich@suse.com>
--- a/xen/common/domctl.c
+++ b/xen/common/domctl.c
@@ -517,8 +517,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
}
free_vcpu_guest_context(c.nat);
+ break;
}
- break;
case XEN_DOMCTL_pausedomain:
ret = -EINVAL;
@@ -531,11 +531,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
break;
case XEN_DOMCTL_resumedomain:
- {
domain_resume(d);
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_createdomain:
{
@@ -608,8 +605,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
op->domain = d->domain_id;
copyback = 1;
d = NULL;
+ break;
}
- break;
case XEN_DOMCTL_max_vcpus:
{
@@ -698,8 +695,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
maxvcpu_out_novcpulock:
domain_unpause(d);
+ break;
}
- break;
case XEN_DOMCTL_destroydomain:
ret = domain_kill(d);
@@ -715,14 +710,13 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
&op->u.nodeaffinity.nodemap);
if ( !ret )
ret = domain_set_node_affinity(d, &new_affinity);
+ break;
}
- break;
+
case XEN_DOMCTL_getnodeaffinity:
- {
ret = nodemask_to_xenctl_bitmap(&op->u.nodeaffinity.nodemap,
&d->node_affinity);
- }
- break;
+ break;
case XEN_DOMCTL_setvcpuaffinity:
case XEN_DOMCTL_getvcpuaffinity:
@@ -831,15 +825,13 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = cpumask_to_xenctl_bitmap(&vcpuaff->cpumap_soft,
v->cpu_soft_affinity);
}
+ break;
}
- break;
case XEN_DOMCTL_scheduler_op:
- {
ret = sched_adjust(d, &op->u.scheduler_op);
copyback = 1;
- }
- break;
+ break;
case XEN_DOMCTL_getdomaininfo:
{
@@ -851,12 +843,9 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
if ( d->domain_id >= dom )
break;
+ ret = -ESRCH;
if ( d == NULL )
- {
- rcu_read_unlock(&domlist_read_lock);
- ret = -ESRCH;
- break;
- }
+ goto getdomaininfo_out;
ret = xsm_getdomaininfo(XSM_HOOK, d);
if ( ret )
@@ -870,8 +859,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
getdomaininfo_out:
rcu_read_unlock(&domlist_read_lock);
d = NULL;
+ break;
}
- break;
case XEN_DOMCTL_getvcpucontext:
{
@@ -919,8 +908,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
getvcpucontext_out:
xfree(c.nat);
+ break;
}
- break;
case XEN_DOMCTL_getvcpuinfo:
{
@@ -944,15 +933,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
op->u.getvcpuinfo.cpu = v->processor;
ret = 0;
copyback = 1;
+ break;
}
- break;
case XEN_DOMCTL_max_mem:
{
- unsigned long new_max;
-
- ret = -EINVAL;
- new_max = op->u.max_mem.max_memkb >> (PAGE_SHIFT-10);
+ unsigned long new_max = op->u.max_mem.max_memkb >> (PAGE_SHIFT - 10);
spin_lock(&d->page_alloc_lock);
/*
@@ -961,21 +947,16 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
* the meantime, while tot > max, all new allocations are disallowed.
*/
d->max_pages = new_max;
- ret = 0;
spin_unlock(&d->page_alloc_lock);
+ break;
}
- break;
case XEN_DOMCTL_setdomainhandle:
- {
memcpy(d->handle, op->u.setdomainhandle.handle,
sizeof(xen_domain_handle_t));
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_setdebugging:
- {
ret = -EINVAL;
if ( d == current->domain ) /* no domain_pause() */
break;
@@ -983,9 +964,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
domain_pause(d);
d->debugger_attached = !!op->u.setdebugging.enable;
domain_unpause(d); /* causes guest to latch new status */
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_irq_permission:
{
@@ -1004,8 +983,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = irq_permit_access(d, irq);
else
ret = irq_deny_access(d, irq);
+ break;
}
- break;
case XEN_DOMCTL_iomem_permission:
{
@@ -1027,8 +1006,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = iomem_deny_access(d, mfn, mfn + nr_mfns - 1);
if ( !ret )
memory_type_changed(d);
+ break;
}
- break;
case XEN_DOMCTL_memory_mapping:
{
@@ -1079,15 +1058,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
}
/* Do this unconditionally to cover errors on above failure paths. */
memory_type_changed(d);
+ break;
}
- break;
case XEN_DOMCTL_settimeoffset:
- {
domain_set_time_offset(d, op->u.settimeoffset.time_offset_seconds);
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_set_target:
{
@@ -1113,16 +1089,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
/* Hold reference on @e until we destroy @d. */
d->target = e;
-
- ret = 0;
+ break;
}
- break;
case XEN_DOMCTL_subscribe:
- {
d->suspend_evtchn = op->u.subscribe.port;
- }
- break;
+ break;
case XEN_DOMCTL_mem_event_op:
ret = mem_event_domctl(d, &op->u.mem_event_op,
@@ -1131,41 +1103,28 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
break;
case XEN_DOMCTL_disable_migrate:
- {
d->disable_migrate = op->u.disable_migrate.disable;
- }
- break;
+ break;
#ifdef HAS_MEM_ACCESS
case XEN_DOMCTL_set_access_required:
- {
- struct p2m_domain* p2m;
-
- ret = -EPERM;
if ( current->domain == d )
- break;
-
- ret = 0;
- p2m = p2m_get_hostp2m(d);
- p2m->access_required = op->u.access_required.access_required;
- }
- break;
+ ret = -EPERM;
+ else
+ p2m_get_hostp2m(d)->access_required =
+ op->u.access_required.access_required;
+ break;
#endif
case XEN_DOMCTL_set_virq_handler:
- {
- uint32_t virq = op->u.set_virq_handler.virq;
- ret = set_global_virq_handler(d, virq);
- }
- break;
+ ret = set_global_virq_handler(d, op->u.set_virq_handler.virq);
+ break;
case XEN_DOMCTL_set_max_evtchn:
- {
d->max_evtchn_port = min_t(unsigned int,
op->u.set_max_evtchn.max_port,
INT_MAX);
- }
- break;
+ break;
case XEN_DOMCTL_setvnumainfo:
{
@@ -1184,9 +1143,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
d->vnuma = vnuma;
write_unlock(&d->vnuma_rwlock);
- ret = 0;
+ break;
}
- break;
default:
ret = arch_do_domctl(op, d, u_domctl);
[-- Attachment #2: domctl-cleanup.patch --]
[-- Type: text/plain, Size: 7638 bytes --]
domctl: cleanup
- drop redundant "ret = 0" statements
- drop unnecessary braces
- eliminate a few single use local variables
- move break statements inside case-specific braced scopes
Signed-off-by: Jan Beulich <jbeulich@suse.com>
--- a/xen/common/domctl.c
+++ b/xen/common/domctl.c
@@ -517,8 +517,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
}
free_vcpu_guest_context(c.nat);
+ break;
}
- break;
case XEN_DOMCTL_pausedomain:
ret = -EINVAL;
@@ -531,11 +531,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
break;
case XEN_DOMCTL_resumedomain:
- {
domain_resume(d);
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_createdomain:
{
@@ -608,8 +605,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
op->domain = d->domain_id;
copyback = 1;
d = NULL;
+ break;
}
- break;
case XEN_DOMCTL_max_vcpus:
{
@@ -698,8 +695,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
maxvcpu_out_novcpulock:
domain_unpause(d);
+ break;
}
- break;
case XEN_DOMCTL_destroydomain:
ret = domain_kill(d);
@@ -715,14 +710,13 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
&op->u.nodeaffinity.nodemap);
if ( !ret )
ret = domain_set_node_affinity(d, &new_affinity);
+ break;
}
- break;
+
case XEN_DOMCTL_getnodeaffinity:
- {
ret = nodemask_to_xenctl_bitmap(&op->u.nodeaffinity.nodemap,
&d->node_affinity);
- }
- break;
+ break;
case XEN_DOMCTL_setvcpuaffinity:
case XEN_DOMCTL_getvcpuaffinity:
@@ -831,15 +825,13 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = cpumask_to_xenctl_bitmap(&vcpuaff->cpumap_soft,
v->cpu_soft_affinity);
}
+ break;
}
- break;
case XEN_DOMCTL_scheduler_op:
- {
ret = sched_adjust(d, &op->u.scheduler_op);
copyback = 1;
- }
- break;
+ break;
case XEN_DOMCTL_getdomaininfo:
{
@@ -851,12 +843,9 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
if ( d->domain_id >= dom )
break;
+ ret = -ESRCH;
if ( d == NULL )
- {
- rcu_read_unlock(&domlist_read_lock);
- ret = -ESRCH;
- break;
- }
+ goto getdomaininfo_out;
ret = xsm_getdomaininfo(XSM_HOOK, d);
if ( ret )
@@ -870,8 +859,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
getdomaininfo_out:
rcu_read_unlock(&domlist_read_lock);
d = NULL;
+ break;
}
- break;
case XEN_DOMCTL_getvcpucontext:
{
@@ -919,8 +908,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
getvcpucontext_out:
xfree(c.nat);
+ break;
}
- break;
case XEN_DOMCTL_getvcpuinfo:
{
@@ -944,15 +933,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
op->u.getvcpuinfo.cpu = v->processor;
ret = 0;
copyback = 1;
+ break;
}
- break;
case XEN_DOMCTL_max_mem:
{
- unsigned long new_max;
-
- ret = -EINVAL;
- new_max = op->u.max_mem.max_memkb >> (PAGE_SHIFT-10);
+ unsigned long new_max = op->u.max_mem.max_memkb >> (PAGE_SHIFT - 10);
spin_lock(&d->page_alloc_lock);
/*
@@ -961,21 +947,16 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
* the meantime, while tot > max, all new allocations are disallowed.
*/
d->max_pages = new_max;
- ret = 0;
spin_unlock(&d->page_alloc_lock);
+ break;
}
- break;
case XEN_DOMCTL_setdomainhandle:
- {
memcpy(d->handle, op->u.setdomainhandle.handle,
sizeof(xen_domain_handle_t));
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_setdebugging:
- {
ret = -EINVAL;
if ( d == current->domain ) /* no domain_pause() */
break;
@@ -983,9 +964,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
domain_pause(d);
d->debugger_attached = !!op->u.setdebugging.enable;
domain_unpause(d); /* causes guest to latch new status */
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_irq_permission:
{
@@ -1004,8 +983,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = irq_permit_access(d, irq);
else
ret = irq_deny_access(d, irq);
+ break;
}
- break;
case XEN_DOMCTL_iomem_permission:
{
@@ -1027,8 +1006,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = iomem_deny_access(d, mfn, mfn + nr_mfns - 1);
if ( !ret )
memory_type_changed(d);
+ break;
}
- break;
case XEN_DOMCTL_memory_mapping:
{
@@ -1079,15 +1058,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
}
/* Do this unconditionally to cover errors on above failure paths. */
memory_type_changed(d);
+ break;
}
- break;
case XEN_DOMCTL_settimeoffset:
- {
domain_set_time_offset(d, op->u.settimeoffset.time_offset_seconds);
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_set_target:
{
@@ -1113,16 +1089,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
/* Hold reference on @e until we destroy @d. */
d->target = e;
-
- ret = 0;
+ break;
}
- break;
case XEN_DOMCTL_subscribe:
- {
d->suspend_evtchn = op->u.subscribe.port;
- }
- break;
+ break;
case XEN_DOMCTL_mem_event_op:
ret = mem_event_domctl(d, &op->u.mem_event_op,
@@ -1131,41 +1103,28 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
break;
case XEN_DOMCTL_disable_migrate:
- {
d->disable_migrate = op->u.disable_migrate.disable;
- }
- break;
+ break;
#ifdef HAS_MEM_ACCESS
case XEN_DOMCTL_set_access_required:
- {
- struct p2m_domain* p2m;
-
- ret = -EPERM;
if ( current->domain == d )
- break;
-
- ret = 0;
- p2m = p2m_get_hostp2m(d);
- p2m->access_required = op->u.access_required.access_required;
- }
- break;
+ ret = -EPERM;
+ else
+ p2m_get_hostp2m(d)->access_required =
+ op->u.access_required.access_required;
+ break;
#endif
case XEN_DOMCTL_set_virq_handler:
- {
- uint32_t virq = op->u.set_virq_handler.virq;
- ret = set_global_virq_handler(d, virq);
- }
- break;
+ ret = set_global_virq_handler(d, op->u.set_virq_handler.virq);
+ break;
case XEN_DOMCTL_set_max_evtchn:
- {
d->max_evtchn_port = min_t(unsigned int,
op->u.set_max_evtchn.max_port,
INT_MAX);
- }
- break;
+ break;
case XEN_DOMCTL_setvnumainfo:
{
@@ -1184,9 +1143,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
d->vnuma = vnuma;
write_unlock(&d->vnuma_rwlock);
- ret = 0;
+ break;
}
- break;
default:
ret = arch_do_domctl(op, d, u_domctl);
[-- Attachment #3: Type: text/plain, Size: 126 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] domctl: cleanup
2015-03-03 14:40 [PATCH] domctl: cleanup Jan Beulich
@ 2015-03-03 14:51 ` Ian Campbell
2015-03-03 20:12 ` Andrew Cooper
1 sibling, 0 replies; 4+ messages in thread
From: Ian Campbell @ 2015-03-03 14:51 UTC (permalink / raw)
To: Jan Beulich; +Cc: xen-devel, Keir Fraser, Ian Jackson, Tim Deegan
On Tue, 2015-03-03 at 14:40 +0000, Jan Beulich wrote:
> - drop redundant "ret = 0" statements
> - drop unnecessary braces
> - eliminate a few single use local variables
> - move break statements inside case-specific braced scopes
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] domctl: cleanup
2015-03-03 14:40 [PATCH] domctl: cleanup Jan Beulich
2015-03-03 14:51 ` Ian Campbell
@ 2015-03-03 20:12 ` Andrew Cooper
2015-03-04 7:44 ` [PATCH v2] " Jan Beulich
1 sibling, 1 reply; 4+ messages in thread
From: Andrew Cooper @ 2015-03-03 20:12 UTC (permalink / raw)
To: Jan Beulich, xen-devel; +Cc: Ian Campbell, Ian Jackson, Keir Fraser, Tim Deegan
On 03/03/15 14:40, Jan Beulich wrote:
> - drop redundant "ret = 0" statements
> - drop unnecessary braces
> - eliminate a few single use local variables
> - move break statements inside case-specific braced scopes
>
> Signed-off-by: Jan Beulich <jbeulich@suse.com>
One bug (one ret = 0 was not redundant) and one suggestion for futher
cleanup.
Otherwise, Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
>
> --- a/xen/common/domctl.c
> +++ b/xen/common/domctl.c
> @@ -831,15 +825,13 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
> ret = cpumask_to_xenctl_bitmap(&vcpuaff->cpumap_soft,
> v->cpu_soft_affinity);
> }
> + break;
> }
> - break;
>
> case XEN_DOMCTL_scheduler_op:
> - {
> ret = sched_adjust(d, &op->u.scheduler_op);
> copyback = 1;
> - }
> - break;
> + break;
>
> case XEN_DOMCTL_getdomaininfo:
> {
For a cleanup patch, you might as well nuke the trailing whitespace,
which includes the a space after this brace....
> @@ -870,8 +859,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
> getdomaininfo_out:
> rcu_read_unlock(&domlist_read_lock);
> d = NULL;
> + break;
> }
> - break;
>
> case XEN_DOMCTL_getvcpucontext:
> {
... and here ...
> @@ -919,8 +908,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
>
> getvcpucontext_out:
> xfree(c.nat);
> + break;
> }
> - break;
>
> case XEN_DOMCTL_getvcpuinfo:
> {
... and here.
> @@ -961,21 +947,16 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
> * the meantime, while tot > max, all new allocations are disallowed.
> */
> d->max_pages = new_max;
> - ret = 0;
> spin_unlock(&d->page_alloc_lock);
> + break;
> }
> - break;
>
> case XEN_DOMCTL_setdomainhandle:
> - {
> memcpy(d->handle, op->u.setdomainhandle.handle,
> sizeof(xen_domain_handle_t));
> - ret = 0;
> - }
> - break;
> + break;
>
> case XEN_DOMCTL_setdebugging:
> - {
> ret = -EINVAL;
> if ( d == current->domain ) /* no domain_pause() */
> break;
> @@ -983,9 +964,7 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
> domain_pause(d);
> d->debugger_attached = !!op->u.setdebugging.enable;
> domain_unpause(d); /* causes guest to latch new status */
> - ret = 0;
This ret is not redundant. (Observe the unconditional ret = -EINVAL in
the previous hunk).
XEN_DOMCTL_setdebugging can probably be rearranged to a single if()/else
in the same way as XEN_DOMCTL_set_access_required below to make it
slightly shorter.
~Andrew
> @@ -1131,41 +1103,28 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
> break;
>
> case XEN_DOMCTL_disable_migrate:
> - {
> d->disable_migrate = op->u.disable_migrate.disable;
> - }
> - break;
> + break;
>
> #ifdef HAS_MEM_ACCESS
> case XEN_DOMCTL_set_access_required:
> - {
> - struct p2m_domain* p2m;
> -
> - ret = -EPERM;
> if ( current->domain == d )
> - break;
> -
> - ret = 0;
> - p2m = p2m_get_hostp2m(d);
> - p2m->access_required = op->u.access_required.access_required;
> - }
> - break;
> + ret = -EPERM;
> + else
> + p2m_get_hostp2m(d)->access_required =
> + op->u.access_required.access_required;
> + break;
> #endif
>
> case XEN_DOMCTL_set_virq_handler:
> - {
> - uint32_t virq = op->u.set_virq_handler.virq;
> - ret = set_global_virq_handler(d, virq);
> - }
> - break;
> + ret = set_global_virq_handler(d, op->u.set_virq_handler.virq);
> + break;
>
> case XEN_DOMCTL_set_max_evtchn:
> - {
> d->max_evtchn_port = min_t(unsigned int,
> op->u.set_max_evtchn.max_port,
> INT_MAX);
> - }
> - break;
> + break;
>
> case XEN_DOMCTL_setvnumainfo:
> {
>
^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH v2] domctl: cleanup
2015-03-03 20:12 ` Andrew Cooper
@ 2015-03-04 7:44 ` Jan Beulich
0 siblings, 0 replies; 4+ messages in thread
From: Jan Beulich @ 2015-03-04 7:44 UTC (permalink / raw)
To: xen-devel
Cc: Ian Campbell, Andrew Cooper, Keir Fraser, IanJackson, Tim Deegan
[-- Attachment #1: Type: text/plain, Size: 9584 bytes --]
- drop redundant "ret = 0" statements
- drop unnecessary braces
- eliminate a few single use local variables
- move break statements inside case-specific braced scopes
- eliminate trailing whitespace
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
v2: Fix XEN_DOMCTL_setdebugging case and eliminate trailing whitespace
(both pointed out by Andrew).
--- a/xen/common/domctl.c
+++ b/xen/common/domctl.c
@@ -1,8 +1,8 @@
/******************************************************************************
* domctl.c
- *
+ *
* Domain management operations. For use by node control stack.
- *
+ *
* Copyright (c) 2002-2006, K A Fraser
*/
@@ -154,13 +154,13 @@ void getdomaininfo(struct domain *d, str
u64 cpu_time = 0;
int flags = XEN_DOMINF_blocked;
struct vcpu_runstate_info runstate;
-
+
info->domain = d->domain_id;
info->max_vcpu_id = XEN_INVALID_MAX_VCPU_ID;
info->nr_online_vcpus = 0;
info->ssidref = 0;
-
- /*
+
+ /*
* - domain is marked as blocked only if all its vcpus are blocked
* - domain is marked as running if any of its vcpus is running
*/
@@ -237,7 +237,7 @@ static unsigned int default_vcpu0_locati
}
/*
- * If we're on a HT system, we only auto-allocate to a non-primary HT. We
+ * If we're on a HT system, we only auto-allocate to a non-primary HT. We
* favour high numbered CPUs in the event of a tie.
*/
cpumask_copy(&cpu_exclude_map, per_cpu(cpu_sibling_mask, 0));
@@ -517,8 +517,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
}
free_vcpu_guest_context(c.nat);
+ break;
}
- break;
case XEN_DOMCTL_pausedomain:
ret = -EINVAL;
@@ -531,11 +531,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
break;
case XEN_DOMCTL_resumedomain:
- {
domain_resume(d);
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_createdomain:
{
@@ -608,8 +605,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
op->domain = d->domain_id;
copyback = 1;
d = NULL;
+ break;
}
- break;
case XEN_DOMCTL_max_vcpus:
{
@@ -698,8 +695,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
maxvcpu_out_novcpulock:
domain_unpause(d);
+ break;
}
- break;
case XEN_DOMCTL_destroydomain:
ret = domain_kill(d);
@@ -715,14 +710,13 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
&op->u.nodeaffinity.nodemap);
if ( !ret )
ret = domain_set_node_affinity(d, &new_affinity);
+ break;
}
- break;
+
case XEN_DOMCTL_getnodeaffinity:
- {
ret = nodemask_to_xenctl_bitmap(&op->u.nodeaffinity.nodemap,
&d->node_affinity);
- }
- break;
+ break;
case XEN_DOMCTL_setvcpuaffinity:
case XEN_DOMCTL_getvcpuaffinity:
@@ -831,18 +825,16 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = cpumask_to_xenctl_bitmap(&vcpuaff->cpumap_soft,
v->cpu_soft_affinity);
}
+ break;
}
- break;
case XEN_DOMCTL_scheduler_op:
- {
ret = sched_adjust(d, &op->u.scheduler_op);
copyback = 1;
- }
- break;
+ break;
case XEN_DOMCTL_getdomaininfo:
- {
+ {
domid_t dom = op->domain;
rcu_read_lock(&domlist_read_lock);
@@ -851,12 +843,9 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
if ( d->domain_id >= dom )
break;
+ ret = -ESRCH;
if ( d == NULL )
- {
- rcu_read_unlock(&domlist_read_lock);
- ret = -ESRCH;
- break;
- }
+ goto getdomaininfo_out;
ret = xsm_getdomaininfo(XSM_HOOK, d);
if ( ret )
@@ -870,11 +859,11 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
getdomaininfo_out:
rcu_read_unlock(&domlist_read_lock);
d = NULL;
+ break;
}
- break;
case XEN_DOMCTL_getvcpucontext:
- {
+ {
vcpu_guest_context_u c = { .nat = NULL };
struct vcpu *v;
@@ -919,11 +908,11 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
getvcpucontext_out:
xfree(c.nat);
+ break;
}
- break;
case XEN_DOMCTL_getvcpuinfo:
- {
+ {
struct vcpu *v;
struct vcpu_runstate_info runstate;
@@ -944,15 +933,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
op->u.getvcpuinfo.cpu = v->processor;
ret = 0;
copyback = 1;
+ break;
}
- break;
case XEN_DOMCTL_max_mem:
{
- unsigned long new_max;
-
- ret = -EINVAL;
- new_max = op->u.max_mem.max_memkb >> (PAGE_SHIFT-10);
+ unsigned long new_max = op->u.max_mem.max_memkb >> (PAGE_SHIFT - 10);
spin_lock(&d->page_alloc_lock);
/*
@@ -961,31 +947,25 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
* the meantime, while tot > max, all new allocations are disallowed.
*/
d->max_pages = new_max;
- ret = 0;
spin_unlock(&d->page_alloc_lock);
+ break;
}
- break;
case XEN_DOMCTL_setdomainhandle:
- {
memcpy(d->handle, op->u.setdomainhandle.handle,
sizeof(xen_domain_handle_t));
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_setdebugging:
- {
- ret = -EINVAL;
- if ( d == current->domain ) /* no domain_pause() */
- break;
-
- domain_pause(d);
- d->debugger_attached = !!op->u.setdebugging.enable;
- domain_unpause(d); /* causes guest to latch new status */
- ret = 0;
- }
- break;
+ if ( unlikely(d == current->domain) ) /* no domain_pause() */
+ ret = -EINVAL;
+ else
+ {
+ domain_pause(d);
+ d->debugger_attached = !!op->u.setdebugging.enable;
+ domain_unpause(d); /* causes guest to latch new status */
+ }
+ break;
case XEN_DOMCTL_irq_permission:
{
@@ -1004,8 +984,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = irq_permit_access(d, irq);
else
ret = irq_deny_access(d, irq);
+ break;
}
- break;
case XEN_DOMCTL_iomem_permission:
{
@@ -1027,8 +1007,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = iomem_deny_access(d, mfn, mfn + nr_mfns - 1);
if ( !ret )
memory_type_changed(d);
+ break;
}
- break;
case XEN_DOMCTL_memory_mapping:
{
@@ -1079,15 +1059,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
}
/* Do this unconditionally to cover errors on above failure paths. */
memory_type_changed(d);
+ break;
}
- break;
case XEN_DOMCTL_settimeoffset:
- {
domain_set_time_offset(d, op->u.settimeoffset.time_offset_seconds);
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_set_target:
{
@@ -1113,16 +1090,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
/* Hold reference on @e until we destroy @d. */
d->target = e;
-
- ret = 0;
+ break;
}
- break;
case XEN_DOMCTL_subscribe:
- {
d->suspend_evtchn = op->u.subscribe.port;
- }
- break;
+ break;
case XEN_DOMCTL_mem_event_op:
ret = mem_event_domctl(d, &op->u.mem_event_op,
@@ -1131,41 +1104,28 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
break;
case XEN_DOMCTL_disable_migrate:
- {
d->disable_migrate = op->u.disable_migrate.disable;
- }
- break;
+ break;
#ifdef HAS_MEM_ACCESS
case XEN_DOMCTL_set_access_required:
- {
- struct p2m_domain* p2m;
-
- ret = -EPERM;
- if ( current->domain == d )
- break;
-
- ret = 0;
- p2m = p2m_get_hostp2m(d);
- p2m->access_required = op->u.access_required.access_required;
- }
- break;
+ if ( unlikely(current->domain == d) )
+ ret = -EPERM;
+ else
+ p2m_get_hostp2m(d)->access_required =
+ op->u.access_required.access_required;
+ break;
#endif
case XEN_DOMCTL_set_virq_handler:
- {
- uint32_t virq = op->u.set_virq_handler.virq;
- ret = set_global_virq_handler(d, virq);
- }
- break;
+ ret = set_global_virq_handler(d, op->u.set_virq_handler.virq);
+ break;
case XEN_DOMCTL_set_max_evtchn:
- {
d->max_evtchn_port = min_t(unsigned int,
op->u.set_max_evtchn.max_port,
INT_MAX);
- }
- break;
+ break;
case XEN_DOMCTL_setvnumainfo:
{
@@ -1184,9 +1144,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
d->vnuma = vnuma;
write_unlock(&d->vnuma_rwlock);
- ret = 0;
+ break;
}
- break;
default:
ret = arch_do_domctl(op, d, u_domctl);
[-- Attachment #2: domctl-cleanup.patch --]
[-- Type: text/plain, Size: 9599 bytes --]
domctl: cleanup
- drop redundant "ret = 0" statements
- drop unnecessary braces
- eliminate a few single use local variables
- move break statements inside case-specific braced scopes
- eliminate trailing whitespace
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Reviewed-by: Andrew Cooper <andrew.cooper3@citrix.com>
---
v2: Fix XEN_DOMCTL_setdebugging case and eliminate trailing whitespace
(both pointed out by Andrew).
--- a/xen/common/domctl.c
+++ b/xen/common/domctl.c
@@ -1,8 +1,8 @@
/******************************************************************************
* domctl.c
- *
+ *
* Domain management operations. For use by node control stack.
- *
+ *
* Copyright (c) 2002-2006, K A Fraser
*/
@@ -154,13 +154,13 @@ void getdomaininfo(struct domain *d, str
u64 cpu_time = 0;
int flags = XEN_DOMINF_blocked;
struct vcpu_runstate_info runstate;
-
+
info->domain = d->domain_id;
info->max_vcpu_id = XEN_INVALID_MAX_VCPU_ID;
info->nr_online_vcpus = 0;
info->ssidref = 0;
-
- /*
+
+ /*
* - domain is marked as blocked only if all its vcpus are blocked
* - domain is marked as running if any of its vcpus is running
*/
@@ -237,7 +237,7 @@ static unsigned int default_vcpu0_locati
}
/*
- * If we're on a HT system, we only auto-allocate to a non-primary HT. We
+ * If we're on a HT system, we only auto-allocate to a non-primary HT. We
* favour high numbered CPUs in the event of a tie.
*/
cpumask_copy(&cpu_exclude_map, per_cpu(cpu_sibling_mask, 0));
@@ -517,8 +517,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
}
free_vcpu_guest_context(c.nat);
+ break;
}
- break;
case XEN_DOMCTL_pausedomain:
ret = -EINVAL;
@@ -531,11 +531,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
break;
case XEN_DOMCTL_resumedomain:
- {
domain_resume(d);
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_createdomain:
{
@@ -608,8 +605,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
op->domain = d->domain_id;
copyback = 1;
d = NULL;
+ break;
}
- break;
case XEN_DOMCTL_max_vcpus:
{
@@ -698,8 +695,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
maxvcpu_out_novcpulock:
domain_unpause(d);
+ break;
}
- break;
case XEN_DOMCTL_destroydomain:
ret = domain_kill(d);
@@ -715,14 +710,13 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
&op->u.nodeaffinity.nodemap);
if ( !ret )
ret = domain_set_node_affinity(d, &new_affinity);
+ break;
}
- break;
+
case XEN_DOMCTL_getnodeaffinity:
- {
ret = nodemask_to_xenctl_bitmap(&op->u.nodeaffinity.nodemap,
&d->node_affinity);
- }
- break;
+ break;
case XEN_DOMCTL_setvcpuaffinity:
case XEN_DOMCTL_getvcpuaffinity:
@@ -831,18 +825,16 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = cpumask_to_xenctl_bitmap(&vcpuaff->cpumap_soft,
v->cpu_soft_affinity);
}
+ break;
}
- break;
case XEN_DOMCTL_scheduler_op:
- {
ret = sched_adjust(d, &op->u.scheduler_op);
copyback = 1;
- }
- break;
+ break;
case XEN_DOMCTL_getdomaininfo:
- {
+ {
domid_t dom = op->domain;
rcu_read_lock(&domlist_read_lock);
@@ -851,12 +843,9 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
if ( d->domain_id >= dom )
break;
+ ret = -ESRCH;
if ( d == NULL )
- {
- rcu_read_unlock(&domlist_read_lock);
- ret = -ESRCH;
- break;
- }
+ goto getdomaininfo_out;
ret = xsm_getdomaininfo(XSM_HOOK, d);
if ( ret )
@@ -870,11 +859,11 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
getdomaininfo_out:
rcu_read_unlock(&domlist_read_lock);
d = NULL;
+ break;
}
- break;
case XEN_DOMCTL_getvcpucontext:
- {
+ {
vcpu_guest_context_u c = { .nat = NULL };
struct vcpu *v;
@@ -919,11 +908,11 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
getvcpucontext_out:
xfree(c.nat);
+ break;
}
- break;
case XEN_DOMCTL_getvcpuinfo:
- {
+ {
struct vcpu *v;
struct vcpu_runstate_info runstate;
@@ -944,15 +933,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
op->u.getvcpuinfo.cpu = v->processor;
ret = 0;
copyback = 1;
+ break;
}
- break;
case XEN_DOMCTL_max_mem:
{
- unsigned long new_max;
-
- ret = -EINVAL;
- new_max = op->u.max_mem.max_memkb >> (PAGE_SHIFT-10);
+ unsigned long new_max = op->u.max_mem.max_memkb >> (PAGE_SHIFT - 10);
spin_lock(&d->page_alloc_lock);
/*
@@ -961,31 +947,25 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
* the meantime, while tot > max, all new allocations are disallowed.
*/
d->max_pages = new_max;
- ret = 0;
spin_unlock(&d->page_alloc_lock);
+ break;
}
- break;
case XEN_DOMCTL_setdomainhandle:
- {
memcpy(d->handle, op->u.setdomainhandle.handle,
sizeof(xen_domain_handle_t));
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_setdebugging:
- {
- ret = -EINVAL;
- if ( d == current->domain ) /* no domain_pause() */
- break;
-
- domain_pause(d);
- d->debugger_attached = !!op->u.setdebugging.enable;
- domain_unpause(d); /* causes guest to latch new status */
- ret = 0;
- }
- break;
+ if ( unlikely(d == current->domain) ) /* no domain_pause() */
+ ret = -EINVAL;
+ else
+ {
+ domain_pause(d);
+ d->debugger_attached = !!op->u.setdebugging.enable;
+ domain_unpause(d); /* causes guest to latch new status */
+ }
+ break;
case XEN_DOMCTL_irq_permission:
{
@@ -1004,8 +984,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = irq_permit_access(d, irq);
else
ret = irq_deny_access(d, irq);
+ break;
}
- break;
case XEN_DOMCTL_iomem_permission:
{
@@ -1027,8 +1007,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
ret = iomem_deny_access(d, mfn, mfn + nr_mfns - 1);
if ( !ret )
memory_type_changed(d);
+ break;
}
- break;
case XEN_DOMCTL_memory_mapping:
{
@@ -1079,15 +1059,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
}
/* Do this unconditionally to cover errors on above failure paths. */
memory_type_changed(d);
+ break;
}
- break;
case XEN_DOMCTL_settimeoffset:
- {
domain_set_time_offset(d, op->u.settimeoffset.time_offset_seconds);
- ret = 0;
- }
- break;
+ break;
case XEN_DOMCTL_set_target:
{
@@ -1113,16 +1090,12 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
/* Hold reference on @e until we destroy @d. */
d->target = e;
-
- ret = 0;
+ break;
}
- break;
case XEN_DOMCTL_subscribe:
- {
d->suspend_evtchn = op->u.subscribe.port;
- }
- break;
+ break;
case XEN_DOMCTL_mem_event_op:
ret = mem_event_domctl(d, &op->u.mem_event_op,
@@ -1131,41 +1104,28 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
break;
case XEN_DOMCTL_disable_migrate:
- {
d->disable_migrate = op->u.disable_migrate.disable;
- }
- break;
+ break;
#ifdef HAS_MEM_ACCESS
case XEN_DOMCTL_set_access_required:
- {
- struct p2m_domain* p2m;
-
- ret = -EPERM;
- if ( current->domain == d )
- break;
-
- ret = 0;
- p2m = p2m_get_hostp2m(d);
- p2m->access_required = op->u.access_required.access_required;
- }
- break;
+ if ( unlikely(current->domain == d) )
+ ret = -EPERM;
+ else
+ p2m_get_hostp2m(d)->access_required =
+ op->u.access_required.access_required;
+ break;
#endif
case XEN_DOMCTL_set_virq_handler:
- {
- uint32_t virq = op->u.set_virq_handler.virq;
- ret = set_global_virq_handler(d, virq);
- }
- break;
+ ret = set_global_virq_handler(d, op->u.set_virq_handler.virq);
+ break;
case XEN_DOMCTL_set_max_evtchn:
- {
d->max_evtchn_port = min_t(unsigned int,
op->u.set_max_evtchn.max_port,
INT_MAX);
- }
- break;
+ break;
case XEN_DOMCTL_setvnumainfo:
{
@@ -1184,9 +1144,8 @@ long do_domctl(XEN_GUEST_HANDLE_PARAM(xe
d->vnuma = vnuma;
write_unlock(&d->vnuma_rwlock);
- ret = 0;
+ break;
}
- break;
default:
ret = arch_do_domctl(op, d, u_domctl);
[-- Attachment #3: Type: text/plain, Size: 126 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
http://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-03-04 7:44 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-03 14:40 [PATCH] domctl: cleanup Jan Beulich
2015-03-03 14:51 ` Ian Campbell
2015-03-03 20:12 ` Andrew Cooper
2015-03-04 7:44 ` [PATCH v2] " Jan Beulich
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.