diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2012-10-10 10:18:35 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2012-10-28 10:14:13 -0700 |
commit | d641457de0939adaa140161127f2f72bcfe50b37 (patch) | |
tree | 5bf6f9663c90eb1f04b2e2db0a3a84770af1ce28 | |
parent | 08eaf6a4ee82eb566c188f71b33f52e780fab57d (diff) | |
download | lwn-d641457de0939adaa140161127f2f72bcfe50b37.tar.gz lwn-d641457de0939adaa140161127f2f72bcfe50b37.zip |
oprofile, x86: Fix wrapping bug in op_x86_get_ctrl()
commit 44009105081b51417f311f4c3be0061870b6b8ed upstream.
The "event" variable is a u16 so the shift will always wrap to zero
making the line a no-op.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Robert Richter <robert.richter@amd.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r-- | arch/x86/oprofile/nmi_int.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/oprofile/nmi_int.c b/arch/x86/oprofile/nmi_int.c index 26b8a8514ee5..48768df2471a 100644 --- a/arch/x86/oprofile/nmi_int.c +++ b/arch/x86/oprofile/nmi_int.c @@ -55,7 +55,7 @@ u64 op_x86_get_ctrl(struct op_x86_model_spec const *model, val |= counter_config->extra; event &= model->event_mask ? model->event_mask : 0xFF; val |= event & 0xFF; - val |= (event & 0x0F00) << 24; + val |= (u64)(event & 0x0F00) << 24; return val; } |