{"push_id":1271175679,"size":27,"distinct_size":27,"ref":"refs/heads/lambda","head":"4c3f8e84edc02b0c2b196b3fbb9410e752ee054f","before":"913e3a89feb583b850d034dc0579374717e64e89","commits":[{"sha":"f69b821cb85d4e624e76b8e85adfad080dc30651","author":{"name":"Ícaro Hoff","email":"a69c933c7d238282a57d7084d7277687d710e0e3@gmail.com"},"message":"gpu: rework and redefine GPU constraints\n\nSigned-off-by: Ícaro Hoff <icarohoff@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/f69b821cb85d4e624e76b8e85adfad080dc30651"},{"sha":"856a7b3e270b7045baa5401f5675273cf02cd056","author":{"name":"Pranav Vashi","email":"03be7ddd3681236397de02d2b35bff2ebe2e3300@gmail.com"},"message":"gpu: ion: Avoid using rt_mutexes directly\n\nRT_MUTEXES can be configured out of the kernel, causing compile\nproblems with ION.\n\nTo quote Colin:\n\"rt_mutexes were added with the deferred freeing feature.  Heaps need\nto return zeroed memory to userspace, but zeroing the memory on every\nallocation was causing performance issues.  We added a SCHED_IDLE\nthread to zero memory in the background after freeing, but locking the\nheap from the SCHED_IDLE thread might block a high priority allocation\nthread for a long time.\n\nThe lock is only used to protect the heap's free_list and\nfree_list_size members, and is not held for any long or sleeping\noperations.  Converting to a spinlock should prevent priority\ninversion without using the rt_mutex.  I'd also rename it to free_lock\nto so it doesn't get used as a general heap lock.\"\n\nThus this patch converts the rt_mutex usage to a spinlock and\nrenames the lock free_lock to be more clear as to its use.\n\nI also had to change a bit of logic in ion_heap_freelist_drain()\nto safely avoid list corruption.\n\nAcked-by: Colin Cross <ccross@android.com>\nCc: Android Kernel Team <kernel-team@android.com>\nReported-by: Jim Davis <jim.epost@gmail.com>\nSigned-off-by: John Stultz <john.stultz@linaro.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/856a7b3e270b7045baa5401f5675273cf02cd056"},{"sha":"2ffe7316a7e7209e978e5e6e9af552a637406923","author":{"name":"Larry Bassel","email":"1a59eee42ccf79516f286d1b3c03584de2ea8f50@codeaurora.org"},"message":"ion: use iounmap instead of __arm_iounmap\n\nThe API iounmap() is more generic and portable\nthan __arm_iounmap().\n\nChange-Id: If9601e9266bec56442686d3f2bdb1d475cd7bead\nSigned-off-by: Larry Bassel <lbassel@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/2ffe7316a7e7209e978e5e6e9af552a637406923"},{"sha":"fb8520df7239faeae787e212ad5708388b782a74","author":{"name":"Olav Haugan","email":"e137e466933143e35d4e5aae7f67301fd926d27c@codeaurora.org"},"message":"staging: ion: msm: Only parse available dt nodes\n\nION is currently ignoring the status property of device tree\nheap nodes. Make ION aware of the status of the ION heap nodes making\nit possible to disable certain heaps.\n\nSigned-off-by: Olav Haugan <ohaugan@codeaurora.org>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/fb8520df7239faeae787e212ad5708388b782a74"},{"sha":"50286b0759cbdfbae5ba6b2d67e47bbbba4417be","author":{"name":"Mitchel Humpherys","email":"a3e4c84cb252737c1b2794202b0e88ea5df4dffa@codeaurora.org"},"message":"ion: cma_secure_heap: validate buffer length\n\nThe secure CMA heap only supports buffers lengths that are multiples of\n1MB. Currently, we simply crash if a bad length is requested. Rather\nthan crashing, log an error and return a failure.\n\nSigned-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/50286b0759cbdfbae5ba6b2d67e47bbbba4417be"},{"sha":"87aabda070a6b9bcd7d669542e4fd485ec59f6a3","author":{"name":"Laura Abbott","email":"8553df7474583031a579ce7388bd843e3b158549@codeaurora.org"},"message":"ion: Use dma_free_attrs for freeing secure memory\n\nSecure CMA memory is allocated using DMA_ATTR_NO_KERNEL_MAPPING.\nFree the memory with the same attribute.\n\nSigned-off-by: Laura Abbott <lauraa@codeaurora.org>\n\nstaging: ion: remove struct ion_page_pool_item\n\nThe page pool uses an internal data structure, ion_page_pool_item, for\nwrapping pooled pages and constructing a list. As the struct page\nalready provides ways for doing exactly the same thing, we do not need\nto reinvent the wheel. This commit removes the data structure and slab\nallocations for it.\n\nSigned-off-by: Heesub Shin <heesub.shin@samsung.com>\nReviewed-by: Mitchel Humpherys <mitchelh@codeaurora.org>\nTested-by: John Stultz <john.stultz@linaro.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nGit-commit: 38c003b113ceab37f80d020999d3ec2cbf784da3\nGit-repo: git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git\nSigned-off-by: Laura Abbott <lauraa@codeaurora.org>\n\nstaging: ion: shrink highmem pages on kswapd\n\nION system heap keeps pages in its pool for better performance. When the\nsystem is under memory pressure, slab shrinker calls the callback\nregistered and then the pages pooled get freed.\n\nWhen the shrinker is called, it checks gfp_mask and determines whether\nthe pages from highmem need to be freed or the pages from lowmem.\nUsually, slab shrinker is invoked on kswapd context which gfp_mask is\nalways GFP_KERNEL, so only lowmem pages are released on kswapd context.\nThis means that highmem pages in the pool are never reclaimed until\ndirect reclaim occurs. This can be problematic when the page pool holds\nexcessive amounts of highmem.\n\nFor now, the shrinker callback cannot know exactly which zone should be\ntargeted for reclamation, as enough information are not passed to. Thus,\nit makes sense to shrink both lowmem and highmem zone on kswapd context.\n\nReported-by: Wonseo Choi <wonseo.choi@samsung.com>\nSigned-off-by: Heesub Shin <heesub.shin@samsung.com>\nReviewed-by: Mitchel Humpherys <mitchelh@codeaurora.org>\nTested-by: John Stultz <john.stultz@linaro.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nGit-commit: 0cd2dc4db3ba23ff8ab38b8ae81b126626f795d5\nGit-repo: git://git.kernel.org/pub/scm/linux/kernel/git/stable/linux-stable.git\n[shashim@codeaurora.org: resolve trivial merge conflict]\nSigned-off-by: Shiraz Hashim <shashim@codeaurora.org>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/87aabda070a6b9bcd7d669542e4fd485ec59f6a3"},{"sha":"4146fd0c3dd638f53bab9a0b208e5c3265f4e948","author":{"name":"John Stultz","email":"43a1884c0f1dca3e1332089eeb4ce74424519f3b@linaro.org"},"message":"gpu: ion: Fix possible null pointer dereference\n\nThe kbuild test robot reported:\n\ndrivers/staging/android/ion/ion_system_heap.c:122 alloc_largest_available() error: potential null dereference 'info'.  (kmalloc returns null)\n\nWhere the pointer returned from kmalloc goes unchecked for failure.\n\nThis patch checks the return for NULL, and reworks the logic, as\nsuggested by Colin, so we allocate the page_info structure first.\n\nAcked-by: Colin Cross <ccross@android.com>\nCc: Android Kernel Team <kernel-team@android.com>\nReported-by: kbuild test robot <fengguang.wu@intel.com>\nSigned-off-by: John Stultz <john.stultz@linaro.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nGit-commit: 60e11dfc002962181fe4f0db54b33c65fee02c52\nGit-repo: http://android.googlesource.com/kernel/common/\n[mitchelh@codeaurora.org: some context differences since we were already\n checking for a NULL return value]\nSigned-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/4146fd0c3dd638f53bab9a0b208e5c3265f4e948"},{"sha":"0d18f546593c7ec4bc0509ae02b68dde8b8f521c","author":{"name":"Colin Cross","email":"c3eb3589476a85b6e3c54298f5e4883ee431d748@android.com"},"message":"gpu: ion: fix overflow and list bugs in system heap\n\nFix a few bugs in ion_system_heap:\n\nInitialize the list node in the info block.\n\nDon't store size_remaining in a signed long, allocating >2GB\ncould overflow, resulting in a call to sg_alloc_table with\nnents=0 which panics.  alloc_largest_available will never\nreturn a block larger than size_remanining, so it can never\ngo negative.\n\nLimit a single allocation to half of all memory.  Prevents a\nlarge allocation from taking down the whole system.\n\nSigned-off-by: Colin Cross <ccross@android.com>\nGit-commit: c69de844c80884167bb42243b36498dde81eebf6\nGit-repo: http://android.googlesource.com/kernel/common/\n[mitchelh@codeaurora.org: we already had the signed long fix]\nSigned-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/0d18f546593c7ec4bc0509ae02b68dde8b8f521c"},{"sha":"a475e368ebfb617b7c822cd11429578b4018568e","author":{"name":"Colin Cross","email":"c3eb3589476a85b6e3c54298f5e4883ee431d748@android.com"},"message":"gpu: ion: check invalid values in ion_system_heap\n\nion_system_heap can only satisfy page alignment, and\nion_system_contig_heap can only satisify alignment to the\nallocation size.  Neither can support faulting user mappings\nbecause they use slab pages.\n\nSigned-off-by: Colin Cross <ccross@android.com>\nSigned-off-by: John Stultz <john.stultz@linaro.org>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/a475e368ebfb617b7c822cd11429578b4018568e"},{"sha":"92e3ed5bc414758de0904e82c2f585b383a77407","author":{"name":"kairi_zeroblade","email":"5b8573aa04a975b37483d84b47579e3bd7c03898@gmail.com"},"message":"gpu: ion: truckloads of updates to ion","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/92e3ed5bc414758de0904e82c2f585b383a77407"},{"sha":"9e2cc810f0348acaa2e10f5869d47a970e62ddb7","author":{"name":"Dorimanx","email":"e2d5a018d511c600ef601d5760d2cc7d7d5f6b78@bynet.co.il"},"message":"gpu: ion: rb_init_node to RB_CLEAR_NODE","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/9e2cc810f0348acaa2e10f5869d47a970e62ddb7"},{"sha":"7b60dfc5b7db5ad9d26b4fab44add06070f6b234","author":{"name":"Dorimanx","email":"e2d5a018d511c600ef601d5760d2cc7d7d5f6b78@bynet.co.il"},"message":"ion: fix corruption of ion_import_dma_buf properly\n\nwe found this issue but still exit in lastest kernel. Simply\nkeep ion_handle_create under mutex_lock to avoid this race.\n\nWARNING: CPU: 2 PID: 2648 at drivers/staging/android/ion/ion.c:512 ion_handle_add+0xb4/0xc0()\nion_handle_add: buffer already found.\nModules linked in: iwlmvm iwlwifi mac80211 cfg80211 compat\nCPU: 2 PID: 2648 Comm: TimedEventQueue Tainted: G        W    3.14.0 #7\n 00000000 00000000 9a3efd2c 80faf273 9a3efd6c 9a3efd5c 80935dc9 811d7fd3\n 9a3efd88 00000a58 812208a0 00000200 80e128d4 80e128d4 8d4ae00c a8cd8600\n a8cd8094 9a3efd74 80935e0e 00000009 9a3efd6c 811d7fd3 9a3efd88 9a3efd9c\nCall Trace:\n  [<80faf273>] dump_stack+0x48/0x69\n  [<80935dc9>] warn_slowpath_common+0x79/0x90\n  [<80e128d4>] ? ion_handle_add+0xb4/0xc0\n  [<80e128d4>] ? ion_handle_add+0xb4/0xc0\n  [<80935e0e>] warn_slowpath_fmt+0x2e/0x30\n  [<80e128d4>] ion_handle_add+0xb4/0xc0\n  [<80e144cc>] ion_import_dma_buf+0x8c/0x110\n  [<80c517c4>] reg_init+0x364/0x7d0\n  [<80993363>] ? futex_wait+0x123/0x210\n  [<80992e0e>] ? get_futex_key+0x16e/0x1e0\n  [<8099308f>] ? futex_wake+0x5f/0x120\n  [<80c51e19>] vpu_service_ioctl+0x1e9/0x500\n  [<80994aec>] ? do_futex+0xec/0x8e0\n  [<80971080>] ? prepare_to_wait_event+0xc0/0xc0\n  [<80c51c30>] ? reg_init+0x7d0/0x7d0\n  [<80a22562>] do_vfs_ioctl+0x2d2/0x4c0\n  [<80b198ad>] ? inode_has_perm.isra.41+0x2d/0x40\n  [<80b199cf>] ? file_has_perm+0x7f/0x90\n  [<80b1a5f7>] ? selinux_file_ioctl+0x47/0xf0\n  [<80a227a8>] SyS_ioctl+0x58/0x80\n  [<80fb45e8>] syscall_call+0x7/0x7\n  [<80fb0000>] ? mmc_do_calc_max_discard+0xab/0xe4\n\nFixes: 83271f626 (\"ion: hold reference to handle...\")\nSigned-off-by: Shawn Lin <shawn.lin@rock-chips.com>\nReviewed-by: Laura Abbott <labbott@redhat.com>\nCc: stable <stable@vger.kernel.org> # 3.14+\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/7b60dfc5b7db5ad9d26b4fab44add06070f6b234"},{"sha":"0a2661bbd85fa3be7a141aa7bfd9f9965337ae8d","author":{"name":"Dorimanx","email":"e2d5a018d511c600ef601d5760d2cc7d7d5f6b78@bynet.co.il"},"message":"ion: cma_heap: free mem if fail to create sg_table\n\nInitial version of ion_cma_heap.c in qcom baseline seems integrated a\npatch under review. Part of the error handling for ion_cma_allocate()\nin upstream version of ion_cma_heap.c is missing. Add back the missing\ncode to ensure the mem is freed when sg_table can't be created.\n\nSigned-off-by: Yuanyuan Zhong <zyy@motorola.com>\nReviewed-on: http://gerrit.mot.com/740223\nSLTApproved: Slta Waiver <sltawvr@motorola.com>\nSME-Granted: SME Approvals Granted\nTested-by: Jira Key <jirakey@motorola.com>\nReviewed-by: Fred Fettinger <fettinge@motorola.com>\nReviewed-by: Igor Kovalenko <igork@motorola.com>\nSubmit-Approved: Jira Key <jirakey@motorola.com>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/0a2661bbd85fa3be7a141aa7bfd9f9965337ae8d"},{"sha":"89bb633796b39a9126364c9379438e1065f4ff29","author":{"name":"Dorimanx","email":"e2d5a018d511c600ef601d5760d2cc7d7d5f6b78@bynet.co.il"},"message":"qdsp6v2: fallback to system heap only if smmu enabled\n\nWhen ion alloc fails for audio heap, currently driver falls back\nto use system heap. But if SMMU is not enabled, system heap is\nnot supposed to be used. Add check to avoid fallback to system\nheap if SMMU is not enabled.\n\nSigned-off-by: Laxminath Kasam <lkasam@codeaurora.org>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>\n\nhttps://github.com/neobuddy89/shamu/commit/39686f39ceff6ab6aef5850f4770b24e918d85ed","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/89bb633796b39a9126364c9379438e1065f4ff29"},{"sha":"742d1cbdd3e6fe6f1c60bacc9ecb3e83594e4596","author":{"name":"Dorimanx","email":"e2d5a018d511c600ef601d5760d2cc7d7d5f6b78@bynet.co.il"},"message":"qdsp6v2: handle ion alloc failure correctly\n\nWhen ion alloc fails for audio or system heap, an\nerror pointer is returned which gets dereferenced\ncausing a crash.\nGet the error number from the error pointer returned\nusing the PTR_ERR api.\n\nSigned-off-by: Aravind Kumar <akumark@codeaurora.org>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>\n\nhttps://github.com/neobuddy89/shamu/commit/0f2b81c93503ad85c3824ee56a4b93425b45c64d","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/742d1cbdd3e6fe6f1c60bacc9ecb3e83594e4596"},{"sha":"70d8c0a525eaf370f45689a66d9bcd1aaa5c20be","author":{"name":"Dorimanx","email":"e2d5a018d511c600ef601d5760d2cc7d7d5f6b78@bynet.co.il"},"message":"qdsp6v2: use correct length in msm_audio_ion_mmap\n\nWhen compiling for msm8994 the dma_length field is set to 0,\nmaking the use of the sg_dma_len() macro incorrect.\n\nInstead of using this macro, we use the length field directly.\n\nAcked-by: Hadar Sivan <hsivan@qti.qualcomm.com>\nSigned-off-by: Lior Barenboim <liorb@codeaurora.org>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>\n\nhttps://github.com/neobuddy89/shamu/commit/7b4c863b6dcc616b0fc0dd8d949d1d37476473ac","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/70d8c0a525eaf370f45689a66d9bcd1aaa5c20be"},{"sha":"05e70e25f56e046dd70e64ab3cfb0e60cb37941c","author":{"name":"Banajit Goswami","email":"d9f3b0ac7d3275ff534aa3f7cbf6fa940e574816@codeaurora.org"},"message":"qdsp6v2: Make audio IOMMU driver depend on Q6 status\n\nFor systems using Q6 SMMU, it is important that clients attach\nto IOMMU groups only after Q6 is brought out of reset by PIL.\nThis is to make sure that clocks for Q6 SMMU are turned ON before\nSMMU driver configures the SMMU hardware in Q6. No client should\nuse ION buffers before attach happens for IOMMU groups.\n\nChange-Id: I5652a0d00e48abf13e20c6173cba6028fd3343c0\nSigned-off-by: Banajit Goswami <bgoswami@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/05e70e25f56e046dd70e64ab3cfb0e60cb37941c"},{"sha":"85310e00dbf70463dd6036361b96ee6255ff48d1","author":{"name":"Mitchel Humpherys","email":"a3e4c84cb252737c1b2794202b0e88ea5df4dffa@codeaurora.org"},"message":"ion: msm: remove superfluous function argument\n\nmsm_ion_client_create doesn't actually do anything with its heap_mask\nparameter. Remove it. Also remove the extra argument from an audio\nfunction that wraps msm_ion_client_create.\n\nThe following semantic patch was used to generate this patch:\n\n    @@\n    expression E1, E2;\n    @@\n\n    msm_ion_client_create(\n    -       E1,\n            E2)\n\n    @@\n    expression E1, E2;\n    @@\n\n    msm_audio_ion_client_create(\n    -       E1,\n            E2)\n\nSigned-off-by: Mitchel Humpherys <mitchelh@codeaurora.org>\nSigned-off-by: Pranav Vashi <neobuddy89@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/85310e00dbf70463dd6036361b96ee6255ff48d1"},{"sha":"09632bbc9ee4a2794e5fbc3c74faf941ce560eda","author":{"name":"Ícaro Hoff","email":"a69c933c7d238282a57d7084d7277687d710e0e3@gmail.com"},"message":"qdsp6v2: remove superfluous function argument\n\nBecause of previous commit: eabd17e879fcfc3ac955b8bcaa8b1eafaf2af372\n\nSigned-off-by: Ícaro Hoff <icarohoff@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/09632bbc9ee4a2794e5fbc3c74faf941ce560eda"},{"sha":"3ea4081cf4f77e0cc043a38c07c7f75b23850275","author":{"name":"Ícaro Hoff","email":"a69c933c7d238282a57d7084d7277687d710e0e3@gmail.com"},"message":"defconfig: organize CPU governors as per Kconfig\n\nDon't get me wrong, but why paid LGE developers don't pay more attention\nto syntax and concept?\nLook at the Linux code style and position of elements/syntax in\ndrivers/cpufreq/Kconfig.\nThen, look at the LGE feature: LGE_LOW_BATT_LIMIT.\nNo space, no description...\n\nSigned-off-by: Ícaro Hoff <icarohoff@gmail.com>","distinct":true,"url":"https://api.github.com/repos/GalaticStryder/kernel_lge_msm8974/commits/3ea4081cf4f77e0cc043a38c07c7f75b23850275"}]}
{"actor":{"display_login":"GalaticStryder"}}