Messages in this thread | | | Date | Thu, 14 Apr 2022 19:18:53 -0700 | From | Josh Poimboeuf <> | Subject | Re: [PATCH 17/18] objtool: Remove --lto and --vmlinux |
| |
On Thu, Apr 14, 2022 at 10:13:50AM +0200, Peter Zijlstra wrote: > On Wed, Apr 13, 2022 at 04:19:52PM -0700, Josh Poimboeuf wrote: > > > @@ -131,6 +131,12 @@ static inline u32 reloc_hash(struct reloc *reloc) > > return sec_offset_hash(reloc->sec, reloc->offset); > > } > > > > +/* is it a whole archive (vmlinux.o or module)? */ > > +static inline bool is_linked_object(struct elf *elf) > > +{ > > + return elf->num_files > 1; > > +} > > + > > struct elf *elf_open_read(const char *name, int flags); > > struct section *elf_create_section(struct elf *elf, const char *name, unsigned int sh_flags, size_t entsize, int nr); > > Ooh, nice... yes, that was the entire point of --lto.
Urgh, some kernel modules only have a single source file, which obviously breaks this.
We might need an explicit --link option after all. But with different semantics from --lto. It would just mean "is a linked object".
-- Josh
| |