hyperlight-dev / hyperlight-dev/hyperlight

Make elf loading respect phdr VAs

Aperta
#1,408 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
lifecycle/confirmed
Lingua principale
Rust
Stelle
4.7k
Fork
208
Merge medio
1g 7h
PR unite (30g)
47

Descrizione

Currently, we load the elf binary in an odd way that does not really respect the VAs on the segments in the file, because, in the past, the virtual memory system depended on identity-mapping for code segments, and we were trying not to use too much VA space. The logic assumes the binary is PIE, although it currently works somewhat by happenstance for at least one non-PIE binary (https://github.com/hyperlight-dev/hyperlight/pull/1385#discussion_r3132233017).

Now that we have much less dependence on identity-mapped code segments, we should change this to a more normal loader that actually creates the VAs in the header (basing PIE executables at some reasonable base address).

Guida per i contributori

Apri la guida per i contributori

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.