PERFORCE change 169164 for review
Edward Tomasz Napierala
trasz at FreeBSD.org
Fri Oct 2 22:34:34 UTC 2009
http://perforce.freebsd.org/chv.cgi?CH=169164
Change 169164 by trasz at trasz_victim on 2009/10/02 22:33:58
IFC.
Affected files ...
.. //depot/projects/soc2008/trasz_nfs4acl/bin/sh/parser.c#6 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/network.subr#11 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/defaultroute#7 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/faith#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/ip6addrctl#4 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/netoptions#5 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/routing#6 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/static_arp#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/stf#2 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/arm/arm/cpufunc.c#7 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/arm/xscale/xscalereg.h#2 delete
.. //depot/projects/soc2008/trasz_nfs4acl/sys/arm/xscale/xscalevar.h#2 delete
.. //depot/projects/soc2008/trasz_nfs4acl/sys/conf/files#55 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/i386/i386/vm_machdep.c#9 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/i386/include/cpufunc.h#9 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/i386/xen/xen_machdep.c#11 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/kern/init_main.c#11 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/kern/kern_exec.c#15 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/kern/kern_proc.c#21 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/kern/uipc_socket.c#22 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/modules/acpi/acpi/Makefile#5 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/net/flowtable.c#6 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/net/flowtable.h#5 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/net/route.c#20 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/netinet/in.c#24 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/netinet6/in6_ifattach.c#20 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/sys/pmc.h#9 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/sys/vm/vm_mmap.c#16 integrate
.. //depot/projects/soc2008/trasz_nfs4acl/tools/regression/bin/sh/errors/backquote-error2.0#1 branch
.. //depot/projects/soc2008/trasz_nfs4acl/tools/regression/mmap/mmap.c#2 integrate
Differences ...
==== //depot/projects/soc2008/trasz_nfs4acl/bin/sh/parser.c#6 (text+ko) ====
@@ -36,7 +36,7 @@
#endif
#endif /* not lint */
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/sh/parser.c,v 1.63 2009/06/23 20:45:12 jilles Exp $");
+__FBSDID("$FreeBSD: src/bin/sh/parser.c,v 1.64 2009/10/01 21:40:08 jilles Exp $");
#include <stdlib.h>
#include <unistd.h>
@@ -82,7 +82,6 @@
STATIC struct heredoc *heredoclist; /* list of here documents to read */
-STATIC int parsebackquote; /* nonzero if we are inside backquotes */
STATIC int doprompt; /* if set, prompt the user */
STATIC int needprompt; /* true if interactive and at start of line */
STATIC int lasttoken; /* last token read */
@@ -1043,7 +1042,7 @@
endword:
if (syntax == ARISYNTAX)
synerror("Missing '))'");
- if (syntax != BASESYNTAX && ! parsebackquote && eofmark == NULL)
+ if (syntax != BASESYNTAX && eofmark == NULL)
synerror("Unterminated quoted string");
if (varnest != 0) {
startlinno = plinno;
@@ -1303,7 +1302,6 @@
parsebackq: {
struct nodelist **nlpp;
- int savepbq;
union node *n;
char *volatile str;
struct jmploc jmploc;
@@ -1311,11 +1309,9 @@
int savelen;
int saveprompt;
- savepbq = parsebackquote;
if (setjmp(jmploc.loc)) {
if (str)
ckfree(str);
- parsebackquote = 0;
handler = savehandler;
longjmp(handler->loc, 1);
}
@@ -1397,7 +1393,6 @@
nlpp = &(*nlpp)->next;
*nlpp = (struct nodelist *)stalloc(sizeof (struct nodelist));
(*nlpp)->next = NULL;
- parsebackquote = oldstyle;
if (oldstyle) {
saveprompt = doprompt;
@@ -1433,7 +1428,6 @@
str = NULL;
INTON;
}
- parsebackquote = savepbq;
handler = savehandler;
if (arinest || dblquote)
USTPUTC(CTLBACKQ | CTLQUOTE, out);
==== //depot/projects/soc2008/trasz_nfs4acl/etc/network.subr#11 (text+ko) ====
@@ -22,7 +22,7 @@
# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
# SUCH DAMAGE.
#
-# $FreeBSD: src/etc/network.subr,v 1.202 2009/09/26 18:59:00 hrs Exp $
+# $FreeBSD: src/etc/network.subr,v 1.203 2009/10/02 02:24:25 hrs Exp $
#
#
@@ -356,6 +356,16 @@
inet6)
${SYSCTL_N} net.inet6 > /dev/null 2>&1
;;
+ ipx)
+ ${SYSCTL_N} net.ipx > /dev/null 2>&1
+ ;;
+ atm)
+ if [ -x /sbin/atmconfig ]; then
+ /sbin/atmconfig diag list > /dev/null 2>&1
+ else
+ return 1
+ fi
+ ;;
*)
err 1 "afexists(): Unsupported address family: $_af"
;;
==== //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/defaultroute#7 (text+ko) ====
@@ -2,7 +2,7 @@
#
# Wait for the default route to be up
#
-# $FreeBSD: src/etc/rc.d/defaultroute,v 1.8 2009/09/26 19:00:20 hrs Exp $
+# $FreeBSD: src/etc/rc.d/defaultroute,v 1.9 2009/10/02 02:24:25 hrs Exp $
#
# PROVIDE: defaultroute
@@ -20,6 +20,8 @@
{
local output carrier nocarrier nl
+ afexists inet || return 0
+
# Return without waiting if we don't have dhcp interfaces or
# if none of the dhcp interfaces is plugged in.
dhcp_interfaces=`list_net_interfaces dhcp`
==== //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/faith#2 (text+ko) ====
@@ -1,5 +1,5 @@
#!/bin/sh
-# $FreeBSD: src/etc/rc.d/faith,v 1.1 2009/09/12 22:13:41 hrs Exp $
+# $FreeBSD: src/etc/rc.d/faith,v 1.3 2009/10/02 06:19:34 hrs Exp $
#
# PROVIDE: faith
==== //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/ip6addrctl#4 (text+ko) ====
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# $FreeBSD: src/etc/rc.d/ip6addrctl,v 1.7 2009/09/26 18:59:00 hrs Exp $
+# $FreeBSD: src/etc/rc.d/ip6addrctl,v 1.8 2009/10/02 02:24:25 hrs Exp $
#
# PROVIDE: ip6addrctl
@@ -9,6 +9,7 @@
# KEYWORD: nojail
. /etc/rc.subr
+. /etc/network.subr
name="ip6addrctl"
rcvar=`set_rcvar`
@@ -23,6 +24,8 @@
ip6addrctl_prefer_ipv6()
{
+ afexists inet6 || return 0
+
ip6addrctl flush >/dev/null 2>&1
ip6addrctl add ::1/128 50 0
ip6addrctl add ::/0 40 1
@@ -34,6 +37,8 @@
ip6addrctl_prefer_ipv4()
{
+ afexists inet6 || return 0
+
ip6addrctl flush >/dev/null 2>&1
ip6addrctl add ::ffff:0:0/96 50 0
ip6addrctl add ::1/128 40 1
@@ -45,30 +50,27 @@
ip6addrctl_start()
{
- if ifconfig lo0 inet6 >/dev/null 2>&1; then
- # We have IPv6 support in kernel.
+ afexists inet6 || return 0
- # install the policy of the address selection algorithm.
- if [ -f /etc/ip6addrctl.conf ]; then
- ip6addrctl flush >/dev/null 2>&1
- ip6addrctl install /etc/ip6addrctl.conf
- checkyesno ip6addrctl_verbose && ip6addrctl
+ # install the policy of the address selection algorithm.
+ if [ -f /etc/ip6addrctl.conf ]; then
+ ip6addrctl flush >/dev/null 2>&1
+ ip6addrctl install /etc/ip6addrctl.conf
+ checkyesno ip6addrctl_verbose && ip6addrctl
+ else
+ if checkyesno ipv6_prefer; then
+ ip6addrctl_prefer_ipv6
else
- if checkyesno ipv6_prefer; then
- ip6addrctl_prefer_ipv6
- else
- ip6addrctl_prefer_ipv4
- fi
+ ip6addrctl_prefer_ipv4
fi
fi
}
ip6addrctl_stop()
{
- if ifconfig lo0 inet6 >/dev/null 2>&1; then
- # We have IPv6 support in kernel.
- ip6addrctl flush >/dev/null 2>&1
- fi
+ afexists inet6 || return 0
+
+ ip6addrctl flush >/dev/null 2>&1
}
load_rc_config $name
==== //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/netoptions#5 (text+ko) ====
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# $FreeBSD: src/etc/rc.d/netoptions,v 1.148 2009/09/30 14:58:10 ume Exp $
+# $FreeBSD: src/etc/rc.d/netoptions,v 1.150 2009/10/02 06:51:39 hrs Exp $
#
# PROVIDE: netoptions
@@ -26,29 +26,51 @@
netoptions_start()
{
- if checkyesno log_in_vain; then
+ local _af
+
+ for _af in inet inet6; do
+ afexists ${_af} && eval netoptions_${_af}
+ done
+ [ -n "${_netoptions_initdone}" ] && echo '.'
+}
+
+netoptions_inet()
+{
+ case ${log_in_vain} in
+ [12])
netoptions_init
echo -n " log_in_vain=${log_in_vain}"
- ${SYSCTL_W} net.inet.tcp.log_in_vain="${log_in_vain}" >/dev/null
- ${SYSCTL_W} net.inet.udp.log_in_vain="${log_in_vain}" >/dev/null
- fi
+ ${SYSCTL_W} net.inet.tcp.log_in_vain=${log_in_vain} >/dev/null
+ ${SYSCTL_W} net.inet.udp.log_in_vain=${log_in_vain} >/dev/null
+ ;;
+ *)
+ ${SYSCTL_W} net.inet.tcp.log_in_vain=0 >/dev/null
+ ${SYSCTL_W} net.inet.udp.log_in_vain=0 >/dev/null
+ ;;
+ esac
if checkyesno tcp_extensions; then
+ ${SYSCTL_W} net.inet.tcp.rfc1323=1 >/dev/null
+ else
netoptions_init
- echo -n ' rfc1323 extensions=NO'
+ echo -n ' rfc1323 extensions=${tcp_extensions}'
${SYSCTL_W} net.inet.tcp.rfc1323=0 >/dev/null
fi
- if ! checkyesno tcp_keepalive; then
+ if checkyesno tcp_keepalive; then
+ ${SYSCTL_W} net.inet.tcp.always_keepalive=1 >/dev/null
+ else
netoptions_init
- echo -n ' TCP keepalive=NO'
+ echo -n ' TCP keepalive=${tcp_keepalive}'
${SYSCTL_W} net.inet.tcp.always_keepalive=0 >/dev/null
fi
if checkyesno tcp_drop_synfin; then
netoptions_init
- echo -n ' drop SYN+FIN packets=YES'
+ echo -n ' drop SYN+FIN packets=${tcp_drop_synfin}'
${SYSCTL_W} net.inet.tcp.drop_synfin=1 >/dev/null
+ else
+ ${SYSCTL_W} net.inet.tcp.drop_synfin=0 >/dev/null
fi
case ${ip_portrange_first} in
@@ -66,17 +88,17 @@
${SYSCTL_W} net.inet.ip.portrange.last=$ip_portrange_last >/dev/null
;;
esac
+}
- if afexists inet6; then
- if checkyesno ipv6_ipv4mapping; then
- ${SYSCTL_W} net.inet6.ip6.v6only=0 >/dev/null
- else
- echo -n " no-ipv4-mapped-ipv6"
- ${SYSCTL_W} net.inet6.ip6.v6only=1 >/dev/null
- fi
+netoptions_inet6()
+{
+ if checkyesno ipv6_ipv4mapping; then
+ netoptions_init
+ echo -n " ipv4-mapped-ipv6=${ipv6_ipv4mapping}"
+ ${SYSCTL_W} net.inet6.ip6.v6only=0 >/dev/null
+ else
+ ${SYSCTL_W} net.inet6.ip6.v6only=1 >/dev/null
fi
-
- [ -n "${_netoptions_initdone}" ] && echo '.'
}
load_rc_config $name
==== //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/routing#6 (text+ko) ====
@@ -2,7 +2,7 @@
#
# Configure routing and miscellaneous network tunables
#
-# $FreeBSD: src/etc/rc.d/routing,v 1.150 2009/09/30 14:58:10 ume Exp $
+# $FreeBSD: src/etc/rc.d/routing,v 1.152 2009/10/02 20:19:53 hrs Exp $
#
# PROVIDE: routing
@@ -13,87 +13,108 @@
. /etc/network.subr
name="routing"
-start_cmd="routing_start"
+start_cmd="routing_start doall"
stop_cmd="routing_stop"
extra_commands="options static"
-static_cmd="static_start"
-options_cmd="options_start"
+static_cmd="routing_start static"
+options_cmd="routing_start options"
-routing_start()
+afcheck()
{
- static_start "$@"
- options_start "$@"
+ case $_af in
+ ""|inet|inet6|ipx|atm)
+ ;;
+ *)
+ err 1 "Unsupported address family: $_af."
+ ;;
+ esac
}
-routing_stop()
+routing_start()
{
- static_stop "$@"
- route -n flush
- for i in ${ipv6_network_interfaces}; do
- ifconfig $i inet6 -defaultif
- done
+ local _cmd _af _a
+ _cmd=$1
+ _af=$2
+
+ afcheck
+
+ case $_af in
+ inet|inet6|ipx|atm)
+ setroutes $_cmd $_af
+ ;;
+ "")
+ for _a in inet inet6 ipx atm; do
+ afexists $_a && setroutes $_cmd $_a
+ done
+ ;;
+ esac
+ [ -n "${_ropts_initdone}" ] && echo '.'
}
-static_start()
+routing_stop()
{
- local _af
+ local _af _a
_af=$1
- case ${_af} in
- inet)
- do_static inet add
+ afcheck
+
+ case $_af in
+ inet|inet6|ipx|atm)
+ eval static_${_af} delete
+ eval routing_stop_${_af}
;;
- inet6)
- do_static inet6 add
- ;;
- atm)
- do_static atm add
+ "")
+ for _a in inet inet6 ipx atm; do
+ afexists $_a || continue
+ eval static_${_a} delete
+ eval routing_stop_${_a}
+ done
;;
- *)
- do_static inet add
- if afexists inet6; then
- do_static inet6 add
- fi
- do_static atm add
- ;;
esac
}
-static_stop()
+setroutes()
{
- local _af
- _af=$1
-
- case ${_af} in
- inet)
- do_static inet delete
+ case $1 in
+ static)
+ static_$2 add
;;
- inet6)
- do_static inet6 delete
+ options)
+ options_$2
;;
- atm)
- do_static atm delete
- ;;
- *)
- do_static inet delete
- if afexists inet6; then
- do_static inet6 delete
- fi
- do_static atm delete
+ doall)
+ static_$2 add
+ options_$2
;;
esac
}
-do_static()
+routing_stop_inet()
+{
+ route -n flush -inet
+}
+
+routing_stop_inet6()
+{
+ local i
+
+ route -n flush -inet6
+ for i in ${ipv6_network_interfaces}; do
+ ifconfig $i inet6 -defaultif
+ done
+}
+
+routing_stop_atm()
{
- local _af _action
- _af=$1
- _action=$2
+ return 0
+}
- eval $1_static $2
+routing_stop_ipx()
+{
+ return 0
}
-inet_static()
+static_inet()
{
local _action
_action=$1
@@ -115,7 +136,7 @@
fi
}
-inet6_static()
+static_inet6()
{
local _action i
_action=$1
@@ -222,9 +243,9 @@
esac
}
-atm_static()
+static_atm()
{
- local _action i
+ local _action i route_args
_action=$1
if [ -n "${natm_static_routes}" ]; then
@@ -235,6 +256,10 @@
fi
}
+static_ipx()
+{
+}
+
_ropts_initdone=
ropts_init()
{
@@ -244,63 +269,89 @@
fi
}
-options_start()
+options_inet()
{
if checkyesno icmp_bmcastecho; then
ropts_init
echo -n ' broadcast ping responses=YES'
- sysctl net.inet.icmp.bmcastecho=1 >/dev/null
+ ${SYSCTL_W} net.inet.icmp.bmcastecho=1 > /dev/null
+ else
+ ${SYSCTL_W} net.inet.icmp.bmcastecho=0 > /dev/null
fi
if checkyesno icmp_drop_redirect; then
ropts_init
echo -n ' ignore ICMP redirect=YES'
- sysctl net.inet.icmp.drop_redirect=1 >/dev/null
+ ${SYSCTL_W} net.inet.icmp.drop_redirect=1 > /dev/null
+ else
+ ${SYSCTL_W} net.inet.icmp.drop_redirect=0 > /dev/null
fi
if checkyesno icmp_log_redirect; then
ropts_init
echo -n ' log ICMP redirect=YES'
- sysctl net.inet.icmp.log_redirect=1 >/dev/null
+ ${SYSCTL_W} net.inet.icmp.log_redirect=1 > /dev/null
+ else
+ ${SYSCTL_W} net.inet.icmp.log_redirect=0 > /dev/null
fi
if checkyesno gateway_enable; then
ropts_init
echo -n ' IPv4 gateway=YES'
- sysctl net.inet.ip.forwarding=1 >/dev/null
+ ${SYSCTL_W} net.inet.ip.forwarding=1 > /dev/null
+ else
+ ${SYSCTL_W} net.inet.ip.forwarding=0 > /dev/null
fi
- if checkyesno ipv6_gateway_enable; then
- ropts_init
- echo -n ' IPv6 gateway=YES'
- sysctl net.inet6.ip6.forwarding=1 >/dev/null
- fi
-
if checkyesno forward_sourceroute; then
ropts_init
echo -n ' do source routing=YES'
- sysctl net.inet.ip.sourceroute=1 >/dev/null
+ ${SYSCTL_W} net.inet.ip.sourceroute=1 > /dev/null
+ else
+ ${SYSCTL_W} net.inet.ip.sourceroute=0 > /dev/null
fi
if checkyesno accept_sourceroute; then
ropts_init
echo -n ' accept source routing=YES'
- sysctl net.inet.ip.accept_sourceroute=1 >/dev/null
+ ${SYSCTL_W} net.inet.ip.accept_sourceroute=1 > /dev/null
+ else
+ ${SYSCTL_W} net.inet.ip.accept_sourceroute=0 > /dev/null
fi
- if checkyesno ipxgateway_enable; then
+ if checkyesno arpproxy_all; then
ropts_init
- echo -n ' IPX gateway=YES'
- sysctl net.ipx.ipx.ipxforwarding=1 >/dev/null
+ echo -n ' ARP proxyall=YES'
+ ${SYSCTL_W} net.link.ether.inet.proxyall=1 > /dev/null
+ else
+ ${SYSCTL_W} net.link.ether.inet.proxyall=0 > /dev/null
fi
+}
- if checkyesno arpproxy_all; then
+options_inet6()
+{
+ if checkyesno ipv6_gateway_enable; then
ropts_init
- echo -n ' ARP proxyall=YES'
- sysctl net.link.ether.inet.proxyall=1 >/dev/null
+ echo -n ' IPv6 gateway=YES'
+ ${SYSCTL_W} net.inet6.ip6.forwarding=1 > /dev/null
+ else
+ ${SYSCTL_W} net.inet6.ip6.forwarding=0 > /dev/null
fi
+}
- [ -n "${_ropts_initdone}" ] && echo '.'
+options_atm()
+{
+}
+
+options_ipx()
+{
+ if checkyesno ipxgateway_enable; then
+ ropts_init
+ echo -n ' IPX gateway=YES'
+ ${SYSCTL_W} net.ipx.ipx.ipxforwarding=1 > /dev/null
+ else
+ ${SYSCTL_W} net.ipx.ipx.ipxforwarding=0 > /dev/null
+ fi
}
load_rc_config $name
==== //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/static_arp#2 (text+ko) ====
@@ -26,7 +26,7 @@
#
# Configure static ARP table
#
-# $FreeBSD: src/etc/rc.d/static_arp,v 1.2 2009/08/25 20:05:51 delphij Exp $
+# $FreeBSD: src/etc/rc.d/static_arp,v 1.4 2009/10/02 06:19:34 hrs Exp $
#
# PROVIDE: static_arp
@@ -34,6 +34,7 @@
# KEYWORD: nojail
. /etc/rc.subr
+. /etc/network.subr
name="static_arp"
start_cmd="static_arp_start"
==== //depot/projects/soc2008/trasz_nfs4acl/etc/rc.d/stf#2 (text+ko) ====
@@ -1,5 +1,5 @@
#!/bin/sh
-# $FreeBSD: src/etc/rc.d/stf,v 1.1 2009/09/12 22:13:41 hrs Exp $
+# $FreeBSD: src/etc/rc.d/stf,v 1.3 2009/10/02 06:19:34 hrs Exp $
#
# PROVIDE: stf
==== //depot/projects/soc2008/trasz_nfs4acl/sys/arm/arm/cpufunc.c#7 (text+ko) ====
@@ -45,7 +45,7 @@
* Created : 30/01/97
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc.c,v 1.27 2009/07/21 08:29:19 raj Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/cpufunc.c,v 1.28 2009/10/02 11:10:05 rpaulo Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -83,15 +83,6 @@
#include <arm/xscale/ixp425/ixp425var.h>
#endif
-#if defined(CPU_XSCALE_80200) || defined(CPU_XSCALE_80321) || \
- defined(CPU_XSCALE_80219) || defined(CPU_XSCALE_81342)
-#include <arm/xscale/xscalereg.h>
-#endif
-
-#if defined(PERFCTRS)
-struct arm_pmc_funcs *arm_pmc;
-#endif
-
/* PRIMARY CACHE VARIABLES */
int arm_picache_size;
int arm_picache_line_size;
@@ -1128,10 +1119,6 @@
: "r" (BCUCTL_E0|BCUCTL_E1|BCUCTL_EV));
cpufuncs = xscale_cpufuncs;
-#if defined(PERFCTRS)
- xscale_pmu_init();
-#endif
-
/*
* i80200 errata: Step-A0 and A1 have a bug where
* D$ dirty bits are not cleared on "invalidate by
@@ -1165,10 +1152,6 @@
PMNC_CC_IF));
cpufuncs = xscale_cpufuncs;
-#if defined(PERFCTRS)
- xscale_pmu_init();
-#endif
-
cpu_reset_needs_v4_MMU_disable = 1; /* XScale needs it */
get_cachetype_cp15();
pmap_pte_init_xscale();
@@ -1179,10 +1162,6 @@
#if defined(CPU_XSCALE_81342)
if (cputype == CPU_ID_81342) {
cpufuncs = xscalec3_cpufuncs;
-#if defined(PERFCTRS)
- xscale_pmu_init();
-#endif
-
cpu_reset_needs_v4_MMU_disable = 1; /* XScale needs it */
get_cachetype_cp15();
pmap_pte_init_xscale();
@@ -1196,10 +1175,6 @@
(cputype & ~CPU_ID_XSCALE_COREREV_MASK) == CPU_ID_PXA210) {
cpufuncs = xscale_cpufuncs;
-#if defined(PERFCTRS)
- xscale_pmu_init();
-#endif
-
cpu_reset_needs_v4_MMU_disable = 1; /* XScale needs it */
get_cachetype_cp15();
pmap_pte_init_xscale();
@@ -1215,10 +1190,6 @@
cputype == CPU_ID_IXP425_266 || cputype == CPU_ID_IXP435) {
cpufuncs = xscale_cpufuncs;
-#if defined(PERFCTRS)
- xscale_pmu_init();
-#endif
-
cpu_reset_needs_v4_MMU_disable = 1; /* XScale needs it */
get_cachetype_cp15();
pmap_pte_init_xscale();
==== //depot/projects/soc2008/trasz_nfs4acl/sys/conf/files#55 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.1473 2009/09/28 07:32:11 thompsa Exp $
+# $FreeBSD: src/sys/conf/files,v 1.1474 2009/10/02 12:47:01 nyan Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -2668,12 +2668,12 @@
vm/vm_unix.c standard
vm/vm_zeroidle.c standard
vm/vnode_pager.c standard
-xdr/xdr.c optional krpc | nfslockd | nfsclient | nfsserver
-xdr/xdr_array.c optional krpc | nfslockd | nfsclient | nfsserver
-xdr/xdr_mbuf.c optional krpc | nfslockd | nfsclient | nfsserver
-xdr/xdr_mem.c optional krpc | nfslockd | nfsclient | nfsserver
-xdr/xdr_reference.c optional krpc | nfslockd | nfsclient | nfsserver
-xdr/xdr_sizeof.c optional krpc | nfslockd | nfsclient | nfsserver
+xdr/xdr.c optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+xdr/xdr_array.c optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+xdr/xdr_mbuf.c optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+xdr/xdr_mem.c optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+xdr/xdr_reference.c optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
+xdr/xdr_sizeof.c optional krpc | nfslockd | nfsclient | nfsserver | nfscl | nfsd
#
gnu/fs/xfs/xfs_alloc.c optional xfs \
compile-with "${NORMAL_C} -I$S/gnu/fs/xfs/FreeBSD -I$S/gnu/fs/xfs/FreeBSD/support -I$S/gnu/fs/xfs" \
==== //depot/projects/soc2008/trasz_nfs4acl/sys/i386/i386/vm_machdep.c#9 (text+ko) ====
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i386/i386/vm_machdep.c,v 1.297 2009/07/29 08:49:58 kib Exp $");
+__FBSDID("$FreeBSD: src/sys/i386/i386/vm_machdep.c,v 1.298 2009/10/01 22:05:38 kmacy Exp $");
#include "opt_isa.h"
#include "opt_npx.h"
@@ -270,11 +270,7 @@
/*
* XXX XEN need to check on PSL_USER is handled
*/
-#ifdef XEN
- td2->td_md.md_saved_flags = 0;
-#else
td2->td_md.md_saved_flags = PSL_KERNEL | PSL_I;
-#endif
/*
* Now, cpu_switch() can schedule the new process.
* pcb_esp is loaded pointing to the cpu_switch() stack frame
@@ -446,11 +442,7 @@
/* Setup to release spin count in fork_exit(). */
td->td_md.md_spinlock_count = 1;
-#ifdef XEN
- td->td_md.md_saved_flags = 0;
-#else
td->td_md.md_saved_flags = PSL_KERNEL | PSL_I;
-#endif
}
/*
==== //depot/projects/soc2008/trasz_nfs4acl/sys/i386/include/cpufunc.h#9 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/i386/include/cpufunc.h,v 1.156 2009/09/30 16:34:50 avg Exp $
+ * $FreeBSD: src/sys/i386/include/cpufunc.h,v 1.157 2009/10/01 22:05:38 kmacy Exp $
*/
/*
@@ -49,8 +49,8 @@
extern void xen_load_cr3(u_int data);
extern void xen_tlb_flush(void);
extern void xen_invlpg(u_int addr);
-extern int xen_save_and_cli(void);
-extern void xen_restore_flags(u_int eflags);
+extern void write_eflags(u_int eflags);
+extern u_int read_eflags(void);
#endif
struct region_descriptor;
@@ -293,7 +293,11 @@
}
static __inline u_int
+#ifdef XEN
+_read_eflags(void)
+#else
read_eflags(void)
+#endif
{
u_int ef;
@@ -335,7 +339,11 @@
}
static __inline void
+#ifdef XEN
+_write_eflags(u_int ef)
+#else
write_eflags(u_int ef)
+#endif
{
__asm __volatile("pushl %0; popfl" : : "r" (ef));
}
@@ -653,23 +661,15 @@
{
register_t eflags;
-#ifdef XEN
- eflags = xen_save_and_cli();
-#else
eflags = read_eflags();
disable_intr();
-#endif
return (eflags);
}
static __inline void
intr_restore(register_t eflags)
{
-#ifdef XEN
- xen_restore_flags(eflags);
-#else
write_eflags(eflags);
-#endif
}
#else /* !(__GNUCLIKE_ASM && __CC_SUPPORTS___INLINE) */
==== //depot/projects/soc2008/trasz_nfs4acl/sys/i386/xen/xen_machdep.c#11 (text+ko) ====
@@ -31,11 +31,12 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/i386/xen/xen_machdep.c,v 1.19 2009/04/01 17:06:28 dfr Exp $");
+__FBSDID("$FreeBSD: src/sys/i386/xen/xen_machdep.c,v 1.20 2009/10/01 22:05:38 kmacy Exp $");
#include <sys/param.h>
#include <sys/systm.h>
#include <sys/bus.h>
+#include <sys/ktr.h>
#include <sys/lock.h>
#include <sys/mount.h>
#include <sys/malloc.h>
@@ -101,6 +102,7 @@
void
ni_cli(void)
{
+ CTR0(KTR_SPARE2, "ni_cli disabling interrupts");
__asm__("pushl %edx;"
"pushl %eax;"
);
@@ -345,33 +347,53 @@
PANIC_IF(HYPERVISOR_mmuext_op(&op, 1, NULL, DOMID_SELF) < 0);
}
-void
-xen_restore_flags(u_int eflags)
+#ifdef KTR
+static __inline u_int
+rebp(void)
{
- if (eflags > 1)
- eflags = ((eflags & PSL_I) == 0);
+ u_int data;
- __restore_flags(eflags);
+ __asm __volatile("movl 4(%%ebp),%0" : "=r" (data));
+ return (data);
}
+#endif
-int
-xen_save_and_cli(void)
+u_int
+read_eflags(void)
{
- int eflags;
-
- __save_and_cli(eflags);
+ vcpu_info_t *_vcpu;
+ u_int eflags;
+
+ eflags = _read_eflags();
+ _vcpu = &HYPERVISOR_shared_info->vcpu_info[smp_processor_id()];
+ if (_vcpu->evtchn_upcall_mask)
+ eflags &= ~PSL_I;
+
return (eflags);
}
void
+write_eflags(u_int eflags)
+{
+ u_int intr;
+
+ CTR2(KTR_SPARE2, "%x xen_restore_flags eflags %x", rebp(), eflags);
+ intr = ((eflags & PSL_I) == 0);
+ __restore_flags(intr);
+ _write_eflags(eflags);
+}
+
+void
xen_cli(void)
{
+ CTR1(KTR_SPARE2, "%x xen_cli disabling interrupts", rebp());
__cli();
}
void
xen_sti(void)
{
+ CTR1(KTR_SPARE2, "%x xen_sti enabling interrupts", rebp());
__sti();
}
==== //depot/projects/soc2008/trasz_nfs4acl/sys/kern/init_main.c#11 (text+ko) ====
@@ -42,7 +42,7 @@
*/
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list