{"push_id":575696442,"size":17,"distinct_size":17,"ref":"refs/heads/lollipop-rebase","head":"36c4e0bcb3993251d336711bcbb0fa1e0a333100","before":"38cc08f4c98c80cf168f9880a58c70ef647b86ce","commits":[{"sha":"cc268a015563d4fe4da3d03beeff28497d17419e","author":{"email":"bc04d5e582bf5c032c24683f7314bdaab249b0ae@hotmail.com","name":"mrg666"},"message":"random: backport updates from Linux master (3.13-rc4)\nlib, net: make isodigit() public and use it\tAndy Shevchenko\nrandom: add debugging code to detect early use of get_random_bytes()\tTheodore Ts'o\nrandom: initialize the last_time field in struct timer_rand_state\tTheodore Ts'o\nrandom: don't zap entropy count in rand_initialize()\tTheodore Ts'o\nrandom: printk notifications for urandom pool initialization\tTheodore Ts'o\nrandom: make add_timer_randomness() fill the nonblocking pool first\tTheodore Ts'o\nrandom: convert DEBUG_ENT to tracepoints\tTheodore Ts'o\nrandom: push extra entropy to the output pools\tTheodore Ts'o\nrandom: drop trickle mode\tTheodore Ts'o\nrandom: adjust the generator polynomials in the mixing function slightly\tTheodore Ts'o\nrandom: speed up the fast_mix function by a factor of four\tTheodore Ts'o\nrandom: cap the rate which the /dev/urandom pool gets reseeded\tTheodore Ts'o\nrandom: optimize the entropy_store structure\tTheodore Ts'o\nrandom: optimize spinlock use in add_device_randomness()\tTheodore Ts'o\nrandom: fix the tracepoint for get_random_bytes(_arch)\tTheodore Ts'o\nrandom: account for entropy loss due to overwrites\tH. Peter Anvin\nrandom: allow fractional bits to be tracked\tH. Peter Anvin\nrandom: statically compute poolbitshift, poolbytes, poolbits\tH. Peter Anvin\nrandom: mix in architectural randomness earlier in extract_buf()\tTheodore Ts'o\nrandom: allow architectures to optionally define random_get_entropy()\tTheodore Ts'o\nrandom: run random_int_secret_init() run after all late_initcalls\tTheodore Ts'o\nchar: Convert use of typedef ctl_table to struct ctl_table\tJoe Perches\t1\nrandom: fix accounting race condition with lockless irq entropy_count update\tJiri Kosina\ndrivers/char/random.c: fix priming of last_data\tJarod Wilson\nlib/string_helpers: introduce generic string_unescape\tAndy Shevchenko\nrandom: fix locking dependency with the tasklist_lock\tTheodore Ts'o\nlocking: Various static lock initializer fixes\tThomas Gleixner\nrandom: prime last_data value per fips requirements\tJarod Wilson\nrandom: fix debug format strings\tJiri Kosina\nrandom: make it possible to enable debugging without rebuild\tJiri Kosina\nrandom: mix in architectural randomness in extract_buf()\tH. Peter Anvin\nrandom: Add comment to random_initialize()\tTony Luck\nrandom: add tracepoints for easier debugging and verification\tTheodore Ts'o\n\nConflicts:\n\tdrivers/char/random.c\n\nConflicts:\n\tdrivers/char/random.c\n\tinclude/trace/events/random.h","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/cc268a015563d4fe4da3d03beeff28497d17419e"},{"sha":"0a898ff80396bd567f7d0772b78e36bfce31312f","author":{"email":"2097c33723b61c7e24d3d7d27840469989b61b49@MIT.EDU","name":"Greg Price"},"message":"random: fix typos / spelling errors in comments\n\nSigned-off-by: Greg Price <price@mit.edu>\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/0a898ff80396bd567f7d0772b78e36bfce31312f"},{"sha":"a15f64a8f7bd18c7db633c538d29b8d419649785","author":{"email":"2097c33723b61c7e24d3d7d27840469989b61b49@MIT.EDU","name":"Greg Price"},"message":"random: fix comment on proc_do_uuid\n\nThere's only one function here now, as uuid_strategy is long gone.\nAlso make the bit about \"If accesses via ...\" clearer.\n\nSigned-off-by: Greg Price <price@mit.edu>\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/a15f64a8f7bd18c7db633c538d29b8d419649785"},{"sha":"2e0ba9f7cfd09ba14c94faf8eacc3514ca1dd833","author":{"email":"2097c33723b61c7e24d3d7d27840469989b61b49@MIT.EDU","name":"Greg Price"},"message":"random: fix description of get_random_bytes\n\nAfter this remark was written, commit d2e7c96af added a use of\narch_get_random_long() inside the get_random_bytes codepath.\nThe main point stands, but it needs to be reworded.\n\nSigned-off-by: Greg Price <price@mit.edu>\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/2e0ba9f7cfd09ba14c94faf8eacc3514ca1dd833"},{"sha":"14aed4c9d50dad023026e03bd30d2a614c29fd9c","author":{"email":"2097c33723b61c7e24d3d7d27840469989b61b49@MIT.EDU","name":"Greg Price"},"message":"random: simplify loop in random_read\n\nThe loop condition never changes until just before a break, so we\nmight as well write it as a constant.  Also since a996996dd75a\n(\"random: drop weird m_time/a_time manipulation\") we don't do anything\nafter the loop finishes, so the 'break's might as well return\ndirectly.  Some other simplifications.\n\nThere should be no change in behavior introduced by this commit.\n\nSigned-off-by: Greg Price <price@mit.edu>\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/14aed4c9d50dad023026e03bd30d2a614c29fd9c"},{"sha":"1b33a1edd8d31e64590d0274ef9f7302f8bd62e4","author":{"email":"2097c33723b61c7e24d3d7d27840469989b61b49@MIT.EDU","name":"Greg Price"},"message":"random: fix comment on \"account\"\n\nThis comment didn't quite keep up as extract_entropy() was split into\nfour functions.  Put each bit by the function it describes.\n\nSigned-off-by: Greg Price <price@mit.edu>\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/1b33a1edd8d31e64590d0274ef9f7302f8bd62e4"},{"sha":"2011f674503dc7c794030ad15efe63b2654f0c66","author":{"email":"2097c33723b61c7e24d3d7d27840469989b61b49@MIT.EDU","name":"Greg Price"},"message":"random: simplify accounting logic\n\nThis logic is exactly equivalent to the old logic, but it should\nbe easier to see what it's doing.\n\nThe equivalence depends on one fact from outside this function:\nwhen 'r->limit' is false, 'reserved' is zero.  (Well, two facts;\nthe other is that 'reserved' is never negative.)\n\nCc: Jiri Kosina <jkosina@suse.cz>\nCc: \"H. Peter Anvin\" <hpa@zytor.com>\nSigned-off-by: Greg Price <price@mit.edu>\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/2011f674503dc7c794030ad15efe63b2654f0c66"},{"sha":"32d2ea37b8f3bc6ed3e70efe1d59b8b717bfe098","author":{"email":"2097c33723b61c7e24d3d7d27840469989b61b49@MIT.EDU","name":"Greg Price"},"message":"random: entropy_bytes is actually bits\n\nThe variable 'entropy_bytes' is set from an expression that actually\ncounts bits.  Fortunately it's also only compared to values that also\ncount bits.  Rename it accordingly.\n\nSigned-off-by: Greg Price <price@mit.edu>\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/32d2ea37b8f3bc6ed3e70efe1d59b8b717bfe098"},{"sha":"14924bc1ff1c731ad95675ed7f74b63d5373589d","author":{"email":"2097c33723b61c7e24d3d7d27840469989b61b49@MIT.EDU","name":"Greg Price"},"message":"random: forget lock in lockless accounting\n\nThe only mutable data accessed here is ->entropy_count, but since\n10b3a32d2 (\"random: fix accounting race condition\") we use cmpxchg to\nprotect our accesses to ->entropy_count here.  Drop the use of the\nlock.\n\nCc: Jiri Kosina <jkosina@suse.cz>\nSigned-off-by: Greg Price <price@mit.edu>\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/14924bc1ff1c731ad95675ed7f74b63d5373589d"},{"sha":"627bf98a7f80daebc03b111c2ca41dee54d07e03","author":{"email":"2097c33723b61c7e24d3d7d27840469989b61b49@MIT.EDU","name":"Greg Price"},"message":"random: tighten bound on random_read_wakeup_thresh\n\nWe use this value in a few places other than its literal meaning,\nin particular in _xfer_secondary_pool() as a minimum number of\nbits to pull from the input pool at a time into either output\npool.  It doesn't make sense to pull more bits than the whole size\nof an output pool.\n\nWe could and possibly should separate the quantities \"how much\nshould the input pool have to have to wake up /dev/random readers\"\nand \"how much should we transfer from the input to an output pool\nat a time\", but nobody is likely to be sad they can't set the first\nquantity to more than 1024 bits, so for now just limit them both.\n\nSigned-off-by: Greg Price <price@mit.edu>\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/627bf98a7f80daebc03b111c2ca41dee54d07e03"},{"sha":"ffde8e3c6bba1b2588bacdf237f6ce5ed9c48616","author":{"email":"2097c33723b61c7e24d3d7d27840469989b61b49@MIT.EDU","name":"Greg Price"},"message":"random: simplify accounting code\n\nWith this we handle \"reserved\" in just one place.  As a bonus the\ncode becomes less nested, and the \"wakeup_write\" flag variable\nbecomes unnecessary.  The variable \"flags\" was already unused.\n\nThis code behaves identically to the previous version except in\ntwo pathological cases that don't occur.  If the argument \"nbytes\"\nis already less than \"min\", then we didn't previously enforce\n\"min\".  If r->limit is false while \"reserved\" is nonzero, then we\npreviously applied \"reserved\" in checking whether we had enough\nbits, even though we don't apply it to actually limit how many we\ntake.  The callers of account() never exercise either of these cases.\n\nBefore the previous commit, it was possible for \"nbytes\" to be less\nthan \"min\" if userspace chose a pathological configuration, but no\nlonger.\n\nCc: Jiri Kosina <jkosina@suse.cz>\nCc: \"H. Peter Anvin\" <hpa@zytor.com>\nSigned-off-by: Greg Price <price@mit.edu>\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/ffde8e3c6bba1b2588bacdf237f6ce5ed9c48616"},{"sha":"a6085e75237dc80f360f77e873c13b1a5b8d2dce","author":{"email":"2097c33723b61c7e24d3d7d27840469989b61b49@MIT.EDU","name":"Greg Price"},"message":"random: clarify bits/bytes in wakeup thresholds\n\nThese are a recurring cause of confusion, so rename them to\nhopefully be clearer.\n\nSigned-off-by: Greg Price <price@mit.edu>\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/a6085e75237dc80f360f77e873c13b1a5b8d2dce"},{"sha":"8d644de8cf2a7e6f4c5d874aa4cffb2a782556e8","author":{"email":"4ed386e0495d3e109932df055831d9ec2f824927@mit.edu","name":"Theodore Ts'o"},"message":"random: use the architectural HWRNG for the SHA's IV in extract_buf()\n\nTo help assuage the fears of those who think the NSA can introduce a\nmassive hack into the instruction decode and out of order execution\nengine in the CPU without hundreds of Intel engineers knowing about\nit (only one of which woud need to have the conscience and courage of\nEdward Snowden to spill the beans to the public), use the HWRNG to\ninitialize the SHA starting value, instead of xor'ing it in\nafterwards.\n\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/8d644de8cf2a7e6f4c5d874aa4cffb2a782556e8"},{"sha":"bb2e31d382ed69995a55d240037b0befdbd4585c","author":{"email":"4ed386e0495d3e109932df055831d9ec2f824927@mit.edu","name":"Theodore Ts'o"},"message":"random: fix BUG_ON caused by accounting simplification\n\nCommit ee1de406ba6eb1 (\"random: simplify accounting logic\") simplified\nthings too much, in that it allows the following to trigger an\noverflow that results in a BUG_ON crash:\n\ndd if=/dev/urandom of=/dev/zero bs=67108707 count=1\n\nThanks to Peter Zihlstra for discovering the crash, and Hannes\nFrederic for analyizing the root cause.\n\nSigned-off-by: \"Theodore Ts'o\" <tytso@mit.edu>\nReported-by: Peter Zijlstra <peterz@infradead.org>\nReported-by: Hannes Frederic Sowa <hannes@stressinduktion.org>\nCc: Greg Price <price@mit.edu>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/bb2e31d382ed69995a55d240037b0befdbd4585c"},{"sha":"328b4f0f03e36a0d78daac1f97ec738dc6c82654","author":{"email":"16a9a54ddf4259952e3c118c763138e83693d7fd@perches.com","name":"Joe Perches"},"message":"random: convert use of typedef ctl_table to struct ctl_table\n\nThis typedef is unnecessary and should just be removed.\n\nSigned-off-by: Joe Perches <joe@perches.com>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/328b4f0f03e36a0d78daac1f97ec738dc6c82654"},{"sha":"ff126331992b98f06cb61429680da420bb47723c","author":{"email":"4ed386e0495d3e109932df055831d9ec2f824927@mit.edu","name":"Theodore Ts'o"},"message":"random: fix nasty entropy accounting bug\n\nCommit 0fb7a01af5b0 \"random: simplify accounting code\", introduced in\nv3.15, has a very nasty accounting problem when the entropy pool has\nhas fewer bytes of entropy than the number of requested reserved\nbytes.  In that case, \"have_bytes - reserved\" goes negative, and since\nsize_t is unsigned, the expression:\n\n       ibytes = min_t(size_t, ibytes, have_bytes - reserved);\n\n... does not do the right thing.  This is rather bad, because it\ndefeats the catastrophic reseeding feature in the\nxfer_secondary_pool() path.\n\nIt also can cause the \"BUG: spinlock trylock failure on UP\" for some\nkernel configurations when prandom_reseed() calls get_random_bytes()\nin the early init, since when the entropy count gets corrupted,\ncredit_entropy_bits() erroneously believes that the nonblocking pool\nhas been fully initialized (when in fact it is not), and so it calls\nprandom_reseed(true) recursively leading to the spinlock BUG.\n\nThe logic is *not* the same it was originally, but in the cases where\nit matters, the behavior is the same, and the resulting code is\nhopefully easier to read and understand.\n\nFixes: 0fb7a01af5b0 \"random: simplify accounting code\"\nSigned-off-by: Theodore Ts'o <tytso@mit.edu>\nCc: Greg Price <price@mit.edu>\nCc: stable@vger.kernel.org  #v3.15","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/ff126331992b98f06cb61429680da420bb47723c"},{"sha":"36c4e0bcb3993251d336711bcbb0fa1e0a333100","author":{"email":"331be22c6b63ca3e0a03d408c2d906b1b02cd5f2@stressinduktion.org","name":"Hannes Frederic Sowa"},"message":"random: check for increase of entropy_count because of signed conversion\n\nThe expression entropy_count -= ibytes << (ENTROPY_SHIFT + 3) could\nactually increase entropy_count if during assignment of the unsigned\nexpression on the RHS (mind the -=) we reduce the value modulo\n2^width(int) and assign it to entropy_count. Trinity found this.\n\n[ Commit modified by tytso to add an additional safety check for a\n  negative entropy_count -- which should never happen, and to also add\n  an additional paranoia check to prevent overly large count values to\n  be passed into urandom_read().  ]\n\nReported-by: Dave Jones <davej@redhat.com>\nSigned-off-by: Hannes Frederic Sowa <hannes@stressinduktion.org>\nSigned-off-by: Theodore Ts'o <tytso@mit.edu>\nCc: stable@vger.kernel.org","distinct":true,"url":"https://api.github.com/repos/victormlourenco/red_kernel_lge_v500/commits/36c4e0bcb3993251d336711bcbb0fa1e0a333100"}]}