Maintainer: * Daniel Borkmann * Tobias Klauser Major contributors (> 30 commits): * Daniel Borkmann * Emmanuel Roullit * Markus Amend * Tobias Klauser * Christoph Jaeger * Herbert Haas * Minor contributors (<= 30 commits): * Stephen Wadeley * Hideo Hattori * Peter Stuge * Scott Moeller * Jesper Dangaard Brouer * Jaroslav Škarvada * Dennis Gilmore * Dan Horák * Doug Burks * Kartik Mistry * Ulrich Weber * Teguh * Markus Kötter * Jim Binder * Ronald W. Henderson * Stefan Seering * Jon Schipp * Sibir Chakraborty Notes: The order of authors with > 30 commits listed here is sorted by contributions from high to low through ``git log --no-merges $@ | grep Author: | \ cut -d: -f2 | cut -d\< -f1 | sort | uniq -c | sort -n -r''. The list of minor contributors is currently unsorted and contains people who have contributed code ``in some way'' (e.g. on the upstream or maintenance repositories), either through Git or email. Note that we have taken over the maintenance and further development of Herbert Haas' mausezahn [ˈmauzəˌtsa:n] utility after he passed away in 2011. There were no Git commit statistics available from the import of his project. The project is currently in a staging area, but will be fully integrated soon. (*) Want to join the core team? Submit enough great patches over a long time, implement what's on the TODO file and show an ongoing, active interest in supporting netsniff-ng. What's in it for you? If you ever come to Switzerland, you get a free beer on Daniel and you can meet some great people involved in this project. ;) d2f02c3a46f'>commitdiff
diff options
context:
space:
mode:
authorAnton Blanchard <anton@samba.org>2016-04-15 12:06:13 +1000
committerMichael Ellerman <mpe@ellerman.id.au>2016-04-18 20:08:38 +1000
commit6997e57d693b07289694239e52a10d2f02c3a46f (patch)
tree178b060e6aa7271a9bb7d8fde08d5bbf25d1e1b0 /Documentation/kobject.txt
parent71528d8bd7a8aa920cd69d4223c6c87d5849257d (diff)
powerpc: scan_features() updates incorrect bits for REAL_LE
The REAL_LE feature entry in the ibm_pa_feature struct is missing an MMU feature value, meaning all the remaining elements initialise the wrong values. This means instead of checking for byte 5, bit 0, we check for byte 0, bit 0, and then we incorrectly set the CPU feature bit as well as MMU feature bit 1 and CPU user feature bits 0 and 2 (5). Checking byte 0 bit 0 (IBM numbering), means we're looking at the "Memory Management Unit (MMU)" feature - ie. does the CPU have an MMU. In practice that bit is set on all platforms which have the property. This means we set CPU_FTR_REAL_LE always. In practice that seems not to matter because all the modern cpus which have this property also implement REAL_LE, and we've never needed to disable it. We're also incorrectly setting MMU feature bit 1, which is: #define MMU_FTR_TYPE_8xx 0x00000002 Luckily the only place that looks for MMU_FTR_TYPE_8xx is in Book3E code, which can't run on the same cpus as scan_features(). So this also doesn't matter in practice. Finally in the CPU user feature mask, we're setting bits 0 and 2. Bit 2 is not currently used, and bit 0 is: #define PPC_FEATURE_PPC_LE 0x00000001 Which says the CPU supports the old style "PPC Little Endian" mode. Again this should be harmless in practice as no 64-bit CPUs implement that mode. Fix the code by adding the missing initialisation of the MMU feature. Also add a comment marking CPU user feature bit 2 (0x4) as reserved. It would be unsafe to start using it as old kernels incorrectly set it. Fixes: 44ae3ab3358e ("powerpc: Free up some CPU feature bits by moving out MMU-related features") Signed-off-by: Anton Blanchard <anton@samba.org> Cc: stable@vger.kernel.org [mpe: Flesh out changelog, add comment reserving 0x4] Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'Documentation/kobject.txt')