Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull perf fixes from Ingo Molnar.

* 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
perf record: Fix buffer overrun bug in tracepoint_id_to_path()
perf/x86: Fix local vs remote memory events for NHM/WSM

+10 -9
+9 -8
arch/x86/kernel/cpu/perf_event_intel.c
··· 385 385 #define NHM_LOCAL_DRAM (1 << 14) 386 386 #define NHM_NON_DRAM (1 << 15) 387 387 388 - #define NHM_ALL_DRAM (NHM_REMOTE_DRAM|NHM_LOCAL_DRAM) 388 + #define NHM_LOCAL (NHM_LOCAL_DRAM|NHM_REMOTE_CACHE_FWD) 389 + #define NHM_REMOTE (NHM_REMOTE_DRAM) 389 390 390 391 #define NHM_DMND_READ (NHM_DMND_DATA_RD) 391 392 #define NHM_DMND_WRITE (NHM_DMND_RFO|NHM_DMND_WB) 392 393 #define NHM_DMND_PREFETCH (NHM_PF_DATA_RD|NHM_PF_DATA_RFO) 393 394 394 395 #define NHM_L3_HIT (NHM_UNCORE_HIT|NHM_OTHER_CORE_HIT_SNP|NHM_OTHER_CORE_HITM) 395 - #define NHM_L3_MISS (NHM_NON_DRAM|NHM_ALL_DRAM|NHM_REMOTE_CACHE_FWD) 396 + #define NHM_L3_MISS (NHM_NON_DRAM|NHM_LOCAL_DRAM|NHM_REMOTE_DRAM|NHM_REMOTE_CACHE_FWD) 396 397 #define NHM_L3_ACCESS (NHM_L3_HIT|NHM_L3_MISS) 397 398 398 399 static __initconst const u64 nehalem_hw_cache_extra_regs ··· 417 416 }, 418 417 [ C(NODE) ] = { 419 418 [ C(OP_READ) ] = { 420 - [ C(RESULT_ACCESS) ] = NHM_DMND_READ|NHM_ALL_DRAM, 421 - [ C(RESULT_MISS) ] = NHM_DMND_READ|NHM_REMOTE_DRAM, 419 + [ C(RESULT_ACCESS) ] = NHM_DMND_READ|NHM_LOCAL|NHM_REMOTE, 420 + [ C(RESULT_MISS) ] = NHM_DMND_READ|NHM_REMOTE, 422 421 }, 423 422 [ C(OP_WRITE) ] = { 424 - [ C(RESULT_ACCESS) ] = NHM_DMND_WRITE|NHM_ALL_DRAM, 425 - [ C(RESULT_MISS) ] = NHM_DMND_WRITE|NHM_REMOTE_DRAM, 423 + [ C(RESULT_ACCESS) ] = NHM_DMND_WRITE|NHM_LOCAL|NHM_REMOTE, 424 + [ C(RESULT_MISS) ] = NHM_DMND_WRITE|NHM_REMOTE, 426 425 }, 427 426 [ C(OP_PREFETCH) ] = { 428 - [ C(RESULT_ACCESS) ] = NHM_DMND_PREFETCH|NHM_ALL_DRAM, 429 - [ C(RESULT_MISS) ] = NHM_DMND_PREFETCH|NHM_REMOTE_DRAM, 427 + [ C(RESULT_ACCESS) ] = NHM_DMND_PREFETCH|NHM_LOCAL|NHM_REMOTE, 428 + [ C(RESULT_MISS) ] = NHM_DMND_PREFETCH|NHM_REMOTE, 430 429 }, 431 430 }, 432 431 };
+1 -1
tools/perf/util/parse-events.c
··· 165 165 struct tracepoint_path *path = NULL; 166 166 DIR *sys_dir, *evt_dir; 167 167 struct dirent *sys_next, *evt_next, sys_dirent, evt_dirent; 168 - char id_buf[4]; 168 + char id_buf[24]; 169 169 int fd; 170 170 u64 id; 171 171 char evt_path[MAXPATHLEN];