{"push_id":3169074612,"size":1,"distinct_size":1,"ref":"refs/heads/9.0","head":"24c6d0c7787f6790d9ffdf0a826ce159c5ec1135","before":"9460d49e3b6f64f313aabd48488e404cde4e5432","commits":[{"sha":"24c6d0c7787f6790d9ffdf0a826ce159c5ec1135","author":{"name":"Todd Kjos","email":"8be399b0cc2f31b2ed16702a88343f61fd6797ee@google.com"},"message":"FROMLIST: binder: refactor queue management in binder_thread_read\n\n(from https://patchwork.kernel.org/patch/9817757/)\n\nIn binder_thread_read, the BINDER_WORK_NODE command is used\nto communicate the references on the node to userspace. It\ncan take a couple of iterations in the loop to construct\nthe list of commands for user space. When locking is added,\nthe lock would need to be release on each iteration which\nmeans the state could change. The work item is not dequeued\nduring this process which prevents a simpler queue management\nthat can just dequeue up front and handle the work item.\n\nFixed by changing the BINDER_WORK_NODE algorithm in\nbinder_thread_read to determine which commands to send\nto userspace atomically in 1 pass so it stays consistent\nwith the kernel view.\n\nThe work item is now dequeued immediately since only\n1 pass is needed.\n\nChange-Id: I9b4109997b2d53ba661867b14d7336cd076be06d\nSigned-off-by: Todd Kjos <tkjos@google.com>","distinct":true,"url":"https://api.github.com/repos/Huawei-Dev/android_kernel_huawei_bach/commits/24c6d0c7787f6790d9ffdf0a826ce159c5ec1135"}]}
{"actor":{"display_login":"Huawei-Dev"}}