Add ld.so and libdl.so to ignored objects. 00/86300/5
authorMaxim Ostapenko <m.ostapenko@samsung.com>
Wed, 31 Aug 2016 08:48:36 +0000 (11:48 +0300)
committerDmitry Kovalenko <d.kovalenko@samsung.com>
Wed, 28 Sep 2016 07:18:08 +0000 (00:18 -0700)
We need this to avoid errors when libc.so calls free on pointer,
allocated by libdl.so with malloc.

Change-Id: I6b1c1a9db60dd44ac88d81a8c1943849eb1d423e
Signed-off-by: Maxim Ostapenko <m.ostapenko@samsung.com>
scripts/gen_preload_header.sh

index ce26470..36733a7 100755 (executable)
@@ -1,5 +1,7 @@
 #!/bin/bash
 handlers_lib="/usr/lib/da_probe_tizen.so"
+loader_library_pattern="libdl[.-].*"
+linker_library_pattern="ld-.*"
 libc_pkg_name="glibc"
 libpthread_pkg_name="glibc"
 libsmack_pkg_name="smack"
@@ -16,6 +18,22 @@ PATH=/bin:/usr/bin:/sbin:/usr/sbin
 " > $filename
 }
 
+function print_loader()
+{
+    filename=$1
+
+    loader_path=$(rpm -ql $libc_pkg_name | grep "$loader_library_pattern" | head -1)
+    echo -e "/bin/echo \"$loader_path\" > /sys/kernel/debug/swap/preload/ignored_binaries/bins_add" >> $filename
+}
+
+function print_linker()
+{
+    filename=$1
+
+    linker_path=$(rpm -ql $libc_pkg_name | grep "$linker_library_pattern" | head -1)
+    echo -e "/bin/echo \"$linker_path\" > /sys/kernel/debug/swap/preload/ignored_binaries/bins_add" >> $filename
+}
+
 function print_probe_lib()
 {
     filename=$1
@@ -52,6 +70,8 @@ function print_ignored()
 
     print_libc $filename
     print_libpthread $filename
+    print_loader $filename
+    print_linker $filename
     print_libsmack $filename
 }