From 04f0ee51980589f6b2941284dd662686226694a8 Mon Sep 17 00:00:00 2001 From: Pavel Pisa Date: Thu, 15 Aug 2019 14:41:42 -0600 Subject: [PATCH] binfmt/: Change debug macro from berr() to binfo() when dumping module data. The report of problems is important during development but when it enables complete informative output about load binaries then the important information can be easily overlooked. The huge output sent to serial terminal slows loading significantly as well. --- binfmt/binfmt_dumpmodule.c | 22 +++++----- binfmt/elf.c | 82 +++++++++++++++++++------------------- binfmt/nxflat.c | 38 +++++++++--------- 3 files changed, 71 insertions(+), 71 deletions(-) diff --git a/binfmt/binfmt_dumpmodule.c b/binfmt/binfmt_dumpmodule.c index 04568c8baf..1f35bc173f 100644 --- a/binfmt/binfmt_dumpmodule.c +++ b/binfmt/binfmt_dumpmodule.c @@ -70,21 +70,21 @@ int dump_module(FAR const struct binary_s *bin) { if (bin) { - berr("Module:\n"); - berr(" filename: %s\n", bin->filename); - berr(" argv: %p\n", bin->argv); - berr(" entrypt: %p\n", bin->entrypt); - berr(" mapped: %p size=%d\n", bin->mapped, bin->mapsize); - berr(" alloc: %p %p %p\n", bin->alloc[0], bin->alloc[1], bin->alloc[2]); + binfo("Module:\n"); + binfo(" filename: %s\n", bin->filename); + binfo(" argv: %p\n", bin->argv); + binfo(" entrypt: %p\n", bin->entrypt); + binfo(" mapped: %p size=%d\n", bin->mapped, bin->mapsize); + binfo(" alloc: %p %p %p\n", bin->alloc[0], bin->alloc[1], bin->alloc[2]); #ifdef CONFIG_BINFMT_CONSTRUCTORS - berr(" ctors: %p nctors=%d\n", bin->ctors, bin->nctors); - berr(" dtors: %p ndtors=%d\n", bin->dtors, bin->ndtors); + binfo(" ctors: %p nctors=%d\n", bin->ctors, bin->nctors); + binfo(" dtors: %p ndtors=%d\n", bin->dtors, bin->ndtors); #endif #ifdef CONFIG_ARCH_ADDRENV - berr(" addrenv: %p\n", bin->addrenv); + binfo(" addrenv: %p\n", bin->addrenv); #endif - berr(" stacksize: %d\n", bin->stacksize); - berr(" unload: %p\n", bin->unload); + binfo(" stacksize: %d\n", bin->stacksize); + binfo(" unload: %p\n", bin->unload); } return OK; diff --git a/binfmt/elf.c b/binfmt/elf.c index fd75f13ea2..7aab94f57f 100644 --- a/binfmt/elf.c +++ b/binfmt/elf.c @@ -112,58 +112,58 @@ static void elf_dumploadinfo(FAR struct elf_loadinfo_s *loadinfo) { int i; - berr("LOAD_INFO:\n"); - berr(" textalloc: %08lx\n", (long)loadinfo->textalloc); - berr(" dataalloc: %08lx\n", (long)loadinfo->dataalloc); - berr(" textsize: %ld\n", (long)loadinfo->textsize); - berr(" datasize: %ld\n", (long)loadinfo->datasize); - berr(" filelen: %ld\n", (long)loadinfo->filelen); + binfo("LOAD_INFO:\n"); + binfo(" textalloc: %08lx\n", (long)loadinfo->textalloc); + binfo(" dataalloc: %08lx\n", (long)loadinfo->dataalloc); + binfo(" textsize: %ld\n", (long)loadinfo->textsize); + binfo(" datasize: %ld\n", (long)loadinfo->datasize); + binfo(" filelen: %ld\n", (long)loadinfo->filelen); #ifdef CONFIG_BINFMT_CONSTRUCTORS - berr(" ctoralloc: %08lx\n", (long)loadinfo->ctoralloc); - berr(" ctors: %08lx\n", (long)loadinfo->ctors); - berr(" nctors: %d\n", loadinfo->nctors); - berr(" dtoralloc: %08lx\n", (long)loadinfo->dtoralloc); - berr(" dtors: %08lx\n", (long)loadinfo->dtors); - berr(" ndtors: %d\n", loadinfo->ndtors); + binfo(" ctoralloc: %08lx\n", (long)loadinfo->ctoralloc); + binfo(" ctors: %08lx\n", (long)loadinfo->ctors); + binfo(" nctors: %d\n", loadinfo->nctors); + binfo(" dtoralloc: %08lx\n", (long)loadinfo->dtoralloc); + binfo(" dtors: %08lx\n", (long)loadinfo->dtors); + binfo(" ndtors: %d\n", loadinfo->ndtors); #endif - berr(" filfd: %d\n", loadinfo->filfd); - berr(" symtabidx: %d\n", loadinfo->symtabidx); - berr(" strtabidx: %d\n", loadinfo->strtabidx); + binfo(" filfd: %d\n", loadinfo->filfd); + binfo(" symtabidx: %d\n", loadinfo->symtabidx); + binfo(" strtabidx: %d\n", loadinfo->strtabidx); - berr("ELF Header:\n"); - berr(" e_ident: %02x %02x %02x %02x\n", + binfo("ELF Header:\n"); + binfo(" e_ident: %02x %02x %02x %02x\n", loadinfo->ehdr.e_ident[0], loadinfo->ehdr.e_ident[1], loadinfo->ehdr.e_ident[2], loadinfo->ehdr.e_ident[3]); - berr(" e_type: %04x\n", loadinfo->ehdr.e_type); - berr(" e_machine: %04x\n", loadinfo->ehdr.e_machine); - berr(" e_version: %08x\n", loadinfo->ehdr.e_version); - berr(" e_entry: %08lx\n", (long)loadinfo->ehdr.e_entry); - berr(" e_phoff: %d\n", loadinfo->ehdr.e_phoff); - berr(" e_shoff: %d\n", loadinfo->ehdr.e_shoff); - berr(" e_flags: %08x\n" , loadinfo->ehdr.e_flags); - berr(" e_ehsize: %d\n", loadinfo->ehdr.e_ehsize); - berr(" e_phentsize: %d\n", loadinfo->ehdr.e_phentsize); - berr(" e_phnum: %d\n", loadinfo->ehdr.e_phnum); - berr(" e_shentsize: %d\n", loadinfo->ehdr.e_shentsize); - berr(" e_shnum: %d\n", loadinfo->ehdr.e_shnum); - berr(" e_shstrndx: %d\n", loadinfo->ehdr.e_shstrndx); + binfo(" e_type: %04x\n", loadinfo->ehdr.e_type); + binfo(" e_machine: %04x\n", loadinfo->ehdr.e_machine); + binfo(" e_version: %08x\n", loadinfo->ehdr.e_version); + binfo(" e_entry: %08lx\n", (long)loadinfo->ehdr.e_entry); + binfo(" e_phoff: %d\n", loadinfo->ehdr.e_phoff); + binfo(" e_shoff: %d\n", loadinfo->ehdr.e_shoff); + binfo(" e_flags: %08x\n" , loadinfo->ehdr.e_flags); + binfo(" e_ehsize: %d\n", loadinfo->ehdr.e_ehsize); + binfo(" e_phentsize: %d\n", loadinfo->ehdr.e_phentsize); + binfo(" e_phnum: %d\n", loadinfo->ehdr.e_phnum); + binfo(" e_shentsize: %d\n", loadinfo->ehdr.e_shentsize); + binfo(" e_shnum: %d\n", loadinfo->ehdr.e_shnum); + binfo(" e_shstrndx: %d\n", loadinfo->ehdr.e_shstrndx); if (loadinfo->shdr && loadinfo->ehdr.e_shnum > 0) { for (i = 0; i < loadinfo->ehdr.e_shnum; i++) { FAR Elf32_Shdr *shdr = &loadinfo->shdr[i]; - berr("Sections %d:\n", i); - berr(" sh_name: %08x\n", shdr->sh_name); - berr(" sh_type: %08x\n", shdr->sh_type); - berr(" sh_flags: %08x\n", shdr->sh_flags); - berr(" sh_addr: %08x\n", shdr->sh_addr); - berr(" sh_offset: %d\n", shdr->sh_offset); - berr(" sh_size: %d\n", shdr->sh_size); - berr(" sh_link: %d\n", shdr->sh_link); - berr(" sh_info: %d\n", shdr->sh_info); - berr(" sh_addralign: %d\n", shdr->sh_addralign); - berr(" sh_entsize: %d\n", shdr->sh_entsize); + binfo("Sections %d:\n", i); + binfo(" sh_name: %08x\n", shdr->sh_name); + binfo(" sh_type: %08x\n", shdr->sh_type); + binfo(" sh_flags: %08x\n", shdr->sh_flags); + binfo(" sh_addr: %08x\n", shdr->sh_addr); + binfo(" sh_offset: %d\n", shdr->sh_offset); + binfo(" sh_size: %d\n", shdr->sh_size); + binfo(" sh_link: %d\n", shdr->sh_link); + binfo(" sh_info: %d\n", shdr->sh_info); + binfo(" sh_addralign: %d\n", shdr->sh_addralign); + binfo(" sh_entsize: %d\n", shdr->sh_entsize); } } } diff --git a/binfmt/nxflat.c b/binfmt/nxflat.c index b0096ce156..3e54e5fc9b 100644 --- a/binfmt/nxflat.c +++ b/binfmt/nxflat.c @@ -111,31 +111,31 @@ static void nxflat_dumploadinfo(FAR struct nxflat_loadinfo_s *loadinfo) { unsigned long dsize = loadinfo->datasize + loadinfo->bsssize; - berr("LOAD_INFO:\n"); - berr(" ISPACE:\n"); - berr(" ispace: %08lx\n", loadinfo->ispace); - berr(" entryoffs: %08lx\n", loadinfo->entryoffs); - berr(" isize: %08lx\n", loadinfo->isize); + binfo("LOAD_INFO:\n"); + binfo(" ISPACE:\n"); + binfo(" ispace: %08lx\n", loadinfo->ispace); + binfo(" entryoffs: %08lx\n", loadinfo->entryoffs); + binfo(" isize: %08lx\n", loadinfo->isize); - berr(" DSPACE:\n"); - berr(" dspace: %08lx\n", loadinfo->dspace); + binfo(" DSPACE:\n"); + binfo(" dspace: %08lx\n", loadinfo->dspace); if (loadinfo->dspace != NULL) { - berr(" crefs: %d\n", loadinfo->dspace->crefs); - berr(" region: %08lx\n", loadinfo->dspace->region); + binfo(" crefs: %d\n", loadinfo->dspace->crefs); + binfo(" region: %08lx\n", loadinfo->dspace->region); } - berr(" datasize: %08lx\n", loadinfo->datasize); - berr(" bsssize: %08lx\n", loadinfo->bsssize); - berr(" (pad): %08lx\n", loadinfo->dsize - dsize); - berr(" stacksize: %08lx\n", loadinfo->stacksize); - berr(" dsize: %08lx\n", loadinfo->dsize); + binfo(" datasize: %08lx\n", loadinfo->datasize); + binfo(" bsssize: %08lx\n", loadinfo->bsssize); + binfo(" (pad): %08lx\n", loadinfo->dsize - dsize); + binfo(" stacksize: %08lx\n", loadinfo->stacksize); + binfo(" dsize: %08lx\n", loadinfo->dsize); - berr(" RELOCS:\n"); - berr(" relocstart: %08lx\n", loadinfo->relocstart); - berr(" reloccount: %d\n", loadinfo->reloccount); + binfo(" RELOCS:\n"); + binfo(" relocstart: %08lx\n", loadinfo->relocstart); + binfo(" reloccount: %d\n", loadinfo->reloccount); - berr(" HANDLES:\n"); - berr(" filfd: %d\n", loadinfo->filfd); + binfo(" HANDLES:\n"); + binfo(" filfd: %d\n", loadinfo->filfd); } #else # define nxflat_dumploadinfo(i)