svn commit: r197701 - head/etc/rc.d

2009-10-02 Thread Hiroki Sato
Author: hrs
Date: Fri Oct  2 06:19:34 2009
New Revision: 197701
URL: http://svn.freebsd.org/changeset/base/197701

Log:
  Revert the previous afexists() change.  Knobs configured explicitly by
  the user should not be ignored if possible even if the kernel does not
  support the prerequisite feature.
  
  Discussed with:   ume

Modified:
  head/etc/rc.d/faith
  head/etc/rc.d/static_arp
  head/etc/rc.d/stf

Modified: head/etc/rc.d/faith
==
--- head/etc/rc.d/faith Fri Oct  2 05:11:46 2009(r197700)
+++ head/etc/rc.d/faith Fri Oct  2 06:19:34 2009(r197701)
@@ -15,8 +15,6 @@ stop_cmd=faith_down
 
 faith_up()
 {
-   afexists inet6 || return 0
-
case ${ipv6_faith_prefix} in
[Nn][Oo] | '')
;;
@@ -50,8 +48,6 @@ faith_up()
 
 faith_down()
 {
-   afexists inet6 || return 0
-
echo Removing IPv6-to-IPv4 TCP relay capturing interface: faith0.
ifconfig faith0 destroy
${SYSCTL_W} net.inet6.ip6.keepfaith=0

Modified: head/etc/rc.d/static_arp
==
--- head/etc/rc.d/static_arpFri Oct  2 05:11:46 2009(r197700)
+++ head/etc/rc.d/static_arpFri Oct  2 06:19:34 2009(r197701)
@@ -44,8 +44,6 @@ static_arp_start()
 {
local e arp_args
 
-   afexists inet || return 0
-
if [ -n ${static_arp_pairs} ]; then
echo -n 'Binding static ARP pair(s):'
for e in ${static_arp_pairs}; do
@@ -61,8 +59,6 @@ static_arp_stop()
 {
local e arp_args
 
-   afexists inet || return 0
-
if [ -n ${static_arp_pairs} ]; then
echo -n 'Unbinding static ARP pair(s):'
for e in ${static_arp_pairs}; do

Modified: head/etc/rc.d/stf
==
--- head/etc/rc.d/stf   Fri Oct  2 05:11:46 2009(r197700)
+++ head/etc/rc.d/stf   Fri Oct  2 06:19:34 2009(r197701)
@@ -15,8 +15,6 @@ stop_cmd=stf_down
 
 stf_up()
 {
-   afexists inet6 || return 0
-
case ${stf_interface_ipv4addr} in
[Nn][Oo] | '')
;;
@@ -69,8 +67,6 @@ stf_up()
 
 stf_down()
 {
-   afexists inet6 || return 0
-
echo Removing 6to4 tunnel interface: stf0. 
ifconfig stf0 destroy
route delete -inet6 2002:e000:: -prefixlen 20 ::1
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r197687 - head/sys/net

2009-10-02 Thread Tom Judge

Qing Li wrote:

Author: qingli
Date: Thu Oct  1 20:32:29 2009
New Revision: 197687
URL: http://svn.freebsd.org/changeset/base/197687

Log:
  The flow-table associates TCP/UDP flows and IP destinations with
  specific routes. When the routing table changes, for example,
  when a new route with a more specific prefix is inserted into the
  routing table, the flow-table is not updated to reflect that change.
  As such existing connections cannot take advantage of the new path.
  In some cases the path is broken. This patch will update the affected
  flow-table entries when a more specific route is added. The route
  entry is properly marked when a route is deleted from the table.
  In this case, when the flow-table performs a search, the stale
  entry is updated automatically. Therefore this patch is not
  necessary for route deletion.
  

Hi,

Will this fix the issue that I see visualising  its self as packet loss 
over a VPN tunnel?


The tunnel is an openvpn (tun mode) tunnel providing a route to 
192.168.201.0/24 however when I ping an address in this network with 
flowtable enabled I see 2-3 out of every 5-6 packets end up being sent 
out of bge0 (IP 172.17.XX.XX/23 GW 172.17.XX.1) to the default gateway 
(which responds with destination host unreachable) rather than down tun0.


Thanks

Tom

___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197702 - head/etc/rc.d

2009-10-02 Thread Hiroki Sato
Author: hrs
Date: Fri Oct  2 06:51:39 2009
New Revision: 197702
URL: http://svn.freebsd.org/changeset/base/197702

Log:
  The net.inet.tcp.log_in_vain accepts 0, 1 or 2, not Y/N.

Modified:
  head/etc/rc.d/netoptions

Modified: head/etc/rc.d/netoptions
==
--- head/etc/rc.d/netoptionsFri Oct  2 06:19:34 2009(r197701)
+++ head/etc/rc.d/netoptionsFri Oct  2 06:51:39 2009(r197702)
@@ -36,15 +36,18 @@ netoptions_start()
 
 netoptions_inet()
 {
-   if checkyesno log_in_vain; then
+   case ${log_in_vain} in
+   [12])
netoptions_init
echo -n  log_in_vain=${log_in_vain}
-   ${SYSCTL_W} net.inet.tcp.log_in_vain=1 /dev/null
-   ${SYSCTL_W} net.inet.udp.log_in_vain=1 /dev/null
-   else
+   ${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
-   fi
+   ;;
+   esac
 
if checkyesno tcp_extensions; then
${SYSCTL_W} net.inet.tcp.rfc1323=1 /dev/null
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197703 - head/sys/netinet6

2009-10-02 Thread Hiroki Sato
Author: hrs
Date: Fri Oct  2 07:00:20 2009
New Revision: 197703
URL: http://svn.freebsd.org/changeset/base/197703

Log:
  Enable adding a link-local address even if ND6_IFF_IFDISABLED.
  Note that when the interface has ND6_IFF_IFDISABLED, a newly-added
  address is always marked as IN6_IFF_TENTATIVE so that the interface
  can perform DAD after the ND6_IFF_IFDISABLED is cleared.

Modified:
  head/sys/netinet6/in6_ifattach.c

Modified: head/sys/netinet6/in6_ifattach.c
==
--- head/sys/netinet6/in6_ifattach.cFri Oct  2 06:51:39 2009
(r197702)
+++ head/sys/netinet6/in6_ifattach.cFri Oct  2 07:00:20 2009
(r197703)
@@ -751,7 +751,6 @@ in6_ifattach(struct ifnet *ifp, struct i
 * assign a link-local address, if there's none.
 */
if (ifp-if_type != IFT_BRIDGE 
-   !(ND_IFINFO(ifp)-flags  ND6_IFF_IFDISABLED) 
ND_IFINFO(ifp)-flags  ND6_IFF_AUTO_LINKLOCAL) {
int error;
 
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r197687 - head/sys/net

2009-10-02 Thread Qing Li
I believe this patch will fix your issue. In fact two other users of
openvpn reports
the exact same problem symptom. Please give it a try and let me know how
it works out for you.

-- Qing


On Thu, Oct 1, 2009 at 11:22 PM, Tom Judge t...@tomjudge.com wrote:
 Qing Li wrote:

 Author: qingli
 Date: Thu Oct  1 20:32:29 2009
 New Revision: 197687
 URL: http://svn.freebsd.org/changeset/base/197687

 Log:
  The flow-table associates TCP/UDP flows and IP destinations with
  specific routes. When the routing table changes, for example,
  when a new route with a more specific prefix is inserted into the
  routing table, the flow-table is not updated to reflect that change.
  As such existing connections cannot take advantage of the new path.
  In some cases the path is broken. This patch will update the affected
  flow-table entries when a more specific route is added. The route
  entry is properly marked when a route is deleted from the table.
  In this case, when the flow-table performs a search, the stale
  entry is updated automatically. Therefore this patch is not
  necessary for route deletion.


 Hi,

 Will this fix the issue that I see visualising  its self as packet loss over
 a VPN tunnel?

 The tunnel is an openvpn (tun mode) tunnel providing a route to
 192.168.201.0/24 however when I ping an address in this network with
 flowtable enabled I see 2-3 out of every 5-6 packets end up being sent out
 of bge0 (IP 172.17.XX.XX/23 GW 172.17.XX.1) to the default gateway (which
 responds with destination host unreachable) rather than down tun0.

 Thanks

 Tom


___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r197687 - head/sys/net

2009-10-02 Thread Simon L. Nielsen
On 2009.10.02 06:22:58 +, Tom Judge wrote:
 Qing Li wrote:
  Author: qingli
  Date: Thu Oct  1 20:32:29 2009
  New Revision: 197687
  URL: http://svn.freebsd.org/changeset/base/197687
 
  Log:
The flow-table associates TCP/UDP flows and IP destinations with
specific routes. When the routing table changes, for example,
when a new route with a more specific prefix is inserted into the
routing table, the flow-table is not updated to reflect that change.
As such existing connections cannot take advantage of the new path.
In some cases the path is broken. This patch will update the affected
flow-table entries when a more specific route is added. The route
entry is properly marked when a route is deleted from the table.
In this case, when the flow-table performs a search, the stale
entry is updated automatically. Therefore this patch is not
necessary for route deletion.

 Hi,
 
 Will this fix the issue that I see visualising  its self as packet loss 
 over a VPN tunnel?
 
 The tunnel is an openvpn (tun mode) tunnel providing a route to 
 192.168.201.0/24 however when I ping an address in this network with 
 flowtable enabled I see 2-3 out of every 5-6 packets end up being sent 
 out of bge0 (IP 172.17.XX.XX/23 GW 172.17.XX.1) to the default gateway 
 (which responds with destination host unreachable) rather than down tun0.

This sounds very similar to the problem I was seeing (also with
OpenVPN), which was fixed by qingli's patch.

The packet is most likely actually not lost, but routed to your
default gateway instead (or whatever it would be sent before the VPN
was created).

-- 
Simon L. Nielsen
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197704 - in head/sys/arm: arm xscale

2009-10-02 Thread Rui Paulo
Author: rpaulo
Date: Fri Oct  2 11:10:05 2009
New Revision: 197704
URL: http://svn.freebsd.org/changeset/base/197704

Log:
  Remove performance counter headers. This code came from NetBSD, but our
  hardware perf. counter support is different, so we don't need these
  files.
  
  Reviewed by:  freebsd-arm (no comments)

Deleted:
  head/sys/arm/xscale/xscalereg.h
  head/sys/arm/xscale/xscalevar.h
Modified:
  head/sys/arm/arm/cpufunc.c

Modified: head/sys/arm/arm/cpufunc.c
==
--- head/sys/arm/arm/cpufunc.c  Fri Oct  2 07:00:20 2009(r197703)
+++ head/sys/arm/arm/cpufunc.c  Fri Oct  2 11:10:05 2009(r197704)
@@ -83,15 +83,6 @@ __FBSDID($FreeBSD$);
 #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 */
 intarm_picache_size;
 intarm_picache_line_size;
@@ -1128,10 +1119,6 @@ set_cpufuncs()
: 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 @@ set_cpufuncs()
   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 @@ set_cpufuncs()
 #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 @@ set_cpufuncs()
(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 @@ set_cpufuncs()
 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();
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197706 - head/sys/sys

2009-10-02 Thread Rui Paulo
Author: rpaulo
Date: Fri Oct  2 11:14:12 2009
New Revision: 197706
URL: http://svn.freebsd.org/changeset/base/197706

Log:
  Reserve numbers for XScale.
  
  Reviewed by:  jkoshy

Modified:
  head/sys/sys/pmc.h

Modified: head/sys/sys/pmc.h
==
--- head/sys/sys/pmc.h  Fri Oct  2 11:10:51 2009(r197705)
+++ head/sys/sys/pmc.h  Fri Oct  2 11:14:12 2009(r197706)
@@ -84,7 +84,8 @@
__PMC_CPU(INTEL_CORE2,  0x88,   Intel Core2)  \
__PMC_CPU(INTEL_CORE2EXTREME,   0x89,   Intel Core2 Extreme)  \
__PMC_CPU(INTEL_ATOM,   0x8A,   Intel Atom) \
-   __PMC_CPU(INTEL_COREI7, 0x8B,   Intel Core i7)
+   __PMC_CPU(INTEL_COREI7, 0x8B,   Intel Core i7)\
+   __PMC_CPU(INTEL_XSCALE, 0x100,  Intel XScale)
 
 enum pmc_cputype {
 #undef __PMC_CPU
@@ -93,7 +94,7 @@ enum pmc_cputype {
 };
 
 #definePMC_CPU_FIRST   PMC_CPU_AMD_K7
-#definePMC_CPU_LASTPMC_CPU_INTEL_COREI7
+#definePMC_CPU_LASTPMC_CPU_INTEL_XSCALE
 
 /*
  * Classes of PMCs
@@ -107,7 +108,8 @@ enum pmc_cputype {
__PMC_CLASS(P6) /* Intel Pentium Pro counters */\
__PMC_CLASS(P4) /* Intel Pentium-IV counters */ \
__PMC_CLASS(IAF)/* Intel Core2/Atom, fixed function */  \
-   __PMC_CLASS(IAP)/* Intel Core...Atom, programmable */
+   __PMC_CLASS(IAP)/* Intel Core...Atom, programmable */   \
+   __PMC_CLASS(XSCALE) /* Intel XScale counters */
 
 enum pmc_class {
 #undef  __PMC_CLASS
@@ -116,7 +118,7 @@ enum pmc_class {
 };
 
 #definePMC_CLASS_FIRST PMC_CLASS_TSC
-#definePMC_CLASS_LAST  PMC_CLASS_IAP
+#definePMC_CLASS_LAST  PMC_CLASS_XSCALE
 
 /*
  * A PMC can be in the following states:
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197709 - head/sys/conf

2009-10-02 Thread Takahashi Yoshihiro
Author: nyan
Date: Fri Oct  2 12:47:01 2009
New Revision: 197709
URL: http://svn.freebsd.org/changeset/base/197709

Log:
  Fix build nfscl and/or nfsd.
  
  MFC after:3 days

Modified:
  head/sys/conf/files

Modified: head/sys/conf/files
==
--- head/sys/conf/files Fri Oct  2 11:46:01 2009(r197708)
+++ head/sys/conf/files Fri Oct  2 12:47:01 2009(r197709)
@@ -2668,12 +2668,12 @@ vm/vm_reserv.c  standard
 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.coptional 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.coptional 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.coptional 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.coptional 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 \
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197710 - svnadmin/conf

2009-10-02 Thread Edward Tomasz Napierala
Author: trasz
Date: Fri Oct  2 17:39:23 2009
New Revision: 197710
URL: http://svn.freebsd.org/changeset/base/197710

Log:
  Welcome Jaakko Heinonen (jh@) as a src committer.  Jaakko will start
  with bugbusting, mostly in kern and bin categories.  I'll be his mentor,
  with Robert Watson (rwatson@) as co-mentor.
  
  Approved by:  core

Modified:
  svnadmin/conf/access
  svnadmin/conf/mentors

Modified: svnadmin/conf/access
==
--- svnadmin/conf/accessFri Oct  2 12:47:01 2009(r197709)
+++ svnadmin/conf/accessFri Oct  2 17:39:23 2009(r197710)
@@ -100,6 +100,7 @@ jasone
 jb
 jeff
 jfv
+jh
 jhay
 jhb
 jilles

Modified: svnadmin/conf/mentors
==
--- svnadmin/conf/mentors   Fri Oct  2 12:47:01 2009(r197709)
+++ svnadmin/conf/mentors   Fri Oct  2 17:39:23 2009(r197710)
@@ -15,6 +15,7 @@ dchagin   kib
 erimlaier  Co-mentor: thompsa
 fabientjkoshy
 ivoras gnn
+jh trasz   Co-mentor: rwatson
 jinmei gnn
 lstewart   gnn
 neel   imp
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197711 - head/sys/kern

2009-10-02 Thread Bjoern A. Zeeb
Author: bz
Date: Fri Oct  2 17:48:51 2009
New Revision: 197711
URL: http://svn.freebsd.org/changeset/base/197711

Log:
  Add a mitigation feature that will prevent user mappings at
  virtual address 0, limiting the ability to convert a kernel
  NULL pointer dereference into a privilege escalation attack.
  
  If the sysctl is set to 0 a newly started process will not be able
  to map anything in the address range of the first page (0 to PAGE_SIZE).
  This is the default. Already running processes are not affected by this.
  
  You can either change the sysctl or the tunable from loader in case
  you need to map at a virtual address of 0, for example when running
  any of the extinct species of a set of a.out binaries, vm86 emulation, ..
  In that case set security.bsd.map_at_zero=1.
  
  Superseeds:   r197537
  In collaboration with:jhb, kib, alc

Modified:
  head/sys/kern/init_main.c
  head/sys/kern/kern_exec.c

Modified: head/sys/kern/init_main.c
==
--- head/sys/kern/init_main.c   Fri Oct  2 17:39:23 2009(r197710)
+++ head/sys/kern/init_main.c   Fri Oct  2 17:48:51 2009(r197711)
@@ -505,6 +505,11 @@ proc0_init(void *dummy __unused)
pmap_pinit0(vmspace_pmap(vmspace0));
p-p_vmspace = vmspace0;
vmspace0.vm_refcnt = 1;
+
+   /*
+* proc0 is not expected to enter usermode, so there is no special
+* handling for sv_minuser here, like is done for exec_new_vmspace().
+*/
vm_map_init(vmspace0.vm_map, p-p_sysent-sv_minuser,
p-p_sysent-sv_maxuser);
vmspace0.vm_map.pmap = vmspace_pmap(vmspace0);

Modified: head/sys/kern/kern_exec.c
==
--- head/sys/kern/kern_exec.c   Fri Oct  2 17:39:23 2009(r197710)
+++ head/sys/kern/kern_exec.c   Fri Oct  2 17:48:51 2009(r197711)
@@ -122,6 +122,11 @@ u_long ps_arg_cache_limit = PAGE_SIZE / 
 SYSCTL_ULONG(_kern, OID_AUTO, ps_arg_cache_limit, CTLFLAG_RW, 
 ps_arg_cache_limit, 0, );
 
+static int map_at_zero = 0;
+TUNABLE_INT(security.bsd.map_at_zero, map_at_zero);
+SYSCTL_INT(_security_bsd, OID_AUTO, map_at_zero, CTLFLAG_RW, map_at_zero, 0,
+Permit processes to map an object at virtual address 0.);
+
 static int
 sysctl_kern_ps_strings(SYSCTL_HANDLER_ARGS)
 {
@@ -999,7 +1004,7 @@ exec_new_vmspace(imgp, sv)
int error;
struct proc *p = imgp-proc;
struct vmspace *vmspace = p-p_vmspace;
-   vm_offset_t stack_addr;
+   vm_offset_t sv_minuser, stack_addr;
vm_map_t map;
u_long ssiz;
 
@@ -1015,13 +1020,17 @@ exec_new_vmspace(imgp, sv)
 * not disrupted
 */
map = vmspace-vm_map;
-   if (vmspace-vm_refcnt == 1  vm_map_min(map) == sv-sv_minuser 
+   if (map_at_zero)
+   sv_minuser = sv-sv_minuser;
+   else
+   sv_minuser = MAX(sv-sv_minuser, PAGE_SIZE);
+   if (vmspace-vm_refcnt == 1  vm_map_min(map) == sv_minuser 
vm_map_max(map) == sv-sv_maxuser) {
shmexit(vmspace);
pmap_remove_pages(vmspace_pmap(vmspace));
vm_map_remove(map, vm_map_min(map), vm_map_max(map));
} else {
-   error = vmspace_exec(p, sv-sv_minuser, sv-sv_maxuser);
+   error = vmspace_exec(p, sv_minuser, sv-sv_maxuser);
if (error)
return (error);
vmspace = p-p_vmspace;
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197712 - head/sys/vm

2009-10-02 Thread Bjoern A. Zeeb
Author: bz
Date: Fri Oct  2 17:51:46 2009
New Revision: 197712
URL: http://svn.freebsd.org/changeset/base/197712

Log:
  Back out the functional parts from r197537.  After r197711, affecting all
  user mappings, mmap no longer needs special treatment.

Modified:
  head/sys/vm/vm_mmap.c

Modified: head/sys/vm/vm_mmap.c
==
--- head/sys/vm/vm_mmap.c   Fri Oct  2 17:48:51 2009(r197711)
+++ head/sys/vm/vm_mmap.c   Fri Oct  2 17:51:46 2009(r197712)
@@ -97,14 +97,6 @@ SYSCTL_INT(_vm, OID_AUTO, max_proc_mmap,
 Maximum number of memory-mapped files per process);
 
 /*
- * 'mmap_zero' determines whether or not MAP_FIXED mmap() requests for
- * virtual address zero are permitted.
- */
-static int mmap_zero;
-SYSCTL_INT(_security_bsd, OID_AUTO, mmap_zero, CTLFLAG_RW, mmap_zero, 0,
-Processes may map an object at virtual address zero);
-
-/*
  * Set the maximum number of vm_map_entry structures per process.  Roughly
  * speaking vm_map_entry structures are tiny, so allowing them to eat 1/100
  * of our KVM malloc space still results in generous limits.  We want a
@@ -277,13 +269,6 @@ mmap(td, uap)
if (addr  PAGE_MASK)
return (EINVAL);
 
-   /*
-* Mapping to address zero is only permitted if
-* mmap_zero is enabled.
-*/
-   if (addr == 0  !mmap_zero)
-   return (EINVAL);
-
/* Address range must be all in user VM space. */
if (addr  vm_map_min(vms-vm_map) ||
addr + size  vm_map_max(vms-vm_map))
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197714 - in stable/8/sys: . amd64/include/xen cddl/contrib/opensolaris contrib/dev/acpica contrib/pf dev/xen/xenpci kern

2009-10-02 Thread Simon L. Nielsen
Author: simon
Date: Fri Oct  2 17:58:47 2009
New Revision: 197714
URL: http://svn.freebsd.org/changeset/base/197714

Log:
  MFC r197711:
  
  Add no zero mapping feature.
  
  NOTE: Unlike in the other branches where this change will be merged
  to, the 'no zero mapping' is enabled by default in stable/8.
  
  Errata:   FreeBSD-EN-09:05.null
  Approved by:  re (kib)

Modified:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/xen/xenpci/   (props changed)
  stable/8/sys/kern/init_main.c
  stable/8/sys/kern/kern_exec.c

Modified: stable/8/sys/kern/init_main.c
==
--- stable/8/sys/kern/init_main.c   Fri Oct  2 17:53:48 2009
(r197713)
+++ stable/8/sys/kern/init_main.c   Fri Oct  2 17:58:47 2009
(r197714)
@@ -492,6 +492,11 @@ proc0_init(void *dummy __unused)
pmap_pinit0(vmspace_pmap(vmspace0));
p-p_vmspace = vmspace0;
vmspace0.vm_refcnt = 1;
+
+   /*
+* proc0 is not expected to enter usermode, so there is no special
+* handling for sv_minuser here, like is done for exec_new_vmspace().
+*/
vm_map_init(vmspace0.vm_map, p-p_sysent-sv_minuser,
p-p_sysent-sv_maxuser);
vmspace0.vm_map.pmap = vmspace_pmap(vmspace0);

Modified: stable/8/sys/kern/kern_exec.c
==
--- stable/8/sys/kern/kern_exec.c   Fri Oct  2 17:53:48 2009
(r197713)
+++ stable/8/sys/kern/kern_exec.c   Fri Oct  2 17:58:47 2009
(r197714)
@@ -122,6 +122,11 @@ u_long ps_arg_cache_limit = PAGE_SIZE / 
 SYSCTL_ULONG(_kern, OID_AUTO, ps_arg_cache_limit, CTLFLAG_RW, 
 ps_arg_cache_limit, 0, );
 
+static int map_at_zero = 0;
+TUNABLE_INT(security.bsd.map_at_zero, map_at_zero);
+SYSCTL_INT(_security_bsd, OID_AUTO, map_at_zero, CTLFLAG_RW, map_at_zero, 0,
+Permit processes to map an object at virtual address 0.);
+
 static int
 sysctl_kern_ps_strings(SYSCTL_HANDLER_ARGS)
 {
@@ -999,7 +1004,7 @@ exec_new_vmspace(imgp, sv)
int error;
struct proc *p = imgp-proc;
struct vmspace *vmspace = p-p_vmspace;
-   vm_offset_t stack_addr;
+   vm_offset_t sv_minuser, stack_addr;
vm_map_t map;
u_long ssiz;
 
@@ -1015,13 +1020,17 @@ exec_new_vmspace(imgp, sv)
 * not disrupted
 */
map = vmspace-vm_map;
-   if (vmspace-vm_refcnt == 1  vm_map_min(map) == sv-sv_minuser 
+   if (map_at_zero)
+   sv_minuser = sv-sv_minuser;
+   else
+   sv_minuser = MAX(sv-sv_minuser, PAGE_SIZE);
+   if (vmspace-vm_refcnt == 1  vm_map_min(map) == sv_minuser 
vm_map_max(map) == sv-sv_maxuser) {
shmexit(vmspace);
pmap_remove_pages(vmspace_pmap(vmspace));
vm_map_remove(map, vm_map_min(map), vm_map_max(map));
} else {
-   error = vmspace_exec(p, sv-sv_minuser, sv-sv_maxuser);
+   error = vmspace_exec(p, sv_minuser, sv-sv_maxuser);
if (error)
return (error);
vmspace = p-p_vmspace;
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197715 - releng/6.3 releng/6.3/sys/conf releng/6.3/sys/fs/devfs releng/6.3/sys/kern releng/6.3/sys/sys releng/6.4 releng/6.4/sys/conf releng/6.4/sys/fs/devfs releng/6.4/sys/kern releng...

2009-10-02 Thread Simon L. Nielsen
Author: simon
Date: Fri Oct  2 18:09:56 2009
New Revision: 197715
URL: http://svn.freebsd.org/changeset/base/197715

Log:
  MFC r197711 (partial) to 6.x and 7.x:
  
  - Add no zero mapping feature, disabled by default. [EN-09:05]
  
  MFC 178913,178914,179242,179243,180336,180340 to 6.x:
  
  - Fix kqueue pipe race conditions. [SA-09:13]
  
  MFC r192301 to 7.x; 6.x has slightly different fix:
  
  - Fix devfs / VFS NULL pointer race condition. [SA-09:14]
  
  Security: FreeBSD-SA-09:13.pipe
  Security: FreeBSD-SA-09:14.devfs
  Errata:   FreeBSD-EN-09:05.null
  Submitted by: kib [SA-09:13] [SA-09:14]
  Submitted by: bz [EN-09:05]
  In collaboration with:jhb, kib, alc [EN-09:05]
  Approved by:  so (simon)

Modified:
  stable/7/sys/kern/kern_exec.c

Changes in other areas also in this revision:
Modified:
  releng/6.3/UPDATING
  releng/6.3/sys/conf/newvers.sh
  releng/6.3/sys/fs/devfs/devfs_vnops.c
  releng/6.3/sys/kern/kern_event.c
  releng/6.3/sys/kern/kern_exec.c
  releng/6.3/sys/kern/kern_fork.c
  releng/6.3/sys/kern/sys_pipe.c
  releng/6.3/sys/sys/event.h
  releng/6.3/sys/sys/pipe.h
  releng/6.4/UPDATING
  releng/6.4/sys/conf/newvers.sh
  releng/6.4/sys/fs/devfs/devfs_vnops.c
  releng/6.4/sys/kern/kern_event.c
  releng/6.4/sys/kern/kern_exec.c
  releng/6.4/sys/kern/kern_fork.c
  releng/6.4/sys/kern/sys_pipe.c
  releng/6.4/sys/sys/event.h
  releng/6.4/sys/sys/pipe.h
  releng/7.1/UPDATING
  releng/7.1/sys/conf/newvers.sh
  releng/7.1/sys/fs/devfs/devfs_vnops.c
  releng/7.1/sys/kern/kern_exec.c
  releng/7.2/UPDATING
  releng/7.2/sys/conf/newvers.sh
  releng/7.2/sys/fs/devfs/devfs_vnops.c
  releng/7.2/sys/kern/kern_exec.c
  stable/6/sys/fs/devfs/devfs_vnops.c
  stable/6/sys/kern/kern_event.c
  stable/6/sys/kern/kern_exec.c
  stable/6/sys/kern/kern_fork.c
  stable/6/sys/kern/sys_pipe.c
  stable/6/sys/sys/event.h
  stable/6/sys/sys/pipe.h

Modified: stable/7/sys/kern/kern_exec.c
==
--- stable/7/sys/kern/kern_exec.c   Fri Oct  2 17:58:47 2009
(r197714)
+++ stable/7/sys/kern/kern_exec.c   Fri Oct  2 18:09:56 2009
(r197715)
@@ -122,6 +122,11 @@ u_long ps_arg_cache_limit = PAGE_SIZE / 
 SYSCTL_ULONG(_kern, OID_AUTO, ps_arg_cache_limit, CTLFLAG_RW, 
 ps_arg_cache_limit, 0, );
 
+static int map_at_zero = 1;
+TUNABLE_INT(security.bsd.map_at_zero, map_at_zero);
+SYSCTL_INT(_security_bsd, OID_AUTO, map_at_zero, CTLFLAG_RW, map_at_zero, 0,
+Permit processes to map an object at virtual address 0.);
+
 static int
 sysctl_kern_ps_strings(SYSCTL_HANDLER_ARGS)
 {
@@ -939,7 +944,7 @@ exec_new_vmspace(imgp, sv)
int error;
struct proc *p = imgp-proc;
struct vmspace *vmspace = p-p_vmspace;
-   vm_offset_t stack_addr;
+   vm_offset_t sv_minuser, stack_addr;
vm_map_t map;
u_long ssiz;
 
@@ -955,13 +960,17 @@ exec_new_vmspace(imgp, sv)
 * not disrupted
 */
map = vmspace-vm_map;
-   if (vmspace-vm_refcnt == 1  vm_map_min(map) == sv-sv_minuser 
+   if (map_at_zero)
+   sv_minuser = sv-sv_minuser;
+   else
+   sv_minuser = MAX(sv-sv_minuser, PAGE_SIZE);
+   if (vmspace-vm_refcnt == 1  vm_map_min(map) == sv_minuser 
vm_map_max(map) == sv-sv_maxuser) {
shmexit(vmspace);
pmap_remove_pages(vmspace_pmap(vmspace));
vm_map_remove(map, vm_map_min(map), vm_map_max(map));
} else {
-   error = vmspace_exec(p, sv-sv_minuser, sv-sv_maxuser);
+   error = vmspace_exec(p, sv_minuser, sv-sv_maxuser);
if (error)
return (error);
vmspace = p-p_vmspace;
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197715 - releng/6.3 releng/6.3/sys/conf releng/6.3/sys/fs/devfs releng/6.3/sys/kern releng/6.3/sys/sys releng/6.4 releng/6.4/sys/conf releng/6.4/sys/fs/devfs releng/6.4/sys/kern releng...

2009-10-02 Thread Simon L. Nielsen
Author: simon
Date: Fri Oct  2 18:09:56 2009
New Revision: 197715
URL: http://svn.freebsd.org/changeset/base/197715

Log:
  MFC r197711 (partial) to 6.x and 7.x:
  
  - Add no zero mapping feature, disabled by default. [EN-09:05]
  
  MFC 178913,178914,179242,179243,180336,180340 to 6.x:
  
  - Fix kqueue pipe race conditions. [SA-09:13]
  
  MFC r192301 to 7.x; 6.x has slightly different fix:
  
  - Fix devfs / VFS NULL pointer race condition. [SA-09:14]
  
  Security: FreeBSD-SA-09:13.pipe
  Security: FreeBSD-SA-09:14.devfs
  Errata:   FreeBSD-EN-09:05.null
  Submitted by: kib [SA-09:13] [SA-09:14]
  Submitted by: bz [EN-09:05]
  In collaboration with:jhb, kib, alc [EN-09:05]
  Approved by:  so (simon)

Modified:
  releng/6.3/UPDATING
  releng/6.3/sys/conf/newvers.sh
  releng/6.3/sys/fs/devfs/devfs_vnops.c
  releng/6.3/sys/kern/kern_event.c
  releng/6.3/sys/kern/kern_exec.c
  releng/6.3/sys/kern/kern_fork.c
  releng/6.3/sys/kern/sys_pipe.c
  releng/6.3/sys/sys/event.h
  releng/6.3/sys/sys/pipe.h
  releng/6.4/UPDATING
  releng/6.4/sys/conf/newvers.sh
  releng/6.4/sys/fs/devfs/devfs_vnops.c
  releng/6.4/sys/kern/kern_event.c
  releng/6.4/sys/kern/kern_exec.c
  releng/6.4/sys/kern/kern_fork.c
  releng/6.4/sys/kern/sys_pipe.c
  releng/6.4/sys/sys/event.h
  releng/6.4/sys/sys/pipe.h
  releng/7.1/UPDATING
  releng/7.1/sys/conf/newvers.sh
  releng/7.1/sys/fs/devfs/devfs_vnops.c
  releng/7.1/sys/kern/kern_exec.c
  releng/7.2/UPDATING
  releng/7.2/sys/conf/newvers.sh
  releng/7.2/sys/fs/devfs/devfs_vnops.c
  releng/7.2/sys/kern/kern_exec.c

Changes in other areas also in this revision:
Modified:
  stable/6/sys/fs/devfs/devfs_vnops.c
  stable/6/sys/kern/kern_event.c
  stable/6/sys/kern/kern_exec.c
  stable/6/sys/kern/kern_fork.c
  stable/6/sys/kern/sys_pipe.c
  stable/6/sys/sys/event.h
  stable/6/sys/sys/pipe.h
  stable/7/sys/kern/kern_exec.c

Modified: releng/6.3/UPDATING
==
--- releng/6.3/UPDATING Fri Oct  2 17:58:47 2009(r197714)
+++ releng/6.3/UPDATING Fri Oct  2 18:09:56 2009(r197715)
@@ -8,6 +8,14 @@ Items affecting the ports and packages s
 /usr/ports/UPDATING.  Please read that file before running
 portupgrade.
 
+20091002:  p13 FreeBSD-SA-09:13.pipe, FreeBSD-SA-09:14.devfs,
+   FreeBSD-EN-09:05.null
+   Fix kqueue pipe race conditions. [SA-09:13]
+
+   Fix devfs / VFS NULL pointer race condition. [SA-09:14]
+
+   Add no zero mapping feature. [EN-09:05]
+
 20090729:  p12 FreeBSD-SA-09:12.bind
Fix BIND named(8) dynamic update message remote DoS.
 

Modified: releng/6.3/sys/conf/newvers.sh
==
--- releng/6.3/sys/conf/newvers.sh  Fri Oct  2 17:58:47 2009
(r197714)
+++ releng/6.3/sys/conf/newvers.sh  Fri Oct  2 18:09:56 2009
(r197715)
@@ -32,7 +32,7 @@
 
 TYPE=FreeBSD
 REVISION=6.3
-BRANCH=RELEASE-p12
+BRANCH=RELEASE-p13
 if [ X${BRANCH_OVERRIDE} != X ]; then
BRANCH=${BRANCH_OVERRIDE}
 fi

Modified: releng/6.3/sys/fs/devfs/devfs_vnops.c
==
--- releng/6.3/sys/fs/devfs/devfs_vnops.c   Fri Oct  2 17:58:47 2009
(r197714)
+++ releng/6.3/sys/fs/devfs/devfs_vnops.c   Fri Oct  2 18:09:56 2009
(r197715)
@@ -759,6 +759,9 @@ devfs_open(struct vop_open_args *ap)
 
VOP_UNLOCK(vp, 0, td);
 
+   if (ap-a_fdidx = 0)
+   ap-a_td-td_proc-p_fd-fd_ofiles[ap-a_fdidx]-f_vnode = vp;
+
if(!(dsw-d_flags  D_NEEDGIANT)) {
DROP_GIANT();
if (dsw-d_fdopen != NULL)

Modified: releng/6.3/sys/kern/kern_event.c
==
--- releng/6.3/sys/kern/kern_event.cFri Oct  2 17:58:47 2009
(r197714)
+++ releng/6.3/sys/kern/kern_event.cFri Oct  2 18:09:56 2009
(r197715)
@@ -392,30 +392,82 @@ filt_proc(struct knote *kn, long hint)
return (1);
}
 
-   /*
-* process forked, and user wants to track the new process,
-* so attach a new knote to it, and immediately report an
-* event with the parent's pid.
-*/
-   if ((event == NOTE_FORK)  (kn-kn_sfflags  NOTE_TRACK)) {
-   struct kevent kev;
-   int error;
+   return (kn-kn_fflags != 0);
+}
+
+/*
+ * Called when the process forked. It mostly does the same as the
+ * knote(), activating all knotes registered to be activated when the
+ * process forked. Additionally, for each knote attached to the
+ * parent, check whether user wants to track the new process. If so
+ * attach a new knote to it, and immediately report an event with the
+ * child's pid.
+ */
+void
+knote_fork(struct knlist *list, int pid)
+{
+   struct kqueue *kq;
+   struct knote *kn;
+   struct kevent kev

svn commit: r197715 - releng/6.3 releng/6.3/sys/conf releng/6.3/sys/fs/devfs releng/6.3/sys/kern releng/6.3/sys/sys releng/6.4 releng/6.4/sys/conf releng/6.4/sys/fs/devfs releng/6.4/sys/kern releng...

2009-10-02 Thread Simon L. Nielsen
Author: simon
Date: Fri Oct  2 18:09:56 2009
New Revision: 197715
URL: http://svn.freebsd.org/changeset/base/197715

Log:
  MFC r197711 (partial) to 6.x and 7.x:
  
  - Add no zero mapping feature, disabled by default. [EN-09:05]
  
  MFC 178913,178914,179242,179243,180336,180340 to 6.x:
  
  - Fix kqueue pipe race conditions. [SA-09:13]
  
  MFC r192301 to 7.x; 6.x has slightly different fix:
  
  - Fix devfs / VFS NULL pointer race condition. [SA-09:14]
  
  Security: FreeBSD-SA-09:13.pipe
  Security: FreeBSD-SA-09:14.devfs
  Errata:   FreeBSD-EN-09:05.null
  Submitted by: kib [SA-09:13] [SA-09:14]
  Submitted by: bz [EN-09:05]
  In collaboration with:jhb, kib, alc [EN-09:05]
  Approved by:  so (simon)

Modified:
  stable/6/sys/fs/devfs/devfs_vnops.c
  stable/6/sys/kern/kern_event.c
  stable/6/sys/kern/kern_exec.c
  stable/6/sys/kern/kern_fork.c
  stable/6/sys/kern/sys_pipe.c
  stable/6/sys/sys/event.h
  stable/6/sys/sys/pipe.h

Changes in other areas also in this revision:
Modified:
  releng/6.3/UPDATING
  releng/6.3/sys/conf/newvers.sh
  releng/6.3/sys/fs/devfs/devfs_vnops.c
  releng/6.3/sys/kern/kern_event.c
  releng/6.3/sys/kern/kern_exec.c
  releng/6.3/sys/kern/kern_fork.c
  releng/6.3/sys/kern/sys_pipe.c
  releng/6.3/sys/sys/event.h
  releng/6.3/sys/sys/pipe.h
  releng/6.4/UPDATING
  releng/6.4/sys/conf/newvers.sh
  releng/6.4/sys/fs/devfs/devfs_vnops.c
  releng/6.4/sys/kern/kern_event.c
  releng/6.4/sys/kern/kern_exec.c
  releng/6.4/sys/kern/kern_fork.c
  releng/6.4/sys/kern/sys_pipe.c
  releng/6.4/sys/sys/event.h
  releng/6.4/sys/sys/pipe.h
  releng/7.1/UPDATING
  releng/7.1/sys/conf/newvers.sh
  releng/7.1/sys/fs/devfs/devfs_vnops.c
  releng/7.1/sys/kern/kern_exec.c
  releng/7.2/UPDATING
  releng/7.2/sys/conf/newvers.sh
  releng/7.2/sys/fs/devfs/devfs_vnops.c
  releng/7.2/sys/kern/kern_exec.c
  stable/7/sys/kern/kern_exec.c

Modified: stable/6/sys/fs/devfs/devfs_vnops.c
==
--- stable/6/sys/fs/devfs/devfs_vnops.c Fri Oct  2 17:58:47 2009
(r197714)
+++ stable/6/sys/fs/devfs/devfs_vnops.c Fri Oct  2 18:09:56 2009
(r197715)
@@ -759,6 +759,9 @@ devfs_open(struct vop_open_args *ap)
 
VOP_UNLOCK(vp, 0, td);
 
+   if (ap-a_fdidx = 0)
+   ap-a_td-td_proc-p_fd-fd_ofiles[ap-a_fdidx]-f_vnode = vp;
+
if(!(dsw-d_flags  D_NEEDGIANT)) {
DROP_GIANT();
if (dsw-d_fdopen != NULL)

Modified: stable/6/sys/kern/kern_event.c
==
--- stable/6/sys/kern/kern_event.c  Fri Oct  2 17:58:47 2009
(r197714)
+++ stable/6/sys/kern/kern_event.c  Fri Oct  2 18:09:56 2009
(r197715)
@@ -392,30 +392,82 @@ filt_proc(struct knote *kn, long hint)
return (1);
}
 
-   /*
-* process forked, and user wants to track the new process,
-* so attach a new knote to it, and immediately report an
-* event with the parent's pid.
-*/
-   if ((event == NOTE_FORK)  (kn-kn_sfflags  NOTE_TRACK)) {
-   struct kevent kev;
-   int error;
+   return (kn-kn_fflags != 0);
+}
+
+/*
+ * Called when the process forked. It mostly does the same as the
+ * knote(), activating all knotes registered to be activated when the
+ * process forked. Additionally, for each knote attached to the
+ * parent, check whether user wants to track the new process. If so
+ * attach a new knote to it, and immediately report an event with the
+ * child's pid.
+ */
+void
+knote_fork(struct knlist *list, int pid)
+{
+   struct kqueue *kq;
+   struct knote *kn;
+   struct kevent kev;
+   int error;
+
+   if (list == NULL)
+   return;
+   list-kl_lock(list-kl_lockarg);
+
+   SLIST_FOREACH(kn, list-kl_list, kn_selnext) {
+   if ((kn-kn_status  KN_INFLUX) == KN_INFLUX)
+   continue;
+   kq = kn-kn_kq;
+   KQ_LOCK(kq);
+   if ((kn-kn_status  KN_INFLUX) == KN_INFLUX) {
+   KQ_UNLOCK(kq);
+   continue;
+   }
 
/*
-* register knote with new process.
+* The same as knote(), activate the event.
 */
-   kev.ident = hint  NOTE_PDATAMASK;  /* pid */
+   if ((kn-kn_sfflags  NOTE_TRACK) == 0) {
+   kn-kn_status |= KN_HASKQLOCK;
+   if (kn-kn_fop-f_event(kn, NOTE_FORK | pid))
+   KNOTE_ACTIVATE(kn, 1);
+   kn-kn_status = ~KN_HASKQLOCK;
+   KQ_UNLOCK(kq);
+   continue;
+   }
+
+   /*
+* The NOTE_TRACK case. In addition to the activation
+* of the event, we need to register new event to
+* 

Re: svn commit: r197715 - releng/6.3 releng/6.3/sys/conf releng/6.3/sys/fs/devfs releng/6.3/sys/kern releng/6.3/sys/sys releng/6.4 releng/6.4/sys/conf releng/6.4/sys/fs/devfs releng/6.4/sys/kern relen

2009-10-02 Thread Simon L. Nielsen
On 2009.10.02 18:09:56 +, Simon L. Nielsen wrote:
 Author: simon
 Date: Fri Oct  2 18:09:56 2009
 New Revision: 197715
 URL: http://svn.freebsd.org/changeset/base/197715
 
 Log:
   MFC r197711 (partial) to 6.x and 7.x:
   
   - Add no zero mapping feature, disabled by default. [EN-09:05]
   
   MFC 178913,178914,179242,179243,180336,180340 to 6.x:
   
   - Fix kqueue pipe race conditions. [SA-09:13]
   
   MFC r192301 to 7.x; 6.x has slightly different fix:
   
   - Fix devfs / VFS NULL pointer race condition. [SA-09:14]
   
   Security:   FreeBSD-SA-09:13.pipe
   Security:   FreeBSD-SA-09:14.devfs
   Errata: FreeBSD-EN-09:05.null
   Submitted by:   kib [SA-09:13] [SA-09:14]
   Submitted by:   bz [EN-09:05]
   In collaboration with:  jhb, kib, alc [EN-09:05]
   Approved by:so (simon)

Just FYI, I plan to fix up the merge info for the stable/[67]
branches, but I probably won't get to it until Saturday or Sunday.

-- 
Simon L. Nielsen
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197716 - in stable/8/sys: . amd64/include/xen cddl/contrib/opensolaris contrib/dev/acpica contrib/pf dev/xen/xenpci sparc64/conf

2009-10-02 Thread Marius Strobl
Author: marius
Date: Fri Oct  2 18:33:40 2009
New Revision: 197716
URL: http://svn.freebsd.org/changeset/base/197716

Log:
  MFC: r197490
  
  Merge r194204 from amd64/i386:
  
  Enable PRINTF_BUFR_SIZE by default.
  
  PR:   139134
  Approved by:  re (kib)

Modified:
  stable/8/sys/   (props changed)
  stable/8/sys/amd64/include/xen/   (props changed)
  stable/8/sys/cddl/contrib/opensolaris/   (props changed)
  stable/8/sys/contrib/dev/acpica/   (props changed)
  stable/8/sys/contrib/pf/   (props changed)
  stable/8/sys/dev/xen/xenpci/   (props changed)
  stable/8/sys/sparc64/conf/GENERIC

Modified: stable/8/sys/sparc64/conf/GENERIC
==
--- stable/8/sys/sparc64/conf/GENERIC   Fri Oct  2 18:09:56 2009
(r197715)
+++ stable/8/sys/sparc64/conf/GENERIC   Fri Oct  2 18:33:40 2009
(r197716)
@@ -68,6 +68,7 @@ options   SYSVMSG # SYSV-style message 
 optionsSYSVSEM # SYSV-style semaphores
 optionsP1003_1B_SEMAPHORES # POSIX-style semaphores
 options_KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time 
extensions
+optionsPRINTF_BUFR_SIZE=128# Prevent printf output being 
interspersed.
 optionsHWPMC_HOOKS # Necessary kernel hooks for hwpmc(4)
 optionsAUDIT   # Security event auditing
 optionsMAC # TrustedBSD MAC Framework
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r197715 - releng/6.3 releng/6.3/sys/conf releng/6.3/sys/fs/devfs releng/6.3/sys/kern releng/6.3/sys/sys releng/6.4 releng/6.4/sys/conf releng/6.4/sys/fs/devfs releng/6.4/sys/kern relen

2009-10-02 Thread Simon L. Nielsen
On 2009.10.02 18:09:56 +, Simon L. Nielsen wrote:
 Author: simon
 Date: Fri Oct  2 18:09:56 2009
 New Revision: 197715
 URL: http://svn.freebsd.org/changeset/base/197715
 
 Log:
   MFC r197711 (partial) to 6.x and 7.x:
   
   - Add no zero mapping feature, disabled by default. [EN-09:05]
   
   MFC 178913,178914,179242,179243,180336,180340 to 6.x:
   
   - Fix kqueue pipe race conditions. [SA-09:13]
   
   MFC r192301 to 7.x; 6.x has slightly different fix:
   
   - Fix devfs / VFS NULL pointer race condition. [SA-09:14]
   
   Security:   FreeBSD-SA-09:13.pipe
   Security:   FreeBSD-SA-09:14.devfs
   Errata: FreeBSD-EN-09:05.null
   Submitted by:   kib [SA-09:13] [SA-09:14]
   Submitted by:   bz [EN-09:05]
   In collaboration with:  jhb, kib, alc [EN-09:05]
   Approved by:so (simon)

Oh, and I initially forgot:

Tested by:  pho

(and that was testing both reproducing the problems in the first place
and helping in testing that the patches actually closes the races
etc. - so thanks to pho as well as the other people mentioned above!
:-) )

-- 
Simon L. Nielsen
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197719 - head/etc/rc.d

2009-10-02 Thread Hiroki Sato
Author: hrs
Date: Fri Oct  2 20:19:53 2009
New Revision: 197719
URL: http://svn.freebsd.org/changeset/base/197719

Log:
  - Enable an afexists() check only when no AF argument is specified.
  - Simplify helper functions.
  
  Discussed with:   ume

Modified:
  head/etc/rc.d/routing

Modified: head/etc/rc.d/routing
==
--- head/etc/rc.d/routing   Fri Oct  2 20:15:47 2009(r197718)
+++ head/etc/rc.d/routing   Fri Oct  2 20:19:53 2009(r197719)
@@ -13,26 +13,80 @@
 . /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
+
+afcheck()
+{
+   case $_af in
+   |inet|inet6|ipx|atm)
+   ;;
+   *)
+   err 1 Unsupported address family: $_af.
+   ;;
+   esac
+}
 
 routing_start()
 {
-   static_start $@
-   options_start $@
+   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 '.'
 }
 
 routing_stop()
 {
-   local _af
+   local _af _a
+   _af=$1
 
-   static_stop $@
-   for _af in inet inet6; do
-   afexists ${_af}  eval routing_stop_${_af}
-   done
+   afcheck
+
+   case $_af in
+   inet|inet6|ipx|atm)
+   eval static_${_af} delete
+   eval routing_stop_${_af}
+   ;;
+   )
+   for _a in inet inet6 ipx atm; do
+   afexists $_a || continue
+   eval static_${_a} delete
+   eval routing_stop_${_a}
+   done
+   ;;
+   esac
+}
+
+setroutes()
+{
+   case $1 in
+   static)
+   static_$2 add
+   ;;
+   options)
+   options_$2
+   ;;
+   doall)
+   static_$2 add
+   options_$2
+   ;;
+   esac
 }
 
 routing_stop_inet()
@@ -50,45 +104,14 @@ routing_stop_inet6()
done
 }
 
-static_start()
-{
-   local _af
-   _af=$1
-
-   case ${_af} in
-   inet|inet6|atm)
-   do_static add ${_af}
-   ;;
-   )
-   do_static add inet inet6 atm
-   ;;
-   esac
-}
-
-static_stop()
+routing_stop_atm()
 {
-   local _af
-   _af=$1
-
-   case ${_af} in
-   inet|inet6|atm)
-   do_static delete ${_af}
-   ;;
-   )
-   do_static delete inet inet6 atm
-   ;;
-   esac
+   return 0
 }
 
-do_static()
+routing_stop_ipx()
 {
-   local _af _action
-   _action=$1
-
-   shift
-   for _af in $@; do
-   afexists ${_af}  eval static_${_af} ${_action}
-   done
+   return 0
 }
 
 static_inet()
@@ -233,6 +256,10 @@ static_atm()
fi
 }
 
+static_ipx()
+{
+}
+
 _ropts_initdone=
 ropts_init()
 {
@@ -242,16 +269,6 @@ ropts_init()
fi
 }
 
-options_start()
-{
-   local _af
-
-   for _af in inet inet6 ipx; do
-   afexists ${_af}  eval options_${_af}
-   done
-[ -n ${_ropts_initdone} ]  echo '.'
-}
-
 options_inet()
 {
if checkyesno icmp_bmcastecho; then
@@ -322,6 +339,10 @@ options_inet6()
fi
 }
 
+options_atm()
+{
+}
+
 options_ipx()
 {
if checkyesno ipxgateway_enable; then
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r197715 - releng/6.3 releng/6.3/sys/conf releng/6.3/sys/fs/devfs releng/6.3/sys/kern releng/6.3/sys/sys releng/6.4 releng/6.4/sys/conf releng/6.4/sys/fs/devfs releng/6.4/sys/kern rel

2009-10-02 Thread Oliver Pinter
Hi!

And what's the status of these exploits fix:
http://hup.hu/cikkek/200909/freebsd_6.4_es_7.2_local_root_0day-ek

?

On 10/2/09, Simon L. Nielsen si...@freebsd.org wrote:
 On 2009.10.02 18:09:56 +, Simon L. Nielsen wrote:
 Author: simon
 Date: Fri Oct  2 18:09:56 2009
 New Revision: 197715
 URL: http://svn.freebsd.org/changeset/base/197715

 Log:
   MFC r197711 (partial) to 6.x and 7.x:

   - Add no zero mapping feature, disabled by default. [EN-09:05]

   MFC 178913,178914,179242,179243,180336,180340 to 6.x:

   - Fix kqueue pipe race conditions. [SA-09:13]

   MFC r192301 to 7.x; 6.x has slightly different fix:

   - Fix devfs / VFS NULL pointer race condition. [SA-09:14]

   Security:  FreeBSD-SA-09:13.pipe
   Security:  FreeBSD-SA-09:14.devfs
   Errata:FreeBSD-EN-09:05.null
   Submitted by:  kib [SA-09:13] [SA-09:14]
   Submitted by:  bz [EN-09:05]
   In collaboration with: jhb, kib, alc [EN-09:05]
   Approved by:   so (simon)

 Oh, and I initially forgot:

 Tested by:pho

 (and that was testing both reproducing the problems in the first place
 and helping in testing that the patches actually closes the races
 etc. - so thanks to pho as well as the other people mentioned above!
 :-) )

 --
 Simon L. Nielsen
 ___
 svn-src-sta...@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/svn-src-stable
 To unsubscribe, send any mail to svn-src-stable-unsubscr...@freebsd.org

___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r197715 - releng/6.3 releng/6.3/sys/conf releng/6.3/sys/fs/devfs releng/6.3/sys/kern releng/6.3/sys/sys releng/6.4 releng/6.4/sys/conf releng/6.4/sys/fs/devfs releng/6.4/sys/kern relen

2009-10-02 Thread Remko Lodder


Please wait for the advisories to popup and see whether these match  
the question you have.


Thanks,
Remko

On Oct 2, 2009, at 10:31 PM, Oliver Pinter wrote:


Hi!

And what's the status of these exploits fix:
http://hup.hu/cikkek/200909/freebsd_6.4_es_7.2_local_root_0day-ek

?

On 10/2/09, Simon L. Nielsen si...@freebsd.org wrote:

On 2009.10.02 18:09:56 +, Simon L. Nielsen wrote:

Author: simon
Date: Fri Oct  2 18:09:56 2009
New Revision: 197715
URL: http://svn.freebsd.org/changeset/base/197715

Log:
 MFC r197711 (partial) to 6.x and 7.x:

 - Add no zero mapping feature, disabled by default. [EN-09:05]

 MFC 178913,178914,179242,179243,180336,180340 to 6.x:

 - Fix kqueue pipe race conditions. [SA-09:13]

 MFC r192301 to 7.x; 6.x has slightly different fix:

 - Fix devfs / VFS NULL pointer race condition. [SA-09:14]

 Security:  FreeBSD-SA-09:13.pipe
 Security:  FreeBSD-SA-09:14.devfs
 Errata:FreeBSD-EN-09:05.null
 Submitted by:  kib [SA-09:13] [SA-09:14]
 Submitted by:  bz [EN-09:05]
 In collaboration with: jhb, kib, alc [EN-09:05]
 Approved by:   so (simon)


Oh, and I initially forgot:

Tested by:  pho

(and that was testing both reproducing the problems in the first  
place

and helping in testing that the patches actually closes the races
etc. - so thanks to pho as well as the other people mentioned above!
:-) )

--
Simon L. Nielsen
___
svn-src-sta...@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-stable
To unsubscribe, send any mail to svn-src-stable-unsubscr...@freebsd.org 





--
/\   Best regards,| re...@freebsd.org
\ /   Remko Lodder  | re...@efnet
Xhttp://www.evilcoder.org/|
/ \   ASCII Ribbon Campaign| Against HTML Mail and News

___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r197715 - releng/6.3 releng/6.3/sys/conf releng/6.3/sys/fs/devfs releng/6.3/sys/kern releng/6.3/sys/sys releng/6.4 releng/6.4/sys/conf releng/6.4/sys/fs/devfs releng/6.4/sys/kern rel

2009-10-02 Thread Oliver Pinter
After I send the previous mail, see the advisories.

On 10/2/09, Remko Lodder re...@elvandar.org wrote:

 Please wait for the advisories to popup and see whether these match
 the question you have.

 Thanks,
 Remko

 On Oct 2, 2009, at 10:31 PM, Oliver Pinter wrote:

 Hi!

 And what's the status of these exploits fix:
 http://hup.hu/cikkek/200909/freebsd_6.4_es_7.2_local_root_0day-ek

 ?

 On 10/2/09, Simon L. Nielsen si...@freebsd.org wrote:
 On 2009.10.02 18:09:56 +, Simon L. Nielsen wrote:
 Author: simon
 Date: Fri Oct  2 18:09:56 2009
 New Revision: 197715
 URL: http://svn.freebsd.org/changeset/base/197715

 Log:
  MFC r197711 (partial) to 6.x and 7.x:

  - Add no zero mapping feature, disabled by default. [EN-09:05]

  MFC 178913,178914,179242,179243,180336,180340 to 6.x:

  - Fix kqueue pipe race conditions. [SA-09:13]

  MFC r192301 to 7.x; 6.x has slightly different fix:

  - Fix devfs / VFS NULL pointer race condition. [SA-09:14]

  Security: FreeBSD-SA-09:13.pipe
  Security: FreeBSD-SA-09:14.devfs
  Errata:   FreeBSD-EN-09:05.null
  Submitted by: kib [SA-09:13] [SA-09:14]
  Submitted by: bz [EN-09:05]
  In collaboration with:jhb, kib, alc [EN-09:05]
  Approved by:  so (simon)

 Oh, and I initially forgot:

 Tested by:  pho

 (and that was testing both reproducing the problems in the first
 place
 and helping in testing that the patches actually closes the races
 etc. - so thanks to pho as well as the other people mentioned above!
 :-) )

 --
 Simon L. Nielsen
 ___
 svn-src-sta...@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/svn-src-stable
 To unsubscribe, send any mail to svn-src-stable-unsubscr...@freebsd.org
 


 --
 /\   Best regards,| re...@freebsd.org
 \ /   Remko Lodder  | re...@efnet
 Xhttp://www.evilcoder.org/|
 / \   ASCII Ribbon Campaign| Against HTML Mail and News


___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r197698 - head/etc/rc.d

2009-10-02 Thread Anonymous
Hiroki Sato h...@freebsd.org writes:

 Modified: head/etc/rc.d/netoptions
[...]
  
   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}'
 ^
Here.

   ${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}'

Here.

   ${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}'
   ^^
And here. These are *single* quotes, no parameter expansion can occur.
I keep getting following in `dmesg -a'

Additional TCP/IP options:
 drop SYN+FIN packets=${tcp_drop_synfin}
.
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197720 - head/sys/kern

2009-10-02 Thread Robert Watson
Author: rwatson
Date: Fri Oct  2 21:31:15 2009
New Revision: 197720
URL: http://svn.freebsd.org/changeset/base/197720

Log:
  Don't comment on stream socket handling in sosend_dgram, since that's
  not handled.
  
  MFC after:3 weeks

Modified:
  head/sys/kern/uipc_socket.c

Modified: head/sys/kern/uipc_socket.c
==
--- head/sys/kern/uipc_socket.c Fri Oct  2 20:19:53 2009(r197719)
+++ head/sys/kern/uipc_socket.c Fri Oct  2 21:31:15 2009(r197720)
@@ -970,9 +970,6 @@ sosend_dgram(struct socket *so, struct s
 * must use a signed comparison of space and resid.  On the other
 * hand, a negative resid causes us to loop sending 0-length
 * segments to the protocol.
-*
-* Also check to make sure that MSG_EOR isn't used on SOCK_STREAM
-* type sockets since that's an error.
 */
if (resid  0) {
error = EINVAL;
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197721 - head/sys/dev/uart

2009-10-02 Thread Marcel Moolenaar
Author: marcel
Date: Fri Oct  2 22:30:44 2009
New Revision: 197721
URL: http://svn.freebsd.org/changeset/base/197721

Log:
  Fix RTS/CTS flow control, broken by the TTY overhaul. The new TTY
  interface is fairly simple WRT dealing with flow control, but
  needed 2 new RX buffer functions with get-char-from-buf separated
  from advance-buf-pointer so that the pointer could be advanced
  only when ttydisc_rint() succeeded.
  
  MFC after:1 week

Modified:
  head/sys/dev/uart/uart_bus.h
  head/sys/dev/uart/uart_core.c
  head/sys/dev/uart/uart_tty.c

Modified: head/sys/dev/uart/uart_bus.h
==
--- head/sys/dev/uart/uart_bus.hFri Oct  2 21:31:15 2009
(r197720)
+++ head/sys/dev/uart/uart_bus.hFri Oct  2 22:30:44 2009
(r197721)
@@ -96,6 +96,7 @@ struct uart_softc {
int sc_opened:1;/* This UART is open for business. */
int sc_polled:1;/* This UART has no interrupts. */
int sc_txbusy:1;/* This UART is transmitting. */
+   int sc_isquelch:1;  /* This UART has input squelched. */
 
struct uart_devinfo *sc_sysdev; /* System device (or NULL). */
 
@@ -141,6 +142,8 @@ int uart_bus_ipend(device_t dev);
 int uart_bus_probe(device_t dev, int regshft, int rclk, int rid, int chan);
 int uart_bus_sysdev(device_t dev);
 
+void uart_sched_softih(struct uart_softc *, uint32_t);
+
 int uart_tty_attach(struct uart_softc *);
 int uart_tty_detach(struct uart_softc *);
 void uart_tty_intr(void *arg);
@@ -175,6 +178,28 @@ uart_rx_get(struct uart_softc *sc)
 }
 
 static __inline int
+uart_rx_next(struct uart_softc *sc)
+{
+   int ptr;
+
+   ptr = sc-sc_rxget;
+   if (ptr == sc-sc_rxput)
+   return (-1);
+   ptr += 1;
+   sc-sc_rxget = (ptr  sc-sc_rxbufsz) ? ptr : 0;
+   return (0);
+}
+
+static __inline int
+uart_rx_peek(struct uart_softc *sc)
+{
+   int ptr;
+
+   ptr = sc-sc_rxget;
+   return ((ptr == sc-sc_rxput) ? -1 : sc-sc_rxbuf[ptr]);
+}
+
+static __inline int
 uart_rx_put(struct uart_softc *sc, int xc)
 {
int ptr;

Modified: head/sys/dev/uart/uart_core.c
==
--- head/sys/dev/uart/uart_core.c   Fri Oct  2 21:31:15 2009
(r197720)
+++ head/sys/dev/uart/uart_core.c   Fri Oct  2 22:30:44 2009
(r197721)
@@ -91,7 +91,7 @@ uart_getrange(struct uart_class *uc)
  * Schedule a soft interrupt. We do this on the 0 to !0 transition
  * of the TTY pending interrupt status.
  */
-static void
+void
 uart_sched_softih(struct uart_softc *sc, uint32_t ipend)
 {
uint32_t new, old;

Modified: head/sys/dev/uart/uart_tty.c
==
--- head/sys/dev/uart/uart_tty.cFri Oct  2 21:31:15 2009
(r197720)
+++ head/sys/dev/uart/uart_tty.cFri Oct  2 22:30:44 2009
(r197721)
@@ -166,27 +166,6 @@ uart_tty_outwakeup(struct tty *tp)
if (sc == NULL || sc-sc_leaving)
return;
 
-   /*
-* Handle input flow control. Note that if we have hardware support,
-* we don't do anything here. We continue to receive until our buffer
-* is full. At that time we cannot empty the UART itself and it will
-* de-assert RTS for us. In that situation we're completely stuffed.
-* Without hardware support, we need to toggle RTS ourselves.
-*/
-   if ((tp-t_termios.c_cflag  CRTS_IFLOW)  !sc-sc_hwiflow) {
-#if 0
-   /*if ((tp-t_state  TS_TBLOCK) 
-   (sc-sc_hwsig  SER_RTS))
-   UART_SETSIG(sc, SER_DRTS);
-   else */ if (/*!(tp-t_state  TS_TBLOCK) */
-   !(sc-sc_hwsig  SER_RTS))
-   UART_SETSIG(sc, SER_DRTS|SER_RTS);
-#endif
-   /* XXX: we should use inwakeup to implement this! */
-   if (!(sc-sc_hwsig  SER_RTS))
-   UART_SETSIG(sc, SER_DRTS|SER_RTS);
-   }
-
if (sc-sc_txbusy)
return;
 
@@ -195,6 +174,23 @@ uart_tty_outwakeup(struct tty *tp)
UART_TRANSMIT(sc);
 }
 
+static void
+uart_tty_inwakeup(struct tty *tp)
+{
+   struct uart_softc *sc;
+
+   sc = tty_softc(tp);
+   if (sc == NULL || sc-sc_leaving)
+   return;
+
+   if (sc-sc_isquelch) {
+   if ((tp-t_termios.c_cflag  CRTS_IFLOW)  !sc-sc_hwiflow)
+   UART_SETSIG(sc, SER_DRTS|SER_RTS);
+   sc-sc_isquelch = 0;
+   uart_sched_softih(sc, SER_INT_RXREADY);
+   }
+}
+
 static int
 uart_tty_ioctl(struct tty *tp, u_long cmd, caddr_t data, struct thread *td)
 {
@@ -252,9 +248,9 @@ uart_tty_param(struct tty *tp, struct te
UART_SETSIG(sc, SER_DDTR | SER_DTR);
/* Set input flow control state. */
if (!sc-sc_hwiflow) {

svn commit: r197724 - head/share/man/man4

2009-10-02 Thread Weongyo Jeong
Author: weongyo
Date: Sat Oct  3 02:28:28 2009
New Revision: 197724
URL: http://svn.freebsd.org/changeset/base/197724

Log:
  TRENDnet TEW-424UB has multiple revisions so clarify zyd(4) man page and
  adds a device to urtw(4).  The revision informations are as follows:
  
  rev A   ZD1211
  V2  SiS163U
  V2.1R   SiS163U
  V3.xR   RTL8187B
  
  and bump date.
  
  Obtained from:OpenBSD
  Reported by:  Albert Shih Albert.Shih at obspm.fr

Modified:
  head/share/man/man4/urtw.4
  head/share/man/man4/zyd.4

Modified: head/share/man/man4/urtw.4
==
--- head/share/man/man4/urtw.4  Fri Oct  2 23:48:42 2009(r197723)
+++ head/share/man/man4/urtw.4  Sat Oct  3 02:28:28 2009(r197724)
@@ -24,7 +24,7 @@
 .\
 .\ $FreeBSD$
 .\
-.Dd July 25, 2009
+.Dd October 2, 2009
 .Dt URTW 4
 .Os
 .Sh NAME
@@ -73,6 +73,7 @@ driver supports Realtek RTL8187B/L based
 .It Netgear WG111v2   RTL8225 USB
 .It Safehome WLG-1500SMA5 RTL8225 USB
 .It Shuttle XPC Accessory PN20RTL8225 USB
+.It TRENDnet TEW-424UB V3.xR  RTL8225 USB
 .El
 .Sh EXAMPLES
 Join an existing BSS network (i.e., connect to an access point):

Modified: head/share/man/man4/zyd.4
==
--- head/share/man/man4/zyd.4   Fri Oct  2 23:48:42 2009(r197723)
+++ head/share/man/man4/zyd.4   Sat Oct  3 02:28:28 2009(r197724)
@@ -32,7 +32,7 @@
 .\ ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
 .\ THE POSSIBILITY OF SUCH DAMAGE.
 .\
-.Dd November 1, 2008
+.Dd October 2, 2009
 .Dt ZYD 4
 .Os
 .Sh NAME
@@ -113,7 +113,7 @@ driver:
 .It Sweex wireless USB 54 Mbps
 .It Tekram/Siemens USB adapter
 .It Telegent TG54USB
-.It Trendnet TEW-424UB
+.It Trendnet TEW-424UB rev A
 .It Trendnet TEW-429UB
 .It TwinMOS G240
 .It Unicorn WL-54G
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


svn commit: r197725 - head/usr.bin/whois

2009-10-02 Thread Doug Barton
Author: dougb
Date: Sat Oct  3 02:37:21 2009
New Revision: 197725
URL: http://svn.freebsd.org/changeset/base/197725

Log:
  The 6bone was decommissioned on 6/6/06, so remove references to it.

Modified:
  head/usr.bin/whois/whois.1
  head/usr.bin/whois/whois.c

Modified: head/usr.bin/whois/whois.1
==
--- head/usr.bin/whois/whois.1  Sat Oct  3 02:28:28 2009(r197724)
+++ head/usr.bin/whois/whois.1  Sat Oct  3 02:37:21 2009(r197725)
@@ -32,7 +32,7 @@
 .\ From: @(#)whois.1  8.1 (Berkeley) 6/6/93
 .\ $FreeBSD$
 .\
-.Dd January 23, 2006
+.Dd October 2, 2009
 .Dt WHOIS 1
 .Os
 .Sh NAME
@@ -40,7 +40,7 @@
 .Nd Internet domain name and network number directory service
 .Sh SYNOPSIS
 .Nm
-.Op Fl aAbdfgiIklmQrR6
+.Op Fl aAbdfgiIklmQrR
 .Op Fl c Ar country-code | Fl h Ar host
 .Op Fl p Ar port
 .Ar name ...
@@ -212,17 +212,14 @@ This option is deprecated; use the
 option with an argument of
 .Qq Li RU
 instead.
-.It Fl 6
-Use the IPv6 Resource Center
-.Pq Tn 6bone
-database.
-It contains network names and addresses for the IPv6 network.
-.El
 .Pp
 The operands specified to
 .Nm
 are treated independently and may be used
 as queries on different whois servers.
+.El
+.Sh EXIT STATUS
+.Ex -std
 .Sh EXAMPLES
 Most types of data, such as domain names and
 .Tn IP
@@ -255,15 +252,6 @@ but other
 .Tn TLDs
 can be queried by using a similar syntax.)
 .Pp
-The following example demonstrates how to obtain information about an
-.Tn IPv6
-address or hostname using the
-.Fl 6
-option, which directs the query to
-.Tn 6bone .
-.Pp
-.Dl whois -6 IPv6-IP-Address
-.Pp
 The following example demonstrates how to query
 a whois server using a non-standard port, where
 .Dq Li query-data

Modified: head/usr.bin/whois/whois.c
==
--- head/usr.bin/whois/whois.c  Sat Oct  3 02:28:28 2009(r197724)
+++ head/usr.bin/whois/whois.c  Sat Oct  3 02:37:21 2009(r197725)
@@ -72,7 +72,6 @@ __FBSDID($FreeBSD$);
 #definePNICHOSTwhois.apnic.net
 #defineMNICHOSTwhois.ra.net
 #defineQNICHOST_TAIL   .whois-servers.net
-#defineSNICHOSTwhois.6bone.net
 #defineBNICHOSTwhois.registro.br
 #define NORIDHOST  whois.norid.no
 #defineIANAHOSTwhois.iana.org
@@ -164,8 +163,10 @@ main(int argc, char *argv[])
warnx(-R is deprecated; use '-c ru' instead);
country = ru;
break;
+   /* Remove in FreeBSD 10 */
case '6':
-   host = SNICHOST;
+   errx(EX_USAGE,
+   -6 is deprecated; use -[aAflr] instead);
break;
case '?':
default:
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org


Re: svn commit: r197704 - in head/sys/arm: arm xscale

2009-10-02 Thread Tom Judge

Hi Rui,

This broke the arm i80219 build.

I hav attached a patch which fixes the build.

Tom

Rui Paulo wrote:

Author: rpaulo
Date: Fri Oct  2 11:10:05 2009
New Revision: 197704
URL: http://svn.freebsd.org/changeset/base/197704

Log:
  Remove performance counter headers. This code came from NetBSD, but our
  hardware perf. counter support is different, so we don't need these
  files.
  
  Reviewed by:	freebsd-arm (no comments)


Deleted:
  head/sys/arm/xscale/xscalereg.h
  head/sys/arm/xscale/xscalevar.h
Modified:
  head/sys/arm/arm/cpufunc.c

  


Index: arm/cpufunc.c
===
--- arm/cpufunc.c   (revision 197725)
+++ arm/cpufunc.c   (working copy)
@@ -1139,17 +1139,6 @@
if (cputype == CPU_ID_80321_400 || cputype == CPU_ID_80321_600 ||
cputype == CPU_ID_80321_400_B0 || cputype == CPU_ID_80321_600_B0 ||
cputype == CPU_ID_80219_400 || cputype == CPU_ID_80219_600) {
-   /*
-* Reset the Performance Monitoring Unit to a
-* pristine state:
-*  - CCNT, PMN0, PMN1 reset to 0
-*  - overflow indications cleared
-*  - all counters disabled
-*/
-   __asm __volatile(mcr p14, 0, %0, c0, c0, 0
-   :
-   : r (PMNC_P|PMNC_C|PMNC_PMN0_IF|PMNC_PMN1_IF|
-  PMNC_CC_IF));
 
cpufuncs = xscale_cpufuncs;
cpu_reset_needs_v4_MMU_disable = 1; /* XScale needs it */
Index: xscale/i80321/i80321_timer.c
===
--- xscale/i80321/i80321_timer.c(revision 197725)
+++ xscale/i80321/i80321_timer.c(working copy)
@@ -66,7 +66,7 @@
   definitions overrides the ones from i80321reg.h
   */
 #endif
-#include arm/xscale/xscalevar.h
+//#include arm/xscale/xscalevar.h
 
 #include opt_timer.h
 
___
svn-src-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org