summaryrefslogtreecommitdiff
path: root/rs/java/android/renderscript/ProgramFragmentFixedFunction.java
diff options
context:
space:
mode:
authorKweku Adams <kwekua@google.com>2021-06-23 09:13:42 -0700
committerKweku Adams <kwekua@google.com>2021-06-24 12:25:33 -0700
commit2700aba1c577c72d846ac029ed8e7346b294de1d (patch)
tree10c710d400bba96126c48fe10037043fe0a9ee11 /rs/java/android/renderscript/ProgramFragmentFixedFunction.java
parentdc9a03db060392f8a03743d7d22053c23bc5a71b (diff)
Fix pending job sorting.
We want to always run an app's expedited jobs before its own regular jobs. This means that we order an app's EJs before its regular jobs. In order to satisfy the transitivity constraint, we must also order one app's EJs ahead of a differing app's jobs iff we had to order the first app's EJ ahead of a job that was earlier than the second app's jobs. The current sorting system fails the transitivity requirement. Test case: regJob1 enqueued at t1 for UID A, regJob2 enqueued at t2 for UID B, EJ3 enqueued at t3 for UID A. Because we expedite EJs, EJ3 is ordered before regJob1. Because we sort jobs of differing apps by enqueue time, regJob1 comes before regJob2 and regJob2 comes before EJ3. This violates transitivity. The new sorting system will order a later EJ ahead of a differing app's jobs iff the first app has a regular job that is earlier than the differing app's first regular job. Bug: 191592712 Test: atest FrameworksMockingServicesTests:JobSchedulerServiceTest Test: atest CtsJobSchedulerTestCases Change-Id: I5391a4f35269d7d43eefc1954788f9df160b1d22
Diffstat (limited to 'rs/java/android/renderscript/ProgramFragmentFixedFunction.java')
0 files changed, 0 insertions, 0 deletions