{"push_id":897365269,"size":1,"distinct_size":1,"ref":"refs/heads/cm-12.1-caf","head":"def0848e9c05397f2f715cabfb3b8f9ddbf1d2c4","before":"f3ecfca18f03a7de56fc005a30f59f1c76ef50fa","commits":[{"sha":"def0848e9c05397f2f715cabfb3b8f9ddbf1d2c4","author":{"email":"95dea50491c620faede961f7e6190a98a6df4edf@linaro.org","name":"Paul E. McKenney"},"message":"rcu: Make exit_rcu() more precise and consolidate\n\nWhen running preemptible RCU, if a task exits in an RCU read-side\ncritical section having blocked within that same RCU read-side critical\nsection, the task must be removed from the list of tasks blocking a\ngrace period (perhaps the current grace period, perhaps the next grace\nperiod, depending on timing).  The exit() path invokes exit_rcu() to\ndo this cleanup.\n\nHowever, the current implementation of exit_rcu() needlessly does the\ncleanup even if the task did not block within the current RCU read-side\ncritical section, which wastes time and needlessly increases the size\nof the state space.  Fix this by only doing the cleanup if the current\ntask is actually on the list of tasks blocking some grace period.\n\nWhile we are at it, consolidate the two identical exit_rcu() functions\ninto a single function.\n\nCRs-fixed: 657837\nChange-Id: I59504aedb12064fcd6ce03973d441b547749076a\nSigned-off-by: Paul E. McKenney <paul.mckenney@linaro.org>\nSigned-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nTested-by: Linus Torvalds <torvalds@linux-foundation.org>\nGit-commit: 9dd8fb16c36178df2066387d2abd44d8b4dca8c8\nGit-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n[rggupt@codeaurora.org: resolve trivial merge conflicts]\nSigned-off-by: Ramesh Gupta Guntha <rggupt@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/BambooIV/android_kernel_zte_nx503a/commits/def0848e9c05397f2f715cabfb3b8f9ddbf1d2c4"}]}