Re: [RFC] ARM binutils feature churn causing kernel problems

From: Russell King
Date: Tue Oct 05 2004 - 08:16:42 EST


On Tue, Oct 05, 2004 at 01:57:15PM +0100, Richard Earnshaw wrote:
> On Tue, 2004-10-05 at 12:53, Russell King wrote:
> > diff -up -x BitKeeper -x ChangeSet -x SCCS -x _xlk -x *.orig -x *.rej orig/scripts/kallsyms.c linux/scripts/kallsyms.c
> > --- orig/scripts/kallsyms.c Sun Jul 11 22:56:39 2004
> > +++ linux/scripts/kallsyms.c Tue Oct 5 12:51:26 2004
> > @@ -32,6 +32,17 @@ usage(void)
> > exit(1);
> > }
> >
> > +/*
> > + * This ignores the intensely annoying "mapping symbols" found
> > + * in ARM ELF files: $a, $t and $d.
> > + */
> > +static inline int
> > +is_arm_mapping_symbol(const char *str)
> > +{
> > + return str[0] == '$' && strchr("atd", str[1]) &&
> > + (str[2] == '\0' || str[2] == '.');
> > +}
> > +
> > static int
> > read_symbol(FILE *in, struct sym_entry *s)
> > {
> > @@ -56,7 +67,8 @@ read_symbol(FILE *in, struct sym_entry *
> > _sinittext = s->addr;
> > else if (strcmp(str, "_einittext") == 0)
> > _einittext = s->addr;
> > - else if (toupper(s->type) == 'A' || toupper(s->type) == 'U')
> > + else if (toupper(s->type) == 'A' || toupper(s->type) == 'U' ||
> > + is_arm_mapping_symbol(str))
> > return -1;
> >
> > s->sym = strdup(str);
>
> Why don't you pass s to is_arm_mapping_symbol and have it do the same
> thing as you've done in get_ksymbol?

"sym_entry" is not an ELF symtab structure - it's a parsed version
of the `nm' output, and as such does not contain the symbol type nor
binding information.

> ----------------------------------------------------------------
> This e-mail message is intended for the addressee(s) only and may
> contain information that is the property of, and/or subject to a
> confidentiality agreement between the intended recipient(s), their
> organisation and/or the ARM Group of Companies. If you are not an
> intended recipient of this e-mail message, you should not read, copy,
> forward or otherwise distribute or further disclose the information in
> it; misuse of the contents of this e-mail message may violate various
> laws in your state, country or jurisdiction. If you have received this
> e-mail message in error, please contact the originator of this e-mail
> message via e-mail and delete all copies of this message from your
> computer or network, thank you.
> ----------------------------------------------------------------

Does this apply to your message? It would appear that third parties
subscribed to linux-kernel are not allowed to read your messages
because they're not an "intended recipient" !

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 PCMCIA - http://pcmcia.arm.linux.org.uk/
2.6 Serial core
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/