| From 70513d58751d7c6c1a0133557b13089b9f2e3e66 Mon Sep 17 00:00:00 2001 |
| From: Boris Ostrovsky <boris.ostrovsky@oracle.com> |
| Date: Thu, 12 Jul 2018 13:27:00 -0400 |
| Subject: xen/x86/vpmu: Zero struct pt_regs before calling into sample handling code |
| |
| From: Boris Ostrovsky <boris.ostrovsky@oracle.com> |
| |
| commit 70513d58751d7c6c1a0133557b13089b9f2e3e66 upstream. |
| |
| Otherwise we may leak kernel stack for events that sample user |
| registers. |
| |
| Reported-by: Mark Rutland <mark.rutland@arm.com> |
| Reviewed-by: Juergen Gross <jgross@suse.com> |
| Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com> |
| Cc: stable@vger.kernel.org |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| arch/x86/xen/pmu.c | 2 +- |
| 1 file changed, 1 insertion(+), 1 deletion(-) |
| |
| --- a/arch/x86/xen/pmu.c |
| +++ b/arch/x86/xen/pmu.c |
| @@ -478,7 +478,7 @@ static void xen_convert_regs(const struc |
| irqreturn_t xen_pmu_irq_handler(int irq, void *dev_id) |
| { |
| int err, ret = IRQ_NONE; |
| - struct pt_regs regs; |
| + struct pt_regs regs = {0}; |
| const struct xen_pmu_data *xenpmu_data = get_xenpmu_data(); |
| uint8_t xenpmu_flags = get_xenpmu_flags(); |
| |