From patchwork Wed May 9 07:23:47 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Masahiro Yamada X-Patchwork-Id: 135202 Delivered-To: patch@linaro.org Received: by 10.46.151.6 with SMTP id r6csp5308817lji; Wed, 9 May 2018 00:24:52 -0700 (PDT) X-Google-Smtp-Source: AB8JxZqcNafH/NgTQe8Eqh5K/cDDlJcaDrmZB7B1hLn302HlrHPvnhI30ze2Rp0gn2MIugH1TPsB X-Received: by 2002:a63:ba4b:: with SMTP id l11-v6mr425499pgu.453.1525850691940; Wed, 09 May 2018 00:24:51 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1525850691; cv=none; d=google.com; s=arc-20160816; b=xVVMX9LyDt33xZD0McuBsFjtDviSOLCqgi3gKhOt14WeOYBneVU9h74kInJsOIEDLL S0fPWCPrJeWY7l3d3ihU7uOq6jzAjCtUM2LhhT0pQ6nLGrJuCp9r2do2yYOq5vxH2i60 mgpJZcE25MRx1qbDhySC5fLULZkMNMMlb+NE+0afwgM3m2ruQVZaDvVnZhpZE/nhjMx1 zMzx4dZv7PCXGc4cjeVjV9dfmdSHjj5BnDnMPvsl+/38gEce/MA5HTjHHZ8vXk2CJ+D/ 10dUZjfTHZ3QScqFj7EDESk5XL53Zl+mWyHKO/K+mTA79qaHs1sJ0ojzR3AXaoAM9l5f fNsA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from:dkim-signature:dkim-filter :arc-authentication-results; bh=o/d5Z+2WhigJjiqFxVGEeQWtFIWa+tJN0ZTWxN/8OG0=; b=rrBFCc19k5hnX6PHhzeVKSLQ3eSGxC/86uidAzmC9i5crQtQZGkQfTKzJNU4IVzzg0 IagX5GZfq312cBxZwsH3vZARAiSme84wNMQxbHipdPuYC7nV9Q2QGX+LZ3sbZ1dQeHe7 Mi3T+9CUSG1yDL7rm4ONHo5AA+Uy3bBFcacGCVNXZCemqW1jCXL82oAIsN6XnCncj7b5 +4sqfxGIP4vXbD6Pkv2LloEuWnU2+nbXMOW5xoA0qlrIeGb/NRz2MzOxmQTv0AVzCkiH guvvlyrXIw/TVgCpLSKzbttr+cVFPIk9b676GObNwMl7BmR7IUoYMYL8jGYZGwrL5lHd S48g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@nifty.com header.s=dec2015msa header.b=yvAyeMtR; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id d15-v6si25614897plj.186.2018.05.09.00.24.51; Wed, 09 May 2018 00:24:51 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@nifty.com header.s=dec2015msa header.b=yvAyeMtR; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756210AbeEIHYt (ORCPT + 29 others); Wed, 9 May 2018 03:24:49 -0400 Received: from conuserg-10.nifty.com ([210.131.2.77]:50567 "EHLO conuserg-10.nifty.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755400AbeEIHYq (ORCPT ); Wed, 9 May 2018 03:24:46 -0400 Received: from pug.e01.socionext.com (p14092-ipngnfx01kyoto.kyoto.ocn.ne.jp [153.142.97.92]) (authenticated) by conuserg-10.nifty.com with ESMTP id w497O36F028852; Wed, 9 May 2018 16:24:05 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conuserg-10.nifty.com w497O36F028852 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1525850646; bh=o/d5Z+2WhigJjiqFxVGEeQWtFIWa+tJN0ZTWxN/8OG0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=yvAyeMtR/BTkOWf6GQX9mXE1v6GrznvF+eO/C3qqnkF2Wg6MLdoMTEZon+TtK8+bO tE3L1Kwhh3xaQ9CMF9nPZr/2MRJIOhnUupfTt9E72zlmA2O7wYXbKms7cWcJk3bpe3 CVobDVj+569wkGr7YhzGbKIDg+W5HbAHCHBN4CZfbQ8CAodrOB4DHsDlXNlw/qXbze AIynlZbKqpzrJoOYfFV3HqtkaspUSOvH/ogS6GxRoTG3tbi2bdCsXx+srGrF5cUBZM ZCUNhqlIS+rEqNxxbZti38I8qPBUCR007gW/CD7EWWn5t1dBhuKJMtJCuK2Po0CjKo SC7YJEuI5S7ww== X-Nifty-SrcIP: [153.142.97.92] From: Masahiro Yamada To: linux-kbuild@vger.kernel.org Cc: Arnd Bergmann , Joe Perches , Sam Ravnborg , Masahiro Yamada , linux-kernel@vger.kernel.org Subject: [PATCH 3/8] kallsyms: remove symbol prefix support Date: Wed, 9 May 2018 16:23:47 +0900 Message-Id: <1525850632-10921-4-git-send-email-yamada.masahiro@socionext.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1525850632-10921-1-git-send-email-yamada.masahiro@socionext.com> References: <1525850632-10921-1-git-send-email-yamada.masahiro@socionext.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org CONFIG_HAVE_UNDERSCORE_SYMBOL_PREFIX was selected by BLACKFIN, METAG. They were removed by commit 4ba66a976072 ("arch: remove blackfin port"), commit bb6fb6dfcc17 ("metag: Remove arch/metag/"), respectively. No more architecture enables CONFIG_HAVE_UNDERSCORE_SYMBOL_PREFIX, hence the --symbol-prefix option is unnecessary. Signed-off-by: Masahiro Yamada --- scripts/kallsyms.c | 47 +++++++++++------------------------------------ scripts/link-vmlinux.sh | 4 ---- 2 files changed, 11 insertions(+), 40 deletions(-) -- 2.7.4 diff --git a/scripts/kallsyms.c b/scripts/kallsyms.c index 5abfbf1..8041762 100644 --- a/scripts/kallsyms.c +++ b/scripts/kallsyms.c @@ -62,7 +62,6 @@ static struct sym_entry *table; static unsigned int table_size, table_cnt; static int all_symbols = 0; static int absolute_percpu = 0; -static char symbol_prefix_char = '\0'; static int base_relative = 0; int token_profit[0x10000]; @@ -75,7 +74,6 @@ unsigned char best_table_len[256]; static void usage(void) { fprintf(stderr, "Usage: kallsyms [--all-symbols] " - "[--symbol-prefix=] " "[--base-relative] < in.map > out.S\n"); exit(1); } @@ -113,28 +111,22 @@ static int check_symbol_range(const char *sym, unsigned long long addr, static int read_symbol(FILE *in, struct sym_entry *s) { - char str[500]; - char *sym, stype; + char sym[500], stype; int rc; - rc = fscanf(in, "%llx %c %499s\n", &s->addr, &stype, str); + rc = fscanf(in, "%llx %c %499s\n", &s->addr, &stype, sym); if (rc != 3) { - if (rc != EOF && fgets(str, 500, in) == NULL) + if (rc != EOF && fgets(sym, 500, in) == NULL) fprintf(stderr, "Read error or end of file.\n"); return -1; } - if (strlen(str) > KSYM_NAME_LEN) { + if (strlen(sym) > KSYM_NAME_LEN) { fprintf(stderr, "Symbol %s too long for kallsyms (%zu vs %d).\n" "Please increase KSYM_NAME_LEN both in kernel and kallsyms.c\n", - str, strlen(str), KSYM_NAME_LEN); + sym, strlen(sym), KSYM_NAME_LEN); return -1; } - sym = str; - /* skip prefix char */ - if (symbol_prefix_char && str[0] == symbol_prefix_char) - sym++; - /* Ignore most absolute/undefined (?) symbols. */ if (strcmp(sym, "_text") == 0) _text = s->addr; @@ -155,7 +147,7 @@ static int read_symbol(FILE *in, struct sym_entry *s) is_arm_mapping_symbol(sym)) return -1; /* exclude also MIPS ELF local symbols ($L123 instead of .L123) */ - else if (str[0] == '$') + else if (sym[0] == '$') return -1; /* exclude debugging symbols */ else if (stype == 'N' || stype == 'n') @@ -163,14 +155,14 @@ static int read_symbol(FILE *in, struct sym_entry *s) /* include the type field in the symbol name, so that it gets * compressed together */ - s->len = strlen(str) + 1; + s->len = strlen(sym) + 1; s->sym = malloc(s->len + 1); if (!s->sym) { fprintf(stderr, "kallsyms failure: " "unable to allocate required amount of memory\n"); exit(EXIT_FAILURE); } - strcpy((char *)s->sym + 1, str); + strcpy((char *)s->sym + 1, sym); s->sym[0] = stype; s->percpu_absolute = 0; @@ -233,11 +225,6 @@ static int symbol_valid(struct sym_entry *s) int i; char *sym_name = (char *)s->sym + 1; - /* skip prefix char */ - if (symbol_prefix_char && *sym_name == symbol_prefix_char) - sym_name++; - - /* if --all-symbols is not specified, then symbols outside the text * and inittext sections are discarded */ if (!all_symbols) { @@ -302,15 +289,9 @@ static void read_map(FILE *in) static void output_label(char *label) { - if (symbol_prefix_char) - printf(".globl %c%s\n", symbol_prefix_char, label); - else - printf(".globl %s\n", label); + printf(".globl %s\n", label); printf("\tALGN\n"); - if (symbol_prefix_char) - printf("%c%s:\n", symbol_prefix_char, label); - else - printf("%s:\n", label); + printf("%s:\n", label); } /* uncompress a compressed symbol. When this function is called, the best table @@ -768,13 +749,7 @@ int main(int argc, char **argv) all_symbols = 1; else if (strcmp(argv[i], "--absolute-percpu") == 0) absolute_percpu = 1; - else if (strncmp(argv[i], "--symbol-prefix=", 16) == 0) { - char *p = &argv[i][16]; - /* skip quote */ - if ((*p == '"' && *(p+2) == '"') || (*p == '\'' && *(p+2) == '\'')) - p++; - symbol_prefix_char = *p; - } else if (strcmp(argv[i], "--base-relative") == 0) + else if (strcmp(argv[i], "--base-relative") == 0) base_relative = 1; else usage(); diff --git a/scripts/link-vmlinux.sh b/scripts/link-vmlinux.sh index 9045823..4bf811c 100755 --- a/scripts/link-vmlinux.sh +++ b/scripts/link-vmlinux.sh @@ -121,10 +121,6 @@ kallsyms() info KSYM ${2} local kallsymopt; - if [ -n "${CONFIG_HAVE_UNDERSCORE_SYMBOL_PREFIX}" ]; then - kallsymopt="${kallsymopt} --symbol-prefix=_" - fi - if [ -n "${CONFIG_KALLSYMS_ALL}" ]; then kallsymopt="${kallsymopt} --all-symbols" fi