{"push_id":719446869,"size":366,"distinct_size":362,"ref":"refs/heads/lp5.1","head":"2c01da0a7958d47d1add1ee8c0d1366374fced82","before":"008f6068bad7103cf6cf8d5889cacd7b64576007","commits":[{"sha":"5fe0038381415f8c3ed5f79832386443d4295b84","author":{"email":"ff1e5ded47dd5c88716d0ac2f671fd3e0c0ebc6d@codeaurora.org","name":"Carter Cooper"},"message":"msm: kgsl: Ensure signals do not cause waits to end early\n\nMove to using uninterruptible (which will bail if any signal is received)\nwhen waiting on events.  A signal was causing the wait to finish\nprematurely, freeing memory while the GPU was still using it.  This caused\nquite a few page faults and the device to become unstable.\n\nChange-Id: Ic0dedbade9143c9377830a209c3ffd252aa9668b\nSigned-off-by: Carter Cooper <ccooper@codeaurora.org>\nSigned-off-by: Jordan Crouse <jcrouse@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/5fe0038381415f8c3ed5f79832386443d4295b84"},{"sha":"6784522ba5f240fe05a526d4837b5208b7cc99fa","author":{"email":"fec53db8c4887e6e95defbb5052bc6438029c1e6@codeaurora.org","name":"Jordan Crouse"},"message":"msm: kgsl: Panic if global timestamp wait fails in context detach\n\nIf we timeout while waiting for the last issued global timestamp for\na detaching context to expire (10 seconds!) then we are on a fast\ntrain to crashville.  BUG_ON() so we can stand a chance of debugging\nthis very rare issue.\n\nChange-Id: Ic0dedbaddb9cbc5681f9c872785ce26b7cf9b87b\nSigned-off-by: Jordan Crouse <jcrouse@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/6784522ba5f240fe05a526d4837b5208b7cc99fa"},{"sha":"cbcdd43411f0380962956688c4e717a0d92795c8","author":{"email":"fec53db8c4887e6e95defbb5052bc6438029c1e6@codeaurora.org","name":"Jordan Crouse"},"message":"msm: kgsl: Force the ME off before reading the microcode\n\nOn A3XX reading the microcode while the CP is running is dangerous\nbeyond words.  By setting the offset address for the read, we are\nessentially changing the instruction pointer for the ME while it\nis running causing opcode errors, gpu faults and/or system errors.\n\nWe do not want to stop the CP at the beginning of the snapshot\nprocess beacuse doing so changes the RBBM status and the state of\nthe CP registers which may damage the debug effort.  But by the\ntime we get to the microcode read we no longer care about the state\nof the registers so we can freely halt the ME just before starting\nthe read.\n\nCRs-fixed: 585449\nChange-Id: Ic0dedbad85d7ec26915f054dd597e226e8101a29\nSigned-off-by: Jordan Crouse <jcrouse@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/cbcdd43411f0380962956688c4e717a0d92795c8"},{"sha":"f60b6ac62f6b5f4d5bc67b784086793ca4c4362e","author":{"email":"be5b96b982d71a0e8c9df1629ed76a94a416b6dd@codeaurora.org","name":"Hareesh Gundu"},"message":"msm: kgsl: Fix mem leak when page allocation fails\n\nPage allocation may fail during OOM condition. Update\nsglen and size to correct value (allocated) so that\nthey get freed in kgsl_sharedmem_free().\n\nChange-Id: I1aa0ca77bb767523dfcf0f6cc3a21eac2b6b80e4\nSigned-off-by: Hareesh Gundu <hareeshg@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/f60b6ac62f6b5f4d5bc67b784086793ca4c4362e"},{"sha":"b2d1854a485e15d2627ae22d49b29aae9165dfca","author":{"email":"fec53db8c4887e6e95defbb5052bc6438029c1e6@codeaurora.org","name":"Jordan Crouse"},"message":"msm: kgsl: Restrict the maximum memory entries for bulk cache sync\n\nRestrict the maximum number of memory entries that can be specified\nto a single bulk cache sync call to PAGE_SIZE / sizeof(unsigned int)\nso that the allocation can always fit within one page.\n\nCRs-fixed: 578062\nChange-Id: Ic0dedbad07e1986cd6ccc5b260ffef82b5adb6d3\nSigned-off-by: Jordan Crouse <jcrouse@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/b2d1854a485e15d2627ae22d49b29aae9165dfca"},{"sha":"4e8dfff7d96bb7eeef7ab7064c2ecbac062125d7","author":{"email":"fec53db8c4887e6e95defbb5052bc6438029c1e6@codeaurora.org","name":"Jordan Crouse"},"message":"msm: kgsl: Protect against a potential overflow in kgsl_sg_alloc\n\nAvoid allocating a scatterlist so large that it overflows the size\npassed to the memory allocators.\n\nCRs-fixed: 564448\nChange-Id: Ic0dedbad2ab421ddec8f3be38d61c9bdf9ae5bd4\nSigned-off-by: Jordan Crouse <jcrouse@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/4e8dfff7d96bb7eeef7ab7064c2ecbac062125d7"},{"sha":"4af90441adb1b081bab922af8e4a1301489d1120","author":{"email":"ed689b62f258aca7b8c4cfe3bd37072f12cbc0cd@codeaurora.org","name":"Prakash Kamliya"},"message":"msm: kgsl: avoid zero length scatterlist allocation\n\nDuring sglist allocation we calculate sglen as\nper below\n\nsglen_alloc = PAGE_ALIGN(size) >> PAGE_SHIFT;\n\nsglen_alloc can be zero if size falls within the\nlast page. For example, when size = 0xFFFF_FF7B,\nPAGE_ALIGN(0xFFFF_FF7B) will be 0, considering\n0x1000 (4kb) PAGE_SIZE. if kzalloc() with\nzero size, it will return ZERO_SIZE_PTR which is\nnot NULL and we always do NULL check. Dereferencing\nZERO_SIZE_PTR will lead to a distinct access fault.\n\nChange-Id: Ibcc6198438c13b5111be0faa736328db92511597\nCRs-Fixed: 563106\nSigned-off-by: Prakash Kamliya <pkamliya@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/4af90441adb1b081bab922af8e4a1301489d1120"},{"sha":"1a3726842d397019e6d255a82e5379a2a29dfdb5","author":{"email":"fec53db8c4887e6e95defbb5052bc6438029c1e6@codeaurora.org","name":"Jordan Crouse"},"message":"msm: kgsl: Fix several possible problem spots in the dispatcher\n\nFix a few spots that the compiler warnings missed. Avoid\ndereferencing a pointer that may have returned ERR_PTR() without\nfirst checking to see that if it did return ERR_PTR() and correct\nan egregious signed / unsigned mixup. Not sure why the compiler\ndidn't yell at me for that one.\n\nChange-Id: Ic0dedbadf075b34e51a89ce625d2308c5171a58d\nSigned-off-by: Jordan Crouse <jcrouse@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/1a3726842d397019e6d255a82e5379a2a29dfdb5"},{"sha":"b53623f983fafe096326aa376d2df34370c80666","author":{"email":"39712bdc59b9c84a53710644059a29ec40696925@codeaurora.org","name":"Shrenuj Bansal"},"message":"msm: kgsl: when unmapping from the mmu flush the entire tlb\n\nFlushes the entire tlb when calling mmu_unmap to make sure there\nis no race condition between unmapping and freeing the pages.\n\nChange-Id: I911f8479a3aef2006f9df40a3419284423937542\nSigned-off-by: Shrenuj Bansal <shrenujb@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/b53623f983fafe096326aa376d2df34370c80666"},{"sha":"34a6ccedc34ebb5a44b568e51c2f162f8d4fdc49","author":{"email":"130908656622cf304523d334877ef0f505f9a71e@codeaurora.org","name":"Tarun Karra"},"message":"msm: kgsl: Prevent device start after it is already started\n\nCheck if device is already started in high priority workqueue thread,\nthis check prevents calling device start after it is already started,\nthereby avoiding unpredictable behavior.\n\nChange-Id: Iffcd065f8c02746d168c8e5779d10d4b0e2404a9\nSigned-off-by: Tarun Karra <tkarra@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/34a6ccedc34ebb5a44b568e51c2f162f8d4fdc49"},{"sha":"c216e245a299d27a3dd464b0dfdce0c85d4fe8fb","author":{"email":"af9cbceb8388e2170881d17f5ca88833c5c37ed6@codeaurora.org","name":"Shubhraprakash Das"},"message":"msm: kgsl: When switching pagetable use current context ID\n\nWhen we switch pagetables then the pagetable switch commands\nshould be executed on behalf of the current active context and\nnot the context to which we are switching. This is because\nuntil the pagetable switch occurs the GPU will be using the\npagetable of the active context.\n\nCRs-fixed: 574989\nChange-Id: I9ca65ea399e39a158dc72adc2c7b661f62f18c93\nSigned-off-by: Shubhraprakash Das <sadas@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/c216e245a299d27a3dd464b0dfdce0c85d4fe8fb"},{"sha":"2b1a0197df63127eb41222eae0512c1772ecaa24","author":{"email":"fec53db8c4887e6e95defbb5052bc6438029c1e6@codeaurora.org","name":"Jordan Crouse"},"message":"msm: kgsl: Don't block on detach if the context is invalid\n\nAn invalidated context means that something pretty nasty happened and\nlikely there was an unrecovered GPU fault along the way. If this is\nthe case then the GPU is likely not processing commands for the context\nanymore. Don't block for the last retired global if the context was\ninvalidated.\n\nChange-Id: Ic0dedbad22a22b704baf14557d7e18cc4cf1044a\nSigned-off-by: Jordan Crouse <jcrouse@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/2b1a0197df63127eb41222eae0512c1772ecaa24"},{"sha":"ac0fe4de270a9e631555e93d4a07198eeb1a7921","author":{"email":"23f91d89366f4cb0df23994b6daef7a49583b4f7@codeaurora.org","name":"Lynus Vaz"},"message":"msm: kgsl: Fix the NULL context submission size\n\nWhen submitting commands with a NULL context the size may not be\ncalculated properly. Fix this calculation.\n\nChange-Id: Idcc37772349673da8a9b9d5127f88946ced8fff6\nSigned-off-by: Lynus Vaz <lvaz@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/ac0fe4de270a9e631555e93d4a07198eeb1a7921"},{"sha":"49539774be8a1c6e3209226bf88a0eb543f2598a","author":{"email":"32f41aacb8b63fec32f7001294b88acbe16ae776@codeaurora.org","name":"Prabhat Awasthi"},"message":"msm: kgsl: Don't open kgsl device in erroneous case\n\nIf kgsl_get_process_private() returns NULL, it goes to\nerr_stop with result = -ENOMEM. If open_count is 0,\nadreno_stop() overwrites the result variable with 0.\nThis leads to kgsl_open() to be successful while it\nshouldn't.\n\nChange-Id: Ic12d92a099280e4d958fa192fa5128211120d361\nSigned-off-by: Prabhat Awasthi <pawasthi@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/49539774be8a1c6e3209226bf88a0eb543f2598a"},{"sha":"feb7d99095e912aee2204bb90453500238094f90","author":{"email":"fec53db8c4887e6e95defbb5052bc6438029c1e6@codeaurora.org","name":"Jordan Crouse"},"message":"msm: kgsl: Pass the right timeout to adreno_drawctxt_wait()\n\nadreno_drawctxt_wait() expects the passed in timeout to be in\nmilliseconds and converts it to jiffies.  Unfortunately, so does\nthe caller so the timeout is shorter than it should be.\n\nChange-Id: Ic0dedbad85d50b32dba0fbf3ebb914335bf55166\nSigned-off-by: Jordan Crouse <jcrouse@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/feb7d99095e912aee2204bb90453500238094f90"},{"sha":"d1faaa4e85ffff5b78269cc16b3926c863dfc2ea","author":{"email":"130908656622cf304523d334877ef0f505f9a71e@codeaurora.org","name":"Tarun Karra"},"message":"msm: kgsl: Get CP_RPTR from register instead of shadow memory\n\nSometimes the RPTR shadow memory is unreliable causing timeouts\nin adreno_idle().  Read it directly from the register instead.\n\nChange-Id: Icae7521edd9723610c41f320c6a5c99f57bec7f5\nSigned-off-by: Tarun Karra <tkarra@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/d1faaa4e85ffff5b78269cc16b3926c863dfc2ea"},{"sha":"772ce0908f14e8546ac8a52ae66f4f6b29025a3a","author":{"email":"af9cbceb8388e2170881d17f5ca88833c5c37ed6@codeaurora.org","name":"Shubhraprakash Das"},"message":"msm: kgsl: Flush the UCHE when context changes\n\nAdd commands to flush the GPU UCHE when a new context submits\ncommands to GPU. The ensures that the new context does not use\nstale data present in UCHE.\n\nChange-Id: I123a323be5f3fb9d1f9f96fed5bb68b8d0d27d76\nCRs-Fixed: 607976\nSigned-off-by: Shubhraprakash Das <sadas@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/772ce0908f14e8546ac8a52ae66f4f6b29025a3a"},{"sha":"1d3f38786583bcae1ecdf8825e60249f9178f163","author":{"email":"130908656622cf304523d334877ef0f505f9a71e@codeaurora.org","name":"Tarun Karra"},"message":"msm: kgsl: Enhance GFT to avoid hang->recover->hang cycle\n\nIf GFT recovered more than X times in Y ms invalidate the context\nand do not attempt recovery. this is to prevent the case where GFT keeps\nrecovering continuously.\n\nChange-Id: I9326a4cf0c8d1b6b92497ae5cd086e4b8bb7e89f\nSigned-off-by: Tarun Karra <tkarra@codeaurora.org>","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/1d3f38786583bcae1ecdf8825e60249f9178f163"},{"sha":"222bd131abd6fe9c30bbccfa137da6ef6c4adcce","author":{"email":"c5e3cbfb5279ca4b6b2d8c74edb0ba900ca2c4a8@google.com","name":"Vineeta Srivastava"},"message":"Revert \"Revert \"Power: add an API to log wakeup reasons\"\"\n\nThis reverts commit 27778c7d8ea99a9031dfbf04f73054a70bee76bc.\n\nChange-Id: I61f49d06d13e0485203faea83dc9ee233746c672","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/222bd131abd6fe9c30bbccfa137da6ef6c4adcce"},{"sha":"1851b523b2b3b182a5b4c7ffa47de5bf9b9c04da","author":{"email":"c5e3cbfb5279ca4b6b2d8c74edb0ba900ca2c4a8@google.com","name":"Vineeta Srivastava"},"message":"Revert \"Revert \"POWER: fix compile warnings in log_wakeup_reason\"\"\n\nThis reverts commit 23379380c714e09a5e8e17002a1371074f383012.\n\nChange-Id: I7a7cd653ef0bac13d8f7a9c92dca83b98a466d4e","distinct":true,"url":"https://api.github.com/repos/semdoc/kernel_google_msm/commits/1851b523b2b3b182a5b4c7ffa47de5bf9b9c04da"}]}