Date: Wed, 7 Jan 2004 15:51:16 -0800 (PST) From: Sam Leffler <sam@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 44927 for review Message-ID: <200401072351.i07NpGYe096480@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=44927 Change 44927 by sam@sam_ebb on 2004/01/07 15:50:49 IFC Affected files ... .. //depot/projects/netperf+sockets/sys/alpha/alpha/mp_machdep.c#3 integrate .. //depot/projects/netperf+sockets/sys/amd64/include/profile.h#2 integrate .. //depot/projects/netperf+sockets/sys/compat/ndis/kern_ndis.c#10 integrate .. //depot/projects/netperf+sockets/sys/compat/ndis/subr_ndis.c#10 integrate .. //depot/projects/netperf+sockets/sys/compat/ndis/subr_ntoskrnl.c#7 integrate .. //depot/projects/netperf+sockets/sys/dev/ath/if_ath.c#8 integrate .. //depot/projects/netperf+sockets/sys/fs/procfs/procfs.c#3 integrate .. //depot/projects/netperf+sockets/sys/i386/isa/pcvt/pcvt_ext.c#2 integrate .. //depot/projects/netperf+sockets/sys/net/route.c#4 integrate .. //depot/projects/netperf+sockets/sys/netinet/ip_icmp.c#3 integrate .. //depot/projects/netperf+sockets/sys/netinet/tcp_input.c#5 integrate .. //depot/projects/netperf+sockets/sys/netinet/tcp_subr.c#6 integrate .. //depot/projects/netperf+sockets/sys/vm/vm_contig.c#2 integrate .. //depot/projects/netperf+sockets/sys/vm/vm_kern.c#5 integrate Differences ... ==== //depot/projects/netperf+sockets/sys/alpha/alpha/mp_machdep.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/alpha/alpha/mp_machdep.c,v 1.51 2003/12/03 14:57:25 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/mp_machdep.c,v 1.52 2004/01/07 23:00:20 jhb Exp $"); #include "opt_kstack_pages.h" @@ -351,7 +351,7 @@ boot_cpu_id = PCPU_GET(cpuid); KASSERT(boot_cpu_id == hwrpb->rpb_primary_cpu_id, ("cpu_mp_probe() called on non-primary CPU")); - all_cpus = 1 << boot_cpu_id; + all_cpus = PCPU_GET(cpumask); mp_ncpus = 1; @@ -413,12 +413,12 @@ all_cpus |= (1 << i); mp_ncpus++; } - PCPU_SET(other_cpus, all_cpus & ~(1 << boot_cpu_id)); + PCPU_SET(other_cpus, all_cpus & ~PCPU_GET(cpumask)); for (i = 0; i < hwrpb->rpb_pcs_cnt; i++) { if (i == boot_cpu_id) continue; - if (all_cpus & (1 << i)) + if (!CPU_ABSENT(i)) smp_start_secondary(i); } } @@ -476,7 +476,7 @@ void ipi_self(u_int64_t ipi) { - ipi_selected(1 << PCPU_GET(cpuid), ipi); + ipi_selected(PCPU_GET(cpumask), ipi); } /* @@ -489,7 +489,7 @@ u_int64_t ipi; int cpumask; - cpumask = 1 << PCPU_GET(cpuid); + cpumask = PCPU_GET(cpumask); CTR1(KTR_SMP, "smp_handle_ipi(), ipis=%lx", ipis); while (ipis) { ==== //depot/projects/netperf+sockets/sys/amd64/include/profile.h#2 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)profile.h 8.1 (Berkeley) 6/11/93 - * $FreeBSD: src/sys/amd64/include/profile.h,v 1.32 2003/06/02 00:28:39 obrien Exp $ + * $FreeBSD: src/sys/amd64/include/profile.h,v 1.33 2004/01/06 20:36:21 nectar Exp $ */ #ifndef _MACHINE_PROFILE_H_ @@ -148,7 +148,6 @@ #ifdef __GNUC__ void mcount(void) __asm(".mcount"); #endif -static void _mcount(uintfptr_t frompc, uintfptr_t selfpc); __END_DECLS #endif /* _KERNEL */ ==== //depot/projects/netperf+sockets/sys/compat/ndis/kern_ndis.c#10 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/compat/ndis/kern_ndis.c,v 1.22 2004/01/06 07:09:26 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/kern_ndis.c,v 1.23 2004/01/07 06:15:56 wpaul Exp $"); #include <sys/param.h> #include <sys/types.h> @@ -704,6 +704,8 @@ return(0); } +typedef void (*ndis_senddone_func)(ndis_handle, ndis_packet *, ndis_status); + int ndis_send_packets(arg, packets, cnt) void *arg; @@ -713,14 +715,14 @@ struct ndis_softc *sc; ndis_handle adapter; __stdcall ndis_sendmulti_handler sendfunc; - int i, idx; - struct ifnet *ifp; - struct mbuf *m; + __stdcall ndis_senddone_func senddonefunc; + int i; ndis_packet *p; sc = arg; adapter = sc->ndis_block.nmb_miniportadapterctx; sendfunc = sc->ndis_chars.nmc_sendmulti_func; + senddonefunc = sc->ndis_block.nmb_senddone_func; sendfunc(adapter, packets, cnt); for (i = 0; i < cnt; i++) { @@ -733,21 +735,7 @@ */ if (p == NULL || p->np_oob.npo_status == NDIS_STATUS_PENDING) continue; - idx = p->np_txidx; - m = p->np_m0; - ifp = &sc->arpcom.ac_if; - if (sc->ndis_sc) - bus_dmamap_unload(sc->ndis_ttag, sc->ndis_tmaps[idx]); - sc->ndis_txarray[idx] = NULL; - sc->ndis_txpending++; - m_freem(m); - ndis_free_packet(p); - if (p->np_oob.npo_status == NDIS_STATUS_SUCCESS) - ifp->if_opackets++; - else - ifp->if_oerrors++; - ifp->if_timer = 0; - ifp->if_flags &= ~IFF_OACTIVE; + senddonefunc(&sc->ndis_block, p, p->np_oob.npo_status); } return(0); ==== //depot/projects/netperf+sockets/sys/compat/ndis/subr_ndis.c#10 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ndis.c,v 1.27 2004/01/06 18:06:54 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ndis.c,v 1.30 2004/01/07 19:26:47 wpaul Exp $"); /* * This file implements a translation layer between the BSD networking @@ -72,6 +72,7 @@ #include <net/if_dl.h> #include <net/if_media.h> +#include <machine/atomic.h> #include <machine/bus_memio.h> #include <machine/bus_pio.h> #include <machine/bus.h> @@ -789,6 +790,7 @@ * The errorlog routine uses a variable argument list, so we * have to declare it this way. */ +#define ERRMSGLEN 512 static void ndis_syslog(ndis_handle adapter, ndis_error_code code, uint32_t numerrors, ...) @@ -798,12 +800,15 @@ int i, error; char *str = NULL, *ustr = NULL; uint16_t flags; + char msgbuf[ERRMSGLEN]; block = (ndis_miniport_block *)adapter; error = pe_get_message(block->nmb_img, code, &str, &i, &flags); if (error == 0 && flags & MESSAGE_RESOURCE_UNICODE) { - ndis_unicode_to_ascii((uint16_t *)str, i, &ustr); + ustr = msgbuf; + ndis_unicode_to_ascii((uint16_t *)str, + ((i / 2)) > (ERRMSGLEN - 1) ? ERRMSGLEN : i, &ustr); str = ustr; } device_printf (block->nmb_dev, "NDIS ERROR: %x (%s)\n", code, @@ -816,8 +821,6 @@ va_arg(ap, void *)); va_end(ap); - if (ustr != NULL) - free(ustr, M_DEVBUF); return; } @@ -1780,9 +1783,7 @@ ndis_interlock_inc(addend) uint32_t *addend; { - mtx_lock(&ndis_interlock); - *addend++; - mtx_unlock(&ndis_interlock); + atomic_add_long((u_long *)addend, 1); return(*addend); } @@ -1790,9 +1791,7 @@ ndis_interlock_dec(addend) uint32_t *addend; { - mtx_lock(&ndis_interlock); - *addend--; - mtx_unlock(&ndis_interlock); + atomic_subtract_long((u_long *)addend, 1); return(*addend); } @@ -2087,13 +2086,13 @@ { ndis_list_entry *flink; - mtx_lock_spin((struct mtx *)lock->nsl_spinlock); + mtx_lock((struct mtx *)lock->nsl_spinlock); flink = head->nle_flink; entry->nle_flink = flink; entry->nle_blink = head; flink->nle_blink = entry; head->nle_flink = entry; - mtx_unlock_spin((struct mtx *)lock->nsl_spinlock); + mtx_unlock((struct mtx *)lock->nsl_spinlock); return(flink); } @@ -2106,12 +2105,12 @@ ndis_list_entry *flink; ndis_list_entry *entry; - mtx_lock_spin((struct mtx *)lock->nsl_spinlock); + mtx_lock((struct mtx *)lock->nsl_spinlock); entry = head->nle_flink; flink = entry->nle_flink; head->nle_flink = flink; flink->nle_blink = head; - mtx_unlock_spin((struct mtx *)lock->nsl_spinlock); + mtx_unlock((struct mtx *)lock->nsl_spinlock); return(entry); } @@ -2124,13 +2123,13 @@ { ndis_list_entry *blink; - mtx_lock_spin((struct mtx *)lock->nsl_spinlock); + mtx_lock((struct mtx *)lock->nsl_spinlock); blink = head->nle_blink; entry->nle_flink = head; entry->nle_blink = blink; blink->nle_flink = entry; head->nle_blink = entry; - mtx_unlock_spin((struct mtx *)lock->nsl_spinlock); + mtx_unlock((struct mtx *)lock->nsl_spinlock); return(blink); } ==== //depot/projects/netperf+sockets/sys/compat/ndis/subr_ntoskrnl.c#7 (text+ko) ==== @@ -31,8 +31,9 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.8 2004/01/06 07:09:26 wpaul Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/ndis/subr_ntoskrnl.c,v 1.10 2004/01/07 20:31:51 wpaul Exp $"); +#include <sys/ctype.h> #include <sys/param.h> #include <sys/types.h> #include <sys/errno.h> @@ -44,6 +45,7 @@ #include <sys/callout.h> #include <sys/kernel.h> +#include <machine/atomic.h> #include <machine/clock.h> #include <machine/bus_memio.h> #include <machine/bus_pio.h> @@ -63,8 +65,8 @@ #define FUNC void(*)(void) -__stdcall static uint32_t ntoskrnl_unicode_equal(ndis_unicode_string *, - ndis_unicode_string *, uint32_t); +__stdcall static uint8_t ntoskrnl_unicode_equal(ndis_unicode_string *, + ndis_unicode_string *, uint8_t); __stdcall static void ntoskrnl_unicode_copy(ndis_unicode_string *, ndis_unicode_string *); __stdcall static uint32_t ntoskrnl_unicode_to_ansi(ndis_ansi_string *, @@ -139,29 +141,29 @@ return(0); } -__stdcall static uint32_t -ntoskrnl_unicode_equal(str1, str2, casesensitive) +__stdcall static uint8_t +ntoskrnl_unicode_equal(str1, str2, caseinsensitive) ndis_unicode_string *str1; ndis_unicode_string *str2; - uint32_t casesensitive; + uint8_t caseinsensitive; { - char *astr1 = NULL, *astr2 = NULL; - int rval = 1; + int i; - ndis_unicode_to_ascii(str1->nus_buf, str2->nus_len, &astr1); - ndis_unicode_to_ascii(str2->nus_buf, str2->nus_len, &astr2); + if (str1->nus_len != str2->nus_len) + return(FALSE); - if (casesensitive) - rval = strcmp(astr1, astr2); -#ifdef notdef - else - rval = strcasecmp(astr1, astr2); -#endif + for (i = 0; i < str1->nus_len; i++) { + if (caseinsensitive == TRUE) { + if (toupper((char)(str1->nus_buf[i] & 0xFF)) != + toupper((char)(str2->nus_buf[i] & 0xFF))) + return(FALSE); + } else { + if (str1->nus_buf[i] != str2->nus_buf[i]) + return(FALSE); + } + } - free(astr1, M_DEVBUF); - free(astr2, M_DEVBUF); - - return(rval); + return(TRUE); } __stdcall static void @@ -578,10 +580,7 @@ __asm__ __volatile__ ("" : "=c" (addend)); - mtx_lock(&ntoskrnl_interlock); - (*addend)++; - mtx_unlock(&ntoskrnl_interlock); - + atomic_add_long((volatile u_long *)addend, 1); return(*addend); } @@ -592,10 +591,7 @@ __asm__ __volatile__ ("" : "=c" (addend)); - mtx_lock(&ntoskrnl_interlock); - (*addend)--; - mtx_unlock(&ntoskrnl_interlock); - + atomic_subtract_long((volatile u_long *)addend, 1); return(*addend); } ==== //depot/projects/netperf+sockets/sys/dev/ath/if_ath.c#8 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.38 2003/12/28 07:00:32 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.44 2004/01/07 19:16:49 sam Exp $"); /* * Driver for the Atheros Wireless LAN controller. @@ -208,7 +208,7 @@ HAL_STATUS status; int error = 0; - DPRINTF(ATH_DEBUG_ANY, ("ath_attach: devid 0x%x\n", devid)); + DPRINTF(ATH_DEBUG_ANY, ("%s: devid 0x%x\n", __func__, devid)); /* set these up early for if_printf use */ if_initname(ifp, device_get_name(sc->sc_dev), @@ -374,7 +374,7 @@ { struct ifnet *ifp = &sc->sc_ic.ic_if; - DPRINTF(ATH_DEBUG_ANY, ("ath_detach: if_flags %x\n", ifp->if_flags)); + DPRINTF(ATH_DEBUG_ANY, ("%s: if_flags %x\n", __func__, ifp->if_flags)); ath_stop(ifp); bpfdetach(ifp); @@ -393,7 +393,7 @@ { struct ifnet *ifp = &sc->sc_ic.ic_if; - DPRINTF(ATH_DEBUG_ANY, ("ath_suspend: if_flags %x\n", ifp->if_flags)); + DPRINTF(ATH_DEBUG_ANY, ("%s: if_flags %x\n", __func__, ifp->if_flags)); ath_stop(ifp); } @@ -403,7 +403,7 @@ { struct ifnet *ifp = &sc->sc_ic.ic_if; - DPRINTF(ATH_DEBUG_ANY, ("ath_resume: if_flags %x\n", ifp->if_flags)); + DPRINTF(ATH_DEBUG_ANY, ("%s: if_flags %x\n", __func__, ifp->if_flags)); if (ifp->if_flags & IFF_UP) { ath_init(ifp); @@ -417,7 +417,7 @@ { struct ifnet *ifp = &sc->sc_ic.ic_if; - DPRINTF(ATH_DEBUG_ANY, ("ath_shutdown: if_flags %x\n", ifp->if_flags)); + DPRINTF(ATH_DEBUG_ANY, ("%s: if_flags %x\n", __func__, ifp->if_flags)); ath_stop(ifp); } @@ -436,18 +436,18 @@ * The hardware is not ready/present, don't touch anything. * Note this can happen early on if the IRQ is shared. */ - DPRINTF(ATH_DEBUG_ANY, ("ath_intr: invalid; ignored\n")); + DPRINTF(ATH_DEBUG_ANY, ("%s: invalid; ignored\n", __func__)); return; } if ((ifp->if_flags & (IFF_RUNNING|IFF_UP)) != (IFF_RUNNING|IFF_UP)) { - DPRINTF(ATH_DEBUG_ANY, - ("ath_intr: if_flags 0x%x\n", ifp->if_flags)); + DPRINTF(ATH_DEBUG_ANY, ("%s: if_flags 0x%x\n", + __func__, ifp->if_flags)); ath_hal_getisr(ah, &status); /* clear ISR */ ath_hal_intrset(ah, 0); /* disable further intr's */ return; } ath_hal_getisr(ah, &status); /* NB: clears ISR too */ - DPRINTF(ATH_DEBUG_INTR, ("ath_intr: status 0x%x\n", status)); + DPRINTF(ATH_DEBUG_INTR, ("%s: status 0x%x\n", __func__, status)); #ifdef AR_DEBUG if (ath_debug && (status & (HAL_INT_FATAL|HAL_INT_RXORN|HAL_INT_BMISS))) { @@ -516,7 +516,7 @@ struct ath_softc *sc = arg; struct ieee80211com *ic = &sc->sc_ic; - DPRINTF(ATH_DEBUG_ANY, ("ath_bmiss_proc: pending %u\n", pending)); + DPRINTF(ATH_DEBUG_ANY, ("%s: pending %u\n", __func__, pending)); KASSERT(ic->ic_opmode == IEEE80211_M_STA, ("unexpect operating mode %u", ic->ic_opmode)); if (ic->ic_state == IEEE80211_S_RUN) { @@ -555,7 +555,8 @@ HAL_STATUS status; HAL_CHANNEL hchan; - DPRINTF(ATH_DEBUG_ANY, ("ath_init: if_flags 0x%x\n", ifp->if_flags)); + DPRINTF(ATH_DEBUG_ANY, ("%s: if_flags 0x%x\n", + __func__, ifp->if_flags)); ATH_LOCK(sc); /* @@ -629,8 +630,8 @@ struct ath_softc *sc = ifp->if_softc; struct ath_hal *ah = sc->sc_ah; - DPRINTF(ATH_DEBUG_ANY, ("ath_stop: invalid %u if_flags 0x%x\n", - sc->sc_invalid, ifp->if_flags)); + DPRINTF(ATH_DEBUG_ANY, ("%s: invalid %u if_flags 0x%x\n", + __func__, sc->sc_invalid, ifp->if_flags)); ATH_LOCK(sc); if (ifp->if_flags & IFF_RUNNING) { @@ -732,8 +733,8 @@ TAILQ_REMOVE(&sc->sc_txbuf, bf, bf_list); ATH_TXBUF_UNLOCK(sc); if (bf == NULL) { - DPRINTF(ATH_DEBUG_ANY, - ("ath_start: out of xmit buffers\n")); + DPRINTF(ATH_DEBUG_ANY, ("%s: out of xmit buffers\n", + __func__)); sc->sc_stats.ast_tx_qstop++; ifp->if_flags |= IFF_OACTIVE; break; @@ -749,8 +750,8 @@ */ if (ic->ic_state != IEEE80211_S_RUN) { DPRINTF(ATH_DEBUG_ANY, - ("ath_start: ignore data packet, " - "state %u\n", ic->ic_state)); + ("%s: ignore data packet, state %u\n", + __func__, ic->ic_state)); sc->sc_stats.ast_tx_discard++; ATH_TXBUF_LOCK(sc); TAILQ_INSERT_TAIL(&sc->sc_txbuf, bf, bf_list); @@ -772,7 +773,8 @@ m = ieee80211_encap(ifp, m, &ni); if (m == NULL) { DPRINTF(ATH_DEBUG_ANY, - ("ath_start: encapsulation failure\n")); + ("%s: encapsulation failure\n", + __func__)); sc->sc_stats.ast_tx_encap++; goto bad; } @@ -1063,9 +1065,8 @@ mfilt[0] = mfilt[1] = ~0; } ath_hal_setmcastfilter(ah, mfilt[0], mfilt[1]); - DPRINTF(ATH_DEBUG_MODE, - ("ath_mode_init: RX filter 0x%x, MC filter %08x:%08x\n", - rfilt, mfilt[0], mfilt[1])); + DPRINTF(ATH_DEBUG_MODE, ("%s: RX filter 0x%x, MC filter %08x:%08x\n", + __func__, rfilt, mfilt[0], mfilt[1])); } static void ==== //depot/projects/netperf+sockets/sys/fs/procfs/procfs.c#3 (text+ko) ==== @@ -37,7 +37,7 @@ * * @(#)procfs_vfsops.c 8.7 (Berkeley) 5/10/95 * - * $FreeBSD: src/sys/fs/procfs/procfs.c,v 1.10 2003/12/07 17:40:00 des Exp $ + * $FreeBSD: src/sys/fs/procfs/procfs.c,v 1.11 2004/01/07 17:58:51 rwatson Exp $ */ #include <sys/param.h> @@ -70,7 +70,9 @@ char *fullpath = "unknown"; char *freepath = NULL; + vn_lock(p->p_textvp, LK_EXCLUSIVE | LK_RETRY, td); vn_fullpath(td, p->p_textvp, &fullpath, &freepath); + VOP_UNLOCK(p->p_textvp, 0, td); sbuf_printf(sb, "%s", fullpath); if (freepath) free(freepath, M_TEMP); ==== //depot/projects/netperf+sockets/sys/i386/isa/pcvt/pcvt_ext.c#2 (text+ko) ==== @@ -44,7 +44,7 @@ * * Last Edit-Date: [Fri Mar 8 19:57:55 2002] * - * $FreeBSD: src/sys/i386/isa/pcvt/pcvt_ext.c,v 1.29 2003/03/02 16:54:36 des Exp $ + * $FreeBSD: src/sys/i386/isa/pcvt/pcvt_ext.c,v 1.30 2004/01/07 10:12:59 joerg Exp $ * *---------------------------------------------------------------------------*/ @@ -2397,7 +2397,7 @@ int usl_vt_ioctl(dev_t dev, int cmd, caddr_t data, int flag, struct thread *td) { - struct proc *p = td->td_proc; + struct proc *p; int i, j, error, opri; struct vt_mode newmode; @@ -2406,6 +2406,7 @@ case VT_SETMODE: newmode = *(struct vt_mode *)data; + p = td->td_proc; opri = spltty(); @@ -2479,6 +2480,8 @@ return 0; case VT_RELDISP: + p = td->td_proc; + if (minor(dev) != current_video_screen) return EPERM; if (vsp->smode.mode != VT_PROCESS) ==== //depot/projects/netperf+sockets/sys/net/route.c#4 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)route.c 8.3.1.1 (Berkeley) 2/23/95 - * $FreeBSD: src/sys/net/route.c,v 1.93 2003/12/07 21:44:14 sam Exp $ + * $FreeBSD: src/sys/net/route.c,v 1.94 2004/01/07 23:42:21 sam Exp $ */ #include "opt_inet.h" @@ -1277,7 +1277,7 @@ rt = rtalloc1(dst, 1, 0UL); if (rt != NULL) { RT_REMREF(rt); - RT_UNLOCK(rt); + /* XXX what about if change? */ } else senderr(EHOSTUNREACH); rt0 = rt; ==== //depot/projects/netperf+sockets/sys/netinet/ip_icmp.c#3 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)ip_icmp.c 8.2 (Berkeley) 1/4/94 - * $FreeBSD: src/sys/netinet/ip_icmp.c,v 1.85 2003/11/20 20:07:37 andre Exp $ + * $FreeBSD: src/sys/netinet/ip_icmp.c,v 1.86 2004/01/06 23:20:07 andre Exp $ */ #include "opt_ipsec.h" @@ -546,7 +546,11 @@ (int)(gw >> 24), (int)((gw >> 16) & 0xff), (int)((gw >> 8) & 0xff), (int)(gw & 0xff)); } - if (drop_redirect) + /* + * RFC1812 says we must ignore ICMP redirects if we + * are acting as router. + */ + if (drop_redirect || ipforwarding) break; if (code > 3) goto badcode; ==== //depot/projects/netperf+sockets/sys/netinet/tcp_input.c#5 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)tcp_input.c 8.12 (Berkeley) 5/24/95 - * $FreeBSD: src/sys/netinet/tcp_input.c,v 1.217 2003/11/25 20:58:59 andre Exp $ + * $FreeBSD: src/sys/netinet/tcp_input.c,v 1.218 2004/01/06 23:29:46 andre Exp $ */ #include "opt_ipfw.h" /* for ipfw_fwd */ @@ -125,11 +125,11 @@ &drop_synfin, 0, "Drop TCP packets with SYN+FIN set"); #endif -static int tcp_do_rfc3042 = 0; +static int tcp_do_rfc3042 = 1; SYSCTL_INT(_net_inet_tcp, OID_AUTO, rfc3042, CTLFLAG_RW, &tcp_do_rfc3042, 0, "Enable RFC 3042 (Limited Transmit)"); -static int tcp_do_rfc3390 = 0; +static int tcp_do_rfc3390 = 1; SYSCTL_INT(_net_inet_tcp, OID_AUTO, rfc3390, CTLFLAG_RW, &tcp_do_rfc3390, 0, "Enable RFC 3390 (Increasing TCP's Initial Congestion Window)"); ==== //depot/projects/netperf+sockets/sys/netinet/tcp_subr.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)tcp_subr.c 8.2 (Berkeley) 5/24/95 - * $FreeBSD: src/sys/netinet/tcp_subr.c,v 1.171 2003/12/17 16:12:01 jhb Exp $ + * $FreeBSD: src/sys/netinet/tcp_subr.c,v 1.172 2004/01/06 23:29:46 andre Exp $ */ #include "opt_compat.h" @@ -159,7 +159,7 @@ * 1024 exists only for debugging. A good production default would be * something like 6100. */ -static int tcp_inflight_enable = 0; +static int tcp_inflight_enable = 1; SYSCTL_INT(_net_inet_tcp, OID_AUTO, inflight_enable, CTLFLAG_RW, &tcp_inflight_enable, 0, "Enable automatic TCP inflight data limiting"); ==== //depot/projects/netperf+sockets/sys/vm/vm_contig.c#2 (text+ko) ==== @@ -64,7 +64,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/vm/vm_contig.c,v 1.25 2003/10/18 21:09:21 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_contig.c,v 1.26 2004/01/06 20:52:55 alc Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -269,7 +269,6 @@ OFF_TO_IDX(tmp_addr - VM_MIN_KERNEL_ADDRESS)); if ((flags & M_ZERO) && !(m->flags & PG_ZERO)) pmap_zero_page(m); - m->flags = 0; tmp_addr += PAGE_SIZE; } VM_OBJECT_UNLOCK(kernel_object); ==== //depot/projects/netperf+sockets/sys/vm/vm_kern.c#5 (text+ko) ==== @@ -67,7 +67,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/vm/vm_kern.c,v 1.110 2004/01/01 19:48:56 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_kern.c,v 1.111 2004/01/06 20:52:55 alc Exp $"); #include <sys/param.h> #include <sys/systm.h> @@ -206,7 +206,6 @@ pmap_zero_page(mem); mem->valid = VM_PAGE_BITS_ALL; vm_page_lock_queues(); - vm_page_flag_clear(mem, PG_ZERO); vm_page_wakeup(mem); vm_page_unlock_queues(); } @@ -406,7 +405,6 @@ pmap_zero_page(m); m->valid = VM_PAGE_BITS_ALL; vm_page_lock_queues(); - vm_page_flag_clear(m, PG_ZERO); vm_page_unmanage(m); vm_page_unlock_queues(); }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200401072351.i07NpGYe096480>