| @@ -1668,31 +1668,28 @@ process_obj(dtrace_hdl_t *dtp, const cha | | | @@ -1668,31 +1668,28 @@ process_obj(dtrace_hdl_t *dtp, const cha |
1668 | } | | 1668 | } |
1669 | #endif | | 1669 | #endif |
1670 | | | 1670 | |
1671 | mod = 1; | | 1671 | mod = 1; |
1672 | (void) elf_flagdata(data_tgt, ELF_C_SET, ELF_F_DIRTY); | | 1672 | (void) elf_flagdata(data_tgt, ELF_C_SET, ELF_F_DIRTY); |
1673 | | | 1673 | |
1674 | /* | | 1674 | /* |
1675 | * This symbol may already have been marked to | | 1675 | * This symbol may already have been marked to |
1676 | * be ignored by another relocation referencing | | 1676 | * be ignored by another relocation referencing |
1677 | * the same symbol or if this object file has | | 1677 | * the same symbol or if this object file has |
1678 | * already been processed by an earlier link | | 1678 | * already been processed by an earlier link |
1679 | * invocation. | | 1679 | * invocation. |
1680 | */ | | 1680 | */ |
1681 | #ifndef illumos | | 1681 | if (rsym.st_shndx != SHN_ABS) { |
1682 | #define SHN_SUNW_IGNORE SHN_ABS | | 1682 | rsym.st_shndx = SHN_ABS; |
1683 | #endif | | | |
1684 | if (rsym.st_shndx != SHN_SUNW_IGNORE) { | | | |
1685 | rsym.st_shndx = SHN_SUNW_IGNORE; | | | |
1686 | (void) gelf_update_sym(data_sym, ndx, &rsym); | | 1683 | (void) gelf_update_sym(data_sym, ndx, &rsym); |
1687 | } | | 1684 | } |
1688 | } | | 1685 | } |
1689 | } | | 1686 | } |
1690 | | | 1687 | |
1691 | if (mod && elf_update(elf, ELF_C_WRITE) == -1) | | 1688 | if (mod && elf_update(elf, ELF_C_WRITE) == -1) |
1692 | goto err; | | 1689 | goto err; |
1693 | | | 1690 | |
1694 | (void) elf_end(elf); | | 1691 | (void) elf_end(elf); |
1695 | (void) close(fd); | | 1692 | (void) close(fd); |
1696 | | | 1693 | |
1697 | while ((pair = bufs) != NULL) { | | 1694 | while ((pair = bufs) != NULL) { |
1698 | bufs = pair->dlp_next; | | 1695 | bufs = pair->dlp_next; |