{"push_id":1210405933,"size":83,"distinct_size":83,"ref":"refs/heads/master","head":"6ebec1ae6d2abdc98756e2d5ccedf4375433c061","before":"548b72eb49555c2a40fcdaba6a2708c486d6b223","commits":[{"sha":"96af7e642cecd8402897002bc7fcb6098bef3cf5","author":{"name":"XileForce","email":"c9975d3f2c2fa661c903970ddaed04b4daac0107@gmail.com"},"message":"Network Speed Tweak\nThanks To @ch33kybutt For This!","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/96af7e642cecd8402897002bc7fcb6098bef3cf5"},{"sha":"95dc322591b57cd62aeabe60f3273728af20d910","author":{"name":"XileForce","email":"c9975d3f2c2fa661c903970ddaed04b4daac0107@gmail.com"},"message":"Default to 1536 ReadAhead. It Is The Optimal Value","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/95dc322591b57cd62aeabe60f3273728af20d910"},{"sha":"f036b5514c9eee90da69eab0be82dc72fd539809","author":{"name":"XileForce","email":"c9975d3f2c2fa661c903970ddaed04b4daac0107@gmail.com"},"message":"increase bark/pet time","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/f036b5514c9eee90da69eab0be82dc72fd539809"},{"sha":"ccabc71dfc234a1870667e2e8959760f11ca2bb3","author":{"name":"AnguisCaptor","email":"a6fc5e82ebad24044ad81a0a1056435b9123e608@gmail.com"},"message":"Make the Common Routines in Wireless menuconfig visible again","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/ccabc71dfc234a1870667e2e8959760f11ca2bb3"},{"sha":"d53729608c1721bb2ab40dc71f6808848d62ed9d","author":{"name":"AnguisCaptor","email":"a6fc5e82ebad24044ad81a0a1056435b9123e608@gmail.com"},"message":"mac80211 packet injection patch by BinkyBear","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/d53729608c1721bb2ab40dc71f6808848d62ed9d"},{"sha":"37b9f8423990451aee7f5bcb3908674301a71641","author":{"name":"AnguisCaptor","email":"a6fc5e82ebad24044ad81a0a1056435b9123e608@gmail.com"},"message":"keyboard hid patch by BinkyBear","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/37b9f8423990451aee7f5bcb3908674301a71641"},{"sha":"9c45235ed63140349360c5b6dff71caa78914343","author":{"name":"gustavo","email":"c7207af6318086dc63721ec53590c76d1f21c661@gmail.com"},"message":"Optimize kernel cfbfillrect function\n\nThis is a  patch to speed up the kernel\ncfbfillrect function used for clearing the screen or filling an area\nwith a solid color.\n\nThe previous implementation was doing reads from the uncached framebuffer,\nin certain circumstances, even for simple fills, which for performance\nreasons, on most platforms, is ill-advised unless strictly necessary to\nconform to the raster operation. In these circumstances, doing 64-bit\naccess on 64-bit systems does not serve much purpose except for probing\nfor corner-case bugs and race conditions in the hardware's framebuffer\nbus implementation. On all systems, for 16bpp, it is better to take\nadvantage of write-combining features of the framebuffer and write a\nhalf-word if required for the left and right edges.\n\nAdditionally, on most platforms, integer divides are relatively slow so are\nbest avoided, especially in inner loops.\n\nThis patch implements optimizations for 16bpp and 32bpp that avoid\nframebuffer read operations during cfbfillrect if the raster-operation\nis GXcopy. This applies to both 32-bit (BITS_PER_LONG) and 64-bit\nsystems (BITS_PER_LONG == 64). Although cfbfillrect is not usually a\nbottleneck for the console text framebuffer (because regions filled\nusually are aligned to a multiple of 2 or 4 x-coordinate and reads\nare avoided), in some use-cases this patch could deliver a significant\nspeed-up.\n\nSigned-off-by: Harm Hanemaaijer <fgenfb@yahoo.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/9c45235ed63140349360c5b6dff71caa78914343"},{"sha":"8d9917afd0a565a4282ca30bb0f07c547da386fd","author":{"name":"gustavo","email":"c7207af6318086dc63721ec53590c76d1f21c661@gmail.com"},"message":"Speed up console framebuffer imageblit function\n\nEspecially on platforms with a slower CPU but a relatively high\nframebuffer fill bandwidth, like current ARM devices, the existing\nconsole monochrome imageblit function used to draw console text is\nsuboptimal for common pixel depths such as 16bpp and 32bpp. The existing\ncode is quite general and can deal with several pixel depths. By creating\nspecial case functions for 16bpp and 32bpp, by far the most common pixel\nformats used on modern systems, a significant speed-up is attained\nwhich can be readily felt on ARM-based devices like the Raspberry Pi\nand the Allwinner platform, but should help any platform using the\nfb layer.\n\nThe special case functions allow constant folding, eliminating a number\nof instructions including divide operations, and allow the use of an\nunrolled loop, eliminating instructions with a variable shift size,\nreducing source memory access instructions, and eliminating excessive\nbranching. These unrolled loops also allow much better code optimization\nby the C compiler. The code that selects which optimized variant is used\nis also simplified, eliminating integer divide instructions.\n\nThe speed-up, measured by timing 'cat file.txt' in the console, varies\nbetween 40% and 70%, when testing on the Raspberry Pi and Allwinner\nARM-based platforms, depending on font size and the pixel depth, with\nthe greater benefit for 32bpp.\n\nSigned-off-by: Harm Hanemaaijer <fgenfb@yahoo.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/8d9917afd0a565a4282ca30bb0f07c547da386fd"},{"sha":"f1f0621fbd3f696289950e9a95615d5328f218e8","author":{"name":"Scott Mertz","email":"ddf64ea5989e94a2f54e4e755560f084d9f8c1bd@cyngn.com"},"message":"rcu: Squashed commit of the following:\n\ncommit 9e4340e9609d91e84bb1bb7a419fd641538c88e7\nAuthor: Pranith Kumar <bobby.prani@gmail.com>\nDate:   Tue Aug 12 13:07:47 2014 -0400\n\n    rcu: Use rcu_gp_kthread_wake() to wake up grace period kthreads\n\n    The rcu_gp_kthread_wake() function checks for three conditions before\n    waking up grace period kthreads:\n\n    *  Is the thread we are trying to wake up the current thread?\n    *  Are the gp_flags zero? (all threads wait on non-zero gp_flags condition)\n    *  Is there no thread created for this flavour, hence nothing to wake up?\n\n    If any one of these condition is true, we do not call wake_up().\n    It was found that there are quite a few avoidable wake ups both during\n    idle time and under stress induced by rcutorture.\n\n    Idle:\n\n    Total:66000, unnecessary:66000, case1:61827, case2:66000, case3:0\n    Total:68000, unnecessary:68000, case1:63696, case2:68000, case3:0\n\n    rcutorture:\n\n    Total:254000, unnecessary:254000, case1:199913, case2:254000, case3:0\n    Total:256000, unnecessary:256000, case1:201784, case2:256000, case3:0\n\n    Here case{1-3} are the cases listed above. We can avoid these wake\n    ups by using rcu_gp_kthread_wake() to conditionally wake up the grace\n    period kthreads.\n\n    There is a comment about an implied barrier supplied by the wake_up()\n    logic.  This barrier is necessary for the awakened thread to see the\n    updated ->gp_flags.  This flag is always being updated with the root node\n    lock held. Also, the awakened thread tries to acquire the root node lock\n    before reading ->gp_flags because of which there is proper ordering.\n\n    Hence this commit tries to avoid calling wake_up() whenever we can by\n    using rcu_gp_kthread_wake() function.\n\n    Change-Id: Icc57a89e87e9cc5194b53c327722067155a619c6\n    Signed-off-by: Pranith Kumar <bobby.prani@gmail.com>\n    CC: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 2aa792e6faf1a00f5accf1f69e87e11a390ba2cd\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\ncommit a983c74e0ebcab7e90b99cd4cf465a9935fd2c0e\nAuthor: Pranith Kumar <bobby.prani@gmail.com>\nDate:   Wed Jun 11 10:32:47 2014 -0700\n\n    rcu: Check both root and current rcu_node when setting up future grace period\n\n    The rcu_start_future_gp() function checks the current rcu_node's ->gpnum\n    and ->completed twice, once without ACCESS_ONCE() and once with it.\n    Which is pointless because we hold that rcu_node's ->lock at that point.\n    The intent was to check the current rcu_node structure and the root\n    rcu_node structure, the latter locklessly with ACCESS_ONCE().  This\n    commit therefore makes that change.\n\n    The reason that it is safe to locklessly check the root rcu_nodes's\n    ->gpnum and ->completed fields is that we hold the current rcu_node's\n    ->lock, which constrains the root rcu_node's ability to change its\n    ->gpnum and ->completed fields.  Of course, if there is a single rcu_node\n    structure, then rnp_root==rnp, and holding the lock prevents all changes.\n    If there is more than one rcu_node structure, then the code updates the\n    fields in the following order:\n\n    1.\tIncrement rnp_root->gpnum to start new grace period.\n    2.\tIncrement rnp->gpnum to initialize the current rcu_node,\n    \tcontinuing initialization for the new grace period.\n    3.\tIncrement rnp_root->completed to end the current grace period.\n    4.\tIncrement rnp->completed to continue cleaning up after the\n    \told grace period.\n\n    So there are four possible combinations of relative values of these\n    four fields:\n\n    N   N   N   N:  RCU idle, new grace period must be initiated.\n    \t\tAlthough rnp_root->gpnum might be incremented immediately\n    \t\tafter we check, that will just result in unnecessary work.\n    \t\tThe grace period already started, and we try to start it.\n\n    N+1 N   N   N:  RCU grace period just started.  No further change is\n    \t\tpossible because we hold rnp->lock, so the checks of\n    \t\trnp_root->gpnum and rnp_root->completed are stable.\n    \t\tWe know that our request for a future grace period will\n    \t\tbe seen during grace-period cleanup.\n\n    N+1 N   N+1 N:  RCU grace period is ongoing.  Because rnp->gpnum is\n    \t\tdifferent than rnp->completed, we won't even look at\n    \t\trnp_root->gpnum and rnp_root->completed, so the possible\n    \t\tconcurrent change to rnp_root->completed does not matter.\n    \t\tWe know that our request for a future grace period will\n    \t\tbe seen during grace-period cleanup, which cannot pass\n    \t\tthis rcu_node because we hold its ->lock.\n\n    N+1 N+1 N+1 N:  RCU grace period has ended, but not yet been cleaned up.\n    \t\tBecause rnp->gpnum is different than rnp->completed, we\n    \t\twon't look at rnp_root->gpnum and rnp_root->completed, so\n    \t\tthe possible concurrent change to rnp_root->completed does\n    \t\tnot matter.  We know that our request for a future grace\n    \t\tperiod will be seen during grace-period cleanup, which\n    \t\tcannot pass this rcu_node because we hold its ->lock.\n\n    Therefore, despite initial appearances, the lockless check is safe.\n\n    Signed-off-by: Pranith Kumar <bobby.prani@gmail.com>\n    [ paulmck: Update comment to say why the lockless check is safe. ]\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 48bd8e9b82a750b983823f391c67e70553757afa\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\n    Change-Id: I11eefb0adcc01c10d759066d88cf1275404fa767\n\ncommit d3dc4d09add835d3332060f5b243d888f0edb3eb\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Fri Jun 19 14:21:06 2015 +0530\n\n    rcu: Make callers awaken grace-period kthread\n\n    The rcu_start_gp_advanced() function currently uses irq_work_queue()\n    to defer wakeups of the RCU grace-period kthread.  This deferring\n    is necessary to avoid RCU-scheduler deadlocks involving the rcu_node\n    structure's lock, meaning that RCU cannot call any of the scheduler's\n    wake-up functions while holding one of these locks.\n\n    Unfortunately, the second and subsequent calls to irq_work_queue() are\n    ignored, and the first call will be ignored (aside from queuing the work\n    item) if the scheduler-clock tick is turned off.  This is OK for many\n    uses, especially those where irq_work_queue() is called from an interrupt\n    or softirq handler, because in those cases the scheduler-clock-tick state\n    will be re-evaluated, which will turn the scheduler-clock tick back on.\n    On the next tick, any deferred work will then be processed.\n\n    However, this strategy does not always work for RCU, which can be invoked\n    at process level from idle CPUs.  In this case, the tick might never\n    be turned back on, indefinitely defering a grace-period start request.\n    Note that the RCU CPU stall detector cannot see this condition, because\n    there is no RCU grace period in progress.  Therefore, we can (and do!)\n    see long tens-of-seconds stalls in grace-period handling.  In theory,\n    we could see a full grace-period hang, but rcutorture testing to date\n    has seen only the tens-of-seconds stalls.  Event tracing demonstrates\n    that irq_work_queue() is being called repeatedly to no effect during\n    these stalls: The \"newreq\" event appears repeatedly from a task that is\n    not one of the grace-period kthreads.\n\n    In theory, irq_work_queue() might be fixed to avoid this sort of issue,\n    but RCU's requirements are unusual and it is quite straightforward to pass\n    wake-up responsibility up through RCU's call chain, so that the wakeup\n    happens when the offending locks are released.\n\n    This commit therefore makes this change.  The rcu_start_gp_advanced(),\n    rcu_start_future_gp(), rcu_accelerate_cbs(), rcu_advance_cbs(),\n    __note_gp_changes(), and rcu_start_gp() functions now return a boolean\n    which indicates when a wake-up is needed.  A new rcu_gp_kthread_wake()\n    does the wakeup when it is necessary and safe to do so: No self-wakes,\n    no wake-ups if the ->gp_flags field indicates there is no need (as in\n    someone else did the wake-up before we got around to it), and no wake-ups\n    before the grace-period kthread has been created.\n\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Cc: Peter Zijlstra <peterz@infradead.org>\n    Cc: Steven Rostedt <rostedt@goodmis.org>\n    Cc: Frederic Weisbecker <fweisbec@gmail.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 48a7639ce80cf279834d0d44865e49ecd714f37d\n    [kishank@codeaurora.org resolve trivial conflicts]\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\n    Change-Id: I4d379c368335ce68053d8a57b3d57a52ce9dccef\n\ncommit ebab4335b5d731bca6456c56bb3c08b86cbb7126\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Mon Jun 22 01:07:29 2015 +0530\n\n    rcu: Protect ->gp_flags accesses with ACCESS_ONCE()\n\n    A number of ->gp_flags accesses don't have ACCESS_ONCE(), but all of\n    the can race against other loads or stores.  This commit therefore\n    applies ACCESS_ONCE() to the unprotected ->gp_flags accesses.\n\n    Reported-by: Alexey Roytman <alexey.roytman@oracle.com>\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 91dc95427a0d30ac2c58d6e943c7f40a3f25d908\n    [kishank@codeaurora.org resolve trivial conflicts]\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\n    Change-Id: Ie59f4c3300b4ef64d5a91d04be909eac4deda22a\n\ncommit 63362a008f82955ee6f4ac9b9fa2d79416fda048\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Fri Jun 19 13:07:08 2015 +0530\n\n    nohz_full: Force RCU's grace-period kthreads onto timekeeping CPU\n\n    Because RCU's quiescent-state-forcing mechanism is used to drive the\n    full-system-idle state machine, and because this mechanism is executed\n    by RCU's grace-period kthreads, this commit forces these kthreads to\n    run on the timekeeping CPU (tick_do_timer_cpu).  To do otherwise would\n    mean that the RCU grace-period kthreads would force the system into\n    non-idle state every time they drove the state machine, which would\n    be just a bit on the futile side.\n\n    Change-Id: I1147f88a2383ddfd80e50d2525a67dacc14bcd75\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Cc: Frederic Weisbecker <fweisbec@gmail.com>\n    Cc: Steven Rostedt <rostedt@goodmis.org>\n    Cc: Lai Jiangshan <laijs@cn.fujitsu.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: eb75767be0e514f97bf1b5cec763696cfc7f7e2a\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\ncommit 8a748b0f6633613c8ba8b1e3d51b98c6bbda170d\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Sun Aug 25 21:20:47 2013 -0700\n\n    rcu: Throttle rcu_try_advance_all_cbs() execution\n\n    The rcu_try_advance_all_cbs() function is invoked on each attempted\n    entry to and every exit from idle.  If this function determines that\n    there are callbacks ready to invoke, the caller will invoke the RCU\n    core, which in turn will result in a pair of context switches.  If a\n    CPU enters and exits idle extremely frequently, this can result in\n    an excessive number of context switches and high CPU overhead.\n\n    This commit therefore causes rcu_try_advance_all_cbs() to throttle\n    itself, refusing to do work more than once per jiffy.\n\n    Reported-by: Tibor Billes <tbilles@gmx.com>\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Tested-by: Tibor Billes <tbilles@gmx.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: c229828ca6bc62d6c654f64b1d1b8a9ebd8a56f3\n    [kishank@codeaurora.org resolve trivial conflicts]\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\n    Change-Id: Ic1329893a55aa1bcae64be445129e87c0a7d4034\n\ncommit 8b544a507954acd75e8cd22faf5fa6cdfb1e727f\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Mon Mar 10 10:55:52 2014 -0700\n\n    rcu: Update cpu_needs_another_gp() for futures from non-NOCB CPUs\n\n    In the old days, the only source of requests for future grace periods\n    was NOCB CPUs.  This has changed: CPUs routinely post requests for\n    future grace periods in order to promote power efficiency and reduce\n    OS jitter with minimal impact on grace-period latency.  This commit\n    therefore updates cpu_needs_another_gp() to invoke rcu_future_needs_gp()\n    instead of rcu_nocb_needs_gp().  The latter is no longer used, so is\n    now removed.  This commit also adds tracing for the irq_work_queue()\n    wakeup case.\n\n    Change-Id: Idc40b5cc28b5abf9cd90cf7e65d7a6e59224d75d\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 365187fbc04fd55766bf6a94e37e558505bf480a\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\ncommit 6a27efff87ebc8e68c53e3840bf88303341c2663\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Thu Aug 8 22:26:23 2013 -0700\n\n    rcu: Flag lockless access to ->gp_flags with ACCESS_ONCE()\n\n    This commit applies ACCESS_ONCE() to an outside-of-lock access to\n    ->gp_flags.  Although it is hard to imagine any sane compiler messing\n    this particular case up, the documentation benefits are substantial.\n    Plus the definition of \"sane compiler\" grows ever looser.\n\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 591c6d1710cd73824057d08eda302cf2a7cfd18a\n    [kishank@codeaurora.org resolve trivial conflicts]\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\n    Change-Id: I78b5f6e908a65f71e49959222c8189c948a436d3\n\ncommit a4f87ee7c6143523cffe5a222f43c5062c5d8892\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Sun Jun 21 23:56:16 2015 +0530\n\n    rcu: Prevent spurious-wakeup DoS attack on rcu_gp_kthread()\n\n    Spurious wakeups in the force-quiescent-state loop in rcu_gp_kthread()\n    cause the timeout to be recalculated, which would prevent rcu_gp_fqs()\n    from ever being called.  This would in turn would prevent the grace period\n    from ever ending for as long as there was at least one CPU in an extended\n    quiescent state that had not yet passed through a quiescent state.\n\n    This commit therefore avoids recalculating the timeout unless the\n    previous pass's call to wait_event_interruptible_timeout() actually\n    did time out, thus preventing the above scenario.\n\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 88d6df612cc3c99f56cc18461fcc531c3a145544\n    [kishank@codeaurora.org resolve trivial conflicts]\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\n    Change-Id: If6b8c1f85785f7c5490a0646fb89dc906b64b8a4\n\ncommit 6f0d006d19e7eefb39491e3293467dcbf3ade561\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Sun Jun 21 23:51:21 2015 +0530\n\n    rcu: Avoid redundant grace-period kthread wakeups\n\n    When setting up an in-the-future \"advanced\" grace period, the code needs\n    to wake up the relevant grace-period kthread, which it currently does\n    unconditionally.  However, this results in needless wakeups in the case\n    where the advanced grace period is being set up by the grace-period\n    kthread itself, which is a non-uncommon situation.  This commit therefore\n    checks to see if the running thread is the grace-period kthread, and\n    avoids doing the irq_work_queue()-mediated wakeup in that case.\n\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 1eafd31c640d6799c63136246a59d608bed93c74\n    [kishank@codeaurora.org resolve trivial conflicts]\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\n    Change-Id: I9e451ddd41f9463b9afa9456e3290c5d4d1552f1\n\ncommit fe54134a6818bbe4612cbb514cb5ffe012798755\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Tue Mar 19 12:38:24 2013 -0700\n\n    rcu: Move redundant call to note_gp_changes() into called function\n\n    The __rcu_process_callbacks() invokes note_gp_changes() immediately\n    before invoking rcu_check_quiescent_state(), which conditionally\n    invokes that same function.  This commit therefore eliminates the\n    call to note_gp_changes() in __rcu_process_callbacks() in favor of\n    making unconditional to call from rcu_check_quiescent_state() to\n    note_gp_changes().\n\n    Change-Id: I92a0f0d95e92a1b1597a9110bbd8d9250fc57e40\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 05eb552bf5ed9e7277bdc9c273ed2f4e9b7dc3e5\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\ncommit ed49e5a55dd8795b91e25727de1795fa4b402d3d\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Tue Mar 19 12:27:50 2013 -0700\n\n    rcu: Inline trivial wrapper function rcu_start_gp_per_cpu()\n\n    Given the changes that introduce note_gp_change(), rcu_start_gp_per_cpu()\n    is now a trivial wrapper function with only one caller.  This commit\n    therefore inlines it into its sole call site.\n\n    Change-Id: Ife35fc94b8391f4501848fce1bfdab250bf7f5a6\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: ce3d9c03d1fa079678cc8df1517011e215517cda\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\ncommit ac8c12b754769b3f2d55ff7fb50ada5559d6ee3a\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Tue Mar 19 12:21:29 2013 -0700\n\n    rcu: Eliminate check_for_new_grace_period() wrapper function\n\n    One of the calls to check_for_new_grace_period() is now redundant due to\n    an immediately preceding call to note_gp_changes().  Eliminating this\n    redundant call leaves a single caller, which is simpler if inlined.\n    This commit therefore eliminates the redundant call and inlines the\n    body of check_for_new_grace_period() into the single remaining call site.\n\n    Change-Id: I2bcb31b565f0194c8ba046c9e5d8ed3385233821\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 63274cfb94aac109fc2490a70a96b26751608e57\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\ncommit f6d2bd3ad046744f6363eeb8050dc667a6fb23b0\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Tue Mar 19 11:53:31 2013 -0700\n\n    rcu: Merge __rcu_process_gp_end() into __note_gp_changes()\n\n    This commit eliminates some duplicated code by merging\n    __rcu_process_gp_end() into __note_gp_changes().\n\n    Change-Id: I96871080710ed084c97cdaf59327ec3a10a48435\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: ba9fbe955f026780e6b27c279dba7c86dfdcb7d5\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\ncommit 7d78631845a229f92b2cf81b48e2687de3604a77\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Tue Mar 19 11:32:11 2013 -0700\n\n    rcu: Switch callers from rcu_process_gp_end() to note_gp_changes()\n\n    Because note_gp_changes() now incorporates rcu_process_gp_end() function,\n    this commit switches to the former and eliminates the latter.  In\n    addition, this commit changes external calls from __rcu_process_gp_end()\n    to __note_gp_changes().\n\n    Change-Id: If25ef172bc60feba18ce9fcf69037b3ee910a2fe\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 470716fc043aba2fea832334e58d5cd5d82288a3\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\ncommit 3f7ead25eba099cf44b27c91442a81f3f5f6198c\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Tue Mar 19 11:10:43 2013 -0700\n\n    rcu: Rename note_new_gpnum() to note_gp_changes()\n\n    Because note_new_gpnum() now also checks for the ends of old grace periods,\n    this commit changes its name to note_gp_changes().  Later commits will merge\n    rcu_process_gp_end() into note_gp_changes().\n\n    Change-Id: I358b0117478350afe7966a4e9599ade291e661e0\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: d34ea3221a0f34ed42eadabf054604bbcc7ecd27\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\ncommit b240107f0e47375af8c145a8a317952cf9efc977\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Tue Mar 19 10:53:14 2013 -0700\n\n    rcu: Make __note_new_gpnum() check for ends of prior grace periods\n\n    The current implementation can detect the beginning of a new grace period\n    before noting the end of a previous grace period.  Although the current\n    implementation correctly handles this sort of nonsense, it would be\n    good to reduce RCU's state space by making such nonsense unnecessary,\n    which is now possible thanks to the fact that RCU's callback groups are\n    now numbered.\n\n    This commit therefore makes __note_new_gpnum() invoke\n    __rcu_process_gp_end() in order to note the ends of prior grace\n    periods before noting the beginnings of new grace periods.\n    Of course, this now means that note_new_gpnum() notes both the\n    beginnings and ends of grace periods, and could therefore be\n    used in place of rcu_process_gp_end().  But that is a job for\n    later commits.\n\n    Change-Id: I81be65e57f0f8c86b816df091346279d926a8dcd\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 398ebe6000c16135d12ce2ff64318f306ffb20b0\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\ncommit 9cdda58d6d3d42cc53eeaa65757be138a2f82c40\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Tue Mar 19 10:08:37 2013 -0700\n\n    rcu: Move code to apply callback-numbering simplifications\n\n    The addition of callback numbering allows combining the detection of the\n    ends of old grace periods and the beginnings of new grace periods.  This\n    commit moves code to set the stage for this combining.\n\n    Change-Id: I72aecd07488a2dc899fd458b75724365c982ba8c\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Josh Triplett <josh@joshtriplett.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 6eaef633d77f50f031dd355ff5f91aaa1aaf9885\n    Signed-off-by: Kishan Kumar <kishank@codeaurora.org>\n\ncommit e81d632d9364aace24ef4c82c800e43ef0e829c4\nAuthor: Patrick Daly <pdaly@codeaurora.org>\nDate:   Thu Mar 26 18:01:48 2015 -0700\n\n    rcu: Fix missing task information during rcu-preempt stall\n\n    The first item list_for_each_entry_continue(alist) iterates over is\n    alist->next, rather than alist itself. Consequently,\n    rcu_print_detail_task_stall_rnp() skips the task referenced by gp_tasks.\n\n    Use gp_tasks->prev as the argument to list_for_each_entry_continue()\n    instead.\n\n    Change-Id: Iaa2be14139d0f6c1a1ed25817f0e5737b3e74753\n    Signed-off-by: Patrick Daly <pdaly@codeaurora.org>\n\ncommit 5db77978acfa7ea1d1ba502c692df9068127c577\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Wed Dec 17 08:35:02 2014 -0800\n\n    rcu: Add GP-kthread-starvation checks to CPU stall warnings\n\n    This commit adds a message that is printed if the relevant grace-period\n    kthread has not been able to run for the two seconds preceding the\n    stall warning.  (The two seconds is double the maximum interval between\n    successive bouts of quiescent-state forcing.)\n\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: fb81a44b88e6173ed0f6e9d6a1afa5305fb63f6e\n    [pdaly@codeaurora.org resolve trivial conflicts]\n    Change-Id: I6861d0e4be1e9c83ce4fd17ec94ef047db38861a\n    Signed-off-by: Patrick Daly <pdaly@codeaurora.org>\n\ncommit a48ecd6eb1c745328f66876a72b54f17c0c15e6a\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Mon Dec 8 09:57:48 2014 -0800\n\n    rcu: Make RCU_CPU_STALL_INFO include number of fqs attempts\n\n    One way that an RCU CPU stall warning can happen is if the grace-period\n    kthread is not allowed to execute.  One proxy for this kthread's\n    forward progress is the number of force-quiescent-state (fqs) scans.\n    This commit therefore adds the number of fqs scans to the RCU CPU stall\n    warning printouts when CONFIG_RCU_CPU_STALL_INFO=y.\n\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: fc908ed33e7c1428f799abb12399f906da03b397\n    [pdaly@codeaurora.org Resolve convlicts from declining\n    26cdfedf6a902345f8604ea8e0b7dd2566b37a46]\n    Change-Id: I6d4a5088dff2a499593862bb0a2e2fb604ffc393\n    Signed-off-by: Patrick Daly <pdaly@codeaurora.org>\n\ncommit c74db921a651d551d3308b8e3b90ae6f8e67ae90\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Thu Dec 11 10:20:59 2014 -0800\n\n    rcu: Improve diagnostics for spurious RCU CPU stall warnings\n\n    The current RCU CPU stall warning code will print \"Stall ended before\n    state dump start\" any time that the stall-warning code is triggered on\n    a CPU that has already reported a quiescent state for the current grace\n    period and if all quiescent states have been reported for the current\n    grace period.  However, a true stall can result in these symptoms, for\n    example, by preventing RCU's grace-period kthreads from ever running\n\n    This commit therefore checks for this condition, reporting the end of\n    the stall only if one of the grace-period counters has actually advanced.\n    Otherwise, it reports the last time that the grace-period kthread made\n    meaningful progress.  (In normal situations, the grace-period kthread\n    should make meaningful progress at least every jiffies_till_next_fqs\n    jiffies.)\n\n    Reported-by: Miroslav Benes <mbenes@suse.cz>\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Tested-by: Miroslav Benes <mbenes@suse.cz>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 6ccd2ecd422644277b7d8b37222e3af3f43ea9ae\n    [pdaly@codeaurora.org resolve conflict on gpnum from declining\n    26cdfedf6a902345f8604ea8e0b7dd2566b37a46]\n    Change-Id: I03d23a023650cf69986fb6f1032b4122a17daba6\n    Signed-off-by: Patrick Daly <pdaly@codeaurora.org>\n\ncommit bb3f5e867110271d379f5fbeb95d449f7afc5883\nAuthor: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\nDate:   Tue Oct 8 20:23:47 2013 -0700\n\n    rcu: Move RCU-related source code to kernel/rcu directory\n\n    Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>\n    Reviewed-by: Ingo Molnar <mingo@kernel.org>\n    Git-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\n    Git-commit: 4102adab9189c8ea2f0cdd2f88345fd25d2790f1\n    [pdaly@codeaurora.org: resolve trivial merge conflicts]\n    Change-Id: Id7e0c62c710e8667ebb81bdee398ae0e41d9c3b9\n    Signed-off-by: Patrick Daly <pdaly@codeaurora.org>\n\nSAMBAR-275\nChange-Id: I0b472596247400be69d6cbf114c8f092505bf260\n\nSigned-off-by: franciscofranco <franciscofranco.1990@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/f1f0621fbd3f696289950e9a95615d5328f218e8"},{"sha":"2fa22291f75bad25d9f7b60500c3a8d246320159","author":{"name":"Rashika Kheria","email":"8f418a4ac5c5ed46b89afd6a61cb1e64cd9b8b27@gmail.com"},"message":"Staging: zram: Fix variable dereferenced before check\n\nThis patch fixes the following Smatch warning in zram_drv.c-\ndrivers/staging/zram/zram_drv.c:899\ndestroy_device() warn: variable dereferenced before check 'zram->disk' (see line 896)\n\nAcked-by: Minchan Kim <minchan@kernel.org>\nAcked-by: Jerome Marchand <jmarchan@redhat.com>\nSigned-off-by: Rashika Kheria <rashika.kheria@gmail.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: placiano <placiano80@gmail.com>\nSigned-off-by: Pafcholini <nadyaivanova14@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/2fa22291f75bad25d9f7b60500c3a8d246320159"},{"sha":"e7b5967ab4524e2b3dd6d4fc6ad7fe538a90d93a","author":{"name":"Rashika Kheria","email":"8f418a4ac5c5ed46b89afd6a61cb1e64cd9b8b27@gmail.com"},"message":"Staging: zram: Fix access of NULL pointer\n\nThis patch fixes the bug in reset_store caused by accessing NULL pointer.\n\nThe bdev gets its value from bdget_disk() which could fail when memory\npressure is severe and hence can return NULL because allocation of\ninode in bdget could fail.\n\nHence, this patch introduces a check for bdev to prevent reference to a\nNULL pointer in the later part of the code. It also removes unnecessary\ncheck of bdev for fsync_bdev().\n\nCc: stable <stable@vger.kernel.org>\nAcked-by: Jerome Marchand <jmarchan@redhat.com>\nSigned-off-by: Rashika Kheria <rashika.kheria@gmail.com>\nAcked-by: Minchan Kim <minchan@kernel.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: placiano <placiano80@gmail.com>\nSigned-off-by: Pafcholini <nadyaivanova14@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/e7b5967ab4524e2b3dd6d4fc6ad7fe538a90d93a"},{"sha":"96db303f86931e28115f99a5ebfb5d0484f716c4","author":{"name":"Rashika Kheria","email":"8f418a4ac5c5ed46b89afd6a61cb1e64cd9b8b27@gmail.com"},"message":"Staging: zram: Fix memory leak by refcount mismatch\n\nAs suggested by Minchan Kim and Jerome Marchand \"The code in reset_store\nget the block device (bdget_disk()) but it does not put it (bdput()) when\nit's done using it. The usage count is therefore incremented but never\ndecremented.\"\n\nThis patch also puts bdput() for all error cases.\n\nAcked-by: Minchan Kim <minchan@kernel.org>\nAcked-by: Jerome Marchand <jmarchan@redhat.com>\nCc: stable@vger.kernel.org\nSigned-off-by: Rashika Kheria <rashika.kheria@gmail.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: placiano <placiano80@gmail.com>\nSigned-off-by: Pafcholini <nadyaivanova14@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/96db303f86931e28115f99a5ebfb5d0484f716c4"},{"sha":"ba7a5459d64f122af819d2b322f4845f13d48b72","author":{"name":"Minchan Kim","email":"513909c15f9d22f3704dca2f86978b287731f351@kernel.org"},"message":"zram: promote zram from staging\n\nZram has lived in staging for a LONG LONG time and have been\nfixed/improved by many contributors so code is clean and stable now.  Of\ncourse, there are lots of product using zram in real practice.\n\nThe major TV companys have used zram as swap since two years ago and\nrecently our production team released android smart phone with zram\nwhich is used as swap, too and recently Android Kitkat start to use zram\nfor small memory smart phone.  And there was a report Google released\ntheir ChromeOS with zram, too and cyanogenmod have been used zram long\ntime ago.  And I heard some disto have used zram block device for tmpfs.\nIn addition, I saw many report from many other peoples.  For example,\nLubuntu start to use it.\n\nThe benefit of zram is very clear.  With my experience, one of the\nbenefit was to remove jitter of video application with backgroud memory\npressure.  It would be effect of efficient memory usage by compression\nbut more issue is whether swap is there or not in the system.  Recent\nmobile platforms have used JAVA so there are many anonymous pages.  But\nembedded system normally are reluctant to use eMMC or SDCard as swap\nbecause there is wear-leveling and latency issues so if we do not use\nswap, it means we can't reclaim anoymous pages and at last, we could\nencounter OOM kill.  :(\n\nAlthough we have real storage as swap, it was a problem, too.  Because\nit sometime ends up making system very unresponsible caused by slow swap\nstorage performance.\n\nQuote from Luigi on Google\n \"Since Chrome OS was mentioned: the main reason why we don't use swap\n  to a disk (rotating or SSD) is because it doesn't degrade gracefully\n  and leads to a bad interactive experience.  Generally we prefer to\n  manage RAM at a higher level, by transparently killing and restarting\n  processes.  But we noticed that zram is fast enough to be competitive\n  with the latter, and it lets us make more efficient use of the\n  available RAM.  \" and he announced.\nhttp://www.spinics.net/lists/linux-mm/msg57717.html\n\nOther uses case is to use zram for block device.  Zram is block device\nso anyone can format the block device and mount on it so some guys on\nthe internet start zram as /var/tmp.\nhttp://forums.gentoo.org/viewtopic-t-838198-start-0.html\n\nLet's promote zram and enhance/maintain it instead of removing.\n\nSigned-off-by: Minchan Kim <minchan@kernel.org>\nReviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>\nAcked-by: Nitin Gupta <ngupta@vflare.org>\nAcked-by: Pekka Enberg <penberg@kernel.org>\nCc: Bob Liu <bob.liu@oracle.com>\nCc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nCc: Hugh Dickins <hughd@google.com>\nCc: Jens Axboe <axboe@kernel.dk>\nCc: Luigi Semenzato <semenzato@google.com>\nCc: Mel Gorman <mgorman@suse.de>\nCc: Rik van Riel <riel@redhat.com>\nCc: Seth Jennings <sjenning@linux.vnet.ibm.com>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: placiano <placiano80@gmail.com>\nSigned-off-by: Pafcholini <nadyaivanova14@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/ba7a5459d64f122af819d2b322f4845f13d48b72"},{"sha":"81049cc33d5431a032e713cbab5bd1e14088619f","author":{"name":"Minchan Kim","email":"513909c15f9d22f3704dca2f86978b287731f351@kernel.org"},"message":"zram: remove old private project comment\n\nRemove the old private compcache project address so upcoming patches\nshould be sent to LKML because we Linux kernel community will take care.\n\nSigned-off-by: Minchan Kim <minchan@kernel.org>\nCc: Nitin Gupta <ngupta@vflare.org>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: placiano <placiano80@gmail.com>\nSigned-off-by: Pafcholini <nadyaivanova14@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/81049cc33d5431a032e713cbab5bd1e14088619f"},{"sha":"3466e941caf4a40a361c14b6c211cb167f63b84f","author":{"name":"Minchan Kim","email":"513909c15f9d22f3704dca2f86978b287731f351@kernel.org"},"message":"zram: add copyright\n\nAdd my copyright to the zram source code which I maintain.\n\nSigned-off-by: Minchan Kim <minchan@kernel.org>\nCc: Nitin Gupta <ngupta@vflare.org>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: placiano <placiano80@gmail.com>\nSigned-off-by: Pafcholini <nadyaivanova14@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/3466e941caf4a40a361c14b6c211cb167f63b84f"},{"sha":"0625adc7d3b035158dc7bcb4309c685e59f70af1","author":{"name":"Minchan Kim","email":"513909c15f9d22f3704dca2f86978b287731f351@kernel.org"},"message":"zram: fix race between reset and flushing pending work\n\nDan and Sergey reported that there is a racy between reset and flushing\nof pending work so that it could make oops by freeing zram->meta in\nreset while zram_slot_free can access zram->meta if new request is\nadding during the race window.\n\nThis patch moves flush after taking init_lock so it prevents new request\nso that it closes the race.\n\nSigned-off-by: Minchan Kim <minchan@kernel.org>\nReported-by: Dan Carpenter <dan.carpenter@oracle.com>\nCc: Nitin Gupta <ngupta@vflare.org>\nCc: Jerome Marchand <jmarchan@redhat.com>\nTested-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>\nCc: <stable@vger.kernel.org>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: placiano <placiano80@gmail.com>\nSigned-off-by: Pafcholini <nadyaivanova14@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/0625adc7d3b035158dc7bcb4309c685e59f70af1"},{"sha":"a809d12aeff458d2bb158de56047539a000d5d01","author":{"name":"Minchan Kim","email":"513909c15f9d22f3704dca2f86978b287731f351@kernel.org"},"message":"zram: delay pending free request in read path\n\nSergey reported we don't need to handle pending free request every I/O\nso that this patch removes it in read path while we remain it in write\npath.\n\nLet's consider below example.\n\nSwap subsystem ask to zram \"A\" block free by swap_slot_free_notify but\nzram had been pended it without real freeing.  Swap subsystem allocates\n\"A\" block for new data but request pended for a long time just handled\nand zram blindly free new data on the \"A\" block.  :(\n\nThat's why we couldn't remove handle pending free request right before\nzram-write.\n\nSigned-off-by: Minchan Kim <minchan@kernel.org>\nReported-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>\nTested-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>\nCc: Nitin Gupta <ngupta@vflare.org>\nCc: Jerome Marchand <jmarchan@redhat.com>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: placiano <placiano80@gmail.com>\nSigned-off-by: Pafcholini <nadyaivanova14@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/a809d12aeff458d2bb158de56047539a000d5d01"},{"sha":"3f9683d9a538ca9283c616d60b985a4ebc530ee0","author":{"name":"Minchan Kim","email":"513909c15f9d22f3704dca2f86978b287731f351@kernel.org"},"message":"zram: remove unnecessary free\n\nCommit a0c516cbfc74 (\"zram: don't grab mutex in zram_slot_free_noity\")\nintroduced pending zram slot free in zram's write path in case of\nmissing slot free by memory allocation failure in zram_slot_free_notify\nbut it is not necessary because we have already freed the slot right\nbefore overwriting.\n\nSigned-off-by: Minchan Kim <minchan@kernel.org>\nCc: Nitin Gupta <ngupta@vflare.org>\nCc: Jerome Marchand <jmarchan@redhat.com>\nTested-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: placiano <placiano80@gmail.com>\nSigned-off-by: Pafcholini <nadyaivanova14@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/3f9683d9a538ca9283c616d60b985a4ebc530ee0"},{"sha":"06c1560fbc469bb0c2493d031fbf843968a3c2eb","author":{"name":"Minchan Kim","email":"513909c15f9d22f3704dca2f86978b287731f351@kernel.org"},"message":"zram: use atomic operation for stat\n\nSome of fields in zram->stats are protected by zram->lock which is\nrather coarse-grained so let's use atomic operation without explict\nlocking.\n\nThis patch is ready for removing dependency of zram->lock in read path\nwhich is very coarse-grained rw_semaphore.  Of course, this patch adds\nnew atomic operation so it might make slow but my 12CPU test couldn't\nspot any regression.  All gain/lose is marginal within stddev.\n\n  iozone -t -T -l 12 -u 12 -r 16K -s 60M -I +Z -V 0\n\n  ==Initial write                ==Initial write\n  records: 50                    records: 50\n  avg:  412875.17                avg:  415638.23\n  std:   38543.12 (9.34%)        std:   36601.11 (8.81%)\n  max:  521262.03                max:  502976.72\n  min:  343263.13                min:  351389.12\n  ==Rewrite                      ==Rewrite\n  records: 50                    records: 50\n  avg:  416640.34                avg:  397914.33\n  std:   60798.92 (14.59%)       std:   46150.42 (11.60%)\n  max:  543057.07                max:  522669.17\n  min:  304071.67                min:  316588.77\n  ==Read                         ==Read\n  records: 50                    records: 50\n  avg: 4147338.63                avg: 4070736.51\n  std:  179333.25 (4.32%)        std:  223499.89 (5.49%)\n  max: 4459295.28                max: 4539514.44\n  min: 3753057.53                min: 3444686.31\n  ==Re-read                      ==Re-read\n  records: 50                    records: 50\n  avg: 4096706.71                avg: 4117218.57\n  std:  229735.04 (5.61%)        std:  171676.25 (4.17%)\n  max: 4430012.09                max: 4459263.94\n  min: 2987217.80                min: 3666904.28\n  ==Reverse Read                 ==Reverse Read\n  records: 50                    records: 50\n  avg: 4062763.83                avg: 4078508.32\n  std:  186208.46 (4.58%)        std:  172684.34 (4.23%)\n  max: 4401358.78                max: 4424757.22\n  min: 3381625.00                min: 3679359.94\n  ==Stride read                  ==Stride read\n  records: 50                    records: 50\n  avg: 4094933.49                avg: 4082170.22\n  std:  185710.52 (4.54%)        std:  196346.68 (4.81%)\n  max: 4478241.25                max: 4460060.97\n  min: 3732593.23                min: 3584125.78\n  ==Random read                  ==Random read\n  records: 50                    records: 50\n  avg: 4031070.04                avg: 4074847.49\n  std:  192065.51 (4.76%)        std:  206911.33 (5.08%)\n  max: 4356931.16                max: 4399442.56\n  min: 3481619.62                min: 3548372.44\n  ==Mixed workload               ==Mixed workload\n  records: 50                    records: 50\n  avg:  149925.73                avg:  149675.54\n  std:    7701.26 (5.14%)        std:    6902.09 (4.61%)\n  max:  191301.56                max:  175162.05\n  min:  133566.28                min:  137762.87\n  ==Random write                 ==Random write\n  records: 50                    records: 50\n  avg:  404050.11                avg:  393021.47\n  std:   58887.57 (14.57%)       std:   42813.70 (10.89%)\n  max:  601798.09                max:  524533.43\n  min:  325176.99                min:  313255.34\n  ==Pwrite                       ==Pwrite\n  records: 50                    records: 50\n  avg:  411217.70                avg:  411237.96\n  std:   43114.99 (10.48%)       std:   33136.29 (8.06%)\n  max:  530766.79                max:  471899.76\n  min:  320786.84                min:  317906.94\n  ==Pread                        ==Pread\n  records: 50                    records: 50\n  avg: 4154908.65                avg: 4087121.92\n  std:  151272.08 (3.64%)        std:  219505.04 (5.37%)\n  max: 4459478.12                max: 4435857.38\n  min: 3730512.41                min: 3101101.67\n\nSigned-off-by: Minchan Kim <minchan@kernel.org>\nCc: Nitin Gupta <ngupta@vflare.org>\nTested-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>\nCc: Jerome Marchand <jmarchan@redhat.com>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: placiano <placiano80@gmail.com>\nSigned-off-by: Pafcholini <nadyaivanova14@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/06c1560fbc469bb0c2493d031fbf843968a3c2eb"},{"sha":"0dd9dc1d838bb9dd972259a4c2fb65645a193da1","author":{"name":"Minchan Kim","email":"513909c15f9d22f3704dca2f86978b287731f351@kernel.org"},"message":"zram: introduce zram->tb_lock\n\nCurrently, the zram table is protected by zram->lock but it's rather\ncoarse-grained lock and it makes hard for scalibility.\n\nLet's use own rwlock instead of depending on zram->lock.  This patch\nadds new locking so obviously, it would make slow but this patch is just\nprepartion for removing coarse-grained rw_semaphore(ie, zram->lock)\nwhich is hurdle about zram scalability.\n\nFinal patch in this patchset series will remove the lock from read-path\nand change rw_semaphore with mutex in write path.  With bonus, we could\ndrop pending slot free mess in next patch.\n\nSigned-off-by: Minchan Kim <minchan@kernel.org>\nCc: Nitin Gupta <ngupta@vflare.org>\nTested-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>\nCc: Jerome Marchand <jmarchan@redhat.com>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: flar2 <asegaert@gmail.com>\nSigned-off-by: placiano <placiano80@gmail.com>\nSigned-off-by: Pafcholini <nadyaivanova14@gmail.com>","distinct":true,"url":"https://api.github.com/repos/kabata1975/emotion_shamu_kernel_n/commits/0dd9dc1d838bb9dd972259a4c2fb65645a193da1"}]}
{"actor":{"display_login":"kabata1975"}}