{"push_id":796995033,"size":4,"distinct_size":4,"ref":"refs/heads/cm-12.1","head":"9547238aeede95b63065b21402ed296680c9156b","before":"a43bc2cf2b3e931dcfd11112a21b5bd09904da47","commits":[{"sha":"29dad0493d2bd2dee73e8d7b06178b6343182e72","author":{"email":"1dd89e5367785ba89076cd264daac0464fdf0d7b@cellrox.com","name":"Amir Goldstein"},"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":true,"url":"https://api.github.com/repos/zwliew/android_kernel_xiaomi_msm8916/commits/29dad0493d2bd2dee73e8d7b06178b6343182e72"},{"sha":"20db657fff00d41a5bb9df872c5d313abb301868","author":{"email":"f3ca5445c00b1b3b1a05fc8fd794ebd4cccd6f5b@gmail.com","name":"Ketut Putu Kumajaya"},"message":"ARM: dts: hm2014811: Restore previous config\n\nChange-Id: Ib266af70777cd65b5950e1948e27dbb25e95f436","distinct":true,"url":"https://api.github.com/repos/zwliew/android_kernel_xiaomi_msm8916/commits/20db657fff00d41a5bb9df872c5d313abb301868"},{"sha":"2d69f6f5d801f1ecd80d98dadaee22f4c267d40f","author":{"email":"f2ad263351ded8bf8d0b90799bb8b9622c429cf8@gmail.com","name":"Zhao Wei Liew"},"message":"ASoC: Clean up device specific code\n\nChange-Id: I723640f8d93390fd02914473e8a49ea27be1ccba","distinct":true,"url":"https://api.github.com/repos/zwliew/android_kernel_xiaomi_msm8916/commits/2d69f6f5d801f1ecd80d98dadaee22f4c267d40f"},{"sha":"9547238aeede95b63065b21402ed296680c9156b","author":{"email":"f2ad263351ded8bf8d0b90799bb8b9622c429cf8@gmail.com","name":"Zhao Wei Liew"},"message":"Revert \"ARM: dts: hm2014811: Enable dynamic FPS for all panels\"\n\n* There's still flickering on some panels on idle. May be due to\ntoo low FPS on idle. Revert for now.\n\nThis reverts commit 453662b841d19701c1620eb639b3d7b5d99ab992.","distinct":true,"url":"https://api.github.com/repos/zwliew/android_kernel_xiaomi_msm8916/commits/9547238aeede95b63065b21402ed296680c9156b"}]}