From owner-p4-projects Tue Jun 25 15:37:34 2002 Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 68B3837B400; Tue, 25 Jun 2002 15:35:48 -0700 (PDT) Delivered-To: perforce@freebsd.org Received: from freefall.freebsd.org (freefall.FreeBSD.org [216.136.204.21]) by hub.freebsd.org (Postfix) with ESMTP id 4EB3237B401 for ; Tue, 25 Jun 2002 15:35:46 -0700 (PDT) Received: (from perforce@localhost) by freefall.freebsd.org (8.11.6/8.11.6) id g5PMZi113407 for perforce@freebsd.org; Tue, 25 Jun 2002 15:35:44 -0700 (PDT) (envelope-from julian@freebsd.org) Date: Tue, 25 Jun 2002 15:35:44 -0700 (PDT) Message-Id: <200206252235.g5PMZi113407@freefall.freebsd.org> X-Authentication-Warning: freefall.freebsd.org: perforce set sender to julian@freebsd.org using -f From: Julian Elischer Subject: PERFORCE change 13430 for review To: Perforce Change Reviews Sender: owner-p4-projects@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG http://people.freebsd.org/~peter/p4db/chv.cgi?CH=13430 Change 13430 by julian@julian_ref on 2002/06/25 15:35:17 MFC Affected files ... ... //depot/projects/kse/sys/alpha/alpha/trap.c#27 integrate ... //depot/projects/kse/sys/alpha/alpha/vm_machdep.c#26 integrate ... //depot/projects/kse/sys/ddb/db_examine.c#3 integrate ... //depot/projects/kse/sys/ddb/db_expr.c#3 integrate ... //depot/projects/kse/sys/dev/bge/if_bge.c#10 integrate ... //depot/projects/kse/sys/dev/bge/if_bgereg.h#5 integrate ... //depot/projects/kse/sys/dev/md/md.c#22 integrate ... //depot/projects/kse/sys/dev/sound/pci/maestro3.c#6 integrate ... //depot/projects/kse/sys/dev/wi/wi_hostap.c#4 integrate ... //depot/projects/kse/sys/i386/i386/machdep.c#48 integrate ... //depot/projects/kse/sys/i386/i386/pmap.c#38 integrate ... //depot/projects/kse/sys/i386/i386/trap.c#54 integrate ... //depot/projects/kse/sys/i386/i386/vm_machdep.c#59 integrate ... //depot/projects/kse/sys/ia64/ia64/pmap.c#26 integrate ... //depot/projects/kse/sys/ia64/ia64/trap.c#23 integrate ... //depot/projects/kse/sys/ia64/ia64/vm_machdep.c#19 integrate ... //depot/projects/kse/sys/kern/kern_exec.c#30 integrate ... //depot/projects/kse/sys/kern/kern_exit.c#56 integrate ... //depot/projects/kse/sys/kern/kern_fork.c#73 integrate ... //depot/projects/kse/sys/kern/kern_prot.c#29 integrate ... //depot/projects/kse/sys/kern/md5c.c#2 integrate ... //depot/projects/kse/sys/kern/subr_trap.c#71 integrate ... //depot/projects/kse/sys/kern/vfs_syscalls.c#29 integrate ... //depot/projects/kse/sys/kern/vfs_vnops.c#27 integrate ... //depot/projects/kse/sys/netatm/port.h#4 integrate ... //depot/projects/kse/sys/netinet/tcp_input.c#23 integrate ... //depot/projects/kse/sys/pc98/i386/machdep.c#28 integrate ... //depot/projects/kse/sys/pc98/pc98/clock.c#8 integrate ... //depot/projects/kse/sys/pc98/pc98/sio.c#17 integrate ... //depot/projects/kse/sys/powerpc/powerpc/trap.c#15 integrate ... //depot/projects/kse/sys/powerpc/powerpc/vm_machdep.c#12 integrate ... //depot/projects/kse/sys/sparc64/include/pmap.h#14 integrate ... //depot/projects/kse/sys/sparc64/sparc64/bus_machdep.c#6 integrate ... //depot/projects/kse/sys/sparc64/sparc64/pmap.c#31 integrate ... //depot/projects/kse/sys/sparc64/sparc64/trap.c#31 integrate ... //depot/projects/kse/sys/sparc64/sparc64/vm_machdep.c#25 integrate ... //depot/projects/kse/sys/sys/md5.h#3 integrate ... //depot/projects/kse/sys/sys/proc.h#116 integrate ... //depot/projects/kse/sys/sys/snoop.h#2 integrate ... //depot/projects/kse/sys/sys/ucred.h#12 integrate ... //depot/projects/kse/sys/ufs/ffs/ffs_softdep_stub.c#6 integrate ... //depot/projects/kse/sys/ufs/ufs/ufs_inode.c#8 integrate ... //depot/projects/kse/sys/vm/device_pager.c#5 integrate ... //depot/projects/kse/sys/vm/uma_core.c#11 integrate ... //depot/projects/kse/sys/vm/vm_map.h#15 integrate ... //depot/projects/kse/sys/vm/vm_object.c#12 integrate ... //depot/projects/kse/sys/vm/vm_object.h#6 integrate ... //depot/projects/kse/sys/vm/vm_page.c#12 integrate ... //depot/projects/kse/sys/vm/vm_page.h#8 integrate Differences ... ==== //depot/projects/kse/sys/alpha/alpha/trap.c#27 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/alpha/alpha/trap.c,v 1.94 2002/06/07 05:47:34 jhb Exp $ */ +/* $FreeBSD: src/sys/alpha/alpha/trap.c,v 1.95 2002/06/24 06:21:52 mini Exp $ */ /* $NetBSD: trap.c,v 1.31 1998/03/26 02:21:46 thorpej Exp $ */ /* ==== //depot/projects/kse/sys/alpha/alpha/vm_machdep.c#26 (text+ko) ==== @@ -38,7 +38,7 @@ * * from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91 * Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$ - * $FreeBSD: src/sys/alpha/alpha/vm_machdep.c,v 1.66 2002/04/05 00:52:15 alc Exp $ + * $FreeBSD: src/sys/alpha/alpha/vm_machdep.c,v 1.67 2002/06/24 15:48:00 jake Exp $ */ /* * Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University. @@ -247,6 +247,12 @@ } void +cpu_sched_exit(td) + register struct thread *td; +{ +} + +void cpu_thread_exit(struct thread *td) { ==== //depot/projects/kse/sys/ddb/db_examine.c#3 (text+ko) ==== @@ -23,7 +23,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $FreeBSD: src/sys/ddb/db_examine.c,v 1.28 2002/03/20 05:14:28 alfred Exp $ + * $FreeBSD: src/sys/ddb/db_examine.c,v 1.29 2002/06/25 15:59:24 tmm Exp $ */ /* @@ -83,26 +83,22 @@ while (--count >= 0) { fp = fmt; size = 4; - width = 16; while ((c = *fp++) != 0) { switch (c) { case 'b': size = 1; - width = 4; break; case 'h': size = 2; - width = 8; break; case 'l': size = 4; - width = 16; break; case 'g': size = 8; - width = 32; break; case 'a': /* address */ + size = sizeof(void *); /* always forces a new line */ if (db_print_position() != 0) db_printf("\n"); @@ -118,6 +114,7 @@ db_prev = addr; } + width = size * 4; switch (c) { case 'r': /* signed, current radix */ value = db_get_value(addr, size, TRUE); ==== //depot/projects/kse/sys/ddb/db_expr.c#3 (text+ko) ==== @@ -23,7 +23,7 @@ * any improvements or extensions that they make and grant Carnegie the * rights to redistribute these changes. * - * $FreeBSD: src/sys/ddb/db_expr.c,v 1.14 2002/03/20 05:14:28 alfred Exp $ + * $FreeBSD: src/sys/ddb/db_expr.c,v 1.15 2002/06/25 15:59:24 tmm Exp $ */ /* @@ -119,7 +119,7 @@ db_error("Syntax error\n"); /*NOTREACHED*/ } - *valuep = db_get_value((db_addr_t)*valuep, sizeof(int), FALSE); + *valuep = db_get_value((db_addr_t)*valuep, sizeof(void *), FALSE); return (TRUE); } db_unread_token(t); ==== //depot/projects/kse/sys/dev/bge/if_bge.c#10 (text+ko) ==== @@ -30,7 +30,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/bge/if_bge.c,v 1.13 2002/04/28 20:34:17 phk Exp $ + * $FreeBSD: src/sys/dev/bge/if_bge.c,v 1.15 2002/06/24 22:28:42 mp Exp $ */ /* @@ -122,7 +122,7 @@ #if !defined(lint) static const char rcsid[] = - "$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.13 2002/04/28 20:34:17 phk Exp $"; + "$FreeBSD: src/sys/dev/bge/if_bge.c,v 1.15 2002/06/24 22:28:42 mp Exp $"; #endif /* @@ -725,7 +725,8 @@ m_new->m_data = m_new->m_ext.ext_buf; } - m_adj(m_new, ETHER_ALIGN); + if (!sc->bge_rx_alignment_bug) + m_adj(m_new, ETHER_ALIGN); sc->bge_cdata.bge_rx_std_chain[i] = m_new; r = &sc->bge_rdata->bge_rx_std_ring[i]; BGE_HOSTADDR(r->bge_addr) = vtophys(mtod(m_new, caddr_t)); @@ -778,7 +779,8 @@ m_new->m_ext.ext_size = BGE_JUMBO_FRAMELEN; } - m_adj(m_new, ETHER_ALIGN); + if (!sc->bge_rx_alignment_bug) + m_adj(m_new, ETHER_ALIGN); /* Set up the descriptor. */ r = &sc->bge_rdata->bge_rx_jumbo_ring[i]; sc->bge_cdata.bge_rx_jumbo_chain[i] = m_new; @@ -1674,6 +1676,27 @@ } /* + * When using the BCM5701 in PCI-X mode, data corruption has + * been observed in the first few bytes of some received packets. + * Aligning the packet buffer in memory eliminates the corruption. + * Unfortunately, this misaligns the packet payloads. On platforms + * which do not support unaligned accesses, we will realign the + * payloads by copying the received packets. + */ + switch (sc->bge_asicrev) { + case BGE_ASICREV_BCM5701_A0: + case BGE_ASICREV_BCM5701_B0: + case BGE_ASICREV_BCM5701_B2: + case BGE_ASICREV_BCM5701_B5: + /* If in PCI-X mode, work around the alignment bug. */ + if ((pci_read_config(dev, BGE_PCI_PCISTATE, 4) & + (BGE_PCISTATE_PCI_BUSMODE | BGE_PCISTATE_PCI_BUSSPEED)) == + BGE_PCISTATE_PCI_BUSSPEED) + sc->bge_rx_alignment_bug = 1; + break; + } + + /* * Call MI attach routine. */ ether_ifattach(ifp, ETHER_BPF_SUPPORTED); @@ -1905,6 +1928,17 @@ } ifp->if_ipackets++; +#ifndef __i386__ + /* + * The i386 allows unaligned accesses, but for other + * platforms we must make sure the payload is aligned. + */ + if (sc->bge_rx_alignment_bug) { + bcopy(m->m_data, m->m_data + ETHER_ALIGN, + cur_rx->bge_len); + m->m_data += ETHER_ALIGN; + } +#endif eh = mtod(m, struct ether_header *); m->m_pkthdr.len = m->m_len = cur_rx->bge_len; m->m_pkthdr.rcvif = ifp; @@ -2355,8 +2389,10 @@ ifp = &sc->arpcom.ac_if; - if (ifp->if_flags & IFF_RUNNING) + if (ifp->if_flags & IFF_RUNNING) { + splx(s); return; + } /* Cancel pending I/O and flush buffers. */ bge_stop(sc); ==== //depot/projects/kse/sys/dev/bge/if_bgereg.h#5 (text+ko) ==== @@ -30,7 +30,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/bge/if_bgereg.h,v 1.4 2002/04/04 06:01:31 wpaul Exp $ + * $FreeBSD: src/sys/dev/bge/if_bgereg.h,v 1.5 2002/06/24 22:04:15 jdp Exp $ */ /* @@ -2131,6 +2131,7 @@ u_int8_t bge_unit; /* interface number */ u_int8_t bge_extram; /* has external SSRAM */ u_int8_t bge_tbi; + u_int8_t bge_rx_alignment_bug; u_int32_t bge_asicrev; struct bge_ring_data *bge_rdata; /* rings */ struct bge_chain_data bge_cdata; /* mbufs */ ==== //depot/projects/kse/sys/dev/md/md.c#22 (text+ko) ==== @@ -6,7 +6,7 @@ * this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp * ---------------------------------------------------------------------------- * - * $FreeBSD: src/sys/dev/md/md.c,v 1.65 2002/06/15 19:18:43 phk Exp $ + * $FreeBSD: src/sys/dev/md/md.c,v 1.66 2002/06/24 12:07:02 mux Exp $ * */ @@ -76,6 +76,7 @@ #include #include #include +#include #include #include @@ -279,7 +280,7 @@ uintptr_t up; if (md_debug > 1) - printf("s_read(%lld)\n", offset); + printf("s_read(%jd)\n", (intmax_t)offset); up = 0; for (cip = ip; cip != NULL;) { if (cip->shift) { @@ -306,7 +307,7 @@ uintptr_t up; if (md_debug > 1) - printf("s_write(%lld, %p)\n", offset, (void *)ptr); + printf("s_write(%jd, %p)\n", (intmax_t)offset, (void *)ptr); up = 0; li = 0; cip = ip; ==== //depot/projects/kse/sys/dev/sound/pci/maestro3.c#6 (text+ko) ==== @@ -61,7 +61,7 @@ #include #include -SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/maestro3.c,v 1.13 2002/01/27 23:09:41 scottl Exp $"); +SND_DECLARE_FILE("$FreeBSD: src/sys/dev/sound/pci/maestro3.c,v 1.14 2002/06/24 15:28:47 robert Exp $"); /* -------------------------------------------------------------------- */ @@ -1172,6 +1172,8 @@ goto bad; } + m3_enable_ints(sc); + if (pcm_register(dev, sc, M3_PCHANS, M3_RCHANS)) { device_printf(dev, "pcm_register error\n"); goto bad; @@ -1321,8 +1323,6 @@ /* [m3_assp_continue] */ m3_wr_1(sc, DSP_PORT_CONTROL_REG_B, reset_state | REGB_ENABLE_RESET); - m3_enable_ints(sc); - m3_amp_enable(sc); if (mixer_reinit(dev) == -1) { ==== //depot/projects/kse/sys/dev/wi/wi_hostap.c#4 (text+ko) ==== @@ -29,7 +29,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/wi/wi_hostap.c,v 1.14 2002/05/25 11:18:03 bde Exp $ + * $FreeBSD: src/sys/dev/wi/wi_hostap.c,v 1.15 2002/06/24 07:50:41 imp Exp $ */ /* This is experimental Host AP software for Prism 2 802.11b interfaces. @@ -693,6 +693,17 @@ /* Pull out request parameters. */ capinfo = take_hword(&pkt, &len); lstintvl = take_hword(&pkt, &len); + + if ((rxfrm->wi_frame_ctl & htole16(WI_FCTL_STYPE)) == + htole16(WI_STYPE_MGMT_REASREQ)) { + if (len < 6) + return; + /* Eat the MAC address of the current AP */ + take_hword(&pkt, &len); + take_hword(&pkt, &len); + take_hword(&pkt, &len); + } + if ((ssid_len = take_tlv(&pkt, &len, IEEE80211_ELEMID_SSID, ssid, sizeof(ssid) - 1))<0) return; @@ -701,13 +712,6 @@ rates, sizeof(rates)))<0) return; - if ((rxfrm->wi_frame_ctl & htole16(WI_FCTL_STYPE)) == - htole16(WI_STYPE_MGMT_REASREQ)) { - /* Reassociation Request-- * Current AP. (Ignore?) */ - if (len < 6) - return; - } - if (sc->arpcom.ac_if.if_flags & IFF_DEBUG) printf("wihap_assoc_req: from station %6D\n", rxfrm->wi_addr2, ":"); ==== //depot/projects/kse/sys/i386/i386/machdep.c#48 (text+ko) ==== @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)machdep.c 7.4 (Berkeley) 6/3/91 - * $FreeBSD: src/sys/i386/i386/machdep.c,v 1.519 2002/05/13 11:53:40 bde Exp $ + * $FreeBSD: src/sys/i386/i386/machdep.c,v 1.520 2002/06/24 21:31:57 peter Exp $ */ #include "opt_atalk.h" @@ -780,7 +780,11 @@ * the !SMP case, as there is no clean way to ensure that a CPU will be * woken when there is work available for it. */ +#ifdef SMP +static int cpu_idle_hlt = 0; +#else static int cpu_idle_hlt = 1; +#endif SYSCTL_INT(_machdep, OID_AUTO, cpu_idle_hlt, CTLFLAG_RW, &cpu_idle_hlt, 0, "Idle loop HLT enable"); @@ -793,7 +797,6 @@ void cpu_idle(void) { -#ifndef SMP if (cpu_idle_hlt) { disable_intr(); if (kserunnable()) { @@ -807,7 +810,6 @@ __asm __volatile("sti; hlt"); } } -#endif } /* ==== //depot/projects/kse/sys/i386/i386/pmap.c#38 (text+ko) ==== @@ -39,7 +39,7 @@ * SUCH DAMAGE. * * from: @(#)pmap.c 7.7 (Berkeley) 5/12/91 - * $FreeBSD: src/sys/i386/i386/pmap.c,v 1.323 2002/06/17 22:02:41 jeff Exp $ + * $FreeBSD: src/sys/i386/i386/pmap.c,v 1.324 2002/06/25 22:14:06 iedowse Exp $ */ /* @@ -2499,14 +2499,10 @@ ((objpgs > 0) && (p != NULL)); p = TAILQ_NEXT(p, listq)) { - tmpidx = p->pindex; - if (tmpidx < pindex) { + if (p->pindex < pindex || p->pindex - pindex > psize) { continue; } - tmpidx -= pindex; - if (tmpidx >= psize) { - continue; - } + tmpidx = p->pindex - pindex; /* * don't allow an madvise to blow away our really * free pages allocating pv entries. ==== //depot/projects/kse/sys/i386/i386/trap.c#54 (text+ko) ==== @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $FreeBSD: src/sys/i386/i386/trap.c,v 1.225 2002/06/12 13:30:52 bde Exp $ + * $FreeBSD: src/sys/i386/i386/trap.c,v 1.227 2002/06/24 06:23:41 mini Exp $ */ /* ==== //depot/projects/kse/sys/i386/i386/vm_machdep.c#59 (text+ko) ==== @@ -38,7 +38,7 @@ * * from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91 * Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$ - * $FreeBSD: src/sys/i386/i386/vm_machdep.c,v 1.187 2002/03/27 05:39:19 dillon Exp $ + * $FreeBSD: src/sys/i386/i386/vm_machdep.c,v 1.188 2002/06/24 15:48:00 jake Exp $ */ #include "opt_npx.h" @@ -293,6 +293,12 @@ } void +cpu_sched_exit(td) + register struct thread *td; +{ +} + +void cpu_thread_setup(struct thread *td) { ==== //depot/projects/kse/sys/ia64/ia64/pmap.c#26 (text+ko) ==== @@ -43,7 +43,7 @@ * from: @(#)pmap.c 7.7 (Berkeley) 5/12/91 * from: i386 Id: pmap.c,v 1.193 1998/04/19 15:22:48 bde Exp * with some ideas from NetBSD's alpha pmap - * $FreeBSD: src/sys/ia64/ia64/pmap.c,v 1.63 2002/06/20 06:25:22 peter Exp $ + * $FreeBSD: src/sys/ia64/ia64/pmap.c,v 1.64 2002/06/24 18:31:49 dfr Exp $ */ /* @@ -522,12 +522,12 @@ if (initial_pvs < MINPV) initial_pvs = MINPV; pvzone = uma_zcreate("PV ENTRY", sizeof (struct pv_entry), - NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, 0); + NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM); uma_zone_set_allocf(pvzone, pmap_allocf); uma_prealloc(pvzone, initial_pvs); ptezone = uma_zcreate("PT ENTRY", sizeof (struct ia64_lpte), - NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, 0); + NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_VM); uma_zone_set_allocf(ptezone, pmap_allocf); uma_prealloc(ptezone, initial_pvs); ==== //depot/projects/kse/sys/ia64/ia64/trap.c#23 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/ia64/ia64/trap.c,v 1.57 2002/06/20 06:47:44 peter Exp $ */ +/* $FreeBSD: src/sys/ia64/ia64/trap.c,v 1.58 2002/06/24 06:21:57 mini Exp $ */ /* From: src/sys/alpha/alpha/trap.c,v 1.33 */ /* $NetBSD: trap.c,v 1.31 1998/03/26 02:21:46 thorpej Exp $ */ ==== //depot/projects/kse/sys/ia64/ia64/vm_machdep.c#19 (text+ko) ==== @@ -38,7 +38,7 @@ * * from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91 * Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$ - * $FreeBSD: src/sys/ia64/ia64/vm_machdep.c,v 1.40 2002/05/05 08:16:10 marcel Exp $ + * $FreeBSD: src/sys/ia64/ia64/vm_machdep.c,v 1.41 2002/06/24 15:48:00 jake Exp $ */ /* * Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University. @@ -314,6 +314,12 @@ } void +cpu_sched_exit(td) + register struct thread *td; +{ +} + +void cpu_wait(p) struct proc *p; { ==== //depot/projects/kse/sys/kern/kern_exec.c#30 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/kern/kern_exec.c,v 1.166 2002/06/20 17:27:28 alfred Exp $ + * $FreeBSD: src/sys/kern/kern_exec.c,v 1.167 2002/06/25 18:14:38 alc Exp $ */ #include @@ -275,7 +275,6 @@ * Copy out strings (args and env) and initialize stack base */ stack_base = exec_copyout_strings(imgp); - p->p_vmspace->vm_minsaddr = (char *)stack_base; /* * If custom stack fixup routine present for this process ==== //depot/projects/kse/sys/kern/kern_exit.c#56 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_exit.c 8.7 (Berkeley) 2/12/94 - * $FreeBSD: src/sys/kern/kern_exit.c,v 1.167 2002/06/07 05:41:27 jhb Exp $ + * $FreeBSD: src/sys/kern/kern_exit.c,v 1.168 2002/06/24 15:48:01 jake Exp $ */ #include "opt_compat.h" @@ -505,6 +505,8 @@ cnt.v_swtch++; binuptime(PCPU_PTR(switchtime)); PCPU_SET(switchticks, ticks); + + cpu_sched_exit(td); /* XXXKSE check if this should be in thread_exit */ /* * Make sure this thread is discarded from the zombie. * This will also release this thread's reference to the ucred. ==== //depot/projects/kse/sys/kern/kern_fork.c#73 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)kern_fork.c 8.6 (Berkeley) 4/8/94 - * $FreeBSD: src/sys/kern/kern_fork.c,v 1.149 2002/06/07 05:42:25 jhb Exp $ + * $FreeBSD: src/sys/kern/kern_fork.c,v 1.150 2002/06/24 06:21:57 mini Exp $ */ #include "opt_ktrace.h" ==== //depot/projects/kse/sys/kern/kern_prot.c#29 (text+ko) ==== @@ -37,7 +37,7 @@ * SUCH DAMAGE. * * @(#)kern_prot.c 8.6 (Berkeley) 1/21/94 - * $FreeBSD: src/sys/kern/kern_prot.c,v 1.158 2002/06/19 06:39:25 alfred Exp $ + * $FreeBSD: src/sys/kern/kern_prot.c,v 1.159 2002/06/24 06:21:57 mini Exp $ */ /* ==== //depot/projects/kse/sys/kern/md5c.c#2 (text+ko) ==== @@ -22,12 +22,16 @@ * These notices must be retained in any copies of any part of this * documentation and/or software. * - * $FreeBSD: src/sys/kern/md5c.c,v 1.18 2000/09/29 13:34:40 dfr Exp $ - * * This code is the same as the code published by RSA Inc. It has been * edited for clarity and style only. */ +/* + * This file should be kept in sync with src/lib/libmd/md5c.c + */ +#include +__FBSDID("$FreeBSD: src/sys/kern/md5c.c,v 1.19 2002/06/24 14:15:25 mux Exp $"); + #include #ifdef _KERNEL @@ -36,39 +40,35 @@ #include #endif +#include +#include #include +static void MD5Transform(u_int32_t [4], const unsigned char [64]); #ifdef _KERNEL #define memset(x,y,z) bzero(x,z); #define memcpy(x,y,z) bcopy(y, x, z) #endif -#if defined(__i386__) || defined(__alpha__) || defined(__ia64__) +#if (BYTE_ORDER == LITTLE_ENDIAN) #define Encode memcpy #define Decode memcpy -#else /* __i386__ */ +#else /* * Encodes input (u_int32_t) into output (unsigned char). Assumes len is * a multiple of 4. */ -/* XXX not prototyped, and not compatible with memcpy(). */ static void -Encode (output, input, len) - unsigned char *output; - u_int32_t *input; - unsigned int len; +Encode (unsigned char *output, u_int32_t *input, unsigned int len) { - unsigned int i, j; + unsigned int i; + u_int32_t *op = (u_int32_t *)output; - for (i = 0, j = 0; j < len; i++, j += 4) { - output[j] = (unsigned char)(input[i] & 0xff); - output[j+1] = (unsigned char)((input[i] >> 8) & 0xff); - output[j+2] = (unsigned char)((input[i] >> 16) & 0xff); - output[j+3] = (unsigned char)((input[i] >> 24) & 0xff); - } + for (i = 0; i < len / 4; i++) + op[i] = htole32(input[i]); } /* @@ -77,18 +77,15 @@ */ static void -Decode (output, input, len) - u_int32_t *output; - const unsigned char *input; - unsigned int len; +Decode (u_int32_t *output, const unsigned char *input, unsigned int len) { - unsigned int i, j; + unsigned int i; + const u_int32_t *ip = (const u_int32_t *)input; - for (i = 0, j = 0; j < len; i++, j += 4) - output[i] = ((u_int32_t)input[j]) | (((u_int32_t)input[j+1]) << 8) | - (((u_int32_t)input[j+2]) << 16) | (((u_int32_t)input[j+3]) << 24); + for (i = 0; i < len / 4; i++) + output[i] = le32toh(ip[i]); } -#endif /* i386 */ +#endif static unsigned char PADDING[64] = { 0x80, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, @@ -235,7 +232,7 @@ /* MD5 basic transformation. Transforms state based on block. */ -void +static void MD5Transform (state, block) u_int32_t state[4]; const unsigned char block[64]; ==== //depot/projects/kse/sys/kern/subr_trap.c#71 (text+ko) ==== @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)trap.c 7.4 (Berkeley) 5/13/91 - * $FreeBSD: src/sys/kern/subr_trap.c,v 1.217 2002/06/07 05:43:40 jhb Exp $ + * $FreeBSD: src/sys/kern/subr_trap.c,v 1.218 2002/06/24 06:21:57 mini Exp $ */ #ifdef __i386__ ==== //depot/projects/kse/sys/kern/vfs_syscalls.c#29 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)vfs_syscalls.c 8.13 (Berkeley) 4/15/94 - * $FreeBSD: src/sys/kern/vfs_syscalls.c,v 1.262 2002/06/22 22:01:13 mckusick Exp $ + * $FreeBSD: src/sys/kern/vfs_syscalls.c,v 1.263 2002/06/24 07:14:44 mckusick Exp $ */ /* For 4.3 integer FS ID compatibility */ @@ -2596,7 +2596,7 @@ struct stat *sb; struct nstat *nsb; { - bzero(nsb, sizeof nsb); + bzero(nsb, sizeof *nsb); nsb->st_dev = sb->st_dev; nsb->st_ino = sb->st_ino; nsb->st_mode = sb->st_mode; ==== //depot/projects/kse/sys/kern/vfs_vnops.c#27 (text+ko) ==== @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)vfs_vnops.c 8.2 (Berkeley) 1/21/94 - * $FreeBSD: src/sys/kern/vfs_vnops.c,v 1.148 2002/06/22 22:01:13 mckusick Exp $ + * $FreeBSD: src/sys/kern/vfs_vnops.c,v 1.149 2002/06/24 07:14:44 mckusick Exp $ */ #include @@ -562,7 +562,7 @@ /* * Zero the spare stat fields */ - bzero(sb, sizeof sb); + bzero(sb, sizeof *sb); /* * Copy from vattr table ==== //depot/projects/kse/sys/netatm/port.h#4 (text+ko) ==== @@ -23,7 +23,7 @@ * Copies of this Software may be made, however, the above copyright * notice must be reproduced on all copies. * - * @(#) $FreeBSD: src/sys/netatm/port.h,v 1.9 2002/04/21 01:41:04 arr Exp $ + * @(#) $FreeBSD: src/sys/netatm/port.h,v 1.10 2002/06/24 22:31:17 arr Exp $ * */ @@ -38,22 +38,6 @@ #ifndef _NETATM_PORT_H #define _NETATM_PORT_H -/* - * User-space memory management - * - * UM_ALLOC(size) Returns an allocated kernel memory chunk of size bytes. - * UM_FREE(addr) Free a kernel memory chunk of size bytes. - * UM_COPY(from, to, len) - * Copies len bytes of data from from to to. - * UM_ZERO(addr, len) Zeros len bytes of data from addr. - * - */ -#define UM_ALLOC(size) malloc((size_t)(size)) -#define UM_FREE(addr) free((void *)(addr)) -#define UM_COPY(from, to, len) bcopy((void *)(from), (void *)(to),\ - (size_t)(len)) -#define UM_ZERO(addr, len) bzero((void *)(addr), (size_t)(len)) - #ifdef _KERNEL /* @@ -267,7 +251,7 @@ & ~(sizeof(long) - 1)); \ } #define KB_HEADROOM(bfr, n) { \ - /* n = M_LEADINGSPACE(bfr) XXX */ \ + /* N = m_leadingspace(BFR) XXX */ \ (n) = ((bfr)->m_flags & M_EXT ? (bfr)->m_data - (bfr)->m_ext.ext_buf : \ (bfr)->m_flags & M_PKTHDR ? (bfr)->m_data - (bfr)->m_pktdat : \ (bfr)->m_data - (bfr)->m_dat); \ ==== //depot/projects/kse/sys/netinet/tcp_input.c#23 (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.162 2002/06/23 21:22:56 luigi Exp $ + * $FreeBSD: src/sys/netinet/tcp_input.c,v 1.164 2002/06/24 22:25:00 hsu Exp $ */ #include "opt_ipfw.h" /* for ipfw_fwd */ @@ -2187,7 +2187,7 @@ &tcp_savetcp, 0); #endif if (headlocked) - INP_INFO_WUNLOCK(&tcbinfo); + INP_INFO_WUNLOCK(&tcbinfo); m_freem(m); tp->t_flags |= TF_ACKNOW; (void) tcp_output(tp); @@ -2216,8 +2216,6 @@ goto drop; /* IPv6 anycast check is done at tcp6_input() */ - if (tp) - INP_UNLOCK(inp); /* * Perform bandwidth limiting. */ @@ -2229,6 +2227,10 @@ tcp_trace(TA_DROP, ostate, tp, (void *)tcp_saveipgen, &tcp_savetcp, 0); #endif + + if (tp) + INP_UNLOCK(inp); + if (thflags & TH_ACK) /* mtod() below is safe as long as hdr dropping is delayed */ tcp_respond(tp, mtod(m, void *), th, m, (tcp_seq)0, th->th_ack, @@ -2241,7 +2243,7 @@ (tcp_seq)0, TH_RST|TH_ACK); } if (headlocked) - INP_INFO_WUNLOCK(&tcbinfo); + INP_INFO_WUNLOCK(&tcbinfo); return; drop: @@ -2254,10 +2256,10 @@ &tcp_savetcp, 0); #endif if (tp) - INP_UNLOCK(inp); + INP_UNLOCK(inp); m_freem(m); if (headlocked) - INP_INFO_WUNLOCK(&tcbinfo); + INP_INFO_WUNLOCK(&tcbinfo); return; } ==== //depot/projects/kse/sys/pc98/i386/machdep.c#28 (text+ko) ==== @@ -35,7 +35,7 @@ * SUCH DAMAGE. * * from: @(#)machdep.c 7.4 (Berkeley) 6/3/91 - * $FreeBSD: src/sys/pc98/i386/machdep.c,v 1.280 2002/05/14 12:31:47 nyan Exp $ + * $FreeBSD: src/sys/pc98/i386/machdep.c,v 1.281 2002/06/25 09:10:38 kato Exp $ */ #include "opt_atalk.h" @@ -800,7 +800,11 @@ * the !SMP case, as there is no clean way to ensure that a CPU will be * woken when there is work available for it. */ +#ifdef SMP +static int cpu_idle_hlt = 0; +#else static int cpu_idle_hlt = 1; +#endif SYSCTL_INT(_machdep, OID_AUTO, cpu_idle_hlt, CTLFLAG_RW, &cpu_idle_hlt, 0, "Idle loop HLT enable"); @@ -813,7 +817,6 @@ void cpu_idle(void) { -#ifndef SMP if (cpu_idle_hlt) { disable_intr(); if (procrunnable()) { @@ -827,7 +830,6 @@ __asm __volatile("sti; hlt"); } } -#endif } /* ==== //depot/projects/kse/sys/pc98/pc98/clock.c#8 (text+ko) ==== @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * from: @(#)clock.c 7.2 (Berkeley) 5/12/91 - * $FreeBSD: src/sys/pc98/pc98/clock.c,v 1.113 2002/04/30 19:34:31 phk Exp $ + * $FreeBSD: src/sys/pc98/pc98/clock.c,v 1.114 2002/06/24 08:04:47 kato Exp $ */ /* @@ -1553,7 +1553,7 @@ } SYSCTL_PROC(_machdep, OID_AUTO, i8254_freq, CTLTYPE_INT | CTLFLAG_RW, - 0, sizeof(u_int), sysctl_machdep_i8254_freq, "I", ""); + 0, sizeof(u_int), sysctl_machdep_i8254_freq, "IU", ""); static int sysctl_machdep_tsc_freq(SYSCTL_HANDLER_ARGS) @@ -1573,7 +1573,7 @@ } SYSCTL_PROC(_machdep, OID_AUTO, tsc_freq, CTLTYPE_INT | CTLFLAG_RW, - 0, sizeof(u_int), sysctl_machdep_tsc_freq, "I", ""); + 0, sizeof(u_int), sysctl_machdep_tsc_freq, "IU", ""); static unsigned i8254_get_timecount(struct timecounter *tc) ==== //depot/projects/kse/sys/pc98/pc98/sio.c#17 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/pc98/pc98/sio.c,v 1.174 2002/06/19 13:20:20 nyan Exp $ + * $FreeBSD: src/sys/pc98/pc98/sio.c,v 1.175 2002/06/24 15:24:42 nyan Exp $ * from: @(#)com.c 7.5 (Berkeley) 5/16/91 * from: i386/isa sio.c,v 1.234 */ @@ -4270,11 +4270,13 @@ u_char cfcr; u_int divisor; struct siocnstate sp; + int unit = 0; /* XXX random value! */ siocniobase = port; + siocnunit = unit; comdefaultrate = speed; sio_consdev.cn_pri = CN_NORMAL; - sio_consdev.cn_dev = makedev(CDEV_MAJOR, 0); + sio_consdev.cn_dev = makedev(CDEV_MAJOR, unit); s = spltty(); @@ -4310,7 +4312,7 @@ u_char cfcr; u_int divisor; struct siocnstate sp; - int unit = 1; /* XXX !!! */ + int unit = 1; /* XXX random value! */ siogdbiobase = port; gdbdefaultrate = speed; @@ -4448,7 +4450,7 @@ int s; struct siocnstate sp; >>> TRUNCATED FOR MAIL (1000 lines) <<< To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe p4-projects" in the body of the message