RFC: Hiding per-CPU kernel output behind bootverbose

Colin Percival cperciva at tarsnap.com
Sat Apr 21 20:30:12 UTC 2018


On 04/21/18 10:02, Warner Losh wrote:
> On Fri, Apr 20, 2018 at 6:11 PM, Colin Percival <cperciva at tarsnap.com
> <mailto:cperciva at tarsnap.com>> wrote:
>     Would it be sufficient for debugging purposes if I change the !bootverbose
>     case from printing many lines of
> 
>     SMP: AP CPU #N Launched!
> 
>     to instead have a single
> 
>     SMP: Launching AP CPUs: 86 73 111 21 8 77 100 28 57 42 10 60 87 88 41 113 36
>     19 72 46 92 52 24 81 90 3 107 96 9 14 80 118 29 121 62 74 56 55 1 12 63 18 67
>     13 45 102 33 94 69 68 93 83 48 31 30 32 51 89 71 78 64 84 123 61 40 47 37 22
>     54 101 38 4 97 44 17 109 104 5 85 43 2 99 39 65 95 53 58 66 91 125 23 115 16
>     35 79 112 103 82 7 75 11 6 98 15 126 127 20 70 34 105 27 50 116 120 49 25 108
>     106 122 117 114 26 110 59 76 124 119
> 
>     ?  (With each AP printing its number as it reaches the appropriate point?)
> 
>     This yields almost the same gain as silencing the launch messages completely,
>     while still allowing you to see each CPU announcing itself.
> 
> The trouble is that you've got N CPUs that are doing output at the same time.
> You'll need to synchronize somehow. And how do you know that the last one is
> done? Especailly if one of the CPUs doesn't start..

Fortunately, this output is all generated with the ap_boot_mtx lock held.

-- 
Colin Percival
Security Officer Emeritus, FreeBSD | The power to serve
Founder, Tarsnap | www.tarsnap.com | Online backups for the truly paranoid


More information about the freebsd-hackers mailing list