diff --git a/repos/base/src/lib/ldso/main.cc b/repos/base/src/lib/ldso/main.cc index 9ac7c9f307..e57196dde8 100644 --- a/repos/base/src/lib/ldso/main.cc +++ b/repos/base/src/lib/ldso/main.cc @@ -292,12 +292,12 @@ struct Linker::Ld : private Dependency, Elf_object Elf::Addr Ld::jmp_slot(Dependency const &dep, Elf::Size index) { - Mutex::Guard guard(mutex()); - - if (verbose_relocation) - log("LD: SLOT ", &dep.obj(), " ", Hex(index)); - try { + Mutex::Guard guard(mutex()); + + if (verbose_relocation) + log("LD: SLOT ", &dep.obj(), " ", Hex(index)); + Reloc_jmpslot slot(dep, dep.obj().dynamic().pltrel_type(), dep.obj().dynamic().pltrel(), index); return slot.target_addr();