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 tag 'trace-rv-v6.18-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace

Pull tracing fixes from Steven Rostedt:
"A couple of fixes for Runtime Verification:

- A bug caused a kernel panic when reading enabled_monitors was
reported.

Change callback functions to always use list_head iterators and by
doing so, fix the wrong pointer that was leading to the panic.

- The rtapp/pagefault monitor relies on the MMU to be present
(pagefaults exist) but that was not enforced via kconfig, leading
to potential build errors on systems without an MMU.

Add that kconfig dependency"

* tag 'trace-rv-v6.18-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/trace/linux-trace:
rv: Make rtapp/pagefault monitor depends on CONFIG_MMU
rv: Fully convert enabled_monitors to use list_head as iterator

+7 -6
+1
kernel/trace/rv/monitors/pagefault/Kconfig
··· 5 5 select RV_LTL_MONITOR 6 6 depends on RV_MON_RTAPP 7 7 depends on X86 || RISCV 8 + depends on MMU 8 9 default y 9 10 select LTL_MON_EVENTS_ID 10 11 bool "pagefault monitor"
+6 -6
kernel/trace/rv/rv.c
··· 501 501 502 502 list_for_each_entry_continue(mon, &rv_monitors_list, list) { 503 503 if (mon->enabled) 504 - return mon; 504 + return &mon->list; 505 505 } 506 506 507 507 return NULL; ··· 509 509 510 510 static void *enabled_monitors_start(struct seq_file *m, loff_t *pos) 511 511 { 512 - struct rv_monitor *mon; 512 + struct list_head *head; 513 513 loff_t l; 514 514 515 515 mutex_lock(&rv_interface_lock); ··· 517 517 if (list_empty(&rv_monitors_list)) 518 518 return NULL; 519 519 520 - mon = list_entry(&rv_monitors_list, struct rv_monitor, list); 520 + head = &rv_monitors_list; 521 521 522 522 for (l = 0; l <= *pos; ) { 523 - mon = enabled_monitors_next(m, mon, &l); 524 - if (!mon) 523 + head = enabled_monitors_next(m, head, &l); 524 + if (!head) 525 525 break; 526 526 } 527 527 528 - return mon; 528 + return head; 529 529 } 530 530 531 531 /*