[PATCH 2/2] x86 tlb: fix tracepoint nr_pages calculation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>

We calculate nr_pages with f->flush_end and f->flush_start, both
of which are virtual addresses.  However, we only divide
f->flush_start by PAGE_SIZE, and missed f->flush_end.  This patch
adds some parenthesis to catch f->flush_end as well.

nr_pages is only used for a trace point.  This should not have
any functional impact other than keeping the trace point from
spitting out garbage for the flush length.

Signed-off-by: Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>
Cc: stable@xxxxxxxxxxxxxxx
---

 b/arch/x86/mm/tlb.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff -puN arch/x86/mm/tlb.c~x86-tlb-fix-tracepoint-data arch/x86/mm/tlb.c
--- a/arch/x86/mm/tlb.c~x86-tlb-fix-tracepoint-data	2014-12-08 10:58:22.245782512 -0800
+++ b/arch/x86/mm/tlb.c	2014-12-08 10:58:22.248782647 -0800
@@ -129,7 +129,7 @@ static void flush_tlb_func(void *info)
 		} else {
 			unsigned long addr;
 			unsigned long nr_pages =
-				f->flush_end - f->flush_start / PAGE_SIZE;
+				(f->flush_end - f->flush_start) / PAGE_SIZE;
 			addr = f->flush_start;
 			while (addr < f->flush_end) {
 				__flush_tlb_single(addr);
_
--
To unsubscribe from this list: send the line "unsubscribe stable" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]