Created
May 14, 2014 19:13
-
-
Save awreece/9353c2a5ff392a9dc0f7 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
diff --git a/usr/src/common/avl/avl.c b/usr/src/common/avl/avl.c | |
index dd39c12..f0e010d 100644 | |
--- a/usr/src/common/avl/avl.c | |
+++ b/usr/src/common/avl/avl.c | |
@@ -863,6 +863,24 @@ avl_update(avl_tree_t *t, void *obj) | |
return (B_FALSE); | |
} | |
+void | |
+avl_swap(avl_tree_t *tree1, avl_tree_t *tree2) | |
+{ | |
+ avl_node_t *temp_node; | |
+ ulong_t temp_numnodes; | |
+ | |
+ ASSERT3P(tree1->avl_compar, ==, tree2->avl_compar); | |
+ ASSERT3U(tree1->avl_offset, ==, tree2->avl_offset); | |
+ ASSERT3U(tree1->avl_size, ==, tree2->avl_size); | |
+ | |
+ temp_node = tree1->avl_root; | |
+ temp_numnodes = tree1->avl_numnodes; | |
+ tree1->avl_root = tree2->avl_root; | |
+ tree1->avl_numnodes = tree2->avl_numnodes; | |
+ tree2->avl_root = temp_node; | |
+ tree2->avl_numnodes = temp_numnodes; | |
+} | |
+ | |
/* | |
* initialize a new AVL tree | |
*/ | |
diff --git a/usr/src/lib/libavl/mapfile-vers b/usr/src/lib/libavl/mapfile-vers | |
index 289e09a..d1a3ac6 100644 | |
--- a/usr/src/lib/libavl/mapfile-vers | |
+++ b/usr/src/lib/libavl/mapfile-vers | |
@@ -53,6 +53,7 @@ SYMBOL_VERSION SUNWprivate_1.1 { | |
avl_nearest; | |
avl_numnodes; | |
avl_remove; | |
+ avl_swap; | |
avl_walk; | |
local: | |
*; | |
diff --git a/usr/src/uts/common/sys/avl.h b/usr/src/uts/common/sys/avl.h | |
index ba305c9..630ad97 100644 | |
--- a/usr/src/uts/common/sys/avl.h | |
+++ b/usr/src/uts/common/sys/avl.h | |
@@ -260,6 +260,11 @@ extern boolean_t avl_update_lt(avl_tree_t *, void *); | |
extern boolean_t avl_update_gt(avl_tree_t *, void *); | |
/* | |
+ * Swaps the contents of the two trees. | |
+ */ | |
+extern void avl_swap(avl_tree_t *tree1, avl_tree_t *tree2); | |
+ | |
+/* | |
* Return the number of nodes in the tree |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/data/areece/jenkins/free_range2/usr/src/cmd/sgs/proto/i386/ld -o ld.so.1 -dy -G -h/lib/ld.so.1 -ztext -zdefs - Bdirect -M../common/mapfile-vers -M../common/mapfile-order-gcc -M/data/areece/jenkins/free_range2/usr/src/common/mapfiles/common/map.pagealign -zignore -i -e _rt_boot -ulink_ver_string -znodlopen -zinterpose - zdtrace=dtrace_data '-R$ORIGIN' pics/crti.o pics/msg.o pics/avl.o pics/dtrace_data.o pics/alist.o pics/strhash.o pics/elfcap.o pics/boot.o pics/boot_elf.o pics/caller.o pics/debugdata.o pics/analyze.o pics/elf.o pics/external.o pics/globals.o pics/malloc.o pics/paths.o pics/setup. o pics/util.o pics/dlfcns.o pics/config_elf.o pics/locale.o pics/tsort.o pics/remove. o pics/move.o pics/tls.o pics/cap.o pics/i386_elf.o pics/_setup.o pics/doreloc. o pics/debug.o pics/audit.o pics/object.o \ | |
-L/data/areece/jenkins/free_range2/proto/root_i386/lib -L/data/areece/jenkins/free_range2/proto/ root_i386/usr/lib -L/data/areece/jenkins/free_range2/usr/src/cmd/sgs/libconv/i386 -lconv -L ../../../../lib/ libc/i386 -lc_pic -L/data/areece/jenkins/free_range2/usr/src/cmd/sgs/liblddbg/i386 -llddbg -L ../../librtld/ i386 -lrtld -L ../../libld/i386 -lld pics/crtn.o | |
ld: fatal: symbol 'assfail' is multiply-defined: | |
(file pics/util.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(assfail.o) type=FUNC); | |
ld: fatal: symbol 'thr_min_stack' is multiply-defined: | |
(file pics/external.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(thr.o) type=FUNC); | |
ld: fatal: symbol 'mutex_destroy' is multiply-defined: | |
(file pics/external.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(synch.o) type=FUNC); | |
ld: fatal: symbol 'mutex_unlock' is multiply-defined: | |
(file pics/external.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(synch.o) type=FUNC); | |
ld: fatal: symbol 'mutex_lock' is multiply-defined: | |
(file pics/external.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(synch.o) type=FUNC); | |
ld: fatal: symbol 'mutex_init' is multiply-defined: | |
(file pics/external.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(synch.o) type=FUNC); | |
ld: fatal: symbol 'open' is multiply-defined: | |
(file pics/external.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(scalls.o) type=FUNC); | |
ld: fatal: symbol 'openat' is multiply-defined: | |
(file pics/external.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(scalls.o) type=FUNC); | |
ld: fatal: symbol 'fcntl' is multiply-defined: | |
(file pics/external.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(scalls.o) type=FUNC);ld: fatal: symbol 'close' is multiply-defined: | |
(file pics/external.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(scalls.o) type=FUNC); | |
ld: fatal: symbol 'write' is multiply-defined: | |
(file pics/external.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(scalls.o) type=FUNC); | |
ld: fatal: symbol 'read' is multiply-defined: | |
(file pics/external.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(scalls.o) type=FUNC); | |
ld: fatal: symbol 'free' is multiply-defined: | |
(file pics/malloc.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(malloc.o) type=FUNC); | |
ld: fatal: symbol 'malloc' is multiply-defined: | |
(file pics/malloc.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(malloc.o) type=FUNC); | |
ld: fatal: symbol 'realloc' is multiply-defined: | |
(file pics/malloc.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(malloc.o) type=FUNC); | |
ld: fatal: symbol '_nd' is multiply-defined: | |
(file pics/setup.o type=OBJT; file ../../../../lib/libc/i386/libc_pic.a(sbrk.o) type=OBJT); | |
ld: fatal: symbol 'lfree' is multiply-defined: | |
(file pics/malloc.o type=FUNC; file ../../../../lib/libc/i386/libc_pic.a(alloc.o) type=FUNC); | |
ld: fatal: file processing errors. No output written to ld.so.1 | |
*** Error code 1 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment