⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 utdebug.c

📁 h内核
💻 C
📖 第 1 页 / 共 2 页
字号:
{	acpi_gbl_nesting_level++;	acpi_ut_track_stack_ptr ();	acpi_ut_debug_print (ACPI_LV_FUNCTIONS, line_number, dbg_info,			"%s %s\n", acpi_gbl_fn_entry_str, string);}/***************************************************************************** * * FUNCTION:    acpi_ut_trace_u32 * * PARAMETERS:  line_number         - Caller's line number *              dbg_info            - Contains: *                  proc_name           - Caller's procedure name *                  module_name         - Caller's module name *                  component_id        - Caller's component ID *              Integer             - Integer to display * * RETURN:      None * * DESCRIPTION: Function entry trace.  Prints only if TRACE_FUNCTIONS bit is *              set in debug_level * ****************************************************************************/voidacpi_ut_trace_u32 (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	u32                             integer){	acpi_gbl_nesting_level++;	acpi_ut_track_stack_ptr ();	acpi_ut_debug_print (ACPI_LV_FUNCTIONS, line_number, dbg_info,			"%s %08X\n", acpi_gbl_fn_entry_str, integer);}/***************************************************************************** * * FUNCTION:    acpi_ut_exit * * PARAMETERS:  line_number         - Caller's line number *              dbg_info            - Contains: *                  proc_name           - Caller's procedure name *                  module_name         - Caller's module name *                  component_id        - Caller's component ID * * RETURN:      None * * DESCRIPTION: Function exit trace.  Prints only if TRACE_FUNCTIONS bit is *              set in debug_level * ****************************************************************************/voidacpi_ut_exit (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info){	acpi_ut_debug_print (ACPI_LV_FUNCTIONS, line_number, dbg_info,			"%s\n", acpi_gbl_fn_exit_str);	acpi_gbl_nesting_level--;}EXPORT_SYMBOL(acpi_ut_exit);/***************************************************************************** * * FUNCTION:    acpi_ut_status_exit * * PARAMETERS:  line_number         - Caller's line number *              dbg_info            - Contains: *                  proc_name           - Caller's procedure name *                  module_name         - Caller's module name *                  component_id        - Caller's component ID *              Status              - Exit status code * * RETURN:      None * * DESCRIPTION: Function exit trace.  Prints only if TRACE_FUNCTIONS bit is *              set in debug_level. Prints exit status also. * ****************************************************************************/voidacpi_ut_status_exit (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	acpi_status                     status){	if (ACPI_SUCCESS (status)) {		acpi_ut_debug_print (ACPI_LV_FUNCTIONS, line_number, dbg_info,				"%s %s\n", acpi_gbl_fn_exit_str,				acpi_format_exception (status));	}	else {		acpi_ut_debug_print (ACPI_LV_FUNCTIONS, line_number, dbg_info,				"%s ****Exception****: %s\n", acpi_gbl_fn_exit_str,				acpi_format_exception (status));	}	acpi_gbl_nesting_level--;}EXPORT_SYMBOL(acpi_ut_status_exit);/***************************************************************************** * * FUNCTION:    acpi_ut_value_exit * * PARAMETERS:  line_number         - Caller's line number *              dbg_info            - Contains: *                  proc_name           - Caller's procedure name *                  module_name         - Caller's module name *                  component_id        - Caller's component ID *              Value               - Value to be printed with exit msg * * RETURN:      None * * DESCRIPTION: Function exit trace.  Prints only if TRACE_FUNCTIONS bit is *              set in debug_level. Prints exit value also. * ****************************************************************************/voidacpi_ut_value_exit (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	acpi_integer                    value){	acpi_ut_debug_print (ACPI_LV_FUNCTIONS, line_number, dbg_info,			"%s %8.8X%8.8X\n", acpi_gbl_fn_exit_str,			ACPI_FORMAT_UINT64 (value));	acpi_gbl_nesting_level--;}EXPORT_SYMBOL(acpi_ut_value_exit);/***************************************************************************** * * FUNCTION:    acpi_ut_ptr_exit * * PARAMETERS:  line_number         - Caller's line number *              dbg_info            - Contains: *                  proc_name           - Caller's procedure name *                  module_name         - Caller's module name *                  component_id        - Caller's component ID *              Value               - Value to be printed with exit msg * * RETURN:      None * * DESCRIPTION: Function exit trace.  Prints only if TRACE_FUNCTIONS bit is *              set in debug_level. Prints exit value also. * ****************************************************************************/voidacpi_ut_ptr_exit (	u32                             line_number,	struct acpi_debug_print_info    *dbg_info,	u8                              *ptr){	acpi_ut_debug_print (ACPI_LV_FUNCTIONS, line_number, dbg_info,			"%s %p\n", acpi_gbl_fn_exit_str, ptr);	acpi_gbl_nesting_level--;}#endif/***************************************************************************** * * FUNCTION:    acpi_ut_dump_buffer * * PARAMETERS:  Buffer              - Buffer to dump *              Count               - Amount to dump, in bytes *              Display             - BYTE, WORD, DWORD, or QWORD display *              component_iD        - Caller's component ID * * RETURN:      None * * DESCRIPTION: Generic dump buffer in both hex and ascii. * ****************************************************************************/voidacpi_ut_dump_buffer (	u8                              *buffer,	u32                             count,	u32                             display,	u32                             component_id){	acpi_native_uint                i = 0;	acpi_native_uint                j;	u32                             temp32;	u8                              buf_char;	/* Only dump the buffer if tracing is enabled */	if (!((ACPI_LV_TABLES & acpi_dbg_level) &&		(component_id & acpi_dbg_layer))) {		return;	}	if ((count < 4) || (count & 0x01)) {		display = DB_BYTE_DISPLAY;	}	acpi_os_printf ("\nOffset Value\n");	/*	 * Nasty little dump buffer routine!	 */	while (i < count) {		/* Print current offset */		acpi_os_printf ("%05X  ", (u32) i);		/* Print 16 hex chars */		for (j = 0; j < 16;) {			if (i + j >= count) {				acpi_os_printf ("\n");				return;			}			/* Make sure that the s8 doesn't get sign-extended! */			switch (display) {			/* Default is BYTE display */			default:				acpi_os_printf ("%02X ",						*((u8 *) &buffer[i + j]));				j += 1;				break;			case DB_WORD_DISPLAY:				ACPI_MOVE_16_TO_32 (&temp32, &buffer[i + j]);				acpi_os_printf ("%04X ", temp32);				j += 2;				break;			case DB_DWORD_DISPLAY:				ACPI_MOVE_32_TO_32 (&temp32, &buffer[i + j]);				acpi_os_printf ("%08X ", temp32);				j += 4;				break;			case DB_QWORD_DISPLAY:				ACPI_MOVE_32_TO_32 (&temp32, &buffer[i + j]);				acpi_os_printf ("%08X", temp32);				ACPI_MOVE_32_TO_32 (&temp32, &buffer[i + j + 4]);				acpi_os_printf ("%08X ", temp32);				j += 8;				break;			}		}		/*		 * Print the ASCII equivalent characters		 * But watch out for the bad unprintable ones...		 */		for (j = 0; j < 16; j++) {			if (i + j >= count) {				acpi_os_printf ("\n");				return;			}			buf_char = buffer[i + j];			if ((buf_char > 0x1F && buf_char < 0x2E) ||				(buf_char > 0x2F && buf_char < 0x61) ||				(buf_char > 0x60 && buf_char < 0x7F)) {				acpi_os_printf ("%c", buf_char);			}			else {				acpi_os_printf (".");			}		}		/* Done with that line. */		acpi_os_printf ("\n");		i += 16;	}	return;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -