PERFORCE change 187571 for review
John Baldwin
jhb at FreeBSD.org
Fri Jan 7 16:06:39 UTC 2011
http://p4web.freebsd.org/@@187571?ac=10
Change 187571 by jhb at jhb_jhbbsd on 2011/01/07 16:05:52
IFC @187570
Affected files ...
.. //depot/projects/smpng/share/man/man9/BUS_SETUP_INTR.9#3 integrate
.. //depot/projects/smpng/share/man/man9/ithread.9#2 integrate
.. //depot/projects/smpng/share/man/man9/mutex.9#2 integrate
.. //depot/projects/smpng/share/man/man9/osd.9#2 integrate
.. //depot/projects/smpng/share/man/man9/style.9#4 integrate
.. //depot/projects/smpng/share/man/man9/swi.9#2 integrate
.. //depot/projects/smpng/sys/amd64/include/elf.h#11 integrate
.. //depot/projects/smpng/sys/arm/at91/at91_st.c#11 integrate
.. //depot/projects/smpng/sys/arm/at91/at91rm9200.c#2 integrate
.. //depot/projects/smpng/sys/arm/at91/if_macb.c#3 integrate
.. //depot/projects/smpng/sys/arm/at91/uart_bus_at91usart.c#5 integrate
.. //depot/projects/smpng/sys/arm/at91/uart_cpu_at91rm9200usart.c#8 integrate
.. //depot/projects/smpng/sys/arm/at91/uart_dev_at91usart.c#21 integrate
.. //depot/projects/smpng/sys/arm/conf/SKYEYE#12 delete
.. //depot/projects/smpng/sys/arm/include/elf.h#11 integrate
.. //depot/projects/smpng/sys/arm/include/pmap.h#32 integrate
.. //depot/projects/smpng/sys/arm/mv/gpio.c#5 integrate
.. //depot/projects/smpng/sys/arm/s3c2xx0/s3c24x0_clk.c#2 integrate
.. //depot/projects/smpng/sys/boot/efi/libefi/efinet.c#6 integrate
.. //depot/projects/smpng/sys/boot/efi/libefi/efipart.c#2 integrate
.. //depot/projects/smpng/sys/boot/ficl/Makefile#19 integrate
.. //depot/projects/smpng/sys/boot/i386/Makefile.inc#11 integrate
.. //depot/projects/smpng/sys/boot/i386/boot2/Makefile#23 integrate
.. //depot/projects/smpng/sys/boot/i386/gptboot/Makefile#5 integrate
.. //depot/projects/smpng/sys/boot/i386/gptzfsboot/Makefile#5 integrate
.. //depot/projects/smpng/sys/boot/i386/zfsboot/Makefile#5 integrate
.. //depot/projects/smpng/sys/boot/pc98/Makefile.inc#9 integrate
.. //depot/projects/smpng/sys/boot/pc98/boot2/Makefile#21 integrate
.. //depot/projects/smpng/sys/boot/powerpc/Makefile#5 integrate
.. //depot/projects/smpng/sys/boot/powerpc/ps3/Makefile#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/conf.c#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/devicename.c#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/help.ps3#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/ldscript.powerpc#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/lv1call.S#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/lv1call.h#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/main.c#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/metadata.c#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/ppc64_elf_freebsd.c#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/ps3.h#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/ps3cons.c#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/ps3mmu.c#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/ps3net.c#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/start.S#1 branch
.. //depot/projects/smpng/sys/boot/powerpc/ps3/version#1 branch
.. //depot/projects/smpng/sys/boot/zfs/Makefile#6 integrate
.. //depot/projects/smpng/sys/conf/files.powerpc#64 integrate
.. //depot/projects/smpng/sys/conf/kern.mk#30 integrate
.. //depot/projects/smpng/sys/conf/options.powerpc#15 integrate
.. //depot/projects/smpng/sys/dev/adlink/adlink.c#16 integrate
.. //depot/projects/smpng/sys/dev/ispfw/asm_2322.h#2 integrate
.. //depot/projects/smpng/sys/dev/ispfw/asm_2400.h#3 integrate
.. //depot/projects/smpng/sys/dev/ispfw/asm_2500.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci_mv.c#2 integrate
.. //depot/projects/smpng/sys/dev/usb/serial/uplcom.c#18 integrate
.. //depot/projects/smpng/sys/dev/usb/usbdevs#163 integrate
.. //depot/projects/smpng/sys/fs/nfs/nfs_var.h#14 integrate
.. //depot/projects/smpng/sys/fs/nfs/nfsdport.h#5 integrate
.. //depot/projects/smpng/sys/fs/nfs/nfsport.h#12 integrate
.. //depot/projects/smpng/sys/fs/nfsserver/nfs_nfsdport.c#16 integrate
.. //depot/projects/smpng/sys/fs/nfsserver/nfs_nfsdserv.c#9 integrate
.. //depot/projects/smpng/sys/fs/nfsserver/nfs_nfsdsocket.c#8 integrate
.. //depot/projects/smpng/sys/fs/nfsserver/nfs_nfsdstate.c#13 integrate
.. //depot/projects/smpng/sys/geom/part/g_part.c#33 integrate
.. //depot/projects/smpng/sys/i386/include/elf.h#13 integrate
.. //depot/projects/smpng/sys/i386/xen/clock.c#11 integrate
.. //depot/projects/smpng/sys/i386/xen/mp_machdep.c#20 integrate
.. //depot/projects/smpng/sys/ia64/include/elf.h#18 integrate
.. //depot/projects/smpng/sys/kern/init_main.c#91 integrate
.. //depot/projects/smpng/sys/kern/kern_fork.c#130 integrate
.. //depot/projects/smpng/sys/kern/kern_kthread.c#28 integrate
.. //depot/projects/smpng/sys/kern/kern_synch.c#130 integrate
.. //depot/projects/smpng/sys/kern/sched_4bsd.c#99 integrate
.. //depot/projects/smpng/sys/kern/sched_ule.c#111 integrate
.. //depot/projects/smpng/sys/kern/subr_autoconf.c#16 integrate
.. //depot/projects/smpng/sys/kern/vfs_subr.c#184 integrate
.. //depot/projects/smpng/sys/mips/include/elf.h#7 integrate
.. //depot/projects/smpng/sys/mips/mips/mp_machdep.c#15 integrate
.. //depot/projects/smpng/sys/mips/rmi/dev/nlge/if_nlge.c#4 integrate
.. //depot/projects/smpng/sys/mips/rmi/dev/xlr/rge.c#9 integrate
.. //depot/projects/smpng/sys/mips/rmi/fmn.c#3 integrate
.. //depot/projects/smpng/sys/modules/aha/Makefile#4 integrate
.. //depot/projects/smpng/sys/modules/ahb/Makefile#4 integrate
.. //depot/projects/smpng/sys/net/flowtable.c#16 integrate
.. //depot/projects/smpng/sys/powerpc/aim/nexus.c#9 integrate
.. //depot/projects/smpng/sys/powerpc/aim/vm_machdep.c#11 integrate
.. //depot/projects/smpng/sys/powerpc/conf/GENERIC64#6 integrate
.. //depot/projects/smpng/sys/powerpc/conf/NOTES#21 integrate
.. //depot/projects/smpng/sys/powerpc/cpufreq/dfs.c#2 integrate
.. //depot/projects/smpng/sys/powerpc/cpufreq/pcr.c#4 integrate
.. //depot/projects/smpng/sys/powerpc/include/elf.h#13 integrate
.. //depot/projects/smpng/sys/powerpc/include/pte.h#13 integrate
.. //depot/projects/smpng/sys/powerpc/ofw/ofw_real.c#8 integrate
.. //depot/projects/smpng/sys/powerpc/powermac/macgpio.c#6 integrate
.. //depot/projects/smpng/sys/powerpc/powermac/uninorth.c#22 integrate
.. //depot/projects/smpng/sys/powerpc/powerpc/intr_machdep.c#24 integrate
.. //depot/projects/smpng/sys/powerpc/ps3/ehci_ps3.c#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/if_glc.c#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/if_glcreg.h#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/mmu_ps3.c#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/platform_ps3.c#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/ps3-hv-asm.awk#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/ps3-hv-header.awk#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/ps3-hvcall.S#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/ps3-hvcall.h#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/ps3-hvcall.master#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/ps3_syscons.c#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/ps3bus.c#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/ps3bus.h#1 branch
.. //depot/projects/smpng/sys/powerpc/ps3/ps3pic.c#1 branch
.. //depot/projects/smpng/sys/sparc64/include/elf.h#17 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/tsb.c#29 integrate
.. //depot/projects/smpng/sys/sun4v/include/elf.h#7 integrate
.. //depot/projects/smpng/sys/sys/bus.h#44 integrate
.. //depot/projects/smpng/sys/sys/priority.h#5 integrate
Differences ...
==== //depot/projects/smpng/share/man/man9/BUS_SETUP_INTR.9#3 (text+ko) ====
@@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man9/BUS_SETUP_INTR.9,v 1.24 2010/11/03 18:49:50 trasz Exp $
+.\" $FreeBSD: src/share/man/man9/BUS_SETUP_INTR.9,v 1.25 2011/01/06 21:14:34 jhb Exp $
.\"
.Dd November 3, 2010
.Dt BUS_SETUP_INTR 9
@@ -85,9 +85,8 @@
this may be used by the entropy device
.Pa /dev/random .
.Pp
-To define a time-critical handler (previously known as
-.Dv INTR_FAST )
-that will not execute any potentially blocking operation, use the
+To define a time-critical handler that will not execute any potentially
+blocking operation, use the
.Fa filter
argument.
See the
@@ -128,10 +127,7 @@
.Pp
Mutexes are not allowed to be held across calls to these functions.
.Ss "Filter Routines"
-A filter runs in a context very similar to what was known as an
-.Dv INTR_FAST
-routine in previous versions of
-.Fx .
+A filter runs in primary interrupt context.
In this context, normal mutexes cannot be used.
Only the spin lock version of these can be used (specified by passing
.Dv MTX_SPIN
==== //depot/projects/smpng/share/man/man9/ithread.9#2 (text+ko) ====
@@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man9/ithread.9,v 1.12 2006/08/25 19:04:42 pav Exp $
+.\" $FreeBSD: src/share/man/man9/ithread.9,v 1.13 2011/01/06 21:14:34 jhb Exp $
.\"
.Dd August 25, 2006
.Dt ITHREAD 9
@@ -180,15 +180,6 @@
flag specifies that this handler cannot share an interrupt thread with
another handler.
The
-.Dv INTR_FAST
-flag specifies that when this handler is executed, it should be run immediately
-rather than being run asynchronously when its interrupt thread is scheduled to
-run.
-The
-.Dv INTR_FAST
-flag implies
-.Dv INTR_EXCL .
-The
.Dv INTR_MPSAFE
flag specifies that this handler is MP safe in that it does not need the
Giant mutex to be held while it is executed.
@@ -198,10 +189,8 @@
source of entropy, and thus that entropy should be gathered when an interrupt
from the handler's source triggers.
Presently, the
-.Dv INTR_FAST
-and
.Dv INTR_ENTROPY
-flags are not valid for software interrupt handlers.
+flag is not valid for software interrupt handlers.
.Pp
It is not permitted to sleep in an interrupt thread; hence, any memory
or zone allocations in an interrupt thread should be specified with the
@@ -237,7 +226,7 @@
struct ithd *ithd;
int error;
- if (flags & (INTR_FAST | INTR_ENTROPY))
+ if (flags & INTR_ENTROPY)
return (EINVAL);
ithd = (ithdp != NULL) ? *ithdp : NULL;
==== //depot/projects/smpng/share/man/man9/mutex.9#2 (text+ko) ====
@@ -26,7 +26,7 @@
.\" SUCH DAMAGE.
.\"
.\" from BSDI $Id: mutex.4,v 1.1.2.3 1998/04/27 22:53:13 ewv Exp $
-.\" $FreeBSD: src/share/man/man9/mutex.9,v 1.55 2007/03/30 18:07:26 julian Exp $
+.\" $FreeBSD: src/share/man/man9/mutex.9,v 1.56 2011/01/06 21:14:34 jhb Exp $
.\"
.Dd December 21, 2006
.Dt MUTEX 9
@@ -128,9 +128,7 @@
mutexes.
These should only be used to protect data shared with primary interrupt
code.
-This includes
-.Dv INTR_FAST
-interrupt handlers and low level scheduling code.
+This includes interrupt filters and low level scheduling code.
In all architectures both acquiring and releasing of a
uncontested spin mutex is more expensive than the same operation
on a non-spin mutex.
==== //depot/projects/smpng/share/man/man9/osd.9#2 (text+ko) ====
@@ -23,7 +23,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man9/osd.9,v 1.1 2011/01/05 11:49:23 lstewart Exp $
+.\" $FreeBSD: src/share/man/man9/osd.9,v 1.2 2011/01/06 04:05:25 lstewart Exp $
.\"
.Dd January 5, 2011
.Dt OSD 9
@@ -34,7 +34,7 @@
.Nm osd_deregister ,
.Nm osd_set ,
.Nm osd_get ,
-.Nm osd_del,
+.Nm osd_del ,
.Nm osd_call ,
.Nm osd_exit
.Nd Object Specific Data
==== //depot/projects/smpng/share/man/man9/style.9#4 (text+ko) ====
@@ -24,9 +24,9 @@
.\" SUCH DAMAGE.
.\"
.\" From: @(#)style 1.14 (Berkeley) 4/28/95
-.\" $FreeBSD: src/share/man/man9/style.9,v 1.132 2010/10/08 12:40:16 uqs Exp $
+.\" $FreeBSD: src/share/man/man9/style.9,v 1.134 2011/01/07 08:34:12 trasz Exp $
.\"
-.Dd December 17, 2008
+.Dd January 7, 2010
.Dt STYLE 9
.Os
.Sh NAME
@@ -46,7 +46,7 @@
* Style guide for FreeBSD. Based on the CSRG's KNF (Kernel Normal Form).
*
* @(#)style 1.14 (Berkeley) 4/28/95
- * $FreeBSD: src/share/man/man9/style.9,v 1.132 2010/10/08 12:40:16 uqs Exp $
+ * $FreeBSD: src/share/man/man9/style.9,v 1.134 2011/01/07 08:34:12 trasz Exp $
*/
/*
@@ -111,7 +111,7 @@
#endif
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/share/man/man9/style.9,v 1.132 2010/10/08 12:40:16 uqs Exp $");
+__FBSDID("$FreeBSD: src/share/man/man9/style.9,v 1.134 2011/01/07 08:34:12 trasz Exp $");
.Ed
.Pp
Leave another blank line before the header files.
@@ -470,9 +470,9 @@
.Li FALLTHROUGH
comment.
Numerical arguments should be checked for accuracy.
-Code that cannot be reached should have a
+Code which is unreachable for non-obvious reasons may be marked /*
.Li NOTREACHED
-comment.
+*/.
.Bd -literal
while ((ch = getopt(argc, argv, "abNn:")) != -1)
switch (ch) { /* Indent the switch. */
@@ -496,7 +496,6 @@
case '?':
default:
usage();
- /* NOTREACHED */
}
argc -= optind;
argv += optind;
==== //depot/projects/smpng/share/man/man9/swi.9#2 (text+ko) ====
@@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man9/swi.9,v 1.14 2004/12/29 04:29:06 jkoshy Exp $
+.\" $FreeBSD: src/share/man/man9/swi.9,v 1.15 2011/01/06 21:14:34 jhb Exp $
.\"
.Dd October 30, 2000
.Dt SWI 9
@@ -179,10 +179,8 @@
.It Bq Er EINVAL
The
.Fa flags
-argument specifies either
-.Dv INTR_ENTROPY
-or
-.Dv INTR_FAST .
+argument specifies
+.Dv INTR_ENTROPY .
.It Bq Er EINVAL
The
.Fa ithdp
==== //depot/projects/smpng/sys/amd64/include/elf.h#11 (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/amd64/include/elf.h,v 1.24 2010/08/17 08:55:45 kib Exp $
+ * $FreeBSD: src/sys/amd64/include/elf.h,v 1.25 2011/01/07 14:22:34 kib Exp $
*/
#ifndef _MACHINE_ELF_H_
@@ -94,8 +94,9 @@
#define AT_NCPUS 19 /* Number of CPUs. */
#define AT_PAGESIZES 20 /* Pagesizes. */
#define AT_PAGESIZESLEN 21 /* Number of pagesizes. */
+#define AT_STACKPROT 23 /* Initial stack protection. */
-#define AT_COUNT 22 /* Count of defined aux entry types. */
+#define AT_COUNT 24 /* Count of defined aux entry types. */
/*
* Relocation types.
==== //depot/projects/smpng/sys/arm/at91/at91_st.c#11 (text) ====
@@ -24,7 +24,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/at91/at91_st.c,v 1.10 2008/11/25 00:13:26 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/at91/at91_st.c,v 1.11 2011/01/05 23:45:07 imp Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -77,11 +77,7 @@
static struct timecounter at91st_timecounter = {
at91st_get_timecount, /* get_timecount */
NULL, /* no poll_pps */
-#ifdef SKYEYE_WORKAROUNDS
- 0xffffffffu, /* counter_mask */
-#else
0xfffffu, /* counter_mask */
-#endif
32768, /* frequency */
"AT91RM9200 timer", /* name */
1000 /* quality */
@@ -138,18 +134,10 @@
DRIVER_MODULE(at91_st, atmelarm, at91st_driver, at91st_devclass, 0, 0);
-#ifdef SKYEYE_WORKAROUNDS
-static unsigned long tot_count = 0;
-#endif
-
static unsigned
at91st_get_timecount(struct timecounter *tc)
{
-#ifdef SKYEYE_WORKAROUNDS
- return (tot_count);
-#else
return (st_crtr());
-#endif
}
/*
@@ -189,9 +177,6 @@
/* The interrupt is shared, so we have to make sure it's for us. */
if (RD4(ST_SR) & ST_SR_PITS) {
-#ifdef SKYEYE_WORKAROUNDS
- tot_count += 32768 / hz;
-#endif
hardclock(TRAPF_USERMODE(fp), TRAPF_PC(fp));
return (FILTER_HANDLED);
}
==== //depot/projects/smpng/sys/arm/at91/at91rm9200.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/at91/at91rm9200.c,v 1.1 2010/10/06 22:25:21 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/at91/at91rm9200.c,v 1.2 2011/01/05 23:45:07 imp Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -121,15 +121,11 @@
DEVICE("at91_ssc", SSC2, 2),
DEVICE("spi", SPI, 0),
-#ifndef SKYEYE_WORKAROUNDS
DEVICE("uart", DBGU, 0),
DEVICE("uart", USART0, 1),
DEVICE("uart", USART1, 2),
DEVICE("uart", USART2, 3),
DEVICE("uart", USART3, 4),
-#else
- DEVICE("uart", USART0, 0),
-#endif
DEVICE("at91_aic", AIC, 0),
DEVICE("at91_mc", MC, 0),
DEVICE("at91_tc", TC0, 0),
==== //depot/projects/smpng/sys/arm/at91/if_macb.c#3 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/at91/if_macb.c,v 1.3 2010/10/15 15:00:30 marius Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/at91/if_macb.c,v 1.4 2011/01/06 19:32:00 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -137,7 +137,6 @@
static int macb_intr_rx_locked(struct macb_softc *sc, int count);
static void macb_intr_task(void *arg, int pending __unused);
-static void macb_tx_task(void *arg, int pending __unused);
static void macb_intr(void *xsc);
static void
@@ -533,7 +532,7 @@
ifp->if_drv_flags &= ~IFF_DRV_RUNNING;
macbinit_locked(sc);
if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd))
- taskqueue_enqueue(sc->sc_tq, &sc->sc_tx_task);
+ macbstart_locked(ifp);
}
@@ -837,6 +836,7 @@
return;
}
+ MACB_LOCK(sc);
status = read_4(sc, EMAC_ISR);
while (status) {
@@ -846,16 +846,15 @@
}
if (status & TCOMP_INTERRUPT) {
- MACB_LOCK(sc);
macb_tx_cleanup(sc);
- MACB_UNLOCK(sc);
}
status = read_4(sc, EMAC_ISR);
}
if (!IFQ_DRV_IS_EMPTY(&ifp->if_snd))
- taskqueue_enqueue(sc->sc_tq, &sc->sc_tx_task);
+ macbstart_locked(ifp);
+ MACB_UNLOCK(sc);
}
static inline int
@@ -1026,16 +1025,6 @@
static void
-macb_tx_task(void *arg, int pending __unused)
-{
- struct ifnet *ifp;
-
- ifp = (struct ifnet *)arg;
- macbstart(ifp);
-}
-
-
-static void
macbstop(struct macb_softc *sc)
{
struct ifnet *ifp = sc->ifp;
@@ -1392,7 +1381,6 @@
sc->if_flags = ifp->if_flags;
TASK_INIT(&sc->sc_intr_task, 0, macb_intr_task, sc);
- TASK_INIT(&sc->sc_tx_task, 0, macb_tx_task, ifp);
sc->sc_tq = taskqueue_create_fast("macb_taskq", M_WAITOK,
taskqueue_thread_enqueue, &sc->sc_tq);
@@ -1434,8 +1422,18 @@
struct macb_softc *sc;
sc = device_get_softc(dev);
+ ether_ifdetach(sc->ifp);
+ MACB_LOCK(sc);
macbstop(sc);
+ MACB_UNLOCK(sc);
+ callout_drain(&sc->tick_ch);
+ bus_teardown_intr(dev, sc->irq_res, sc->intrhand);
+ taskqueue_drain(sc->sc_tq, &sc->sc_intr_task);
+ taskqueue_free(sc->sc_tq);
macb_deactivate(dev);
+ bus_release_resource(dev, SYS_RES_IRQ, 0, sc->irq_res);
+ bus_release_resource(dev, SYS_RES_MEMORY, 0, sc->mem_res);
+ MACB_LOCK_DESTROY(sc);
return (0);
}
==== //depot/projects/smpng/sys/arm/at91/uart_bus_at91usart.c#5 (text) ====
@@ -26,7 +26,7 @@
#include "opt_uart.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/at91/uart_bus_at91usart.c,v 1.5 2009/01/22 21:56:41 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/at91/uart_bus_at91usart.c,v 1.6 2011/01/05 23:45:07 imp Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -76,11 +76,7 @@
switch (device_get_unit(dev))
{
case 0:
-#ifdef SKYEYE_WORKAROUNDS
- device_set_desc(dev, "USART0");
-#else
device_set_desc(dev, "DBGU");
-#endif
/*
* Setting sc_sysdev makes this device a 'system device' and
* indirectly makes it the system console.
==== //depot/projects/smpng/sys/arm/at91/uart_cpu_at91rm9200usart.c#8 (text) ====
@@ -29,7 +29,7 @@
#include "opt_uart.h"
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/at91/uart_cpu_at91rm9200usart.c,v 1.8 2010/10/06 22:25:21 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/at91/uart_cpu_at91rm9200usart.c,v 1.9 2011/01/05 23:45:07 imp Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -73,13 +73,8 @@
* XXX: Not pretty, but will work because we map the needed addresses
* early.
*/
-#ifdef SKYEYE_WORKAROUNDS
- di->bas.bsh = AT91RM92_BASE + AT91RM92_USART0_BASE;
- di->baudrate = 38400;
-#else
di->bas.bsh = AT91RM92_BASE + AT91RM92_DBGU_BASE;
di->baudrate = 115200;
-#endif
di->bas.regshft = 0;
di->bas.rclk = 0;
di->databits = 8;
==== //depot/projects/smpng/sys/arm/at91/uart_dev_at91usart.c#21 (text) ====
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.21 2010/10/06 22:25:21 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/at91/uart_dev_at91usart.c,v 1.22 2011/01/05 23:45:07 imp Exp $");
#include "opt_comconsole.h"
@@ -315,7 +315,6 @@
return (0);
}
-#ifndef SKYEYE_WORKAROUNDS
static void
at91_getaddr(void *arg, bus_dma_segment_t *segs, int nsegs, int error)
{
@@ -323,15 +322,12 @@
return;
*(bus_addr_t *)arg = segs[0].ds_addr;
}
-#endif
static int
at91_usart_bus_attach(struct uart_softc *sc)
{
-#ifndef SKYEYE_WORKAROUNDS
int err;
int i;
-#endif
uint32_t cr;
struct at91_usart_softc *atsc;
@@ -349,7 +345,6 @@
atsc->flags |= HAS_TIMEOUT;
WR4(&sc->sc_bas, USART_IDR, 0xffffffff);
-#ifndef SKYEYE_WORKAROUNDS
/*
* Allocate DMA tags and maps
*/
@@ -380,7 +375,6 @@
atsc->ping = &atsc->ping_pong[0];
atsc->pong = &atsc->ping_pong[1];
}
-#endif
/*
* Prime the pump with the RX buffer. We use two 64 byte bounce
@@ -414,34 +408,25 @@
WR4(&sc->sc_bas, USART_IER, USART_CSR_RXRDY);
}
WR4(&sc->sc_bas, USART_IER, USART_CSR_RXBRK);
-#ifndef SKYEYE_WORKAROUNDS
errout:;
// XXX bad
return (err);
-#else
- return (0);
-#endif
}
static int
at91_usart_bus_transmit(struct uart_softc *sc)
{
-#ifndef SKYEYE_WORKAROUNDS
bus_addr_t addr;
-#endif
struct at91_usart_softc *atsc;
atsc = (struct at91_usart_softc *)sc;
-#ifndef SKYEYE_WORKAROUNDS
if (bus_dmamap_load(atsc->dmatag, atsc->tx_map, sc->sc_txbuf,
sc->sc_txdatasz, at91_getaddr, &addr, 0) != 0)
return (EAGAIN);
bus_dmamap_sync(atsc->dmatag, atsc->tx_map, BUS_DMASYNC_PREWRITE);
-#endif
uart_lock(sc->sc_hwmtx);
sc->sc_txbusy = 1;
-#ifndef SKYEYE_WORKAROUNDS
/*
* Setup the PDC to transfer the data and interrupt us when it
* is done. We've already requested the interrupt.
@@ -451,15 +436,6 @@
WR4(&sc->sc_bas, PDC_PTCR, PDC_PTCR_TXTEN);
WR4(&sc->sc_bas, USART_IER, USART_CSR_ENDTX);
uart_unlock(sc->sc_hwmtx);
-#else
- for (int i = 0; i < sc->sc_txdatasz; i++)
- at91_usart_putc(&sc->sc_bas, sc->sc_txbuf[i]);
- /*
- * XXX: Gross hack : Skyeye doesn't raise an interrupt once the
- * transfer is done, so simulate it.
- */
- WR4(&sc->sc_bas, USART_IER, USART_CSR_TXRDY);
-#endif
return (0);
}
static int
==== //depot/projects/smpng/sys/arm/include/elf.h#11 (text+ko) ====
@@ -24,7 +24,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/arm/include/elf.h,v 1.12 2010/08/17 08:55:45 kib Exp $
+ * $FreeBSD: src/sys/arm/include/elf.h,v 1.13 2011/01/07 14:22:34 kib Exp $
*/
#ifndef _MACHINE_ELF_H_
@@ -82,8 +82,9 @@
#define AT_NCPUS 19 /* Number of CPUs. */
#define AT_PAGESIZES 20 /* Pagesizes. */
#define AT_PAGESIZESLEN 21 /* Number of pagesizes. */
+#define AT_STACKPROT 23 /* Initial stack protection. */
-#define AT_COUNT 22 /* Count of defined aux entry types. */
+#define AT_COUNT 24 /* Count of defined aux entry types. */
#define R_ARM_COUNT 33 /* Count of defined relocation types. */
==== //depot/projects/smpng/sys/arm/include/pmap.h#32 (text+ko) ====
@@ -44,7 +44,7 @@
* from: @(#)pmap.h 7.4 (Berkeley) 5/12/91
* from: FreeBSD: src/sys/i386/include/pmap.h,v 1.70 2000/11/30
*
- * $FreeBSD: src/sys/arm/include/pmap.h,v 1.35 2010/08/11 23:22:53 jhb Exp $
+ * $FreeBSD: src/sys/arm/include/pmap.h,v 1.36 2011/01/05 22:15:57 imp Exp $
*/
#ifndef _MACHINE_PMAP_H_
@@ -336,10 +336,6 @@
#endif /* ARM_NMMUS > 1 */
-#ifdef SKYEYE_WORKAROUNDS
-#define PMAP_NEEDS_PTE_SYNC 1
-#define PMAP_INCLUDE_PTE_SYNC
-#else
#if (ARM_MMU_SA1 == 1) && (ARM_NMMUS == 1)
#define PMAP_NEEDS_PTE_SYNC 1
#define PMAP_INCLUDE_PTE_SYNC
@@ -349,7 +345,6 @@
#elif (ARM_MMU_SA1 == 0)
#define PMAP_NEEDS_PTE_SYNC 0
#endif
-#endif
/*
* These macros return various bits based on kernel/user and protection.
==== //depot/projects/smpng/sys/arm/mv/gpio.c#5 (text+ko) ====
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/mv/gpio.c,v 1.5 2010/06/13 13:28:53 raj Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/mv/gpio.c,v 1.6 2011/01/06 21:03:55 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -74,7 +74,7 @@
static int mv_gpio_probe(device_t);
static int mv_gpio_attach(device_t);
-static void mv_gpio_intr(void *);
+static int mv_gpio_intr(void *);
static void mv_gpio_intr_handler(int pin);
static uint32_t mv_gpio_reg_read(uint32_t reg);
@@ -193,8 +193,7 @@
for (i = 0; i < sc->irq_num; i++) {
if (bus_setup_intr(dev, sc->res[1 + i],
- INTR_TYPE_MISC | INTR_FAST,
- (driver_filter_t *)mv_gpio_intr, NULL,
+ INTR_TYPE_MISC, mv_gpio_intr, NULL,
sc, &sc->ih_cookie[i]) != 0) {
bus_release_resources(dev, mv_gpio_res, sc->res);
device_printf(dev, "could not set up intr %d\n", i);
@@ -208,7 +207,7 @@
return (0);
}
-static void
+static int
mv_gpio_intr(void *arg)
{
uint32_t int_cause, gpio_val;
@@ -241,6 +240,8 @@
i++;
}
}
+
+ return (FILTER_HANDLED);
}
/*
==== //depot/projects/smpng/sys/arm/s3c2xx0/s3c24x0_clk.c#2 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/s3c2xx0/s3c24x0_clk.c,v 1.1 2010/03/20 03:39:35 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/s3c2xx0/s3c24x0_clk.c,v 1.2 2011/01/06 21:08:06 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -200,7 +200,7 @@
if (!irq)
panic("Unable to allocate the clock irq handler.\n");
- err = bus_setup_intr(dev, irq, INTR_TYPE_CLK | INTR_FAST,
+ err = bus_setup_intr(dev, irq, INTR_TYPE_CLK,
clock_intr, NULL, NULL, &ihl);
if (err != 0)
panic("Unable to setup the clock irq handler.\n");
==== //depot/projects/smpng/sys/boot/efi/libefi/efinet.c#6 (text+ko) ====
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/efi/libefi/efinet.c,v 1.7 2006/11/05 22:03:03 marcel Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/efi/libefi/efinet.c,v 1.8 2011/01/06 20:50:16 marcel Exp $");
#include <sys/param.h>
#include <netinet/in.h>
@@ -262,6 +262,7 @@
int err, i, nifs;
sz = 0;
+ handles = NULL;
status = BS->LocateHandle(ByProtocol, &sn_guid, 0, &sz, 0);
if (status == EFI_BUFFER_TOO_SMALL) {
handles = (EFI_HANDLE *)malloc(sz);
==== //depot/projects/smpng/sys/boot/efi/libefi/efipart.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/boot/efi/libefi/efipart.c,v 1.1 2010/01/09 22:54:29 marcel Exp $");
+__FBSDID("$FreeBSD: src/sys/boot/efi/libefi/efipart.c,v 1.2 2011/01/06 20:50:16 marcel Exp $");
#include <sys/param.h>
#include <sys/time.h>
@@ -69,6 +69,7 @@
int err;
sz = 0;
+ hin = NULL;
status = BS->LocateHandle(ByProtocol, &blkio_guid, 0, &sz, 0);
if (status == EFI_BUFFER_TOO_SMALL) {
hin = (EFI_HANDLE *)malloc(sz * 2);
==== //depot/projects/smpng/sys/boot/ficl/Makefile#19 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.48 2010/08/23 01:43:47 imp Exp $
+# $FreeBSD: src/sys/boot/ficl/Makefile,v 1.51 2011/01/05 22:24:33 dim Exp $
#
.PATH: ${.CURDIR}/${MACHINE_CPUARCH:S/amd64/i386/}
BASE_SRCS= dict.c ficl.c fileaccess.c float.c loader.c math64.c \
@@ -9,10 +9,7 @@
CFLAGS+= -ffreestanding
.if ${MACHINE_CPUARCH} == "i386" || ${MACHINE_CPUARCH} == "amd64"
CFLAGS+= -mpreferred-stack-boundary=2
-CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2
-.endif
-.if ${MACHINE_CPUARCH} == "i386"
-CFLAGS+= -mno-sse3
+CFLAGS+= -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float
.endif
.if ${MACHINE_CPUARCH} == "powerpc" || ${MACHINE_CPUARCH} == "arm"
CFLAGS+= -msoft-float
==== //depot/projects/smpng/sys/boot/i386/Makefile.inc#11 (text+ko) ====
@@ -1,12 +1,12 @@
# Common defines for all of /sys/boot/i386/
#
-# $FreeBSD: src/sys/boot/i386/Makefile.inc,v 1.14 2010/08/23 01:42:09 imp Exp $
+# $FreeBSD: src/sys/boot/i386/Makefile.inc,v 1.15 2011/01/05 22:24:33 dim Exp $
BINDIR?= /boot
LOADER_ADDRESS?=0x200000
CFLAGS+= -ffreestanding -mpreferred-stack-boundary=2 \
- -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3
+ -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float
LDFLAGS+= -nostdlib
.if ${MACHINE_CPUARCH} == "amd64"
==== //depot/projects/smpng/sys/boot/i386/boot2/Makefile#23 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/boot/i386/boot2/Makefile,v 1.65 2010/09/21 21:41:45 dim Exp $
+# $FreeBSD: src/sys/boot/i386/boot2/Makefile,v 1.66 2011/01/05 21:46:08 dim Exp $
.include <bsd.own.mk>
@@ -31,7 +31,6 @@
-fno-unit-at-a-time \
-mno-align-long-strings \
-mrtd \
- -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 \
-D${BOOT2_UFS} \
-DFLAGS=${BOOT_BOOT1_FLAGS} \
-DSIOPRT=${BOOT_COMCONSOLE_PORT} \
==== //depot/projects/smpng/sys/boot/i386/gptboot/Makefile#5 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/boot/i386/gptboot/Makefile,v 1.65 2010/10/08 10:27:52 pho Exp $
+# $FreeBSD: src/sys/boot/i386/gptboot/Makefile,v 1.66 2011/01/05 21:46:08 dim Exp $
.PATH: ${.CURDIR}/../boot2 ${.CURDIR}/../common ${.CURDIR}/../../common
@@ -26,7 +26,6 @@
-fno-unit-at-a-time \
-mno-align-long-strings \
-mrtd \
- -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 \
-DGPT \
-D${GPTBOOT_UFS} \
-DSIOPRT=${BOOT_COMCONSOLE_PORT} \
==== //depot/projects/smpng/sys/boot/i386/gptzfsboot/Makefile#5 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/boot/i386/gptzfsboot/Makefile,v 1.5 2010/09/24 19:49:12 pjd Exp $
+# $FreeBSD: src/sys/boot/i386/gptzfsboot/Makefile,v 1.6 2011/01/05 21:46:08 dim Exp $
.PATH: ${.CURDIR}/../boot2 ${.CURDIR}/../gptboot \
${.CURDIR}/../zfsboot ${.CURDIR}/../common \
@@ -23,7 +23,6 @@
-fno-unit-at-a-time \
-mno-align-long-strings \
-mrtd \
- -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 \
-DGPT -DBOOT2 \
-DSIOPRT=${BOOT_COMCONSOLE_PORT} \
-DSIOFMT=${B2SIOFMT} \
==== //depot/projects/smpng/sys/boot/i386/zfsboot/Makefile#5 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/boot/i386/zfsboot/Makefile,v 1.4 2010/09/24 19:49:12 pjd Exp $
+# $FreeBSD: src/sys/boot/i386/zfsboot/Makefile,v 1.5 2011/01/05 21:46:08 dim Exp $
.PATH: ${.CURDIR}/../boot2 ${.CURDIR}/../common ${.CURDIR}/../../common
@@ -24,7 +24,6 @@
-fno-unit-at-a-time \
-mno-align-long-strings \
-mrtd \
- -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 \
-DBOOT2 \
-DFLAGS=${BOOT_BOOT1_FLAGS} \
-DSIOPRT=${BOOT_COMCONSOLE_PORT} \
==== //depot/projects/smpng/sys/boot/pc98/Makefile.inc#9 (text+ko) ====
@@ -1,12 +1,12 @@
# Common defines for all of /sys/boot/pc98/
#
-# $FreeBSD: src/sys/boot/pc98/Makefile.inc,v 1.10 2009/12/31 12:17:38 nyan Exp $
+# $FreeBSD: src/sys/boot/pc98/Makefile.inc,v 1.11 2011/01/05 22:24:33 dim Exp $
BINDIR?= /boot
LOADER_ADDRESS?=0x200000
CFLAGS+= -ffreestanding -mpreferred-stack-boundary=2 \
- -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 \
+ -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -msoft-float \
-Os -DPC98
LDFLAGS+= -nostdlib
==== //depot/projects/smpng/sys/boot/pc98/boot2/Makefile#21 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/boot/pc98/boot2/Makefile,v 1.28 2010/09/21 21:41:45 dim Exp $
+# $FreeBSD: src/sys/boot/pc98/boot2/Makefile,v 1.29 2011/01/05 21:46:08 dim Exp $
.include <bsd.own.mk>
@@ -28,7 +28,6 @@
-fno-unit-at-a-time \
-mno-align-long-strings \
-mrtd \
- -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 \
-D${BOOT2_UFS} \
-DFLAGS=${BOOT_BOOT1_FLAGS} \
-DSIOPRT=${BOOT_COMCONSOLE_PORT} \
==== //depot/projects/smpng/sys/boot/powerpc/Makefile#5 (text+ko) ====
@@ -1,5 +1,5 @@
-# $FreeBSD: src/sys/boot/powerpc/Makefile,v 1.4 2008/10/14 03:32:41 nwhitehorn Exp $
+# $FreeBSD: src/sys/boot/powerpc/Makefile,v 1.5 2011/01/06 04:12:29 nwhitehorn Exp $
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list