4
skiboot-5.1.0 was released on August 17th, 2015.
6
skiboot-5.1.0 is the first stable release of 5.1.0 following two beta releases.
7
This new stable release replaces skiboot-5.0 as the current stable skiboot
8
release (5.0 was released April 14th 2015).
10
Skiboot 5.1.0 contains all fixes from skiboot-5.0 stable branch up to
11
skiboot-5.0.5 and everything from 5.1.0-beta1 and 5.1.0-beta2.
13
Over skiboot-5.1.0-beta2, we have the following changes:
14
- opal_prd now supports multiple socket systems
15
- fix compiler warnings in gard and libflash
17
Below are the changes introduced in previous skiboot-5.1.0 releases over
18
the previous stable release, skiboot-5.0:
21
- Add Naples chip (CPU, PHB, LPC serial interrupts) support
23
- improvements to FSI error handling
24
- improvements in chip TOD failover (some only on FSP systems)
25
- Set Relative Priority Register (RPR) to recommended value
26
- this affects thread priority in SMT modes
27
- greatly reduce memory consumption by CPU stacks for non-present CPUs
28
- Previously we would reserve enough memory for max PIR for each CPU
30
- This fix frees up 77MB of RAM on a typical P8 system.
31
- increased OPAL API documentation
32
- Asynchronous preloading of resources from FSP/flash
33
- improves boot time on some systems
34
- Basic Garrison platform support
35
- Add Mambo platform (P8 Functional Simulator, systemsim)
36
- includes fake NVRAM, RTC
37
- Support building with GCOV, increasing memory for skiboot binary to 2MB
38
- includes boot code coverage testing
39
- Increased skiboot HEAP size.
40
- We are not aware of any system where you would run out, but on large
41
systems it was getting closer than we liked.
42
- add boot_tests.sh for helping automate boot testing on FSP and BMC machines
43
- Versioning of pflash and gard utilities to help Linux (or other OS)
44
distributions with packaging.
45
- OCC throttle status messages to host
46
- CAPP timebase sync ("ibm,capp-timebase-sync" in DT to indicate CAPP timebase
48
- opal-api: Add OPAL call to handle abnormal reboots.
50
Currently it will support two reboot types (0). normal reboot, that
51
will behave similar to that of opal_cec_reboot() call, and
52
(1). platform error reboot.
54
Long term, this is designed to replace OPAL_CEC_REBOOT.
56
New features for FSP based machines:
57
- in-band IPMI support
58
- ethernet adaptor location codes
59
- add DIMM frequency information to device tree
60
- improvements in FSP error log code paths
61
- fix some boot time memory leaks
62
- harmless to end user
64
New features for AMI BMC based machines:
65
- PCIe power workaround for K80
66
- Added support for Macronix 128Mbit flash chips
67
- Initial PRD support for Firestone platform
68
- improved reliability when BMC reboots
70
The following bugs have been fixed:
71
- Increase PHB3 timeout for electrical links coming up to 2 seconds.
72
- fixes issues with some Mellanox cards
73
- Hang in opal_reinit_cpus() that could prevent kdump from functioning
74
- PHB3: fix crash in phb3_init
75
- PHB3: fix crash with fenced PHB in phb3_init_hw()
76
- Fix bugs in hw/bt.c (interface for IPMI on BMC machines) that could possibly
77
lead to a crash (dereferencing invalid address, deadlock)
78
- ipmi/sel: fix use-after-free
79
- Bug fixes in EEH handling
80
- opal_pci_next_error() cleared OPAL_EVENT_PCI_ERROR unconditionally, possibly
81
leading to missed errors.
82
- external/opal-prd: Only map each PRD range once
83
- could eventually lead to failing to map PRD ranges
84
- On skiboot crash, don't try to print symbol when we didn't find one
85
- makes backtrace prettier
86
- On skiboot crash, dump hssr0 and hsrr1 registers correctly.
87
- Better support old and biarch compilers
88
- test "new" compiler flags before using them
89
- Specify -mabi=elfv1 if supported (which means it's needed)
90
- fix boot-coverage-report makefile target
91
- ipmi: Fix the opal_ipmi_recv() call to handle the error path
92
- Could make kernel a sad panda when in continues with other IPMI commands
93
- IPMI: truncate SELs at 2kb
94
- it's the limit of the astbmc. We think.
96
- As per PEL spec, we should log events with severity >= 0x22 and "service
97
action flag" is "on". But in our case, all logs OPAL originagted logs
98
are makred as report externally.
99
We now only report logs with severity >= 0x22
100
- IPMI: fixes to eSEL logging
101
- hw/phb3: Change reserved PE to 255
102
- Currently, we have reserved PE#0 to which all RIDs are mapped prior
103
to PE assignment request from kernel. The last M64 BAR is configured
104
to have shared mode. So we have to cut off the first M64 segment,
105
which corresponds to reserved PE#0 in kernel. If the first BAR
106
(for example PF's IOV BAR) requires huge alignment in kernel, we
107
have to waste huge M64 space to accommodate the alignment. If we
108
have reserved PE#256, the waste of M64 space will be avoided.
110
FSP-specific bugs fixed:
111
- (also fixed in skiboot-5.0.2) Fix race in firenze_get_slot_info() leading to
112
assert() with many PCI cards
113
With many PCI cards, we'd hit a race where calls to
114
firenze_add_pcidev_to_fsp_inventory would step on each other leading to
115
memory corruption and finally an assert() in the allocator being hit
117
- PCIe power workaround for K80 cards
118
- /ibm,opal/led renamed to /ibm,opal/leds in Device Tree
119
- compatible change as no FSP based systems shipped with skiboot-5.0
121
General improvements:
122
- Preliminary Centaur i2c support
123
- lays framework for supporting Centaur i2c
124
- don't run pollers on non-boot CPUs in time_wait
125
- improvements to opal-prd, pflash, libflash
126
- including new blocklevel interface in libflash
127
- many minor fixes to issues found by static analysis
128
- improvements in FSP error log code paths
129
- code cleanup in memory allocator
130
- Don't expose individual nvram partitions in the device tree, just the whole
132
- build improvements for building on ppc64el host
133
- improvements in cpu_relax() for idle threads, needed for GCOV on large
135
- Optimized memset() for POWER8, greatly reducing number of instructions
136
executed for boot, which helps boot time in simulators.
137
- Major improvements in hello_world kernel
138
- Bloat of huge 17 instruction test case reduced to 10.
139
- Disable bust_locks for general calls of abort()
140
- Should enable better error messages during abort() when other users of
141
LPC bus exist (e.g. flash)
142
- unified version numbers for bundled utilities
143
- external/boot_test/boot_test.sh
144
- better usable for automated boot testing
148
Since skiboot-5.0, we've had the following changesets:
150
Processed 372 csets from 27 developers
152
A total of 15868 lines added, 3359 removed (delta 12509)
154
Developers with the most changesets
155
Stewart Smith 117 (31.5%)
156
Jeremy Kerr 37 (9.9%)
158
Vasant Hegde 32 (8.6%)
159
Benjamin Herrenschmidt 32 (8.6%)
160
Kamalesh Babulal 22 (5.9%)
161
Joel Stanley 12 (3.2%)
162
Mahesh Salgaonkar 12 (3.2%)
163
Alistair Popple 12 (3.2%)
164
Neelesh Gupta 9 (2.4%)
166
Cédric Le Goater 8 (2.2%)
167
Ananth N Mavinakayanahalli 8 (2.2%)
168
Vipin K Parashar 6 (1.6%)
169
Michael Neuling 6 (1.6%)
170
Samuel Mendoza-Jonas 3 (0.8%)
171
Frederic Bonnard 3 (0.8%)
172
Andrew Donnellan 2 (0.5%)
173
Vaidyanathan Srinivasan 2 (0.5%)
174
Philippe Bergheaud 1 (0.3%)
175
Shilpasri G Bhat 1 (0.3%)
176
Daniel Axtens 1 (0.3%)
177
Hari Bathini 1 (0.3%)
178
Michael Ellerman 1 (0.3%)
179
Andrei Warkentin 1 (0.3%)
181
Anton Blanchard 1 (0.3%)
183
Developers with the most changed lines
184
Stewart Smith 4499 (27.3%)
185
Benjamin Herrenschmidt 3782 (22.9%)
186
Jeremy Kerr 1887 (11.4%)
187
Cyril Bur 1654 (10.0%)
188
Vasant Hegde 959 (5.8%)
189
Mahesh Salgaonkar 886 (5.4%)
190
Neelesh Gupta 473 (2.9%)
191
Samuel Mendoza-Jonas 387 (2.3%)
192
Vipin K Parashar 332 (2.0%)
193
Philippe Bergheaud 171 (1.0%)
194
Shilpasri G Bhat 165 (1.0%)
195
Alistair Popple 151 (0.9%)
196
Joel Stanley 105 (0.6%)
197
Cédric Le Goater 89 (0.5%)
199
Frederic Bonnard 76 (0.5%)
200
Kamalesh Babulal 65 (0.4%)
201
Michael Neuling 46 (0.3%)
202
Daniel Axtens 31 (0.2%)
203
Andrew Donnellan 22 (0.1%)
204
Ananth N Mavinakayanahalli 20 (0.1%)
205
Anton Blanchard 3 (0.0%)
206
Vaidyanathan Srinivasan 2 (0.0%)
207
Hari Bathini 2 (0.0%)
208
Michael Ellerman 1 (0.0%)
209
Andrei Warkentin 1 (0.0%)
212
Developers with the most lines removed
213
Michael Neuling 24 (0.7%)
214
Hari Bathini 1 (0.0%)
216
Developers with the most signoffs (total 253)
217
Stewart Smith 249 (98.4%)
218
Mahesh Salgaonkar 4 (1.6%)
220
Developers with the most reviews (total 24)
221
Vasant Hegde 9 (37.5%)
222
Joel Stanley 3 (12.5%)
224
Kamalesh Babulal 2 (8.3%)
225
Samuel Mendoza-Jonas 2 (8.3%)
226
Alistair Popple 2 (8.3%)
227
Stewart Smith 1 (4.2%)
228
Andrei Warkentin 1 (4.2%)
229
Preeti U Murthy 1 (4.2%)
230
Ananth N Mavinakayanahalli 1 (4.2%)
232
Developers with the most test credits (total 1)
233
Chad Larson 1 (100.0%)
235
Developers who gave the most tested-by credits (total 1)
236
Gavin Shan 1 (100.0%)
238
Developers with the most report credits (total 4)
239
Benjamin Herrenschmidt 2 (50.0%)
240
Chad Larson 1 (25.0%)
241
Andrei Warkentin 1 (25.0%)
243
Developers who gave the most report credits (total 4)
244
Stewart Smith 3 (75.0%)
247
Top changeset contributors by employer
251
Top lines changed by employer
255
Employers with the most signoffs (total 253)
258
Employers with the most hackers (total 27)