 392c64d8fd
			
		
	
	392c64d8fd
	
	
	
		
			
			Refreshed patches, removed upstreamed patch: bcm27xx: 950-0642-component-Silence-bind-error-on-EPROBE_DEFER.patch Run tested: qemu-x86-64 Build tested: x86/64, imx6, sunxi/a53 Signed-off-by: Petr Štetiar <ynezz@true.cz>
		
			
				
	
	
		
			42 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
			
		
		
	
	
			42 lines
		
	
	
		
			1.2 KiB
		
	
	
	
		
			Diff
		
	
	
	
	
	
| From: Felix Fietkau <nbd@nbd.name>
 | |
| Subject: kernel: when KALLSYMS is disabled, print module address + size for matching backtrace entries
 | |
| 
 | |
| [john@phrozen.org: felix will add this to his upstream queue]
 | |
| 
 | |
| lede-commit 53827cdc824556cda910b23ce5030c363b8f1461
 | |
| Signed-off-by: Felix Fietkau <nbd@nbd.name>
 | |
| ---
 | |
|  lib/vsprintf.c | 15 +++++++++++----
 | |
|  1 file changed, 11 insertions(+), 4 deletions(-)
 | |
| 
 | |
| --- a/lib/vsprintf.c
 | |
| +++ b/lib/vsprintf.c
 | |
| @@ -914,8 +914,10 @@ char *symbol_string(char *buf, char *end
 | |
|  		    struct printf_spec spec, const char *fmt)
 | |
|  {
 | |
|  	unsigned long value;
 | |
| -#ifdef CONFIG_KALLSYMS
 | |
|  	char sym[KSYM_SYMBOL_LEN];
 | |
| +#ifndef CONFIG_KALLSYMS
 | |
| +	struct module *mod;
 | |
| +	int len;
 | |
|  #endif
 | |
|  
 | |
|  	if (fmt[1] == 'R')
 | |
| @@ -932,8 +934,14 @@ char *symbol_string(char *buf, char *end
 | |
|  
 | |
|  	return string_nocheck(buf, end, sym, spec);
 | |
|  #else
 | |
| -	return special_hex_number(buf, end, value, sizeof(void *));
 | |
| +	len = snprintf(sym, sizeof(sym), "0x%lx", value);
 | |
| +	mod = __module_address(value);
 | |
| +	if (mod)
 | |
| +		snprintf(sym + len, sizeof(sym) - len, " [%s@%p+0x%x]",
 | |
| +			 mod->name, mod->core_layout.base,
 | |
| +			 mod->core_layout.size);
 | |
|  #endif
 | |
| +	return string(buf, end, sym, spec);
 | |
|  }
 | |
|  
 | |
|  static const struct printf_spec default_str_spec = {
 |