aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2015-06-18layers: Add config parser to compute debug flagsCourtney Goeltzenleuchter
2015-06-18layers: Move dbg flag print to config headerCourtney Goeltzenleuchter
The print function seems to go better here with the config file parsing as they use similar values.
2015-06-18layers: Add logging callback function for layersCourtney Goeltzenleuchter
Now that new debug report mechanism is in place, need a callback function to output a log message. Can then have layers register callback with debug_report to have messages sent to stdout / FILE as well as whatever the application asked for.
2015-06-18layers: Set helpers as static inlineCourtney Goeltzenleuchter
static inline allows the code to be unused
2015-06-18layers: make log_msg format log strings for perfCourtney Goeltzenleuchter
Performance analysis showed a lot of time being spent formating unused log messages (particularly INFO). By moving the formatting into the logging function we can only do the formatting if the message will be used.
2015-06-18layers: Ifdef out debug codeCourtney Goeltzenleuchter
2015-06-18mem_tracker: Add some more debug codeCourtney Goeltzenleuchter
2015-06-18mem_tracker: Use dispatch access functionsCourtney Goeltzenleuchter
Hopefully makes code easier to read when using the dispatch table access functions.
2015-06-18mem_tracker: Need dispatch object for loggingCourtney Goeltzenleuchter
Needed to make sure we had a dispatchable object to perform logging. Can't trust that mem or object are correct, so have caller pass in user's dispatchable object.
2015-06-18mem_tracker: Add debug assertsCourtney Goeltzenleuchter
2015-06-18mem_tracker: Initialize new mem recordCourtney Goeltzenleuchter
Need to intialize the record put on the list. Removed the unused, newed record.
2015-06-18draw_state: Update to use private dispatch mapCourtney Goeltzenleuchter
2015-06-18layers: Use static dispatch table mapsCourtney Goeltzenleuchter
Changes to use dispatch table access functions.
2015-06-18layers: utilities for layer storageCourtney Goeltzenleuchter
Have defined tableMap and tableInstanceMap as static here to prevent layers from accidentally using a common map. Moved all the access functions here as well to be able to access the static maps. Added destroy functions to eliminate last of references to tableMap and tableInstanceMap maps outside this file.
2015-06-18layers: per-instance data helpersCourtney Goeltzenleuchter
2015-06-18mem_tracker: add per-instance persistent dataCourtney Goeltzenleuchter
2015-06-18loader: Set some log messages as debug messagesCourtney Goeltzenleuchter
2015-06-18memtracker: Add persistent storageCourtney Goeltzenleuchter
This patch eliminates global variables and accesses everything through pre-instance or per-device storage. Have basic template supporting get_my_data_ptr function working.
2015-06-18debug_report: Utilities for layers to useCourtney Goeltzenleuchter
This header is intended to be used by all validation layers and provides the necessary functions to process DEBUG_REPORT messages and generate callbacks. This is intended for layers implementing per instance / device storage.
2015-06-18debug_report: Add error codesCourtney Goeltzenleuchter
Add error codes for messages the debug report layer can generate.
2015-06-18loader: Fix device layer activation to properly filter out repeat layersJon Ashburn
2015-06-18loader: Move device dispatch table to CreateDevice from EnumeratePhysDevJon Ashburn
For now just have a static array for these will fix this in later commit Conflicts: loader/loader.c
2015-06-18loader: Remove GetGlobalExtensionInfo from dispatch tableJon Ashburn
No way to reliably dispatch this entry point in layers; will not be recursive. Conflicts: loader/loader.c
2015-06-18loader: Remove linefeed from log messagesCourtney Goeltzenleuchter
The output function already puts in linefeeds.
2015-06-18loader: Use type flags not code for filterCourtney Goeltzenleuchter
2015-06-18loader: clean up dead codeCourtney Goeltzenleuchter
2015-06-18loader: only search for layersCourtney Goeltzenleuchter
2015-06-18loader: remove now unused hosted fieldCourtney Goeltzenleuchter
2015-06-18bug-13466: Implement comment #14Courtney Goeltzenleuchter
https://cvs.khronos.org/bugzilla/show_bug.cgi?id=13466
2015-06-18loader: Add error messages if layer libraries fail to loadJon Ashburn
2015-06-18layers: Make dispatch table thread safeJon Ashburn
2015-06-18layers: Fix DrawState and ParamChecker to only use debug_marker if enabledJon Ashburn
2015-06-18loader: Make global functions (instance chain entrypoints) thread safeJon Ashburn
2015-06-18layer: Remove EnumerateLayersJon Ashburn
2015-06-18loader: Remove storage of wrappedGPUs only need during layer activationJon Ashburn
2015-06-18loader: add debug log messageCourtney Goeltzenleuchter
2015-06-18loader: Add LOADER_DEBUG environment flagsCourtney Goeltzenleuchter
The loader_log function now uses a global flag to determine which log messages to echo to stderr. The flags can be set by setting the LOADER_DEBUG environment variable to colon separate list of tokens.
2015-06-18loader: Fix DestroyInstanceCourtney Goeltzenleuchter
2015-06-18loader: Add utility to return loader instance ptrCourtney Goeltzenleuchter
2015-06-18layers: Initialize debug_report instance proc tableCourtney Goeltzenleuchter
2015-06-18loader: Increase library name length for safetyCourtney Goeltzenleuchter
2015-06-18loader: Fix EnumeratePhysDev to handle less gpus than icd has and no mem leakJon Ashburn
Also no longer wrap gpu objs of inst objs in CreateInstance.
2015-06-18loader: Only allow layer in chain onceCourtney Goeltzenleuchter
If an application were to specify a "Validatio" layer and the environment specified a ParamChecker layer it was possible to load the same layer twice in one chain. Layers don't like that can only be referenced once and that's all they need to support multiple extensions from the one layer. This patch adds an alias pointer so that when putting together the lists of available extensions the loader can keep track of multiple extensions that are servied by the same library. Also now create specific activated_layers_list that contains only the list of layers that need to be activated.
2015-06-18debug_report: Add debug message flagCourtney Goeltzenleuchter
2015-06-18loader: Remove obsolete extension / layer codeCourtney Goeltzenleuchter
2015-06-18layer: Generic is not a validation layerCourtney Goeltzenleuchter
Remove the Validation extension definition for the generated generic example layer.
2015-06-18vulkaninfo: Update to new extension mechanismCourtney Goeltzenleuchter
2015-06-18vulkan: Fix for bug 13785.Courtney Goeltzenleuchter
Implement proposal in comment #3. Agreed in June '15 Khronos face-to-face
2015-06-18nulldriver: Update to new VkExtensionPropertiesCourtney Goeltzenleuchter
2015-06-18layers: Update generator for DEBUG_REPORTCourtney Goeltzenleuchter
Generated layers that support DEBUG_REPORT now need to intercept CreateInstance and call the appropriate DEBUG_REPORT layer helper functions.