elf: Fix rtld-audit trampoline for aarch64
commiteb4181e9f4a512de37dad4ba623c921671584dea
authorVladislav Khmelevsky <och95@yandex.ru>
Thu, 17 Nov 2022 08:47:29 +0000 (17 12:47 +0400)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Mon, 21 Nov 2022 13:20:40 +0000 (21 10:20 -0300)
tree0a63804cfa0adf090a994995d569e87f06bb0650
parenta9acb7b39ed21386142b963aeecc35e0b468c0de
elf: Fix rtld-audit trampoline for aarch64

This patch fixes two problems with audit:

  1. The DL_OFFSET_RV_VPCS offset was mixed up with DL_OFFSET_RG_VPCS,
     resulting in x2 register value nulling in RG structure.

  2. We need to preserve the x8 register before function call, but
     don't have to save it's new value and restore it before return.

Anyway the final restore was using OFFSET_RV instead of OFFSET_RG value
which is wrong (althoug doesn't affect anything).

Reviewed-by: Adhemerval Zanella <adhemerval.zanella@linaro.org>
sysdeps/aarch64/dl-trampoline.S