gcc-plugins: Add latent_entropy plugin
This adds a new gcc plugin named "latent_entropy". It is designed to extract as much possible uncertainty from a running system at boot time as possible, hoping to capitalize on any possible variation in CPU operation (due to runtime data differences, hardware differences, SMP ordering, thermal timing variation, cache behavior, etc). At the very least, this plugin is a much more comprehensive example for how to manipulate kernel code using the gcc plugin internals. The need for very-early boot entropy tends to be very architecture or system design specific, so this plugin is more suited for those sorts of special cases. The existing kernel RNG already attempts to extract entropy from reliable runtime variation, but this plugin takes the idea to a logical extreme by permuting a global variable based on any variation in code execution (e.g. a different value (and permutation function) is used to permute the global based on loop count, case statement, if/then/else bra...
parent
c8d2bc9b
-
mentioned in commit b4c9b6af
-
mentioned in commit c894d2f9
-
mentioned in commit 7e945394
-
mentioned in commit cc21ae93
-
mentioned in commit bd17422b
-
mentioned in commit 7a9e1327
-
mentioned in commit 83042646
-
mentioned in commit 38c5d24d
-
mentioned in commit 119e75d8
-
mentioned in commit 5456f0d5
-
mentioned in commit dc399695
Please register or sign in to comment