From patchwork Mon Nov 26 16:57:52 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [182/270] oprofile, x86: Fix wrapping bug in op_x86_get_ctrl() X-Patchwork-Submitter: Herton Ronaldo Krzesinski X-Patchwork-Id: 201914 Message-Id: <1353949160-26803-183-git-send-email-herton.krzesinski@canonical.com> To: linux-kernel@vger.kernel.org, stable@vger.kernel.org, kernel-team@lists.ubuntu.com Cc: Robert Richter , Dan Carpenter Date: Mon, 26 Nov 2012 14:57:52 -0200 From: Herton Ronaldo Krzesinski List-Id: Kernel team discussions 3.5.7u1 -stable review patch. If anyone has any objections, please let me know. ------------------ From: Dan Carpenter 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 Signed-off-by: Robert Richter Signed-off-by: Herton Ronaldo Krzesinski --- arch/x86/oprofile/nmi_int.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/oprofile/nmi_int.c b/arch/x86/oprofile/nmi_int.c index 26b8a85..48768df 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; }