On Thu, Jul 20 2023, Scott Cheloha <scottchel...@gmail.com> wrote: > On Wed, Jul 19, 2023 at 05:09:04AM +0000, Mike Larkin wrote: >> On Tue, Jul 18, 2023 at 08:21:41AM -0500, Scott Cheloha wrote: >> > This patch moves the profil(2)- and GPROF-specific parts of >> > statclock() out into into separate clock interrupt routines. The >> > profil(2) part moves into profclock() and is enabled/disabled as >> > needed during mi_switch(). The GPROF part moves into gmonclock() and >> > is enabled/disabled as needed via sysctl(2). >> > >> > Moving those parts out of statclock() eliminates the need for an >> > effective statclock frequency and we can delete all the junk related >> > to that: psratio/psdiv/pscnt and corresponding members of >> > schedstate_percpu, clockintr_setstatclockrate(), a bunch of other >> > clockintr-internal code >> > >> > In separate commits I have addressed: >> > >> > - General GPROF instability on amd64 >> > - GPROF causing a crash during suspend/resume >> > - CTASSERT breakage on amd64 related to schedstate_percpu >> > changes in this patch >> > >> > This has been kicking around for over two months. Personally, I have >> > tested it on amd64, arm64, macppc, octeon, and sparc64. >> > >> > Compile- and boot-tests on other platforms (alpha, i386, luna88k, >> > riscv64, sh) would be appreciated, but the last time I asked for tests >> > I got zero reports back. >> >> i386 compiles and boots. > > Great! > >> as reported in separate mail, riscv64 doesn't compile. > > I think we're missing a 'struct user' definition on riscv64. Can you > try this?
GENERIC.MP with option GPROF doesn't build on riscv64, but this diff doesn't introduce any new error. Runtime untested. -- jca | PGP : 0x1524E7EE / 5135 92C1 AD36 5293 2BDF DDCC 0DFA 74AE 1524 E7EE