[PATCH] s390: oprofile: fix error checks inoprofile_hwsampler_init()

From: Nicolas Kaiser
Date: Thu Mar 31 2011 - 13:01:00 EST


Checking 'oprofile_min_interval < 0' and
'oprofile_max_interval < 0' doesn't work because
'oprofile_min_interval' and 'oprofile_max_interval' are unsigned.

Signed-off-by: Nicolas Kaiser <nikai@xxxxxxxxx>
---
Untested.

arch/s390/oprofile/init.c | 12 ++++++++----
1 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/arch/s390/oprofile/init.c b/arch/s390/oprofile/init.c
index c63d7e5..09c3088 100644
--- a/arch/s390/oprofile/init.c
+++ b/arch/s390/oprofile/init.c
@@ -138,22 +138,26 @@ static int oprofile_create_hwsampling_files(struct super_block *sb,

static int oprofile_hwsampler_init(struct oprofile_operations *ops)
{
+ long retval;
+
if (hwsampler_setup())
return -ENODEV;

/*
* create hwsampler files only if hwsampler_setup() succeeds.
*/
- oprofile_min_interval = hwsampler_query_min_interval();
- if (oprofile_min_interval < 0) {
+ retval = hwsampler_query_min_interval();
+ if (retval < 0) {
oprofile_min_interval = 0;
return -ENODEV;
}
- oprofile_max_interval = hwsampler_query_max_interval();
- if (oprofile_max_interval < 0) {
+ oprofile_min_interval = retval;
+ retval = hwsampler_query_max_interval();
+ if (retval < 0) {
oprofile_max_interval = 0;
return -ENODEV;
}
+ oprofile_max_interval = retval;

if (oprofile_timer_init(ops))
return -ENODEV;
--
1.7.3.4
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/