Merge branch 'linus' into locking/kcsan, to pick up fixes
Signed-off-by: Ingo Molnar <mingo@kernel.org>
This commit is contained in:
@@ -44,3 +44,10 @@ $(error-if,$(success, $(LD) -v | grep -q gold), gold linker '$(LD)' not supporte
|
||||
|
||||
# gcc version including patch level
|
||||
gcc-version := $(shell,$(srctree)/scripts/gcc-version.sh $(CC))
|
||||
|
||||
# machine bit flags
|
||||
# $(m32-flag): -m32 if the compiler supports it, or an empty string otherwise.
|
||||
# $(m64-flag): -m64 if the compiler supports it, or an empty string otherwise.
|
||||
cc-option-bit = $(if-success,$(CC) -Werror $(1) -E -x c /dev/null -o /dev/null,$(1))
|
||||
m32-flag := $(cc-option-bit,-m32)
|
||||
m64-flag := $(cc-option-bit,-m64)
|
||||
|
@@ -48,6 +48,7 @@ KBUILD_CFLAGS += -Wno-initializer-overrides
|
||||
KBUILD_CFLAGS += -Wno-format
|
||||
KBUILD_CFLAGS += -Wno-sign-compare
|
||||
KBUILD_CFLAGS += -Wno-format-zero-length
|
||||
KBUILD_CFLAGS += $(call cc-disable-warning, pointer-to-enum-cast)
|
||||
endif
|
||||
|
||||
endif
|
||||
|
@@ -310,15 +310,15 @@ DT_BINDING_DIR := Documentation/devicetree/bindings
|
||||
DT_TMP_SCHEMA := $(objtree)/$(DT_BINDING_DIR)/processed-schema.yaml
|
||||
|
||||
quiet_cmd_dtb_check = CHECK $@
|
||||
cmd_dtb_check = $(DT_CHECKER) -u $(srctree)/$(DT_BINDING_DIR) -p $(DT_TMP_SCHEMA) $@ ;
|
||||
cmd_dtb_check = $(DT_CHECKER) -u $(srctree)/$(DT_BINDING_DIR) -p $(DT_TMP_SCHEMA) $@
|
||||
|
||||
define rule_dtc_dt_yaml
|
||||
define rule_dtc
|
||||
$(call cmd_and_fixdep,dtc,yaml)
|
||||
$(call cmd,dtb_check)
|
||||
endef
|
||||
|
||||
$(obj)/%.dt.yaml: $(src)/%.dts $(DTC) $(DT_TMP_SCHEMA) FORCE
|
||||
$(call if_changed_rule,dtc_dt_yaml)
|
||||
$(call if_changed_rule,dtc)
|
||||
|
||||
dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
|
||||
|
||||
|
@@ -94,7 +94,7 @@ if (defined $opt{'o'}) {
|
||||
#
|
||||
while ( <$module_symvers> ) {
|
||||
chomp;
|
||||
my (undef, $symbol, $namespace, $module, $gpl) = split('\t');
|
||||
my (undef, $symbol, $module, $gpl, $namespace) = split('\t');
|
||||
$SYMBOL { $symbol } = [ $module , "0" , $symbol, $gpl];
|
||||
}
|
||||
close($module_symvers);
|
||||
|
@@ -195,13 +195,13 @@ static struct sym_entry *read_symbol(FILE *in)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
if (is_ignored_symbol(name, type))
|
||||
return NULL;
|
||||
|
||||
/* Ignore most absolute/undefined (?) symbols. */
|
||||
if (strcmp(name, "_text") == 0)
|
||||
_text = addr;
|
||||
|
||||
/* Ignore most absolute/undefined (?) symbols. */
|
||||
if (is_ignored_symbol(name, type))
|
||||
return NULL;
|
||||
|
||||
check_symbol_range(name, addr, text_ranges, ARRAY_SIZE(text_ranges));
|
||||
check_symbol_range(name, addr, &percpu_range, 1);
|
||||
|
||||
|
@@ -308,7 +308,8 @@ static const char *sec_name(struct elf_info *elf, int secindex)
|
||||
|
||||
static void *sym_get_data(const struct elf_info *info, const Elf_Sym *sym)
|
||||
{
|
||||
Elf_Shdr *sechdr = &info->sechdrs[sym->st_shndx];
|
||||
unsigned int secindex = get_secindex(info, sym);
|
||||
Elf_Shdr *sechdr = &info->sechdrs[secindex];
|
||||
unsigned long offset;
|
||||
|
||||
offset = sym->st_value;
|
||||
@@ -2427,7 +2428,7 @@ static void write_if_changed(struct buffer *b, const char *fname)
|
||||
}
|
||||
|
||||
/* parse Module.symvers file. line format:
|
||||
* 0x12345678<tab>symbol<tab>module[[<tab>export]<tab>something]
|
||||
* 0x12345678<tab>symbol<tab>module<tab>export<tab>namespace
|
||||
**/
|
||||
static void read_dump(const char *fname, unsigned int kernel)
|
||||
{
|
||||
@@ -2440,7 +2441,7 @@ static void read_dump(const char *fname, unsigned int kernel)
|
||||
return;
|
||||
|
||||
while ((line = get_next_line(&pos, file, size))) {
|
||||
char *symname, *namespace, *modname, *d, *export, *end;
|
||||
char *symname, *namespace, *modname, *d, *export;
|
||||
unsigned int crc;
|
||||
struct module *mod;
|
||||
struct symbol *s;
|
||||
@@ -2448,16 +2449,16 @@ static void read_dump(const char *fname, unsigned int kernel)
|
||||
if (!(symname = strchr(line, '\t')))
|
||||
goto fail;
|
||||
*symname++ = '\0';
|
||||
if (!(namespace = strchr(symname, '\t')))
|
||||
goto fail;
|
||||
*namespace++ = '\0';
|
||||
if (!(modname = strchr(namespace, '\t')))
|
||||
if (!(modname = strchr(symname, '\t')))
|
||||
goto fail;
|
||||
*modname++ = '\0';
|
||||
if ((export = strchr(modname, '\t')) != NULL)
|
||||
*export++ = '\0';
|
||||
if (export && ((end = strchr(export, '\t')) != NULL))
|
||||
*end = '\0';
|
||||
if (!(export = strchr(modname, '\t')))
|
||||
goto fail;
|
||||
*export++ = '\0';
|
||||
if (!(namespace = strchr(export, '\t')))
|
||||
goto fail;
|
||||
*namespace++ = '\0';
|
||||
|
||||
crc = strtoul(line, &d, 16);
|
||||
if (*symname == '\0' || *modname == '\0' || *d != '\0')
|
||||
goto fail;
|
||||
@@ -2508,9 +2509,9 @@ static void write_dump(const char *fname)
|
||||
namespace = symbol->namespace;
|
||||
buf_printf(&buf, "0x%08x\t%s\t%s\t%s\t%s\n",
|
||||
symbol->crc, symbol->name,
|
||||
namespace ? namespace : "",
|
||||
symbol->module->name,
|
||||
export_str(symbol->export));
|
||||
export_str(symbol->export),
|
||||
namespace ? namespace : "");
|
||||
}
|
||||
symbol = symbol->next;
|
||||
}
|
||||
|
0
scripts/parse-maintainers.pl
Normal file → Executable file
0
scripts/parse-maintainers.pl
Normal file → Executable file
Reference in New Issue
Block a user