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.
|
|
10 months ago | |
|---|---|---|
| .. | ||
| Android.bp | 1 year ago | |
| README.md | 1 year ago | |
| surfaceflinger_displayhardware_fuzzer.cpp | 1 year ago | |
| surfaceflinger_displayhardware_fuzzer_utils.h | 1 year ago | |
| surfaceflinger_frametracer_fuzzer.cpp | 1 year ago | |
| surfaceflinger_fuzzer.cpp | 1 year ago | |
| surfaceflinger_fuzzers_utils.h | 10 months ago | |
| surfaceflinger_layer_fuzzer.cpp | 1 year ago | |
| surfaceflinger_scheduler_fuzzer.cpp | 1 year ago | |
| surfaceflinger_scheduler_fuzzer.h | 1 year ago | |
README.md
Fuzzers for SurfaceFlinger
Table of contents
Fuzzer for SurfaceFlinger
SurfaceFlinger supports the following data sources:
- Pixel Formats (parameter name:
defaultCompositionPixelFormat) - Data Spaces (parameter name:
defaultCompositionDataspace) - Rotations (parameter name:
internalDisplayOrientation) - Surface composer tags (parameter name:
onTransact)
You can find the possible values in the fuzzer's source code.
Steps to run
- Build the fuzzer
$ mm -j$(nproc) surfaceflinger_fuzzer
- To run on device
$ adb sync data
$ adb shell /data/fuzz/arm64/surfaceflinger_fuzzer/surfaceflinger_fuzzer
Fuzzer for DisplayHardware
DisplayHardware supports the following parameters:
- Hal Capability (parameter name:
hasCapability) - Hal BlendMode (parameter name:
setBlendMode) - Hal Composition (parameter name:
setCompositionType) - Hal Display Capability (parameter name:
hasDisplayCapability) - Composition Types (parameter name:
prepareFrame) - Color Modes (parameter name:
setActiveColorMode) - Render Intents (parameter name:
setActiveColorMode) - Power Modes (parameter name:
setPowerMode) - Content Types (parameter name:
setContentType) - Data Space (parameter name:
setDataspace) - Transforms (parameter name:
setLayerTransform)
You can find the possible values in the fuzzer's source code.
Steps to run
- Build the fuzzer
$ mm -j$(nproc) surfaceflinger_displayhardware_fuzzer
- Run on device
$ adb sync data
$ adb shell /data/fuzz/arm64/surfaceflinger_displayhardware_fuzzer/surfaceflinger_displayhardware_fuzzer
Fuzzer for Scheduler
Scheduler supports the following parameters:
- VSync Periods (parameter name:
lowFpsPeriod)
You can find the possible values in the fuzzer's source code.
Steps to run
- Build the fuzzer
$ mm -j$(nproc) surfaceflinger_scheduler_fuzzer
- To run on device
$ adb sync data
$ adb shell /data/fuzz/arm64/surfaceflinger_scheduler_fuzzer/surfaceflinger_scheduler_fuzzer
Fuzzer for Layer
Layer supports the following parameters:
- Display Connection Types (parameter name:
fakeDisplay) - State Sets (parameter name:
traverseInZOrder) - Disconnect modes (parameter name:
disconnect) - Data Spaces (parameter name:
setDataspace)
You can find the possible values in the fuzzer's source code.
Steps to run
- Build the fuzzer
$ mm -j$(nproc) surfaceflinger_layer_fuzzer
- Run on device
$ adb sync data
$ adb shell /data/fuzz/arm64/surfaceflinger_layer_fuzzer/surfaceflinger_layer_fuzzer
Fuzzer for FrameTracer
Steps to run
- Build the fuzzer
$ mm -j$(nproc) surfaceflinger_frametracer_fuzzer
- To run on device
$ adb sync data
$ adb shell /data/fuzz/arm64/surfaceflinger_frametracer_fuzzer/surfaceflinger_frametracer_fuzzer