Merge branch 'openwrt:master' into master
This commit is contained in:
commit
9b178df2a6
18 changed files with 197 additions and 84 deletions
2
.github/workflows/Dockerfile.tools
vendored
2
.github/workflows/Dockerfile.tools
vendored
|
@ -1,4 +1,4 @@
|
|||
FROM registry.gitlab.com/openwrt/buildbot/buildworker-3.4.1
|
||||
FROM ghcr.io/openwrt/buildbot/buildworker-v3.8.0:v2
|
||||
|
||||
COPY --chown=buildbot staging_dir/host /prebuilt_tools/staging_dir/host
|
||||
COPY --chown=buildbot build_dir/host /prebuilt_tools/build_dir/host
|
||||
|
|
2
.github/workflows/build-tools.yml
vendored
2
.github/workflows/build-tools.yml
vendored
|
@ -13,7 +13,7 @@ jobs:
|
|||
build:
|
||||
name: Build tools
|
||||
runs-on: ubuntu-latest
|
||||
container: registry.gitlab.com/openwrt/buildbot/buildworker-3.4.1
|
||||
container: ghcr.io/openwrt/buildbot/buildworker-v3.8.0:v2
|
||||
|
||||
steps:
|
||||
- name: Checkout
|
||||
|
|
|
@ -9,12 +9,12 @@ include $(TOPDIR)/rules.mk
|
|||
include $(INCLUDE_DIR)/kernel.mk
|
||||
|
||||
PKG_NAME:=strace
|
||||
PKG_VERSION:=6.2
|
||||
PKG_VERSION:=6.3
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||
PKG_SOURCE_URL:=https://strace.io/files/$(PKG_VERSION)
|
||||
PKG_HASH:=0c7d38a449416268d3004029a220a15a77c2206a03cc88120f37f46e949177e8
|
||||
PKG_HASH:=e17878e301506c1cc301611118ad14efee7f8bcef63b27ace5d290acce7bb731
|
||||
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
PKG_LICENSE:=LGPL-2.1-or-later
|
||||
|
|
|
@ -8,12 +8,12 @@
|
|||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=linux-firmware
|
||||
PKG_VERSION:=20230310
|
||||
PKG_VERSION:=20230515
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE_URL:=@KERNEL/linux/kernel/firmware
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||
PKG_HASH:=5968d4e5178ca1ecad3c41c36bba4602c288f25c7a48eeaa74113537578199b2
|
||||
PKG_HASH:=8b1acfa16f1ee94732a6acb50d9d6c835cf53af11068bd89ed207bbe04a1e951
|
||||
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
Package/mt7601u-firmware = $(call Package/firmware-default,MediaTek MT7601U firmware)
|
||||
define Package/mt7601u-firmware/install
|
||||
$(INSTALL_DIR) $(1)/lib/firmware
|
||||
$(INSTALL_DIR) $(1)/lib/firmware/mediatek
|
||||
$(INSTALL_DATA) \
|
||||
$(PKG_BUILD_DIR)/mt7601u.bin \
|
||||
$(1)/lib/firmware
|
||||
$(PKG_BUILD_DIR)/mediatek/mt7601u.bin \
|
||||
$(1)/lib/firmware/mediatek
|
||||
endef
|
||||
$(eval $(call BuildPackage,mt7601u-firmware))
|
||||
|
||||
|
@ -69,6 +69,15 @@ define Package/mt7922bt-firmware/install
|
|||
endef
|
||||
$(eval $(call BuildPackage,mt7922bt-firmware))
|
||||
|
||||
Package/mt7981-wo-firmware = $(call Package/firmware-default,MT7981 offload firmware)
|
||||
define Package/mt7981-wo-firmware/install
|
||||
$(INSTALL_DIR) $(1)/lib/firmware/mediatek
|
||||
$(INSTALL_DATA) \
|
||||
$(PKG_BUILD_DIR)/mediatek/mt7981_wo.bin \
|
||||
$(1)/lib/firmware/mediatek
|
||||
endef
|
||||
$(eval $(call BuildPackage,mt7981-wo-firmware))
|
||||
|
||||
Package/mt7986-wo-firmware = $(call Package/firmware-default,MT7986 offload firmware)
|
||||
define Package/mt7986-wo-firmware/install
|
||||
$(INSTALL_DIR) $(1)/lib/firmware/mediatek
|
||||
|
|
|
@ -557,7 +557,6 @@ static inline int get_tx_desc(unsigned int itf, unsigned int *f_full)
|
|||
static irqreturn_t mailbox_irq_handler(int irq, void *dev_id)
|
||||
{
|
||||
unsigned int isr;
|
||||
int i;
|
||||
|
||||
isr = IFX_REG_R32(MBOX_IGU1_ISR);
|
||||
IFX_REG_W32(isr, MBOX_IGU1_ISRC);
|
||||
|
|
|
@ -22,10 +22,10 @@ PKG_LICENSE:=GPL-3.0-or-later
|
|||
PKG_CPE_ID:=cpe:/a:gnu:gettext
|
||||
|
||||
PKG_INSTALL:=1
|
||||
PKG_BUILD_DEPENDS:=gettext-full/host libxml2
|
||||
PKG_BUILD_DEPENDS:=gettext-full/host libunistring libxml2
|
||||
PKG_BUILD_PARALLEL:=0
|
||||
|
||||
HOST_BUILD_DEPENDS:=gperf/host libxml2/host
|
||||
HOST_BUILD_DEPENDS:=gperf/host libunistring/host libxml2/host
|
||||
HOST_BUILD_PARALLEL:=0
|
||||
|
||||
PKG_SUBDIRS:= \
|
||||
|
@ -87,6 +87,7 @@ CONFIGURE_ARGS += \
|
|||
--with-included-gettext \
|
||||
--without-libintl-prefix \
|
||||
--without-libexpat-prefix \
|
||||
--with-libunistring-prefix=$(STAGING_DIR)/usr \
|
||||
--with-libxml2-prefix=$(STAGING_DIR) \
|
||||
--without-emacs
|
||||
|
||||
|
@ -98,6 +99,7 @@ HOST_CONFIGURE_ARGS += \
|
|||
--disable-java \
|
||||
--disable-openmp \
|
||||
--without-emacs \
|
||||
--with-libunistring-prefix=$(STAGING_DIR_HOSTPKG) \
|
||||
--with-libxml2-prefix=$(STAGING_DIR_HOSTPKG)
|
||||
|
||||
HOST_CONFIGURE_VARS += \
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
--- a/autogen.sh
|
||||
+++ b/autogen.sh
|
||||
@@ -78,6 +78,7 @@ if ! $skip_gnulib; then
|
||||
getopt-gnu
|
||||
gettext-h
|
||||
havelib
|
||||
+ libunistring-optional
|
||||
memmove
|
||||
noreturn
|
||||
progname
|
||||
--- a/gettext-runtime/src/Makefile.am
|
||||
+++ b/gettext-runtime/src/Makefile.am
|
||||
@@ -40,7 +40,7 @@ envsubst_SOURCES = envsubst.c
|
||||
|
||||
# Link dependencies.
|
||||
# Need @LTLIBICONV@ because striconv.c uses iconv().
|
||||
-LDADD = ../gnulib-lib/libgrt.a @LTLIBINTL@ @LTLIBICONV@ $(WOE32_LDADD)
|
||||
+LDADD = ../gnulib-lib/libgrt.a $(LTLIBUNISTRING) @LTLIBINTL@ @LTLIBICONV@ $(WOE32_LDADD)
|
||||
|
||||
# Specify installation directory, for --enable-relocatable.
|
||||
gettext_CFLAGS = -DINSTALLDIR=\"$(bindir)\"
|
|
@ -115,6 +115,7 @@ HOST_MAKE_FLAGS += \
|
|||
|
||||
ifeq ($(CONFIG_USE_MUSL),y)
|
||||
MAKE_FLAGS += FTS_LDLIBS=-lfts
|
||||
TARGET_CFLAGS += -D_LARGEFILE64_SOURCE
|
||||
endif
|
||||
|
||||
MAKE_FLAGS += \
|
||||
|
|
64
package/libs/libunistring/Makefile
Normal file
64
package/libs/libunistring/Makefile
Normal file
|
@ -0,0 +1,64 @@
|
|||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=libunistring
|
||||
PKG_VERSION:=1.1
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||
PKG_SOURCE_URL:=@GNU/$(PKG_NAME)
|
||||
PKG_HASH:=827c1eb9cb6e7c738b171745dac0888aa58c5924df2e59239318383de0729b98
|
||||
|
||||
PKG_BUILD_PARALLEL:=1
|
||||
PKG_INSTALL:=1
|
||||
|
||||
PKG_LICENSE:=GPL-3.0
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
PKG_CPE_ID:=cpe:/a:gnu:$(PKG_NAME)
|
||||
|
||||
include $(INCLUDE_DIR)/host-build.mk
|
||||
include $(INCLUDE_DIR)/package.mk
|
||||
|
||||
define Package/libunistring
|
||||
SECTION:=libs
|
||||
CATEGORY:=Libraries
|
||||
TITLE:=libunistring
|
||||
URL:=https://www.gnu.org/software/libunistring
|
||||
endef
|
||||
|
||||
define Package/libunistring/description
|
||||
This library provides functions for manipulating Unicode strings
|
||||
and for manipulating C strings according to the Unicode standard.
|
||||
endef
|
||||
|
||||
HOST_CFLAGS += $(HOST_FPIC)
|
||||
|
||||
TARGET_CFLAGS += $(FPIC)
|
||||
|
||||
HOST_CONFIGURE_ARGS += \
|
||||
--enable-static \
|
||||
--disable-shared \
|
||||
--without-libiconv-prefix \
|
||||
--with-pic
|
||||
|
||||
CONFIGURE_ARGS += \
|
||||
--enable-static \
|
||||
--enable-shared \
|
||||
--without-libiconv-prefix \
|
||||
--with-pic
|
||||
|
||||
define Build/InstallDev
|
||||
$(INSTALL_DIR) $(1)/usr/include
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include/
|
||||
$(INSTALL_DIR) $(1)/usr/include/unistring
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/include/unistring/*.h $(1)/usr/include/unistring/
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libunistring.{a,so*} $(1)/usr/lib/
|
||||
endef
|
||||
|
||||
define Package/libunistring/install
|
||||
$(INSTALL_DIR) $(1)/usr/lib
|
||||
$(CP) $(PKG_INSTALL_DIR)/usr/lib/libunistring.so.* $(1)/usr/lib/
|
||||
endef
|
||||
|
||||
$(eval $(call HostBuild))
|
||||
$(eval $(call BuildPackage,libunistring))
|
|
@ -8,13 +8,13 @@
|
|||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=ethtool
|
||||
PKG_VERSION:=6.2
|
||||
PKG_VERSION:=6.3
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
|
||||
PKG_SOURCE_URL:=@KERNEL/software/network/ethtool
|
||||
PKG_HASH:=86df0114064d4d73f6bf72bf03e85c33964a519ee0c1d1ba65005ad2d0e570e1
|
||||
PKG_HASH:=d9425f0a3df138734001fccc4175fe178c025f938460ac25c4ebc39960168822
|
||||
|
||||
PKG_LICENSE:=GPL-2.0
|
||||
PKG_LICENSE_FILES:=COPYING
|
||||
|
|
|
@ -18,4 +18,8 @@ endef
|
|||
define Device/mikrotik_nand
|
||||
$(Device/mikrotik)
|
||||
IMAGE/sysupgrade.bin = append-kernel | sysupgrade-tar | append-metadata
|
||||
DEVICE_COMPAT_MESSAGE := \
|
||||
NAND images switched to yafut. If running older image, reinstall from initramfs.
|
||||
DEVICE_COMPAT_VERSION := 1.1
|
||||
|
||||
endef
|
||||
|
|
|
@ -0,0 +1,46 @@
|
|||
From f5af7931d2a2cae66d0f9dad4ba517b1b00620b3 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Golle <daniel@makrotopia.org>
|
||||
Date: Wed, 19 Apr 2023 19:07:23 +0100
|
||||
Subject: [PATCH] net: mtk_eth_soc: use WO firmware for MT7981
|
||||
|
||||
In order to support wireless offloading on MT7981 we need to load the
|
||||
appropriate firmware. Recognize MT7981 and load mt7981_wo.bin.
|
||||
|
||||
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
||||
---
|
||||
drivers/net/ethernet/mediatek/mtk_wed_mcu.c | 7 ++++++-
|
||||
drivers/net/ethernet/mediatek/mtk_wed_wo.h | 1 +
|
||||
2 files changed, 7 insertions(+), 1 deletion(-)
|
||||
|
||||
--- a/drivers/net/ethernet/mediatek/mtk_wed_mcu.c
|
||||
+++ b/drivers/net/ethernet/mediatek/mtk_wed_mcu.c
|
||||
@@ -326,7 +326,11 @@ mtk_wed_mcu_load_firmware(struct mtk_wed
|
||||
wo->hw->index + 1);
|
||||
|
||||
/* load firmware */
|
||||
- fw_name = wo->hw->index ? MT7986_FIRMWARE_WO1 : MT7986_FIRMWARE_WO0;
|
||||
+ if (of_device_is_compatible(wo->hw->node, "mediatek,mt7981-wed"))
|
||||
+ fw_name = MT7981_FIRMWARE_WO;
|
||||
+ else
|
||||
+ fw_name = wo->hw->index ? MT7986_FIRMWARE_WO1 : MT7986_FIRMWARE_WO0;
|
||||
+
|
||||
ret = request_firmware(&fw, fw_name, wo->hw->dev);
|
||||
if (ret)
|
||||
return ret;
|
||||
@@ -386,5 +390,6 @@ int mtk_wed_mcu_init(struct mtk_wed_wo *
|
||||
100, MTK_FW_DL_TIMEOUT);
|
||||
}
|
||||
|
||||
+MODULE_FIRMWARE(MT7981_FIRMWARE_WO);
|
||||
MODULE_FIRMWARE(MT7986_FIRMWARE_WO0);
|
||||
MODULE_FIRMWARE(MT7986_FIRMWARE_WO1);
|
||||
--- a/drivers/net/ethernet/mediatek/mtk_wed_wo.h
|
||||
+++ b/drivers/net/ethernet/mediatek/mtk_wed_wo.h
|
||||
@@ -88,6 +88,7 @@ enum mtk_wed_dummy_cr_idx {
|
||||
MTK_WED_DUMMY_CR_WO_STATUS,
|
||||
};
|
||||
|
||||
+#define MT7981_FIRMWARE_WO "mediatek/mt7981_wo.bin"
|
||||
#define MT7986_FIRMWARE_WO0 "mediatek/mt7986_wo_0.bin"
|
||||
#define MT7986_FIRMWARE_WO1 "mediatek/mt7986_wo_1.bin"
|
||||
|
|
@ -0,0 +1,28 @@
|
|||
From 7c83e28f10830aa5105c25eaabe890e3adac36aa Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Golle <daniel@makrotopia.org>
|
||||
Date: Tue, 9 May 2023 03:20:06 +0200
|
||||
Subject: [PATCH] net: ethernet: mtk_eth_soc: fix NULL pointer dereference
|
||||
|
||||
Check for NULL pointer to avoid kernel crashing in case of missing WO
|
||||
firmware in case only a single WEDv2 device has been initialized, e.g. on
|
||||
MT7981 which can connect just one wireless frontend.
|
||||
|
||||
Fixes: 86ce0d09e424 ("net: ethernet: mtk_eth_soc: use WO firmware for MT7981")
|
||||
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
||||
Reviewed-by: Simon Horman <simon.horman@corigine.com>
|
||||
Signed-off-by: David S. Miller <davem@davemloft.net>
|
||||
---
|
||||
drivers/net/ethernet/mediatek/mtk_wed.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
--- a/drivers/net/ethernet/mediatek/mtk_wed.c
|
||||
+++ b/drivers/net/ethernet/mediatek/mtk_wed.c
|
||||
@@ -647,7 +647,7 @@ __mtk_wed_detach(struct mtk_wed_device *
|
||||
BIT(hw->index), BIT(hw->index));
|
||||
}
|
||||
|
||||
- if (!hw_list[!hw->index]->wed_dev &&
|
||||
+ if ((!hw_list[!hw->index] || !hw_list[!hw->index]->wed_dev) &&
|
||||
hw->eth->dma_dev != hw->eth->dev)
|
||||
mtk_eth_set_dma_device(hw->eth, hw->eth->dev);
|
||||
|
|
@ -77,7 +77,7 @@ Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
|
|||
wed_w32(wo->hw->wed_dev, MTK_WED_SCR0 + 4 * MTK_WED_DUMMY_CR_FWDL,
|
||||
--- a/drivers/net/ethernet/mediatek/mtk_wed_wo.h
|
||||
+++ b/drivers/net/ethernet/mediatek/mtk_wed_wo.h
|
||||
@@ -227,7 +227,8 @@ struct mtk_wed_wo_queue {
|
||||
@@ -228,7 +228,8 @@ struct mtk_wed_wo_queue {
|
||||
|
||||
struct mtk_wed_wo {
|
||||
struct mtk_wed_hw *hw;
|
||||
|
|
|
@ -8,12 +8,12 @@ include $(TOPDIR)/rules.mk
|
|||
include $(INCLUDE_DIR)/target.mk
|
||||
|
||||
PKG_NAME:=musl
|
||||
PKG_VERSION:=1.2.3
|
||||
PKG_VERSION:=1.2.4
|
||||
PKG_RELEASE:=1
|
||||
|
||||
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
||||
PKG_SOURCE_URL:=https://musl.libc.org/releases/
|
||||
PKG_HASH:=7d5b0b6062521e4627e099e4c9dc8248d32a30285e959b7eecaa780cf8cfd4a4
|
||||
PKG_HASH:=7a35eae33d5372a7c0da1188de798726f68825513b7ae3ebe97aaaa52114f039
|
||||
|
||||
LIBC_SO_VERSION:=$(PKG_VERSION)
|
||||
PATCH_DIR:=$(PATH_PREFIX)/patches
|
||||
|
|
|
@ -33,7 +33,7 @@ Signed-off-by: Tony Ambardar <Tony.Ambardar@gmail.com>
|
|||
#include <ftw.h>
|
||||
#include <dirent.h>
|
||||
#include <fcntl.h>
|
||||
@@ -72,8 +73,20 @@ static int do_nftw(char *path, int (*fn)
|
||||
@@ -74,8 +75,20 @@ static int do_nftw(char *path, int (*fn)
|
||||
if (!fd_limit) close(dfd);
|
||||
}
|
||||
|
||||
|
@ -56,7 +56,7 @@ Signed-off-by: Tony Ambardar <Tony.Ambardar@gmail.com>
|
|||
|
||||
for (; h; h = h->chain)
|
||||
if (h->dev == st.st_dev && h->ino == st.st_ino)
|
||||
@@ -101,7 +114,10 @@ static int do_nftw(char *path, int (*fn)
|
||||
@@ -103,7 +116,10 @@ static int do_nftw(char *path, int (*fn)
|
||||
strcpy(path+j+1, de->d_name);
|
||||
if ((r=do_nftw(path, fn, fd_limit-1, flags, &new))) {
|
||||
closedir(d);
|
||||
|
@ -68,7 +68,7 @@ Signed-off-by: Tony Ambardar <Tony.Ambardar@gmail.com>
|
|||
}
|
||||
}
|
||||
closedir(d);
|
||||
@@ -112,8 +128,16 @@ static int do_nftw(char *path, int (*fn)
|
||||
@@ -114,8 +130,16 @@ static int do_nftw(char *path, int (*fn)
|
||||
}
|
||||
|
||||
path[l] = 0;
|
||||
|
@ -87,9 +87,9 @@ Signed-off-by: Tony Ambardar <Tony.Ambardar@gmail.com>
|
|||
|
||||
return 0;
|
||||
}
|
||||
@@ -139,4 +163,5 @@ int nftw(const char *path, int (*fn)(con
|
||||
@@ -140,3 +164,5 @@ int nftw(const char *path, int (*fn)(con
|
||||
pthread_setcancelstate(cs, 0);
|
||||
return r;
|
||||
}
|
||||
|
||||
+
|
||||
+#undef nftw64
|
||||
weak_alias(nftw, nftw64);
|
||||
|
|
|
@ -1,61 +0,0 @@
|
|||
Fix DT_DEBUG handling on MIPS in musl libc.
|
||||
With this change gdb will load the symbol files for shared libraries on MIPS too.
|
||||
|
||||
This patch was taken from this thread: https://www.openwall.com/lists/musl/2022/01/09/4
|
||||
|
||||
--- a/arch/mips/reloc.h
|
||||
+++ b/arch/mips/reloc.h
|
||||
@@ -29,6 +29,7 @@
|
||||
|
||||
#define NEED_MIPS_GOT_RELOCS 1
|
||||
#define DT_DEBUG_INDIRECT DT_MIPS_RLD_MAP
|
||||
+#define DT_DEBUG_INDIRECT_REL DT_MIPS_RLD_MAP_REL
|
||||
#define ARCH_SYM_REJECT_UND(s) (!((s)->st_other & STO_MIPS_PLT))
|
||||
|
||||
#define CRTJMP(pc,sp) __asm__ __volatile__( \
|
||||
--- a/arch/mips64/reloc.h
|
||||
+++ b/arch/mips64/reloc.h
|
||||
@@ -38,6 +38,7 @@
|
||||
|
||||
#define NEED_MIPS_GOT_RELOCS 1
|
||||
#define DT_DEBUG_INDIRECT DT_MIPS_RLD_MAP
|
||||
+#define DT_DEBUG_INDIRECT_REL DT_MIPS_RLD_MAP_REL
|
||||
#define ARCH_SYM_REJECT_UND(s) (!((s)->st_other & STO_MIPS_PLT))
|
||||
|
||||
#define CRTJMP(pc,sp) __asm__ __volatile__( \
|
||||
--- a/arch/mipsn32/reloc.h
|
||||
+++ b/arch/mipsn32/reloc.h
|
||||
@@ -29,6 +29,7 @@
|
||||
|
||||
#define NEED_MIPS_GOT_RELOCS 1
|
||||
#define DT_DEBUG_INDIRECT DT_MIPS_RLD_MAP
|
||||
+#define DT_DEBUG_INDIRECT_REL DT_MIPS_RLD_MAP_REL
|
||||
#define ARCH_SYM_REJECT_UND(s) (!((s)->st_other & STO_MIPS_PLT))
|
||||
|
||||
#define CRTJMP(pc,sp) __asm__ __volatile__( \
|
||||
--- a/ldso/dynlink.c
|
||||
+++ b/ldso/dynlink.c
|
||||
@@ -1923,6 +1923,10 @@ void __dls3(size_t *sp, size_t *auxv)
|
||||
size_t *ptr = (size_t *) app.dynv[i+1];
|
||||
*ptr = (size_t)&debug;
|
||||
}
|
||||
+ if (app.dynv[i]==DT_DEBUG_INDIRECT_REL) {
|
||||
+ size_t *ptr = (size_t *)((size_t)&app.dynv[i] + app.dynv[i+1]);
|
||||
+ *ptr = (size_t)&debug;
|
||||
+ }
|
||||
}
|
||||
|
||||
/* This must be done before final relocations, since it calls
|
||||
--- a/src/internal/dynlink.h
|
||||
+++ b/src/internal/dynlink.h
|
||||
@@ -92,6 +92,10 @@ struct fdpic_dummy_loadmap {
|
||||
#define DT_DEBUG_INDIRECT 0
|
||||
#endif
|
||||
|
||||
+#ifndef DT_DEBUG_INDIRECT_REL
|
||||
+#define DT_DEBUG_INDIRECT_REL 0
|
||||
+#endif
|
||||
+
|
||||
#define AUX_CNT 32
|
||||
#define DYN_CNT 32
|
||||
|
Loading…
Reference in a new issue