From: Boram Park Date: Wed, 29 May 2013 05:07:54 +0000 (+0900) Subject: enhance log for xv grab/stop/ungrab X-Git-Tag: 2.2.1_release~21 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=4ce0c9db55ad619845eb2f6bb29e3d0f97d269cc;p=adaptation%2Fxorg%2Fdriver%2Fxserver-xorg-module-xdbg.git enhance log for xv grab/stop/ungrab Change-Id: I511ab1a328509ed599869c5288481f9186badc75 --- diff --git a/module/xdbg_module_evlog.c b/module/xdbg_module_evlog.c index 42141ce..5e3ac20 100644 --- a/module/xdbg_module_evlog.c +++ b/module/xdbg_module_evlog.c @@ -56,6 +56,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. #include #include #include +#include #include #include @@ -490,13 +491,59 @@ _traceACoreEvents (CallbackListPtr *pcbl, pointer unused, pointer calldata) static void _traceAExtEvents (CallbackListPtr *pcbl, pointer unused, pointer calldata) { - if (xev_trace_on == FALSE) - return; - XaceExtAccessRec *rec = calldata; + ClientPtr client; XDBG_RETURN_IF_FAIL (rec != NULL); + client = rec->client; + REQUEST (xReq); + + if (stuff && stuff->reqType >= EXTENSION_BASE) + { + ExtensionEntry *xext = CheckExtension (XvName); + if (xext && stuff->reqType == xext->base) + { + ModuleClientInfo *info = GetClientInfo (client); + XDBG_RETURN_IF_FAIL (info != NULL); + + switch (stuff->data) + { + case xv_GrabPort: + { + xvGrabPortReq *req = (xvGrabPortReq *)client->requestBuffer; + XDBG_INFO (MXDBG, "%s(port:%d), %s(%d)\n", + LookupRequestName (stuff->reqType, stuff->data), req->port, + info->command, info->pid); + break; + } + case xv_UngrabPort: + { + xvUngrabPortReq *req = (xvUngrabPortReq *)client->requestBuffer; + XDBG_INFO (MXDBG, "%s(port:%d), %s(%d)\n", + LookupRequestName (stuff->reqType, stuff->data), req->port, + info->command, info->pid); + break; + } + case xv_StopVideo: + { + xvStopVideoReq *req = (xvStopVideoReq *)client->requestBuffer; + XDBG_INFO (MXDBG, "%s(port:%d,drawable:0x%lx), %s(%d)\n", + LookupRequestName (stuff->reqType, stuff->data), + req->port, req->drawable, + info->command, info->pid); + break; + } + default: + break; + + } + } + } + + if (xev_trace_on == FALSE) + return; + evtPrint (REQUEST, rec->client, NULL); } @@ -564,6 +611,7 @@ xDbgModuleEvlogInstallHooks (XDbgModule *pMod) ret &= AddCallback (&EventCallback, _traceEvent, NULL); ret &= XaceRegisterCallback (XACE_PROPERTY_ACCESS, _traceProperty, NULL); ret &= XaceRegisterCallback (XACE_RESOURCE_ACCESS, _traceResource, NULL); + ret &= XaceRegisterCallback (XACE_EXT_DISPATCH, _traceAExtEvents, NULL); /*Disable Visibility Event*/ ret &= XaceRegisterCallback (XACE_RECEIVE_ACCESS, _traceReceive, NULL); @@ -591,6 +639,7 @@ xDbgModuleEvlogUninstallHooks (XDbgModule *pMod) DeleteCallback (&EventCallback, _traceEvent, NULL); XaceDeleteCallback (XACE_PROPERTY_ACCESS, _traceProperty, NULL); XaceDeleteCallback (XACE_RESOURCE_ACCESS, _traceResource, NULL); + XaceDeleteCallback (XACE_EXT_DISPATCH, _traceAExtEvents, NULL); } void @@ -639,7 +688,6 @@ xDbgModuleEvlogPrintEvents (XDbgModule *pMod, Bool on, const char * client_name, ret &= AddCallback (&FlushCallback, _traceFlush, NULL); ret &= AddCallback (&ReplyCallback, _traceAReply, NULL); ret &= XaceRegisterCallback (XACE_CORE_DISPATCH, _traceACoreEvents, NULL); - ret &= XaceRegisterCallback (XACE_EXT_DISPATCH, _traceAExtEvents, NULL); if (!ret) { @@ -652,7 +700,6 @@ xDbgModuleEvlogPrintEvents (XDbgModule *pMod, Bool on, const char * client_name, DeleteCallback (&FlushCallback, _traceFlush, NULL); DeleteCallback (&ReplyCallback, _traceAReply, NULL); XaceDeleteCallback (XACE_CORE_DISPATCH, _traceACoreEvents, NULL); - XaceDeleteCallback (XACE_EXT_DISPATCH, _traceAExtEvents, NULL); } return;