Source-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[src/trunk]: src/sys/rump Some rump kernel components for interfacing with th...



details:   https://anonhg.NetBSD.org/src/rev/c9a4604668c3
branches:  trunk
changeset: 330064:c9a4604668c3
user:      pooka <pooka%NetBSD.org@localhost>
date:      Fri Jun 20 11:57:56 2014 +0000

description:
Some rump kernel components for interfacing with the environment need
to access both NetBSD kernel facilities and facilities provided by the
environment.

Where the environment's headers can be #included without namespace
conflict (which can be done - with care - for some Xen mini-os
headers), it is convenient to simply allow the rump kernel code to
call directly into the environment.

This also requires not mangling the symbol names.

So provide a variable RUMP_SYM_NORENAME which can be set by a component
namefile to a series of symbols or symbol prefixes (in makefile-quoted
awk regexp syntax).  For example, in the rumpuser-xen xenbus driver:
 RUMP_SYM_NORENAME=xenbus_|HYPERVISOR_|wake$$|block$$|schedule$$|force_evtchn

Signed-off-by: Ian Jackson <Ian.Jackson%eu.citrix.com@localhost>
(proposed on rumpkernel-users; very minor modification by myself)

diffstat:

 sys/rump/Makefile.rump |  4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diffs (18 lines):

diff -r aaa2bdf3294d -r c9a4604668c3 sys/rump/Makefile.rump
--- a/sys/rump/Makefile.rump    Fri Jun 20 11:27:25 2014 +0000
+++ b/sys/rump/Makefile.rump    Fri Jun 20 11:57:56 2014 +0000
@@ -1,4 +1,4 @@
-#      $NetBSD: Makefile.rump,v 1.97 2014/04/25 11:49:16 pooka Exp $
+#      $NetBSD: Makefile.rump,v 1.98 2014/06/20 11:57:56 pooka Exp $
 #
 
 .if !defined(_RUMP_MK)
@@ -208,7 +208,7 @@
 .endif
        for renameobj in ${RUMP_SYMREN:U${.ALLSRC:C/(${RUMPOBJ_NORENAME:ts|})//g}}; do \
                ${NM} -go $${renameobj} | ${TOOL_AWK} ' \
-                   $$NF!~/^'${_PQ}'(rump|RUMP|__|_GLOBAL_OFFSET_TABLE'${_SYMQUIRK}')/ \
+                   $$NF!~/^'${_PQ}'(rump|RUMP|__|_GLOBAL_OFFSET_TABLE'${_SYMQUIRK}'${RUMP_SYM_NORENAME:D|${RUMP_SYM_NORENAME}})/ \
                      {s=$$NF;sub(/^'${_PQ}'/, "&rumpns_", s); print $$NF, s}'\
                    | sort | uniq  > renametab.$${renameobj}; \
                ${OBJCOPY} --preserve-dates --redefine-syms \



Home | Main Index | Thread Index | Old Index