add android sw_sync to kernel 3.8 |
|||
Issue descriptionadd android sw_sync to kernel 3.8
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/6f1e68f58b9b891f9d882fd1686739ba965bfa86 commit 6f1e68f58b9b891f9d882fd1686739ba965bfa86 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:08 2017 UPSTREAM: staging: sw_sync: Add cpu based sync driver Adds a base sync driver that uses the cpu for serialization. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Add commit message, whitespace fixes and move to staging directory] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 9d1906e61dda982070e3910a04d9cce050f7f1a4) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: If416df5e07350c3278ac91cd15df47d8ccd1a1a7 Reviewed-on: https://chromium-review.googlesource.com/563614 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [add] https://crrev.com/6f1e68f58b9b891f9d882fd1686739ba965bfa86/drivers/staging/android/sw_sync.h [modify] https://crrev.com/6f1e68f58b9b891f9d882fd1686739ba965bfa86/drivers/staging/android/Makefile [modify] https://crrev.com/6f1e68f58b9b891f9d882fd1686739ba965bfa86/drivers/staging/android/Kconfig [add] https://crrev.com/6f1e68f58b9b891f9d882fd1686739ba965bfa86/drivers/staging/android/sw_sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/c9b3d8a86e4725b5f7bf1a7f1f7bcc0ec77ba825 commit c9b3d8a86e4725b5f7bf1a7f1f7bcc0ec77ba825 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:09 2017 UPSTREAM: staging: sync: Add timestamps to sync_pts Add ktime timestamps to sync_pt structure and update them when signaled BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Added commit message] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 97a84843ac4a1b81c36ccf35ee26cd19c5b8d873) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: Ide41de0713e0a37cc4f05e78da7c1f849dc46551 Reviewed-on: https://chromium-review.googlesource.com/563615 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/c9b3d8a86e4725b5f7bf1a7f1f7bcc0ec77ba825/drivers/staging/android/sync.c [modify] https://crrev.com/c9b3d8a86e4725b5f7bf1a7f1f7bcc0ec77ba825/drivers/staging/android/sync.h
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/0b57fc6c0f80be30571b862d2031534be8fa09f0 commit 0b57fc6c0f80be30571b862d2031534be8fa09f0 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:09 2017 UPSTREAM: staging: sync: Add debugfs support Add support for debugfs BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Add commit message] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit af7582f293cdc29999d05f75b1ec835ffa43cb68) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I329867a20d2d50c6bd3c7b42f0795607ddfaeb82 Reviewed-on: https://chromium-review.googlesource.com/564236 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/0b57fc6c0f80be30571b862d2031534be8fa09f0/drivers/staging/android/sync.c [modify] https://crrev.com/0b57fc6c0f80be30571b862d2031534be8fa09f0/drivers/staging/android/sync.h
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/446bd3af63114978db4b9be9f69ca49429f28cbf commit 446bd3af63114978db4b9be9f69ca49429f28cbf Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:10 2017 UPSTREAM: staging: sw_sync: Add debug support Add debugfs support hooks. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Add commit message] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit cebed3b1d7eaee7fb79e2c510a0da4296db043c8) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I86f6487980be492e6318c67acab644686ca2e5d4 Reviewed-on: https://chromium-review.googlesource.com/564237 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/446bd3af63114978db4b9be9f69ca49429f28cbf/drivers/staging/android/sw_sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/676d819c5877378bd7f5149826ddaf240f3ab750 commit 676d819c5877378bd7f5149826ddaf240f3ab750 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:11 2017 UPSTREAM: staging: sync: Add ioctl to get fence data Add ioctl to get fence data BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Commit message tweaks] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 79ba1525a91e99cdd7a3b6a57c7537d13ac0ac19) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I5bea7ef0b2efd7d49e16b26a330af85f33c42a0c Reviewed-on: https://chromium-review.googlesource.com/564238 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/676d819c5877378bd7f5149826ddaf240f3ab750/drivers/staging/android/sync.c [modify] https://crrev.com/676d819c5877378bd7f5149826ddaf240f3ab750/drivers/staging/android/sync.h
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/bf072a01fb6da75fe7da0f29658a7b3ba1324358 commit bf072a01fb6da75fe7da0f29658a7b3ba1324358 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:12 2017 UPSTREAM: staging: sw_sync: Add fill_driver_data support Add fill_driver_data support to export fence data to ioctl BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Add commit message] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit b1489c2704b3db72ff37ecabe054926176e88e50) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I99e8572992ed8e83f1811053c716ae0b3babe60e Reviewed-on: https://chromium-review.googlesource.com/564239 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/bf072a01fb6da75fe7da0f29658a7b3ba1324358/drivers/staging/android/sw_sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/8fa345eb027c6a4ecd45721516ed5488624e2060 commit 8fa345eb027c6a4ecd45721516ed5488624e2060 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:13 2017 UPSTREAM: staging: sync: Add poll support Support poll on sync fence BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Add commit message] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 57b505bbe746dcc011152e79732bdaf96723c51a) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: Ife5867f17b355bfa58d1744606bdc5922c09d81e Reviewed-on: https://chromium-review.googlesource.com/564240 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/8fa345eb027c6a4ecd45721516ed5488624e2060/drivers/staging/android/sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/32387a4d94bdaf438c4efe11e69083edf5917476 commit 32387a4d94bdaf438c4efe11e69083edf5917476 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:14 2017 UPSTREAM: staging: sync: Allow async waits to be canceled In order to allow drivers to cleanly handled teardown we need to allow them to cancel pending async waits. To do this cleanly, we move allocation of sync_fence_waiter to the driver calling sync_async_wait(). BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit c0f61a4e6145728153d0b94152b4dd5b06899b3b) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: If4bb748df04183aec367c7ecb924cef4c37f1e62 Reviewed-on: https://chromium-review.googlesource.com/564241 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/32387a4d94bdaf438c4efe11e69083edf5917476/drivers/staging/android/sync.c [modify] https://crrev.com/32387a4d94bdaf438c4efe11e69083edf5917476/drivers/staging/android/sync.h
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/5cbd1faaed4ca73e0cd5d9151294d5bffbb9fda7 commit 5cbd1faaed4ca73e0cd5d9151294d5bffbb9fda7 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:15 2017 UPSTREAM: staging: sync: Export sync API symbols This is needed to allow modules to link against the sync subsystem BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 8edb4ad9118befafe6e0a6b7456939b74a545e42) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: Ic977c5b52afaeb36c0f8fca8b2074cdd0c664c67 Reviewed-on: https://chromium-review.googlesource.com/564242 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/5cbd1faaed4ca73e0cd5d9151294d5bffbb9fda7/drivers/staging/android/sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/c157933dd0ae3b08c1499b9b4eb7f567d281e709 commit c157933dd0ae3b08c1499b9b4eb7f567d281e709 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:16 2017 UPSTREAM: staging: sw_sync: Export sw_sync API Needed to let modules link against sw_sync. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 6e91f719865df97abf483b80b7778dc8a51011c4) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: Iaf7963ea3537df07b137d1cda3cd21c8ec8f8aa0 Reviewed-on: https://chromium-review.googlesource.com/564243 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/c157933dd0ae3b08c1499b9b4eb7f567d281e709/drivers/staging/android/sw_sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/60ccae34a6ed0518f68571168abec5ff4d5aff01 commit 60ccae34a6ed0518f68571168abec5ff4d5aff01 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:17 2017 UPSTREAM: staging: sync: Reorder sync_fence_release Previously fence's pts were freed before the were the fence was removed from the global fence list. This led to a race with the debugfs support where it would iterate over sync_pts that had been freed. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit cc3c5cdc7bc16b78b6c59f0720542965a67d1c81) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I8565b60259ed2b5f763cb7158ace6c4fa1666814 Reviewed-on: https://chromium-review.googlesource.com/564244 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/60ccae34a6ed0518f68571168abec5ff4d5aff01/drivers/staging/android/sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/ff2846fd0cc21c52973d8b7a60d8ccd740b9b153 commit ff2846fd0cc21c52973d8b7a60d8ccd740b9b153 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:18 2017 UPSTREAM: staging: sync: Optimize fence merges If the two fences being merged contain sync_pts from the same timeline, those two pts will be collapsed into a single pt representing the latter of the two. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Whitespace fixes] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit c6f668ce63943db48057b2e3ae8ef3ad5f9b29d2) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I9d2d0b42e4481833613c3ddb233f23ca7a89fd00 Reviewed-on: https://chromium-review.googlesource.com/564245 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/ff2846fd0cc21c52973d8b7a60d8ccd740b9b153/drivers/staging/android/sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/e8ba013f27ed54dd6c117619afa22437ee1b3813 commit e8ba013f27ed54dd6c117619afa22437ee1b3813 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:19 2017 UPSTREAM: staging: sync: Add internal refcounting to fences If a fence is released while a timeline that one of it's pts is on is being signaled, it is possible for that fence to be deleted before it is signaled. This patch adds a refcount for internal references such as signaled pt processing. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 01544170e1959dd261ceec6413674a528221669b) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I51a5f2f97f02505d46f47c7442572fff009442ec Reviewed-on: https://chromium-review.googlesource.com/564246 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/e8ba013f27ed54dd6c117619afa22437ee1b3813/drivers/staging/android/sync.c [modify] https://crrev.com/e8ba013f27ed54dd6c117619afa22437ee1b3813/drivers/staging/android/sync.h
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/9f6ba2ea44a7490d5f0cbc8722ac52f46594b433 commit 9f6ba2ea44a7490d5f0cbc8722ac52f46594b433 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:20 2017 UPSTREAM: staging: sync: Add reference counting to timelines If a timeline is destroyed while fences still hold pts on it, the reworked fence release handler can cause the timeline to be freed before all it's points are freed. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Squished in compiler warning fix] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit c5b86b7418f46220a623277718d6a909f520477b) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I9db4c2a6d0331fb97bed2e36c878ac5ff6a80f1f Reviewed-on: https://chromium-review.googlesource.com/564247 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/9f6ba2ea44a7490d5f0cbc8722ac52f46594b433/drivers/staging/android/sync.c [modify] https://crrev.com/9f6ba2ea44a7490d5f0cbc8722ac52f46594b433/drivers/staging/android/sync.h
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/5ba6a67ae1273c33847cf12e0cb18cea79682c7f commit 5ba6a67ae1273c33847cf12e0cb18cea79682c7f Author: Rebecca Schultz Zavin <rebecca@android.com> Date: Sun Jul 09 13:50:21 2017 UPSTREAM: staging: sync: Fix error paths Check the return value of get_unused_fd to make sure a valid file descriptor is returned. Make sure to call put_unused_fd even if an error occurs before the fd can be used. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 92ea915adb5565b522902a7b3f0a33ede16bb797) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I19b931146aea68d338e7d509f6ab6c1db2314241 Reviewed-on: https://chromium-review.googlesource.com/564248 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/5ba6a67ae1273c33847cf12e0cb18cea79682c7f/drivers/staging/android/sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/89e5fad1f0ea5ad4274185aefbe2bb86ea8eae83 commit 89e5fad1f0ea5ad4274185aefbe2bb86ea8eae83 Author: Rebecca Schultz Zavin <rebecca@android.com> Date: Sun Jul 09 13:50:22 2017 UPSTREAM: staging: sw_sync: Fix error paths Check the return value of get_unused_fd to make sure a valid file descriptor is returned. Make sure to call put_unused_fd even if an error occurs before the fd can be used. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Rebecca Schultz Zavin <rebecca@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 03e7a503561f6d0ef09c7ec73772a7a6f78417d3) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: If218161d524fdab54ea79f879b6fb17bfd1b4e58 Reviewed-on: https://chromium-review.googlesource.com/564249 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/89e5fad1f0ea5ad4274185aefbe2bb86ea8eae83/drivers/staging/android/sw_sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/b2e0b892116bb96fc93a78662ce2b5ad36278fb1 commit b2e0b892116bb96fc93a78662ce2b5ad36278fb1 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:24 2017 UPSTREAM: staging: sync: Dump sync state to console on timeout If we hit a timeout, dump sync state to console BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Add commit message, whitespace fixups] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit f56388f3bd15a853d5718bf31c5d4dbc8f499cbe) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I0b7c6fb8c5e1bcfa853717140d79a59ba7900472 Reviewed-on: https://chromium-review.googlesource.com/564251 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/b2e0b892116bb96fc93a78662ce2b5ad36278fb1/drivers/staging/android/sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/b5f0f9b75ca640667a1aa2281a0a7ee480539b23 commit b5f0f9b75ca640667a1aa2281a0a7ee480539b23 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:23 2017 UPSTREAM: staging: sync: Change wait timeout to mirror poll semantics Change wait timeout to act like poll BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Added commit message, squished typo-fix] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 3b640f5dd050f972439e5c67ba618a5377b61d34) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: Ic23791494a729e3cb2dd66c5f7b560306e924bb1 Reviewed-on: https://chromium-review.googlesource.com/564250 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/b5f0f9b75ca640667a1aa2281a0a7ee480539b23/drivers/staging/android/sync.c [modify] https://crrev.com/b5f0f9b75ca640667a1aa2281a0a7ee480539b23/drivers/staging/android/sync.h
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/5ae42359e0e5d7d7331158d5e0b6caa87407605a commit 5ae42359e0e5d7d7331158d5e0b6caa87407605a Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:25 2017 UPSTREAM: staging: sync: Improve timeout dump messages Improve the output of the timeout dumps, including the fence pointer. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Added commit message] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 1d5db2ce93089db91d7997927b4cfd92a88c5aad) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I9da8d6bf9405b4c6e9b3a8c10ca73fb7b95c3c32 Reviewed-on: https://chromium-review.googlesource.com/564252 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/5ae42359e0e5d7d7331158d5e0b6caa87407605a/drivers/staging/android/sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/10750519093c52746f7aecd7d73f9e354fa6cb34 commit 10750519093c52746f7aecd7d73f9e354fa6cb34 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:26 2017 UPSTREAM: staging: sync: Dump sync state on fence errors When we get a bad status, dump sync state BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Added commit message] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 7560645406b8341ab74644b505297e3e32fa6f3a) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I531632356fe9a7985cedae3cb96134a1be059aaf Reviewed-on: https://chromium-review.googlesource.com/564253 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/10750519093c52746f7aecd7d73f9e354fa6cb34/drivers/staging/android/sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/cd514f3fb8e6e212c8da981de00715c3d478dc4e commit cd514f3fb8e6e212c8da981de00715c3d478dc4e Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:26 2017 UPSTREAM: staging: sync: Protect unlocked access to fence status Fence status is checked outside of locks in both sync_fence_wait and sync_fence_poll. This patch adds propper barrier protection in these cases to avoid seeing stale status. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit c679212dbfd060513e156133326122bf9f496579) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I39130cbfe1754a403830d5280b0214b725e59bd4 Reviewed-on: https://chromium-review.googlesource.com/564254 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/cd514f3fb8e6e212c8da981de00715c3d478dc4e/drivers/staging/android/sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/4072faf89ecc6d6575ec03f4329135c5571d2cdf commit 4072faf89ecc6d6575ec03f4329135c5571d2cdf Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:27 2017 UPSTREAM: staging: sync: Update new fence status with sync_fence_signal_pt If a fence's pt is signaled before sync_fence_create is called, the fence will never transition into the signaled state. This also address a tiny race if a merged fence's pt after sync_fence_get_status checks it's status and before fence->status is updated. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit eeb2f571639feedcfce3f1718b0c3fd85d796812) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I5a926e7169075910029df1c2b1cb9958b5cf217f Reviewed-on: https://chromium-review.googlesource.com/564255 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/4072faf89ecc6d6575ec03f4329135c5571d2cdf/drivers/staging/android/sync.c
,
Jul 9 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/6b8b7421e5ee6159b3712cfd2e76a3ed04c7f2c4 commit 6b8b7421e5ee6159b3712cfd2e76a3ed04c7f2c4 Author: Erik Gilling <konkers@android.com> Date: Sun Jul 09 13:50:28 2017 UPSTREAM: staging: sync: Use proper barriers when waiting indefinitely The previous fix only addressed waiting with a timeout. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 4b5de08a37e8189c039424c92ca76ff605cf1c7f) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: Id694b616e205a276a401042efa50ab2f592afcd3 Reviewed-on: https://chromium-review.googlesource.com/564256 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/6b8b7421e5ee6159b3712cfd2e76a3ed04c7f2c4/drivers/staging/android/sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/b1cb358e8ee0debcb0f18950e6040d9399860f84 commit b1cb358e8ee0debcb0f18950e6040d9399860f84 Author: Erik Gilling <konkers@android.com> Date: Mon Jul 10 04:15:40 2017 UPSTREAM: staging: sync: Refactor sync debug printing Move driver callbacks to fill strings instead of using seq_files. This will allow those values to be used in a future tracepoint patch. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit dbd523905bac49da0643332e4eb0f2202e2acd06) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I40be05fee5facbabfa196897cefb12bdc30d4769 Reviewed-on: https://chromium-review.googlesource.com/564257 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/b1cb358e8ee0debcb0f18950e6040d9399860f84/drivers/staging/android/sync.c [modify] https://crrev.com/b1cb358e8ee0debcb0f18950e6040d9399860f84/drivers/staging/android/sync.h
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/bcfb04e23f67d1e612b95721bad52d62f1b6d439 commit bcfb04e23f67d1e612b95721bad52d62f1b6d439 Author: Erik Gilling <konkers@android.com> Date: Mon Jul 10 04:15:41 2017 UPSTREAM: staging: sw_sync: Convert to use new value_str debug ops Switch from print_obj/print_pt to the new timeline_value_str and pt_value_str ops. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Add commit message] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 135114a566c15dfe44fb8ca31e42dd215d627383) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I68e15cb86a9ec5054da670b7fe7229fbd9d1c0d3 Reviewed-on: https://chromium-review.googlesource.com/564258 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/bcfb04e23f67d1e612b95721bad52d62f1b6d439/drivers/staging/android/sw_sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/da9d09dc36c35dc38f581dcc335169480eae06f0 commit da9d09dc36c35dc38f581dcc335169480eae06f0 Author: Erik Gilling <konkers@android.com> Date: Mon Jul 10 04:15:42 2017 UPSTREAM: staging: sync: Add tracepoint support Add support for tracepoints BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Whitespace changes, add commit message, move to staging] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit b699a644f82110e8e5a0f9b45ee1d3a3cd3e4586) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: Ieae3bf878edca12928b73016e04d57b1bc23efd5 Reviewed-on: https://chromium-review.googlesource.com/564259 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/da9d09dc36c35dc38f581dcc335169480eae06f0/drivers/staging/android/sync.c [add] https://crrev.com/da9d09dc36c35dc38f581dcc335169480eae06f0/drivers/staging/android/trace/sync.h
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/09cd5724c0d9a15116ed10aeaf9ad9c3a9511ef6 commit 09cd5724c0d9a15116ed10aeaf9ad9c3a9511ef6 Author: Ørjan Eide <orjan.eide@arm.com> Date: Mon Jul 10 04:15:43 2017 UPSTREAM: staging: sync: Fix race condition between merge and signal The copied sync_pt was activated immediately. If the sync_pt was signaled before the entire merge was completed, the new fence's pt_list could be iterated over while it is still in the process of being created. Moving the the sync_pt_activate call for all new sync_pts to after both the sync_fence_copy_pts and the sync_fence_merge_pts calls ensure that the pt_list is complete and immutable before it can be reached from the timeline's active list. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 713648f0f137e149a1acade3278b621728291f37) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I84565f6e6031ce9026a5de93902518f01b0b04fb Reviewed-on: https://chromium-review.googlesource.com/564260 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/09cd5724c0d9a15116ed10aeaf9ad9c3a9511ef6/drivers/staging/android/sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/bc0e4fe35b10409d83b2fe85fde8654526778271 commit bc0e4fe35b10409d83b2fe85fde8654526778271 Author: Erik Gilling <konkers@android.com> Date: Mon Jul 10 04:15:44 2017 UPSTREAM: staging: sync: Don't log wait timeouts when timeout = 0 If the timeout is zero, don't trip the timeout debugging BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Erik Gilling <konkers@android.com> [jstultz: Added commit message] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 4c67d802119813f11fd7c71ca9e6d0f805ea414a) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: Ia6dc2726cb6b6a193b073c32846cb63c8d2f4947 Reviewed-on: https://chromium-review.googlesource.com/564261 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/bc0e4fe35b10409d83b2fe85fde8654526778271/drivers/staging/android/sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/ec90efed0ccac0ff2088d8c1de6ea9393d584b3b commit ec90efed0ccac0ff2088d8c1de6ea9393d584b3b Author: Jamie Gennis <jgennis@google.com> Date: Mon Jul 10 04:15:45 2017 UPSTREAM: staging: sync: Fix timeout = 0 wait behavior Fix wait behavior on timeout == 0 case BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Maarten Lankhorst <maarten.lankhorst@canonical.com> Cc: Erik Gilling <konkers@android.com> Cc: Daniel Vetter <daniel.vetter@ffwll.ch> Cc: Rob Clark <robclark@gmail.com> Cc: Sumit Semwal <sumit.semwal@linaro.org> Cc: dri-devel@lists.freedesktop.org Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Jamie Gennis <jgennis@google.com> [jstultz: Added commit message] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 573632c2eaf87429a89490173f34682bb71f6883) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I51722e01d7786369288d9b9bf9e43b42036dace5 Reviewed-on: https://chromium-review.googlesource.com/564262 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/ec90efed0ccac0ff2088d8c1de6ea9393d584b3b/drivers/staging/android/sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/e92667287b1979d3956438812c33f17591e14133 commit e92667287b1979d3956438812c33f17591e14133 Author: Changlong Xie <changlongx.xie@intel.com> Date: Mon Jul 10 04:15:46 2017 UPSTREAM: staging: sw_sync: sw_sync_timeline_ops can be static BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Reported-by: Fengguang Wu <fengguang.wu@intel.com> Signed-off-by: Changlong Xie <changlongx.xie@intel.com> Acked-by: Erik Gilling <konkers@android.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 451fb7664a590e74122061d3ac773eddb3c73674) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I57d98b0c39398f273588b79c6517b43b11d4073e Reviewed-on: https://chromium-review.googlesource.com/564263 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/e92667287b1979d3956438812c33f17591e14133/drivers/staging/android/sw_sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/9df8692f86b3dad23c7b9a9d6a82a767f926de89 commit 9df8692f86b3dad23c7b9a9d6a82a767f926de89 Author: Wei Yongjun <yongjun_wei@trendmicro.com.cn> Date: Mon Jul 10 04:15:47 2017 UPSTREAM: staging: sync: fix return value check in sync_fence_alloc() In case of error, the function anon_inode_getfile() returns ERR_PTR() and never returns NULL. The NULL test in the return value check should be replaced with IS_ERR(). BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 59691367be00806a3ab1c6a125ced6ed87e91356) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: Ibcaa67a70babb3d4cb758aebda780826dcc72c60 Reviewed-on: https://chromium-review.googlesource.com/564264 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/9df8692f86b3dad23c7b9a9d6a82a767f926de89/drivers/staging/android/sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/c2922219460badf02c498e6a585d3e2443238f1e commit c2922219460badf02c498e6a585d3e2443238f1e Author: Dmitry Pervushin <dmitry.pervushin@linaro.org> Date: Mon Jul 10 04:15:48 2017 UPSTREAM: staging: sync: Add compat_ioctl handlers to sync drivers The sync drivers are missing compat_ioctl handlers, so this patch adds them. The same change has been submitted to AOSP: https://android-review.googlesource.com/#/c/54901/ BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Erik Gilling <konkers@android.com> Cc: Dmitry Pervushin <dmitry.pervushin@linaro.org> Cc: Bernhard Rosenkrnzer <Bernhard.Rosenkranzer@linaro.org> Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Dmitry Pervushin <dmitry.pervushin@linaro.org> Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit c37b95eeefee32a765a9bbbfeaece48a361b2d23) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: If27fd8b9d98b63e6f10d2bdb3fd2ce6d63e8c65f Reviewed-on: https://chromium-review.googlesource.com/564265 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/c2922219460badf02c498e6a585d3e2443238f1e/drivers/staging/android/sync.c [modify] https://crrev.com/c2922219460badf02c498e6a585d3e2443238f1e/drivers/staging/android/sw_sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/e612f15e7b748b1a74b6187463ee6c6a7596a0d9 commit e612f15e7b748b1a74b6187463ee6c6a7596a0d9 Author: Hema Prathaban <hemaklnce@gmail.com> Date: Mon Jul 10 04:15:48 2017 UPSTREAM: staging: android: Remove unnecessary braces Fixes the following checkpatch warning: WARNING: braces {} are not necessary for single statement blocks BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Signed-off-by: Hema Prathaban <hemaklnce@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit d03f6bbaa42c2c5466350718f804537384902d5d) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I94a7824dbbaafcbb6368c8e4975a89da14b175bd Reviewed-on: https://chromium-review.googlesource.com/564266 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/e612f15e7b748b1a74b6187463ee6c6a7596a0d9/drivers/staging/android/sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/295e0ffacb7e10f49a95328e4c0b9d3750370f2d commit 295e0ffacb7e10f49a95328e4c0b9d3750370f2d Author: Marlies Ruck <marlies.ruck@gmail.com> Date: Mon Jul 10 04:15:50 2017 UPSTREAM: staging: Fix lines over 80 chars in android sw_sync Fixes the following checkpatch warning: WARNING: Line over 80 characters BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Signed-off-by: Marlies Ruck <marlies.ruck@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 0f14a20e4586bff80575b4806382d43e0d543cda) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I3d4f652dfe891ed098a33fd3578a673f975c9817 Reviewed-on: https://chromium-review.googlesource.com/564268 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/295e0ffacb7e10f49a95328e4c0b9d3750370f2d/drivers/staging/android/sw_sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/5b293782606701b5a7cb0bc83367e09f3a5c8c8a commit 5b293782606701b5a7cb0bc83367e09f3a5c8c8a Author: Hema Prathaban <hemaklnce@gmail.com> Date: Mon Jul 10 04:15:49 2017 UPSTREAM: staging: android: Replace seq_printf with seq_puts Fixes the following checkpatch warning: WARNING: Prefer seq_puts to seq_printf BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Signed-off-by: Hema Prathaban <hemaklnce@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit a0eacf2959a2879dce29d35568d78fcfeea54d86) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: Iae7b596cc758f2b61a8e2923519c96af311e098c Reviewed-on: https://chromium-review.googlesource.com/564267 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/5b293782606701b5a7cb0bc83367e09f3a5c8c8a/drivers/staging/android/sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/dfa676fb0e284190dbef9407b417260fbd238b17 commit dfa676fb0e284190dbef9407b417260fbd238b17 Author: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Date: Mon Jul 10 04:15:51 2017 UPSTREAM: staging: android: sync: fix up a sparse warning Fix up a sparse warning about sync_dump that was reported. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Reported-by: kbuild test robot <fengguang.wu@intel.com> Cc: Erik Gilling <konkers@android.com> Cc: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit cd0c1d70f69a8ac51634ef878ce6610044ee166c) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I48baece44bd453479f1c8dbcf457df769ebf4de9 Reviewed-on: https://chromium-review.googlesource.com/564269 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/dfa676fb0e284190dbef9407b417260fbd238b17/drivers/staging/android/sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/ba68c272c14eaf8f65d7fd91a2ea67e3f5f90f67 commit ba68c272c14eaf8f65d7fd91a2ea67e3f5f90f67 Author: Yann Droneaud <ydroneaud@opteya.com> Date: Mon Jul 10 04:15:52 2017 UPSTREAM: android/sw_sync: use get_unused_fd_flags(O_CLOEXEC) instead of get_unused_fd() Macro get_unused_fd() is used to allocate a file descriptor with default flags. Those default flags (0) can be "unsafe": O_CLOEXEC must be used by default to not leak file descriptor across exec(). Instead of macro get_unused_fd(), functions anon_inode_getfd() or get_unused_fd_flags() should be used with flags given by userspace. If not possible, flags should be set to O_CLOEXEC to provide userspace with a default safe behavor. In a further patch, get_unused_fd() will be removed so that new code start using anon_inode_getfd() or get_unused_fd_flags() with correct flags. This patch replaces calls to get_unused_fd() with call to get_unused_fd_flags(O_CLOEXEC) following advice from Erik Gilling. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Signed-off-by: Yann Droneaud <ydroneaud@opteya.com> Cc: Erik Gilling <konkers@android.com> Cc: Colin Cross <ccross@google.com> Link: http://lkml.kernel.org/r/CACSP8SjZcpcpEtQHzcGYhf-MP7QGo0XpN7-uN7rmD=vNtopG=w@mail.gmail.com Link: http://lkml.kernel.org/r/cover.1376327678.git.ydroneaud@opteya.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 45acea57335ece628bdf96dc35d2ebdefd1efb9e) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I911acc5917a6b5c24c67f11aa68174a88a6e7af0 Reviewed-on: https://chromium-review.googlesource.com/564270 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/ba68c272c14eaf8f65d7fd91a2ea67e3f5f90f67/drivers/staging/android/sw_sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/fb0e01831104418f7b9a58de2621240bb796062a commit fb0e01831104418f7b9a58de2621240bb796062a Author: Yann Droneaud <ydroneaud@opteya.com> Date: Mon Jul 10 04:15:53 2017 UPSTREAM: android/sync: use get_unused_fd_flags(O_CLOEXEC) instead of get_unused_fd() Macro get_unused_fd() is used to allocate a file descriptor with default flags. Those default flags (0) can be "unsafe": O_CLOEXEC must be used by default to not leak file descriptor across exec(). Instead of macro get_unused_fd(), functions anon_inode_getfd() or get_unused_fd_flags() should be used with flags given by userspace. If not possible, flags should be set to O_CLOEXEC to provide userspace with a default safe behavor. In a further patch, get_unused_fd() will be removed so that new code start using anon_inode_getfd() or get_unused_fd_flags() with correct flags. This patch replaces calls to get_unused_fd() with call to get_unused_fd_flags(O_CLOEXEC) following advice from Erik Gilling. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Signed-off-by: Yann Droneaud <ydroneaud@opteya.com> Cc: Erik Gilling <konkers@android.com> Cc: Colin Cross <ccross@google.com> Link: http://lkml.kernel.org/r/CACSP8SjXGMk2_kX_+RgzqqQwqKernvF1Wt3K5tw991W5dfAnCA@mail.gmail.com Link: http://lkml.kernel.org/r/cover.1376327678.git.ydroneaud@opteya.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 9c6cd3b39048c8bbb83c5cd936f4dffc847321c6) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I9d13fb6986aa63a34ff4f78d817c57ad7fe7b740 Reviewed-on: https://chromium-review.googlesource.com/564271 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/fb0e01831104418f7b9a58de2621240bb796062a/drivers/staging/android/sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/20651fa47d42f3a634ef61f3b76819d3540a0132 commit 20651fa47d42f3a634ef61f3b76819d3540a0132 Author: Masanari Iida <standby24x7@gmail.com> Date: Mon Jul 10 04:15:54 2017 UPSTREAM: staging: android: Fix typo in android/sync.h Correct spelling typo in android/sync.h BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Signed-off-by: Masanari Iida <standby24x7@gmail.com> Acked-by: Randy Dunlap <rdunlap@infradead.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 4e20effa23b1cbfc15fcdd6774937334775c5361) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: If99c5c5776396d7a5c06ab838e9efc7d1620063f Reviewed-on: https://chromium-review.googlesource.com/564272 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/20651fa47d42f3a634ef61f3b76819d3540a0132/drivers/staging/android/sync.h
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/a4ec1f2301df2af32ea6dcadd21523f4c122e7dd commit a4ec1f2301df2af32ea6dcadd21523f4c122e7dd Author: Greg Hackmann <ghackmann@google.com> Date: Mon Jul 10 04:15:55 2017 UPSTREAM: staging: sw_sync: Add stubs for kernels without CONFIG_SW_SYNC Add stubs for kernels without CONFIG_SW_SYNC BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Colin Cross <ccross@android.com> Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Greg Hackmann <ghackmann@google.com> [jstultz: resolved minor conflict, tweaked commit message] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit bbd9ae8a05e05a608ff9158cf3b95be7b857a6fa) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I90ef401fed218475f3ca04b124eacbcdf2a60463 Reviewed-on: https://chromium-review.googlesource.com/564273 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/a4ec1f2301df2af32ea6dcadd21523f4c122e7dd/drivers/staging/android/sw_sync.h
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/61f41925d6a862d950cbe8a0580b6c8f0518cc9e commit 61f41925d6a862d950cbe8a0580b6c8f0518cc9e Author: Alistair Strachan <alistair.strachan@imgtec.com> Date: Mon Jul 10 04:15:56 2017 UPSTREAM: staging: sync: Fix a race condition between release_obj and print_obj Before this change, a timeline would only be removed from the timeline list *after* the sync driver had its release_obj() called. However, the driver's release_obj() may free resources needed by print_obj(). Although the timeline list is locked when print_obj() is called, it is not locked when release_obj() is called. If one CPU was in print_obj() when another was in release_obj(), the print_obj() may make unsafe accesses. It is not actually necessary to hold the timeline list lock when calling release_obj() if the call is made after the timeline is unlinked from the list, since there is no possibility another thread could be in -- or enter -- print_obj() for that timeline. This change moves the release_obj() call to after the timeline is unlinked, preventing the above race from occurring. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Colin Cross <ccross@android.com> Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Alistair Strachan <alistair.strachan@imgtec.com> [jstultz: minor commit subject tweak] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 5cf045f54d31894ec59ee741e01fa258be2ba0fb) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I71e1c54d67aa53eb64d0aeef592081556e685e51 Reviewed-on: https://chromium-review.googlesource.com/564274 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/61f41925d6a862d950cbe8a0580b6c8f0518cc9e/drivers/staging/android/sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/c65547b039d18103edcdecf3ad7983a3d77abfa5 commit c65547b039d18103edcdecf3ad7983a3d77abfa5 Author: Prakash Kamliya <pkamliya@codeaurora.org> Date: Mon Jul 10 04:15:57 2017 UPSTREAM: staging: android: sync: Signal pt before sync_timeline object gets destroyed There is a race condition Assume we have *one* sync_fence object, with *one* sync_pt which belongs to *one* sync_timeline, given this condition, sync_timeline->kref will have two counts, one for sync_timeline (implicit) and another for sync_pt. Assume following is the situation on CPU Theead-1 : (Thread which calls sync_timeline_destroy()) -> (some function calls) -> sync_timeline_destory() -> sync_timeline_signal() (CPU is inside this function after putting reference to sync_timeline) At this time Thread-2 comes and does following Thread-2 : (fclose on fence fd) > sync_fence_release() -> because of fclose() on fence object -> sync_fence_free() -> sync_pt_free() -> kref_put(&pt->parent->kref, sync_timeline_free); -> sync_timeline_free() (CPU is inside this because this time kref will be zero after _put) Thread-2 will free sync_timeline object before Thread-1 has finished its work inside sync_timeline_signal. With this change we signals all sync_pt before putting reference to sync_timeline object. BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Colin Cross <ccross@android.com> Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Prakash Kamliya <pkamliya@codeaurora.org> [jstultz: minor commit subject tweak] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit ac5b705b22642208764aa784ccc47f093d0212b5) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I43a6f3141dc2f2439980d8622e4e43bf280793e6 Reviewed-on: https://chromium-review.googlesource.com/564275 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/c65547b039d18103edcdecf3ad7983a3d77abfa5/drivers/staging/android/sync.c
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/291f467973de24059cdfb1a87fdacab058dbb180 commit 291f467973de24059cdfb1a87fdacab058dbb180 Author: Dominik Behr <dbehr@chromium.org> Date: Mon Jul 10 04:15:59 2017 CHROMIUM: config: enable android sw_sync BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Change-Id: I640635b94f2c7698329c4cb14320f051cc2c1d7c Signed-off-by: Dominik Behr <dbehr@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/564277 Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/291f467973de24059cdfb1a87fdacab058dbb180/chromeos/config/base.config
,
Jul 10 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromiumos/third_party/kernel/+/0d38a03e7e672478748da215a7be13aa3bcd3b89 commit 0d38a03e7e672478748da215a7be13aa3bcd3b89 Author: Colin Cross <ccross@android.com> Date: Mon Jul 10 04:15:58 2017 UPSTREAM: staging: android: split uapi out of sync.h and sw_sync.h Move the userspace interfaces of sync.h and sw_sync.h to drivers/staging/android/uapi/ BUG= chromium:735195 TEST=boot daisy and run webgl aquarium Cc: Greg KH <gregkh@linuxfoundation.org> Cc: Colin Cross <ccross@android.com> Cc: Android Kernel Team <kernel-team@android.com> Signed-off-by: Colin Cross <ccross@android.com> [jstultz: Fixed up some conflicts from upstream spelling fixes] Signed-off-by: John Stultz <john.stultz@linaro.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> (cherry picked from commit 64907b94dab947f3f3fc96fe1ab810cbc12ca902) Signed-off-by: Dominik Behr <dbehr@chromium.org> Change-Id: I88717c5b08ace3128945e17df00bef9a1633509b Reviewed-on: https://chromium-review.googlesource.com/564276 Commit-Ready: Dominik Behr <dbehr@chromium.org> Tested-by: Dominik Behr <dbehr@chromium.org> Reviewed-by: Stéphane Marchesin <marcheu@chromium.org> [modify] https://crrev.com/0d38a03e7e672478748da215a7be13aa3bcd3b89/drivers/staging/android/sw_sync.h [modify] https://crrev.com/0d38a03e7e672478748da215a7be13aa3bcd3b89/drivers/staging/android/sync.h [add] https://crrev.com/0d38a03e7e672478748da215a7be13aa3bcd3b89/drivers/staging/android/uapi/sw_sync.h [add] https://crrev.com/0d38a03e7e672478748da215a7be13aa3bcd3b89/drivers/staging/android/uapi/sync.h
,
Jul 11 2017
,
Jan 22 2018
|
|||
►
Sign in to add a comment |
|||
Comment 1 by bugdroid1@chromium.org
, Jul 8 2017