From: Julien Grall <julien.grall@arm.com>
To: xen-devel@lists.xen.org
Cc: Julien Grall <julien.grall@arm.com>, sstabellini@kernel.org
Subject: [PATCH 01/13] xen/arm: vtimer: Switch the emulation functions return from int to bool
Date: Wed, 7 Dec 2016 12:33:41 +0000 [thread overview]
Message-ID: <1481114033-11024-2-git-send-email-julien.grall@arm.com> (raw)
In-Reply-To: <1481114033-11024-1-git-send-email-julien.grall@arm.com>
The emulation functions are always returning 0 or 1. Use bool instead to
make clear only two possible values exist.
Signed-off-by: Julien Grall <julien.grall@arm.com>
---
xen/arch/arm/vtimer.c | 60 +++++++++++++++++++++++++--------------------------
xen/arch/arm/vtimer.h | 2 +-
2 files changed, 31 insertions(+), 31 deletions(-)
diff --git a/xen/arch/arm/vtimer.c b/xen/arch/arm/vtimer.c
index f636705..f8d3295 100644
--- a/xen/arch/arm/vtimer.c
+++ b/xen/arch/arm/vtimer.c
@@ -164,12 +164,12 @@ int virt_timer_restore(struct vcpu *v)
return 0;
}
-static int vtimer_cntp_ctl(struct cpu_user_regs *regs, uint32_t *r, int read)
+static bool vtimer_cntp_ctl(struct cpu_user_regs *regs, uint32_t *r, int read)
{
struct vcpu *v = current;
if ( !ACCESS_ALLOWED(regs, EL0PTEN) )
- return 0;
+ return false;
if ( read )
{
@@ -190,16 +190,16 @@ static int vtimer_cntp_ctl(struct cpu_user_regs *regs, uint32_t *r, int read)
else
stop_timer(&v->arch.phys_timer.timer);
}
- return 1;
+ return true;
}
-static int vtimer_cntp_tval(struct cpu_user_regs *regs, uint32_t *r, int read)
+static bool vtimer_cntp_tval(struct cpu_user_regs *regs, uint32_t *r, int read)
{
struct vcpu *v = current;
s_time_t now;
if ( !ACCESS_ALLOWED(regs, EL0PTEN) )
- return 0;
+ return false;
now = NOW() - v->domain->arch.phys_timer_base.offset;
@@ -218,15 +218,15 @@ static int vtimer_cntp_tval(struct cpu_user_regs *regs, uint32_t *r, int read)
v->domain->arch.phys_timer_base.offset);
}
}
- return 1;
+ return true;
}
-static int vtimer_cntp_cval(struct cpu_user_regs *regs, uint64_t *r, int read)
+static bool vtimer_cntp_cval(struct cpu_user_regs *regs, uint64_t *r, int read)
{
struct vcpu *v = current;
if ( !ACCESS_ALLOWED(regs, EL0PTEN) )
- return 0;
+ return false;
if ( read )
{
@@ -243,10 +243,10 @@ static int vtimer_cntp_cval(struct cpu_user_regs *regs, uint64_t *r, int read)
v->domain->arch.phys_timer_base.offset);
}
}
- return 1;
+ return true;
}
-static int vtimer_emulate_cp32(struct cpu_user_regs *regs, union hsr hsr)
+static bool vtimer_emulate_cp32(struct cpu_user_regs *regs, union hsr hsr)
{
struct hsr_cp32 cp32 = hsr.cp32;
/*
@@ -255,7 +255,7 @@ static int vtimer_emulate_cp32(struct cpu_user_regs *regs, union hsr hsr)
* setting r).
*/
uint32_t r = 0;
- int res;
+ bool res;
if ( cp32.read )
@@ -277,7 +277,7 @@ static int vtimer_emulate_cp32(struct cpu_user_regs *regs, union hsr hsr)
break;
default:
- return 0;
+ return false;
}
if ( res && cp32.read )
@@ -286,7 +286,7 @@ static int vtimer_emulate_cp32(struct cpu_user_regs *regs, union hsr hsr)
return res;
}
-static int vtimer_emulate_cp64(struct cpu_user_regs *regs, union hsr hsr)
+static bool vtimer_emulate_cp64(struct cpu_user_regs *regs, union hsr hsr)
{
struct hsr_cp64 cp64 = hsr.cp64;
uint32_t r1 = get_user_reg(regs, cp64.reg1);
@@ -302,11 +302,11 @@ static int vtimer_emulate_cp64(struct cpu_user_regs *regs, union hsr hsr)
{
case HSR_CPREG64(CNTP_CVAL):
if ( !vtimer_cntp_cval(regs, &x, cp64.read) )
- return 0;
+ return false;
break;
default:
- return 0;
+ return false;
}
if ( cp64.read )
@@ -315,21 +315,21 @@ static int vtimer_emulate_cp64(struct cpu_user_regs *regs, union hsr hsr)
set_user_reg(regs, cp64.reg2, x >> 32);
}
- return 1;
+ return true;
}
#ifdef CONFIG_ARM_64
-typedef int (*vtimer_sysreg32_fn_t)(struct cpu_user_regs *regs, uint32_t *r,
- int read);
-typedef int (*vtimer_sysreg64_fn_t)(struct cpu_user_regs *regs, uint64_t *r,
- int read);
+typedef bool (*vtimer_sysreg32_fn_t)(struct cpu_user_regs *regs, uint32_t *r,
+ int read);
+typedef bool (*vtimer_sysreg64_fn_t)(struct cpu_user_regs *regs, uint64_t *r,
+ int read);
-static int vtimer_emulate_sysreg32(struct cpu_user_regs *regs, union hsr hsr,
- vtimer_sysreg32_fn_t fn)
+static bool vtimer_emulate_sysreg32(struct cpu_user_regs *regs, union hsr hsr,
+ vtimer_sysreg32_fn_t fn)
{
struct hsr_sysreg sysreg = hsr.sysreg;
uint32_t r = 0;
- int ret;
+ bool ret;
if ( !sysreg.read )
r = get_user_reg(regs, sysreg.reg);
@@ -342,8 +342,8 @@ static int vtimer_emulate_sysreg32(struct cpu_user_regs *regs, union hsr hsr,
return ret;
}
-static int vtimer_emulate_sysreg64(struct cpu_user_regs *regs, union hsr hsr,
- vtimer_sysreg64_fn_t fn)
+static bool vtimer_emulate_sysreg64(struct cpu_user_regs *regs, union hsr hsr,
+ vtimer_sysreg64_fn_t fn)
{
struct hsr_sysreg sysreg = hsr.sysreg;
/*
@@ -352,7 +352,7 @@ static int vtimer_emulate_sysreg64(struct cpu_user_regs *regs, union hsr hsr,
* setting x).
*/
uint64_t x = 0;
- int ret;
+ bool ret;
if ( !sysreg.read )
x = get_user_reg(regs, sysreg.reg);
@@ -365,7 +365,7 @@ static int vtimer_emulate_sysreg64(struct cpu_user_regs *regs, union hsr hsr,
return ret;
}
-static int vtimer_emulate_sysreg(struct cpu_user_regs *regs, union hsr hsr)
+static bool vtimer_emulate_sysreg(struct cpu_user_regs *regs, union hsr hsr)
{
struct hsr_sysreg sysreg = hsr.sysreg;
@@ -384,13 +384,13 @@ static int vtimer_emulate_sysreg(struct cpu_user_regs *regs, union hsr hsr)
return vtimer_emulate_sysreg64(regs, hsr, vtimer_cntp_cval);
default:
- return 0;
+ return false;
}
}
#endif
-int vtimer_emulate(struct cpu_user_regs *regs, union hsr hsr)
+bool vtimer_emulate(struct cpu_user_regs *regs, union hsr hsr)
{
switch (hsr.ec) {
@@ -403,7 +403,7 @@ int vtimer_emulate(struct cpu_user_regs *regs, union hsr hsr)
return vtimer_emulate_sysreg(regs, hsr);
#endif
default:
- return 0;
+ return false;
}
}
diff --git a/xen/arch/arm/vtimer.h b/xen/arch/arm/vtimer.h
index 99e8145..5aaddc6 100644
--- a/xen/arch/arm/vtimer.h
+++ b/xen/arch/arm/vtimer.h
@@ -23,7 +23,7 @@
extern int domain_vtimer_init(struct domain *d,
struct xen_arch_domainconfig *config);
extern int vcpu_vtimer_init(struct vcpu *v);
-extern int vtimer_emulate(struct cpu_user_regs *regs, union hsr hsr);
+extern bool vtimer_emulate(struct cpu_user_regs *regs, union hsr hsr);
extern int virt_timer_save(struct vcpu *v);
extern int virt_timer_restore(struct vcpu *v);
extern void vcpu_timer_destroy(struct vcpu *v);
--
1.9.1
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
next prev parent reply other threads:[~2016-12-07 12:33 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-07 12:33 [PATCH 00/13] xen/arm: Allow AArch32 guest to boot with GICv3 Julien Grall
2016-12-07 12:33 ` Julien Grall [this message]
2016-12-07 21:44 ` [PATCH 01/13] xen/arm: vtimer: Switch the emulation functions return from int to bool Stefano Stabellini
2016-12-07 12:33 ` [PATCH 02/13] xen/arm: vtimer: Switch the read variable in the emulation " Julien Grall
2016-12-07 21:49 ` Stefano Stabellini
2016-12-07 12:33 ` [PATCH 03/13] xen/arm: traps: Switch from bool_t " Julien Grall
2016-12-07 21:51 ` Stefano Stabellini
2016-12-07 12:33 ` [PATCH 04/13] xen/arm: vgic: " Julien Grall
2016-12-07 21:53 ` Stefano Stabellini
2016-12-07 12:33 ` [PATCH 05/13] xen/arm: vgic: Switch vgic_to_sgi return from int to bool and progate up to Julien Grall
2016-12-07 21:55 ` Stefano Stabellini
2016-12-07 22:02 ` Stefano Stabellini
2016-12-07 12:33 ` [PATCH 06/13] xen/arm: vgic: Switch emulate_sysreg return from int to bool Julien Grall
2016-12-07 22:02 ` Stefano Stabellini
2016-12-07 12:33 ` [PATCH 07/13] xen/arm: vgic: Clean-up the sysreg emulation Julien Grall
2016-12-07 22:08 ` Stefano Stabellini
2016-12-07 12:33 ` [PATCH 08/13] xen/arm: vgic-v3: Build vgic-v3.c when CONFIG_HAS_GICV3 is enabled Julien Grall
2016-12-07 22:23 ` Stefano Stabellini
2016-12-07 12:33 ` [PATCH 09/13] xen/arm: vtimer: Move emulate_sysreg* callback in a separate header Julien Grall
2016-12-07 22:41 ` Stefano Stabellini
2016-12-07 12:33 ` [PATCH 10/13] xen/arm: vreg: Introduce vreg_emulate_cp{32, 64} Julien Grall
2016-12-07 22:41 ` Stefano Stabellini
2016-12-07 12:33 ` [PATCH 11/13] xen/arm: vgic: Rename emulate_sysreg callback to emulate_reg Julien Grall
2016-12-07 22:44 ` Stefano Stabellini
2016-12-07 12:33 ` [PATCH 12/13] xen/arm: vgic-v3: Move the emulation of ICC_SGI1R_EL1 in a separate helper Julien Grall
2016-12-07 22:47 ` Stefano Stabellini
2016-12-07 12:33 ` [PATCH 13/13] xen/arm: vgic-v3: Allow AArch32 guest booting with GICv3 Julien Grall
2016-12-07 22:50 ` Stefano Stabellini
2016-12-07 22:51 ` [PATCH 00/13] xen/arm: Allow AArch32 guest to boot " Stefano Stabellini
2016-12-08 11:11 ` Julien Grall
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1481114033-11024-2-git-send-email-julien.grall@arm.com \
--to=julien.grall@arm.com \
--cc=sstabellini@kernel.org \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).