xfree86: add xf86IDrvMsg and friends for input driver logging.
Input driver messages are only standardised by convention, with the drivers
prefixing the device name to most messages. This makes it rather hard to
grep on "evdev" for example when looking for the evdev ouput.
This patch adds three new logging functions, modeled after xf86DrvMsg(), the
logging function for output drivers. New functions are
   xf86IDrvMsg()        - input driver log message in default verbosity.
   xf86IDrvMsgVerb()    - input driver log message in specified verbosity.
   xf86VIDrvMsgVerb()   - same as xf86IDrvMsgVerb() but takes a varargs
                          argument.
Default log format is <driver name>: <device name>: <message>.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
			
			
This commit is contained in:
		
							parent
							
								
									b55ac354af
								
							
						
					
					
						commit
						8764782f6d
					
				| 
						 | 
					@ -1190,6 +1190,43 @@ xf86DrvMsg(int scrnIndex, MessageType type, const char *format, ...)
 | 
				
			||||||
    va_end(ap);
 | 
					    va_end(ap);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Print input driver messages in the standard format of
 | 
				
			||||||
 | 
					   <driver>: <device name>: <message> */
 | 
				
			||||||
 | 
					void
 | 
				
			||||||
 | 
					xf86VIDrvMsgVerb(LocalDevicePtr dev, MessageType type, int verb, const char *format,
 | 
				
			||||||
 | 
							 va_list args)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    char *msg;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    msg = Xprintf("%s: %s: %s", dev->drv->driverName, dev->name, format);
 | 
				
			||||||
 | 
					    LogVMessageVerb(type, verb, "%s", msg);
 | 
				
			||||||
 | 
					    free(msg);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Print input driver message, with verbose level specified directly */
 | 
				
			||||||
 | 
					void
 | 
				
			||||||
 | 
					xf86IDrvMsgVerb(LocalDevicePtr dev, MessageType type, int verb, const char *format,
 | 
				
			||||||
 | 
						       ...)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    va_list ap;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    va_start(ap, format);
 | 
				
			||||||
 | 
					    xf86VIDrvMsgVerb(dev, type, verb, format, ap);
 | 
				
			||||||
 | 
					    va_end(ap);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Print input driver messages, with verbose level of 1 (default) */
 | 
				
			||||||
 | 
					void
 | 
				
			||||||
 | 
					xf86IDrvMsg(LocalDevicePtr dev, MessageType type, const char *format, ...)
 | 
				
			||||||
 | 
					{
 | 
				
			||||||
 | 
					    va_list ap;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    va_start(ap, format);
 | 
				
			||||||
 | 
					    xf86VIDrvMsgVerb(dev, type, 1, format, ap);
 | 
				
			||||||
 | 
					    va_end(ap);
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* Print non-driver messages with verbose level specified directly */
 | 
					/* Print non-driver messages with verbose level specified directly */
 | 
				
			||||||
void
 | 
					void
 | 
				
			||||||
xf86MsgVerb(MessageType type, int verb, const char *format, ...)
 | 
					xf86MsgVerb(MessageType type, int verb, const char *format, ...)
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -192,6 +192,17 @@ extern _X_EXPORT InputDriverPtr xf86LookupInputDriver(const char *name);
 | 
				
			||||||
extern _X_EXPORT InputInfoPtr xf86LookupInput(const char *name);
 | 
					extern _X_EXPORT InputInfoPtr xf86LookupInput(const char *name);
 | 
				
			||||||
extern _X_EXPORT void xf86DeleteInput(InputInfoPtr pInp, int flags);
 | 
					extern _X_EXPORT void xf86DeleteInput(InputInfoPtr pInp, int flags);
 | 
				
			||||||
extern _X_EXPORT void xf86MotionHistoryAllocate(LocalDevicePtr local);
 | 
					extern _X_EXPORT void xf86MotionHistoryAllocate(LocalDevicePtr local);
 | 
				
			||||||
 | 
					extern _X_EXPORT void xf86IDrvMsgVerb(LocalDevicePtr dev,
 | 
				
			||||||
 | 
									      MessageType type, int verb,
 | 
				
			||||||
 | 
									      const char *format, ...) _X_ATTRIBUTE_PRINTF(4,5);
 | 
				
			||||||
 | 
					extern _X_EXPORT void xf86IDrvMsg(LocalDevicePtr dev,
 | 
				
			||||||
 | 
									  MessageType type,
 | 
				
			||||||
 | 
									  const char *format, ...) _X_ATTRIBUTE_PRINTF(3,4);
 | 
				
			||||||
 | 
					extern _X_EXPORT void xf86VIDrvMsgVerb(LocalDevicePtr dev,
 | 
				
			||||||
 | 
									       MessageType type,
 | 
				
			||||||
 | 
									       int verb,
 | 
				
			||||||
 | 
									       const char *format,
 | 
				
			||||||
 | 
									       va_list args);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
/* xf86Option.c */
 | 
					/* xf86Option.c */
 | 
				
			||||||
extern _X_EXPORT void xf86CollectInputOptions(InputInfoPtr pInfo, const char **defaultOpts,
 | 
					extern _X_EXPORT void xf86CollectInputOptions(InputInfoPtr pInfo, const char **defaultOpts,
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue