You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Nikos Gorogiannis
dda0470b05
[starvation] make thread domain more precise
...
Summary:
Add precision to analysis by elaborating the thread-status domain. This is done by having unknown (bottom), UI, BG or Any (both/top) elements in the lattice. This way, when we branch on thread-identity (if I am on UI thread do this, otherwise do that), we know that in one branch we are on UI thread and on the other we are *not* on the UI thread (BG thread), where previously the other branch would just go to top.
With this knowledge we can throw away pairs that come from callees which run on a thread that is impossible, given the current caller thread identity. This can happen when annotations are used incorrectly, and since this is the purview of annot-reachability, we just drop those pairs entirely.
Reviewed By: skcho
Differential Revision: D18202175
fbshipit-source-id: be604054e
5 years ago
..
.inferconfig
[starvation] allow specifying method patterns for skipping analysis via cmdline and inferconfig
6 years ago
AsyncTaskGet.java
[copyright] Remove years
6 years ago
Binders.java
[starvation] push thread status inside critical pairs
5 years ago
Countdwn.java
[copyright] Remove years
6 years ago
FutureGet.java
[copyright] Remove years
6 years ago
IndirectBlock.java
[copyright] Remove years
6 years ago
InnerClass.java
[copyright] Remove years
6 years ago
Interclass.java
[copyright] Remove years
6 years ago
Interproc.java
[starvation] remove rarely-used logic for identifying locks
5 years ago
Intraproc.java
[starvation] remove rarely-used logic for identifying locks
5 years ago
JavaIO.java
[copyright] Remove years
6 years ago
LegacySync.java
[copyright] Remove years
6 years ago
LocalLock.java
[copyright] Remove years
6 years ago
LockSensitivity.java
[starvation] add tests documenting path sensitivity FPs and FNs
5 years ago
LocklessTests.java
[lockless] detect lock acquisitions from methods annotated @Lockless
5 years ago
MainThreadTest.java
[copyright] Remove years
6 years ago
Makefile
[copyright] Remove years
6 years ago
MasterLock.java
[starvation] change domain to use critical pairs `(set of locks held, event)`
5 years ago
MyActivity.java
[copyright] Remove years
6 years ago
NonBlk.java
[copyright] Remove years
6 years ago
ObjWait.java
[copyright] Remove years
6 years ago
OurThreadUtils.java
[starvation] add tests documenting path sensitivity FPs and FNs
5 years ago
PubPriv.java
[copyright] Remove years
6 years ago
ServiceOnUIThread.java
[copyright] Remove years
6 years ago
SkipAnalysis.java
[copyright] Remove years
6 years ago
StaticLock.java
[copyright] Remove years
6 years ago
StrictModeViolation.java
[copyright] Remove years
6 years ago
SuppLint.java
[copyright] Remove years
6 years ago
ThreadDeadlock.java
[starvation] more tests documenting interaction with thread status
5 years ago
ThreadSensitivity.java
[starvation] add path sensitivity restricted to thread status
5 years ago
ThreadSleep.java
[copyright] Remove years
6 years ago
Workers.java
[starvation] make thread domain more precise
5 years ago
issues.exp
[starvation] make thread domain more precise
5 years ago