{"push_id":1148143116,"size":13,"distinct_size":0,"ref":"refs/heads/master","head":"e0635e864ca9cbc9b21722cc5e4a38a15c887cc3","before":"9b26150e09b1066450925ae6742c865957250c78","commits":[{"sha":"c1b805acb260c003e468181deed810293e63702d","author":{"name":"Shilin Victor","email":"e130b8b99ab632d759b453eebd6e531414ebc7ee@gmail.com"},"message":"MCDE: fix derps","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/c1b805acb260c003e468181deed810293e63702d"},{"sha":"5161716b3e11c4b3d049bd4e278c25f180b6f626","author":{"name":"Leif Lindholm","email":"9a4b5995b03164373743bd7e0c9e79e1b888599b@arm.com"},"message":"ARM: 7206/1: Add generic ARM instruction set condition code checks.\n\nThis patch breaks the ARM condition checking code out of nwfpe/fpopcode.{ch}\ninto a standalone file for opcode operations. It also modifies the code\nsomewhat for coding style adherence, and adds some temporary variables for\nincreased readability.\n\nChange-Id: I9935fbdebff9ddd263007412edd6a2b3eb06ae69\nSigned-off-by: Leif Lindholm <leif.lindholm@arm.com>\nReviewed-by: Will Deacon <will.deacon@arm.com>\nSigned-off-by: Russell King <rmk+kernel@arm.linux.org.uk>","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/5161716b3e11c4b3d049bd4e278c25f180b6f626"},{"sha":"2cacc58b2405d5433e4c17c61a7af45d03e0957e","author":{"name":"Andrey Konovalov","email":"acba6f9b010367f452595b80d6e1782629aa36cc@gmail.com"},"message":"ALSA: usb-audio: avoid freeing umidi object twice\n\nThe 'umidi' object will be free'd on the error path by snd_usbmidi_free()\nwhen tearing down the rawmidi interface. So we shouldn't try to free it\nin snd_usbmidi_create() after having registered the rawmidi interface.\n\nFound by KASAN.\n\nChange-Id: I628889be11651c1e6b90d5c61d041328124deae3\nSigned-off-by: Andrey Konovalov <andreyknvl@gmail.com>\nAcked-by: Clemens Ladisch <clemens@ladisch.de>\nCc: <stable@vger.kernel.org>\nSigned-off-by: Takashi Iwai <tiwai@suse.de>","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/2cacc58b2405d5433e4c17c61a7af45d03e0957e"},{"sha":"8b8e968f1ba32a00b5940e57fde67176b284224b","author":{"name":"Takashi Iwai","email":"dd0a9a4ae370c51e6d7099900a4bf6656524e055@suse.de"},"message":"ALSA: timer: Fix double unlink of active_list\n\nALSA timer instance object has a couple of linked lists and they are\nunlinked unconditionally at snd_timer_stop().  Meanwhile\nsnd_timer_interrupt() unlinks it, but it calls list_del() which leaves\nthe element list itself unchanged.  This ends up with unlinking twice,\nand it was caught by syzkaller fuzzer.\n\nThe fix is to use list_del_init() variant properly there, too.\n\nChange-Id: I95e2ab06180dfe43fb6b7c2875a866b53ca245ce\nReported-by: Dmitry Vyukov <dvyukov@google.com>\nTested-by: Dmitry Vyukov <dvyukov@google.com>\nCc: <stable@vger.kernel.org>\nSigned-off-by: Takashi Iwai <tiwai@suse.de>","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/8b8e968f1ba32a00b5940e57fde67176b284224b"},{"sha":"5308fcb9d0e10135c2957489db98993679cd1645","author":{"name":"Takashi Iwai","email":"dd0a9a4ae370c51e6d7099900a4bf6656524e055@suse.de"},"message":"ALSA: timer: Fix race among timer ioctls\n\nALSA timer ioctls have an open race and this may lead to a\nuse-after-free of timer instance object.  A simplistic fix is to make\neach ioctl exclusive.  We have already tread_sem for controlling the\ntread, and extend this as a global mutex to be applied to each ioctl.\n\nThe downside is, of course, the worse concurrency.  But these ioctls\naren't to be parallel accessible, in anyway, so it should be fine to\nserialize there.\n\nChange-Id: Iaa21b00f62e02cc58e346a29846e0fce6536e860\nReported-by: Dmitry Vyukov <dvyukov@google.com>\nTested-by: Dmitry Vyukov <dvyukov@google.com>\nCc: <stable@vger.kernel.org>\nSigned-off-by: Takashi Iwai <tiwai@suse.de>","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/5308fcb9d0e10135c2957489db98993679cd1645"},{"sha":"0cb33b1d4cd02eea56401e476064dd4076aeb573","author":{"name":"Takashi Iwai","email":"dd0a9a4ae370c51e6d7099900a4bf6656524e055@suse.de"},"message":"ALSA: timer: Harden slave timer list handling\n\nA slave timer instance might be still accessible in a racy way while\noperating the master instance as it lacks of locking.  Since the\nmaster operation is mostly protected with timer->lock, we should cope\nwith it while changing the slave instance, too.  Also, some linked\nlists (active_list and ack_list) of slave instances aren't unlinked\nimmediately at stopping or closing, and this may lead to unexpected\naccesses.\n\nThis patch tries to address these issues.  It adds spin lock of\ntimer->lock (either from master or slave, which is equivalent) in a\nfew places.  For avoiding a deadlock, we ensure that the global\nslave_active_lock is always locked at first before each timer lock.\n\nAlso, ack and active_list of slave instances are properly unlinked at\nsnd_timer_stop() and snd_timer_close().\n\nLast but not least, remove the superfluous call of _snd_timer_stop()\nat removing slave links.  This is a noop, and calling it may confuse\nreaders wrt locking.  Further cleanup will follow in a later patch.\n\nActually we've got reports of use-after-free by syzkaller fuzzer, and\nthis hopefully fixes these issues.\n\nChange-Id: I572878b909dda522dbedc84633414185802bc974\nReported-by: Dmitry Vyukov <dvyukov@google.com>\nCc: <stable@vger.kernel.org>\nSigned-off-by: Takashi Iwai <tiwai@suse.de>","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/0cb33b1d4cd02eea56401e476064dd4076aeb573"},{"sha":"859fe9075e135f27e62568f5ab448fcf517356b0","author":{"name":"Heiko Stübner","email":"f67af7135bf5422071c7efd95ce8a74473489823@sntech.de"},"message":"Input: evdev - fix variable initialisation\n\nCommit 509f87c5f564 (evdev - do not block waiting for an event if fd\nis nonblock) created a code path were it was possible to use retval\nuninitialized.\n\nThis could lead to the xorg evdev input driver getting corrupt data\nand refusing to work with log messages like\n\tAUO-Pixcir touchscreen: Read error: Success\n\tsg060_keys: Read error: Success\n\tAUO-Pixcir touchscreen: Read error: Success\n\tsg060_keys: Read error: Success\n(for drivers auo-pixcir-ts and gpio-keys).\n\nSigned-off-by: Heiko Stuebner <heiko@sntech.de>\nAcked-by: Dima Zavin <dima@android.com>\nSigned-off-by: Dmitry Torokhov <dtor@mail.ru>","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/859fe9075e135f27e62568f5ab448fcf517356b0"},{"sha":"75684f9a1917dc554ba2262b88df21a1c446f877","author":{"name":"Vladimir Murzin","email":"abaadb607795e4cd1cfa5a0e2d146cca6c0efd4e@gmail.com"},"message":"arm: add SDIV/UDIV emulation for ARMv7 processors\n\nThe Virtualization Extensions introduce the requirement for an ARMv7-A\nimplementation to include SDIV and UDIV.  Any implementation of the\nVirtualization Extensions must include the SDIV and UDIV instructions\nin the Thumb and ARM instruction sets.\n\nIn an ARMv7-A implementation that does not include the Virtualization\nExtensions, it is IMPLEMENTATION DEFINED whether:\n *  SDIV and UDIV are not implemented\n *  SDIV and UDIV are implemented only in the Thumb instruction set\n *  SDIV and UDIV are implemented in the Thumb and ARM instruction sets.\n\nThis patch adds a handler to trap and emulate unimplemented SDIV and\nUDIV instructions in ARM and Thumb modes. Also some basic statistic is\nexported via /proc/cpu/idiv_emulation\n\nChange-Id: I8e721ecac62a05fab42ed7db7951b4c837a59bc7\nSigned-off-by: Vladimir Murzin <murzin.v@gmail.com>","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/75684f9a1917dc554ba2262b88df21a1c446f877"},{"sha":"244d3c3817def4ba93bf2e87f2d427b17706efb6","author":{"name":"Michael Gernoth","email":"844aface8de49b32585c3c744b570659f1739c56@gernoth.net"},"message":"arm/traps: get full DIV instruction in thumb mode\n\nChange-Id: Ie60d2124d7835e85f03008d3dfe259b70490b4f2","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/244d3c3817def4ba93bf2e87f2d427b17706efb6"},{"sha":"b5d239a8e3c25c52f3358483f20097213d9927bd","author":{"name":"Takashi Iwai","email":"dd0a9a4ae370c51e6d7099900a4bf6656524e055@suse.de"},"message":"ALSA: hrtimer: Fix stall by hrtimer_cancel()\n\nhrtimer_cancel() waits for the completion from the callback, thus it\nmust not be called inside the callback itself.  This was already a\nproblem in the past with ALSA hrtimer driver, and the early commit\n[fcfdebe70759: ALSA: hrtimer - Fix lock-up] tried to address it.\n\nHowever, the previous fix is still insufficient: it may still cause a\nlockup when the ALSA timer instance reprograms itself in its callback.\nThen it invokes the start function even in snd_timer_interrupt() that\nis called in hrtimer callback itself, results in a CPU stall.  This is\nno hypothetical problem but actually triggered by syzkaller fuzzer.\n\nThis patch tries to fix the issue again.  Now we call\nhrtimer_try_to_cancel() at both start and stop functions so that it\nwon't fall into a deadlock, yet giving some chance to cancel the queue\nif the functions have been called outside the callback.  The proper\nhrtimer_cancel() is called in anyway at closing, so this should be\nenough.\n\nChange-Id: Id6224b2a3ade0d217e891e6af09744df4d0b2e5c\nReported-and-tested-by: Dmitry Vyukov <dvyukov@google.com>\nCc: <stable@vger.kernel.org>\nSigned-off-by: Takashi Iwai <tiwai@suse.de>","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/b5d239a8e3c25c52f3358483f20097213d9927bd"},{"sha":"5b8f48c79ec82512417280dc30e19e8df869dc1a","author":{"name":"Shilin Victor","email":"e130b8b99ab632d759b453eebd6e531414ebc7ee@gmail.com"},"message":"codina: enable CONFIG_IDIV_EMULATE","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/5b8f48c79ec82512417280dc30e19e8df869dc1a"},{"sha":"a6b32f8fee7d9cc04e6e82150b703a8d2d99b718","author":{"name":"Amir Goldstein","email":"0b738364b8ca3a28da789d34dc90511d1baa1175@cellrox.com"},"message":"sysrq: Emergency Remount R/O in reverse order\n\nThis change fixes a problem where reboot on Android panics the kernel\nalmost every time when file systems are mounted over loop devices.\n\nAndroid reboot command does:\n- sync\n- echo u > /proc/sysrq-trigger\n- syscall_reboot\n\nThe problem is with sysrq emergency remount R/O trying to remount-ro\nin wrong order.\nsince /data is re-mounted ro before loop devices, loop device\nremount-ro fails to flush the journal and panics the kernel:\n\n  EXT4-fs (loop0): Remounting filesystem read-only\n  EXT4-fs (loop0): previous I/O error to superblock detected\n  loop: Write error at byte offset 0, length 4096.\n  Buffer I/O error on device loop0, logical block 0\n  lost page write due to I/O error on loop0\n  Kernel panic - not syncing: EXT4-fs panic from previous error\n\nThe fix is quite simple. In do_emergency_remount(), use\nlist_for_each_entry_reverse() on sb list instead of list_for_each_entry().\nIt makes a lot of sense to umount the file systems in reverse order in\nwhich they were added to sb list.\n\nChange-Id: I4370e39b5873bd16ade5d5f9ddb2704beb02a2bb\nSigned-off-by: Amir Goldstein <amir@cellrox.com>\nAcked-by: Oren Laadan <orenl@cellrox.com>","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/a6b32f8fee7d9cc04e6e82150b703a8d2d99b718"},{"sha":"e0635e864ca9cbc9b21722cc5e4a38a15c887cc3","author":{"name":"David Rientjes","email":"f66fbc5bc952713981aafccdae5a05caf2d2e776@google.com"},"message":"mm, oom: base root bonus on current usage\n\ncommit 778c14affaf94a9e4953179d3e13a544ccce7707 upstream.\n\nA 3% of system memory bonus is sometimes too excessive in comparison to\nother processes.\n\nWith commit a63d83f427fb (\"oom: badness heuristic rewrite\"), the OOM\nkiller tries to avoid killing privileged tasks by subtracting 3% of\noverall memory (system or cgroup) from their per-task consumption.  But\nas a result, all root tasks that consume less than 3% of overall memory\nare considered equal, and so it only takes 33+ privileged tasks pushing\nthe system out of memory for the OOM killer to do something stupid and\nkill dhclient or other root-owned processes.  For example, on a 32G\nmachine it can't tell the difference between the 1M agetty and the 10G\nfork bomb member.\n\nThe changelog describes this 3% boost as the equivalent to the global\novercommit limit being 3% higher for privileged tasks, but this is not\nthe same as discounting 3% of overall memory from _every privileged task\nindividually_ during OOM selection.\n\nReplace the 3% of system memory bonus with a 3% of current memory usage\nbonus.\n\nBy giving root tasks a bonus that is proportional to their actual size,\nthey remain comparable even when relatively small.  In the example\nabove, the OOM killer will discount the 1M agetty's 256 badness points\ndown to 179, and the 10G fork bomb's 262144 points down to 183500 points\nand make the right choice, instead of discounting both to 0 and killing\nagetty because it's first in the task list.\n\nChange-Id: I17b076ed08b870da73fdd39b3187b687e82b972e\nSigned-off-by: David Rientjes <rientjes@google.com>\nReported-by: Johannes Weiner <hannes@cmpxchg.org>\nAcked-by: Johannes Weiner <hannes@cmpxchg.org>\nCc: Michal Hocko <mhocko@suse.cz>\nSigned-off-by: Andrew Morton <akpm@linux-foundation.org>\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":false,"url":"https://api.github.com/repos/ChronoMonochrome/Chrono_Kernel-1/commits/e0635e864ca9cbc9b21722cc5e4a38a15c887cc3"}]}
{"actor":{"display_login":"ChronoMonochrome"}}