* grub-core/kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Check
range of R_SPARC_HI22. Implement R_SPARC_LM22.
This commit is contained in:
parent
7b54b62682
commit
21eee750b7
2 changed files with 10 additions and 0 deletions
|
@ -1,3 +1,9 @@
|
|||
2013-12-09 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
* grub-core/kern/sparc64/dl.c (grub_arch_dl_relocate_symbols): Check
|
||||
range of R_SPARC_HI22.
|
||||
Implement R_SPARC_LM22.
|
||||
|
||||
2013-12-09 Vladimir Serbinenko <phcoder@gmail.com>
|
||||
|
||||
* grub-core/kern/powerpc/dl_helper.c (grub_arch_dl_get_tramp_got_size):
|
||||
|
|
|
@ -90,6 +90,10 @@ grub_arch_dl_relocate_symbols (grub_dl_t mod, void *ehdr,
|
|||
*addr = (*addr & 0xFFFFFC00) | ((value >> 32) & 0x3FF);
|
||||
break;
|
||||
case R_SPARC_HI22: /* 9 V-imm22 */
|
||||
if (value >> 32)
|
||||
return grub_error (GRUB_ERR_BAD_MODULE,
|
||||
"address out of 32 bits range");
|
||||
case R_SPARC_LM22:
|
||||
*addr = (*addr & 0xFFC00000) | ((value >> 10) & 0x3FFFFF);
|
||||
break;
|
||||
case R_SPARC_LO10: /* 12 T-simm13 */
|
||||
|
|
Loading…
Reference in a new issue