PERFORCE change 50174 for review
Marcel Moolenaar
marcel at FreeBSD.org
Thu Apr 1 23:45:14 PST 2004
http://perforce.freebsd.org/chv.cgi?CH=50174
Change 50174 by marcel at marcel_nfs on 2004/04/01 23:45:11
IFC @50173
Affected files ...
.. //depot/projects/gdb/MAINTAINERS#5 integrate
.. //depot/projects/gdb/bin/ps/ps.1#7 integrate
.. //depot/projects/gdb/etc/root/dot.cshrc#2 integrate
.. //depot/projects/gdb/lib/libc/net/nsdispatch.c#4 integrate
.. //depot/projects/gdb/lib/libc/stdlib/getopt_long.c#4 integrate
.. //depot/projects/gdb/sbin/ffsinfo/Makefile#2 integrate
.. //depot/projects/gdb/sbin/growfs/Makefile#2 integrate
.. //depot/projects/gdb/share/man/man9/mbuf.9#4 integrate
.. //depot/projects/gdb/sys/alpha/alpha/machdep.c#6 integrate
.. //depot/projects/gdb/sys/conf/files#10 integrate
.. //depot/projects/gdb/sys/conf/files.i386#9 integrate
.. //depot/projects/gdb/sys/conf/majors#4 integrate
.. //depot/projects/gdb/sys/dev/acpica/acpi.c#8 integrate
.. //depot/projects/gdb/sys/dev/acpica/acpivar.h#6 integrate
.. //depot/projects/gdb/sys/dev/uart/uart_cpu_sparc64.c#7 integrate
.. //depot/projects/gdb/sys/dev/uart/uart_dev_ns8250.c#2 integrate
.. //depot/projects/gdb/sys/dev/uart/uart_kbd_sun.c#2 integrate
.. //depot/projects/gdb/sys/dev/usb/usb_subr.c#5 integrate
.. //depot/projects/gdb/sys/i386/conf/GENERIC.hints#3 integrate
.. //depot/projects/gdb/sys/kern/kern_thr.c#4 integrate
.. //depot/projects/gdb/sys/kern/subr_bus.c#5 integrate
.. //depot/projects/gdb/sys/kern/sys_process.c#5 integrate
.. //depot/projects/gdb/sys/net/if_sl.c#3 integrate
.. //depot/projects/gdb/sys/netinet6/udp6_usrreq.c#4 integrate
.. //depot/projects/gdb/sys/pc98/conf/NOTES#6 integrate
.. //depot/projects/gdb/sys/pci/if_ste.c#5 integrate
.. //depot/projects/gdb/sys/powerpc/powermac/grackle.c#3 integrate
.. //depot/projects/gdb/usr.sbin/cdcontrol/cdcontrol.c#2 integrate
Differences ...
==== //depot/projects/gdb/MAINTAINERS#5 (text+ko) ====
@@ -1,4 +1,4 @@
-$FreeBSD: src/MAINTAINERS,v 1.84 2004/03/25 20:02:17 scottl Exp $
+$FreeBSD: src/MAINTAINERS,v 1.85 2004/04/01 20:31:48 johan Exp $
subsystem login notes
-----------------------------
@@ -114,8 +114,6 @@
lib/libusbhid/Makefile:MAINTAINER= n_hibma at FreeBSD.ORG
lib/libz/Makefile:MAINTAINER= peter at FreeBSD.org
sbin/dhclient/Makefile.inc:MAINTAINER= murray at FreeBSD.org
-sbin/ffsinfo/Makefile:MAINTAINER= tomsoft at FreeBSD.ORG, chm at FreeBSD.ORG
-sbin/growfs/Makefile:MAINTAINER= tomsoft at FreeBSD.ORG, chm at FreeBSD.ORG
sbin/ipf/Makefile:MAINTAINER= darrenr at freebsd.org
sbin/ipfs/Makefile:MAINTAINER= darrenr at freebsd.org
sbin/ipfstat/Makefile:MAINTAINER= darrenr at freebsd.org
==== //depot/projects/gdb/bin/ps/ps.1#7 (text+ko) ====
@@ -30,7 +30,7 @@
.\" SUCH DAMAGE.
.\"
.\" @(#)ps.1 8.3 (Berkeley) 4/18/94
-.\" $FreeBSD: src/bin/ps/ps.1,v 1.73 2004/03/31 23:51:12 gad Exp $
+.\" $FreeBSD: src/bin/ps/ps.1,v 1.74 2004/04/01 13:28:36 gad Exp $
.\"
.Dd March 27, 2004
.Dt PS 1
@@ -73,7 +73,7 @@
.Pp
A different set of processes can be selected for display by using any
combination of the
-.Fl a, G , p , T , t
+.Fl a , G , p , T , t
and
.Fl U
options.
@@ -93,7 +93,7 @@
terminal, then by process
.Tn ID .
The
-.Fl m, r, u,
+.Fl m , r , u ,
and
.Fl v
options will change the sort order.
==== //depot/projects/gdb/etc/root/dot.cshrc#2 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/etc/root/dot.cshrc,v 1.28 2001/01/10 02:37:16 archie Exp $
+# $FreeBSD: src/etc/root/dot.cshrc,v 1.29 2004/04/01 19:28:00 krion Exp $
#
# .cshrc - csh resource script, read at beginning of execution by each shell
#
@@ -22,7 +22,7 @@
if ($?prompt) then
# An interactive shell -- set some stuff up
- set prompt = "`hostname -s`# "
+ set prompt = "`/bin/hostname -s`# "
set filec
set history = 100
set savehist = 100
==== //depot/projects/gdb/lib/libc/net/nsdispatch.c#4 (text+ko) ====
@@ -68,7 +68,7 @@
*
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.11 2004/03/30 15:56:15 nectar Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/net/nsdispatch.c,v 1.12 2004/04/01 19:12:45 nectar Exp $");
#include "namespace.h"
#include <sys/param.h>
@@ -343,10 +343,8 @@
goto fin2;
}
_nsyyin = fopen(path, "r");
- if (_nsyyin == NULL) {
- result = errno;
+ if (_nsyyin == NULL)
goto fin;
- }
VECTOR_FREE(_nsmap, &_nsmapsize, sizeof(*_nsmap),
(vector_free_elem)ns_dbt_free);
VECTOR_FREE(_nsmod, &_nsmodsize, sizeof(*_nsmod),
==== //depot/projects/gdb/lib/libc/stdlib/getopt_long.c#4 (text+ko) ====
@@ -62,7 +62,7 @@
#endif /* LIBC_SCCS and not lint */
#endif
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/stdlib/getopt_long.c,v 1.9 2004/03/06 14:24:10 ache Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/stdlib/getopt_long.c,v 1.11 2004/04/01 22:32:28 ache Exp $");
#include <err.h>
#include <errno.h>
@@ -107,7 +107,7 @@
static int getopt_internal(int, char * const *, const char *,
const struct option *, int *, int);
static int parse_long_options(char * const *, const char *,
- const struct option *, int *, int);
+ const struct option *, int *, int, int);
static int gcd(int, int);
static void permute_args(int, int, int, char * const *);
@@ -197,14 +197,14 @@
*/
static int
parse_long_options(char * const *nargv, const char *options,
- const struct option *long_options, int *idx, int short_too)
+ const struct option *long_options, int *idx, int short_too, int flags)
{
char *current_argv, *has_equal;
#ifdef GNU_COMPATIBLE
char *current_dash;
#endif
size_t current_argv_len;
- int i, match;
+ int i, match, exact_match, second_partial_match;
current_argv = place;
#ifdef GNU_COMPATIBLE
@@ -224,6 +224,8 @@
}
#endif
match = -1;
+ exact_match = 0;
+ second_partial_match = 0;
optind++;
@@ -243,6 +245,7 @@
if (strlen(long_options[i].name) == current_argv_len) {
/* exact match */
match = i;
+ exact_match = 1;
break;
}
/*
@@ -252,20 +255,26 @@
if (short_too && current_argv_len == 1)
continue;
- if (match == -1) /* partial match */
+ if (match == -1) /* first partial match */
match = i;
- else {
- /* ambiguous abbreviation */
- if (PRINT_ERROR)
- warnx(ambig,
+ else if ((flags & FLAG_LONGONLY) ||
+ long_options[i].has_arg !=
+ long_options[match].has_arg ||
+ long_options[i].flag != long_options[match].flag ||
+ long_options[i].val != long_options[match].val)
+ second_partial_match = 1;
+ }
+ if (!exact_match && second_partial_match) {
+ /* ambiguous abbreviation */
+ if (PRINT_ERROR)
+ warnx(ambig,
#ifdef GNU_COMPATIBLE
- current_dash,
+ current_dash,
#endif
- (int)current_argv_len,
- current_argv);
- optopt = 0;
- return (BADCH);
- }
+ (int)current_argv_len,
+ current_argv);
+ optopt = 0;
+ return (BADCH);
}
if (match != -1) { /* option found */
if (long_options[match].has_arg == no_argument
@@ -492,7 +501,7 @@
short_too = 1; /* could be short option too */
optchar = parse_long_options(nargv, options, long_options,
- idx, short_too);
+ idx, short_too, flags);
if (optchar != -1) {
place = EMSG;
return (optchar);
@@ -538,7 +547,7 @@
dash_prefix = W_PREFIX;
#endif
optchar = parse_long_options(nargv, options, long_options,
- idx, 0);
+ idx, 0, flags);
place = EMSG;
return (optchar);
}
==== //depot/projects/gdb/sbin/ffsinfo/Makefile#2 (text+ko) ====
@@ -1,11 +1,9 @@
# @(#)Makefile 8.8 (Berkeley) 6/21/2000
#
# $TSHeader: src/sbin/ffsinfo/Makefile,v 1.3 2000/12/05 19:45:10 tomsoft Exp $
-# $FreeBSD: src/sbin/ffsinfo/Makefile,v 1.6 2003/08/14 18:55:31 rwatson Exp $
+# $FreeBSD: src/sbin/ffsinfo/Makefile,v 1.7 2004/04/01 20:31:48 johan Exp $
#
-MAINTAINER= tomsoft at FreeBSD.ORG, chm at FreeBSD.ORG
-
GROWFS= ${.CURDIR}/../growfs
.PATH: ${GROWFS}
==== //depot/projects/gdb/sbin/growfs/Makefile#2 (text+ko) ====
@@ -1,11 +1,9 @@
# @(#)Makefile 8.8 (Berkeley) 6/21/2000
#
# $TSHeader: src/sbin/growfs/Makefile,v 1.4 2000/12/05 19:45:24 tomsoft Exp $
-# $FreeBSD: src/sbin/growfs/Makefile,v 1.5 2003/06/11 23:24:31 obrien Exp $
+# $FreeBSD: src/sbin/growfs/Makefile,v 1.6 2004/04/01 20:31:49 johan Exp $
#
-MAINTAINER= tomsoft at FreeBSD.ORG, chm at FreeBSD.ORG
-
#GFSDBG=YES
PROG= growfs
==== //depot/projects/gdb/share/man/man9/mbuf.9#4 (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/mbuf.9,v 1.42 2004/02/27 17:14:00 ru Exp $
+.\" $FreeBSD: src/share/man/man9/mbuf.9,v 1.45 2004/04/01 07:54:27 ru Exp $
.\"
.Dd October 17, 2000
.Dt MBUF 9
@@ -126,6 +126,8 @@
.Fn m_apply "struct mbuf *mbuf" "int off" "int len" "int (*f)(void *arg, void *data, u_int len)" "void *arg"
.Ft struct mbuf *
.Fn m_getptr "struct mbuf *mbuf" "int loc" "int *off"
+.Ft struct mbuf *
+.Fn m_defrag "struct mbuf *m0" "int how"
.\"
.Sh DESCRIPTION
An
@@ -226,7 +228,7 @@
#define MT_FTABLE 11 /* fragment reassembly header */
#define MT_TAG 13 /* volatile metadata associated to pkts */
#define MT_CONTROL 14 /* extra-data protocol message */
-#define MT_OOBDATA 15 /* expedited data */
+#define MT_OOBDATA 15 /* expedited data */
.Ed
.Pp
If the
@@ -775,7 +777,8 @@
at offset
.Fa off ,
for length
-.Fa len bytes .
+.Fa len
+bytes.
Typically used to avoid calls to
.Fn m_pullup
which would otherwise be unnecessary or undesirable.
@@ -806,6 +809,24 @@
.Vt mbuf chain .
The corresponding offset into the mbuf will be stored in
.Fa *off .
+.It Fn m_defrag m0 how
+Defragment an mbuf chain, returning the shortest possible
+chain of mbufs and clusters.
+If allocation fails and this can not be completed,
+.Dv NULL
+will be returned and the original chain will be unchanged.
+Upon success, the original chain will be freed and the new
+chain will be returned.
+.Fa how
+should be either
+.Dv M_TRYWAIT
+or
+.Dv M_DONTWAIT ,
+depending on the caller's preference.
+.Pp
+This function is especially useful in network drivers, where
+certain long mbuf chains must be shortened before being added
+to TX descriptor lists.
.El
.Sh HARDWARE-ASSISTED CHECKSUM CALCULATION
This section currently applies to TCP/IP only.
@@ -844,7 +865,7 @@
computing checksums.
The
.Va csum_flags
-field of the packet is set to indicate which actions the interface
+field of the packet header is set to indicate which actions the interface
is supposed to perform on it.
The actions unsupported by the network interface are done in the
software prior to passing the packet down to the interface driver;
@@ -859,9 +880,11 @@
The hardware is expected to know the format of an IP header
to determine the offset of the IP checksum field.
.It Dv CSUM_TCP
-The TCP checksum is to be computed. (See below.)
+The TCP checksum is to be computed.
+(See below.)
.It Dv CSUM_UDP
-The UDP checksum is to be computed. (See below.)
+The UDP checksum is to be computed.
+(See below.)
.El
.Pp
Should a TCP or UDP checksum be offloaded to the hardware,
@@ -953,7 +976,7 @@
to
.Li 0xFFFF
hexadecimal to indicate a valid checksum.
-It's a peculiarity of the algorithm used that the Internet checksum
+It is a peculiarity of the algorithm used that the Internet checksum
calculated over any valid packet will be
.Li 0xFFFF
as long as the original checksum field is included.
@@ -1005,7 +1028,7 @@
.Sh RETURN VALUES
See above.
.Sh SEE ALSO
-.Xr ifnet 9 .
+.Xr ifnet 9
.Sh HISTORY
.\" Please correct me if I'm wrong
.Vt Mbufs
==== //depot/projects/gdb/sys/alpha/alpha/machdep.c#6 (text+ko) ====
@@ -88,7 +88,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/alpha/machdep.c,v 1.218 2004/03/01 19:19:15 kensmith Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/alpha/machdep.c,v 1.219 2004/04/01 20:56:43 jhb Exp $");
#include "opt_compat.h"
#include "opt_kstack_pages.h"
@@ -1909,10 +1909,9 @@
if (td->td_md.md_flags & (MDTD_STEP1|MDTD_STEP2))
panic("ptrace_single_step: step breakpoints not removed");
- PROC_UNLOCK(td->td_proc);
error = ptrace_read_int(td, pc, &ins.bits);
if (error)
- goto err;
+ return (error);
switch (ins.branch_format.opcode) {
@@ -1952,20 +1951,18 @@
td->td_md.md_sstep[0].addr = addr[0];
error = ptrace_set_bpt(td, &td->td_md.md_sstep[0]);
if (error)
- goto err;
+ return (error);
if (count == 2) {
td->td_md.md_sstep[1].addr = addr[1];
error = ptrace_set_bpt(td, &td->td_md.md_sstep[1]);
if (error) {
ptrace_clear_bpt(td, &td->td_md.md_sstep[0]);
- goto err;
+ return (error);
}
td->td_md.md_flags |= MDTD_STEP2;
} else
td->td_md.md_flags |= MDTD_STEP1;
-err:
- PROC_LOCK(td->td_proc);
return (error);
}
==== //depot/projects/gdb/sys/conf/files#10 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.877 2004/03/20 02:14:02 marcel Exp $
+# $FreeBSD: src/sys/conf/files,v 1.880 2004/04/01 17:55:50 des Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -665,6 +665,7 @@
dev/sound/midi/sequencer.c optional seq midi
dev/sound/midi/timer.c optional seq midi
dev/sound/pci/als4000.c optional pcm pci
+#dev/sound/pci/au88x0.c optional pcm pci
dev/sound/pci/cmi.c optional pcm pci
dev/sound/pci/cs4281.c optional pcm pci
dev/sound/pci/csa.c optional csa pci
@@ -727,6 +728,11 @@
dev/syscons/warp/warp_saver.c optional warp_saver
dev/tdfx/tdfx_pci.c optional tdfx pci
dev/trm/trm.c optional trm
+dev/twa/twa.c optional twa
+dev/twa/twa_cam.c optional twa
+dev/twa/twa_freebsd.c optional twa
+dev/twa/twa_fwimg.c optional twa
+dev/twa/twa_globals.c optional twa
dev/twe/twe.c optional twe
dev/twe/twe_freebsd.c optional twe
dev/tx/if_tx.c optional tx
==== //depot/projects/gdb/sys/conf/files.i386#9 (text+ko) ====
@@ -1,7 +1,7 @@
# This file tells config what files go into building a kernel,
# files marked standard are always included.
#
-# $FreeBSD: src/sys/conf/files.i386,v 1.482 2004/03/30 03:45:59 vkashyap Exp $
+# $FreeBSD: src/sys/conf/files.i386,v 1.483 2004/04/01 10:02:50 des Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -170,11 +170,6 @@
dev/syscons/scvtb.c optional sc
dev/syscons/syscons.c optional sc
dev/syscons/sysmouse.c optional sc
-dev/twa/twa.c optional twa
-dev/twa/twa_cam.c optional twa
-dev/twa/twa_freebsd.c optional twa
-dev/twa/twa_fwimg.c optional twa
-dev/twa/twa_globals.c optional twa
dev/uart/uart_cpu_i386.c optional uart
geom/geom_bsd.c standard
geom/geom_bsd_enc.c standard
==== //depot/projects/gdb/sys/conf/majors#4 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/majors,v 1.197 2004/02/23 08:55:12 phk Exp $
+# $FreeBSD: src/sys/conf/majors,v 1.198 2004/04/01 10:00:04 des Exp $
#
# This list is semi-obsoleted by DEVFS, but for now it still contains
# the current allocation of device major numbers.
@@ -90,7 +90,6 @@
183 *smapi SMAPI BIOS interface <mdodd>
185 ce Cronyx Tau-32 E1 adapter <rik at cronyx.ru>
186 sx Specialix I/O8+ driver <frank at exit.com>
-187 twa 3ware Apache ATA RAID (controller)
252 ?? entries from 200-252 are reserved for local use
254 internal Used internally by the kernel
255 bad_choice -1 is 255 which has magic meanings internally
==== //depot/projects/gdb/sys/dev/acpica/acpi.c#8 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.133 2004/03/31 17:35:28 njl Exp $
+ * $FreeBSD: src/sys/dev/acpica/acpi.c,v 1.134 2004/04/01 04:21:33 njl Exp $
*/
#include "opt_acpi.h"
@@ -809,82 +809,6 @@
return (0);
}
-ACPI_HANDLE
-acpi_get_handle(device_t dev)
-{
- uintptr_t up;
- ACPI_HANDLE h;
-
- if (BUS_READ_IVAR(device_get_parent(dev), dev, ACPI_IVAR_HANDLE, &up))
- return(NULL);
- h = (ACPI_HANDLE)up;
- return (h);
-}
-
-int
-acpi_set_handle(device_t dev, ACPI_HANDLE h)
-{
- uintptr_t up;
-
- up = (uintptr_t)h;
- return (BUS_WRITE_IVAR(device_get_parent(dev), dev, ACPI_IVAR_HANDLE, up));
-}
-
-int
-acpi_get_magic(device_t dev)
-{
- uintptr_t up;
- int m;
-
- if (BUS_READ_IVAR(device_get_parent(dev), dev, ACPI_IVAR_MAGIC, &up))
- return(0);
- m = (int)up;
- return (m);
-}
-
-int
-acpi_set_magic(device_t dev, int m)
-{
- uintptr_t up;
-
- up = (uintptr_t)m;
- return (BUS_WRITE_IVAR(device_get_parent(dev), dev, ACPI_IVAR_MAGIC, up));
-}
-
-void *
-acpi_get_private(device_t dev)
-{
- uintptr_t up;
- void *p;
-
- if (BUS_READ_IVAR(device_get_parent(dev), dev, ACPI_IVAR_PRIVATE, &up))
- return (NULL);
- p = (void *)up;
- return (p);
-}
-
-int
-acpi_set_private(device_t dev, void *p)
-{
- uintptr_t up;
-
- up = (uintptr_t)p;
- return (BUS_WRITE_IVAR(device_get_parent(dev), dev, ACPI_IVAR_PRIVATE, up));
-}
-
-ACPI_OBJECT_TYPE
-acpi_get_type(device_t dev)
-{
- ACPI_HANDLE h;
- ACPI_OBJECT_TYPE t;
-
- if ((h = acpi_get_handle(dev)) == NULL)
- return (ACPI_TYPE_NOT_FOUND);
- if (AcpiGetType(h, &t) != AE_OK)
- return (ACPI_TYPE_NOT_FOUND);
- return (t);
-}
-
/*
* Handle child resource allocation/removal
*/
==== //depot/projects/gdb/sys/dev/acpica/acpivar.h#6 (text+ko) ====
@@ -25,7 +25,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/dev/acpica/acpivar.h,v 1.58 2004/03/31 17:23:46 njl Exp $
+ * $FreeBSD: src/sys/dev/acpica/acpivar.h,v 1.59 2004/04/01 04:21:33 njl Exp $
*/
#include "bus_if.h"
@@ -142,15 +142,75 @@
#define ACPI_IVAR_MAGIC 0x101
#define ACPI_IVAR_PRIVATE 0x102
-extern ACPI_HANDLE acpi_get_handle(device_t dev);
-extern int acpi_set_handle(device_t dev, ACPI_HANDLE h);
-extern int acpi_get_magic(device_t dev);
-extern int acpi_set_magic(device_t dev, int m);
-extern void * acpi_get_private(device_t dev);
-extern int acpi_set_private(device_t dev, void *p);
-extern ACPI_OBJECT_TYPE acpi_get_type(device_t dev);
-struct resource * acpi_bus_alloc_gas(device_t dev, int *rid,
- ACPI_GENERIC_ADDRESS *gas);
+static __inline ACPI_HANDLE
+acpi_get_handle(device_t dev)
+{
+ uintptr_t up;
+
+ if (BUS_READ_IVAR(device_get_parent(dev), dev, ACPI_IVAR_HANDLE, &up))
+ return (NULL);
+ return ((ACPI_HANDLE)up);
+}
+
+static __inline int
+acpi_set_handle(device_t dev, ACPI_HANDLE h)
+{
+ uintptr_t up;
+
+ up = (uintptr_t)h;
+ return (BUS_WRITE_IVAR(device_get_parent(dev), dev, ACPI_IVAR_HANDLE, up));
+}
+
+static __inline int
+acpi_get_magic(device_t dev)
+{
+ uintptr_t up;
+
+ if (BUS_READ_IVAR(device_get_parent(dev), dev, ACPI_IVAR_MAGIC, &up))
+ return(0);
+ return ((int)up);
+}
+
+static __inline int
+acpi_set_magic(device_t dev, int m)
+{
+ uintptr_t up;
+
+ up = (uintptr_t)m;
+ return (BUS_WRITE_IVAR(device_get_parent(dev), dev, ACPI_IVAR_MAGIC, up));
+}
+
+static __inline void *
+acpi_get_private(device_t dev)
+{
+ uintptr_t up;
+
+ if (BUS_READ_IVAR(device_get_parent(dev), dev, ACPI_IVAR_PRIVATE, &up))
+ return (NULL);
+ return ((void *)up);
+}
+
+static __inline int
+acpi_set_private(device_t dev, void *p)
+{
+ uintptr_t up;
+
+ up = (uintptr_t)p;
+ return (BUS_WRITE_IVAR(device_get_parent(dev), dev, ACPI_IVAR_PRIVATE, up));
+}
+
+static __inline ACPI_OBJECT_TYPE
+acpi_get_type(device_t dev)
+{
+ ACPI_HANDLE h;
+ ACPI_OBJECT_TYPE t;
+
+ if ((h = acpi_get_handle(dev)) == NULL)
+ return (ACPI_TYPE_NOT_FOUND);
+ if (AcpiGetType(h, &t) != AE_OK)
+ return (ACPI_TYPE_NOT_FOUND);
+ return (t);
+}
#ifdef ACPI_DEBUGGER
extern void acpi_EnterDebugger(void);
@@ -196,6 +256,8 @@
extern ACPI_STATUS acpi_Disable(struct acpi_softc *sc);
extern void acpi_UserNotify(const char *subsystem, ACPI_HANDLE h,
uint8_t notify);
+struct resource * acpi_bus_alloc_gas(device_t dev, int *rid,
+ ACPI_GENERIC_ADDRESS *gas);
struct acpi_parse_resource_set {
void (*set_init)(device_t dev, void *arg, void **context);
==== //depot/projects/gdb/sys/dev/uart/uart_cpu_sparc64.c#7 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/uart/uart_cpu_sparc64.c,v 1.8 2004/03/20 02:14:02 marcel Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/uart/uart_cpu_sparc64.c,v 1.9 2004/04/02 07:33:35 marcel Exp $");
#include <sys/param.h>
#include <sys/systm.h>
==== //depot/projects/gdb/sys/dev/uart/uart_dev_ns8250.c#2 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/uart/uart_dev_ns8250.c,v 1.5 2003/09/17 03:11:32 marcel Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/uart/uart_dev_ns8250.c,v 1.6 2004/04/02 07:37:28 marcel Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -304,6 +304,7 @@
while ((uart_getreg(bas, REG_LSR) & LSR_THRE) == 0 && --limit)
DELAY(delay);
uart_setreg(bas, REG_DATA, c);
+ uart_barrier(bas);
limit = 40;
while ((uart_getreg(bas, REG_LSR) & LSR_TEMT) == 0 && --limit)
DELAY(delay);
==== //depot/projects/gdb/sys/dev/uart/uart_kbd_sun.c#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/sys/dev/uart/uart_kbd_sun.c,v 1.1 2003/11/11 07:33:24 jake Exp $
+ * $FreeBSD: src/sys/dev/uart/uart_kbd_sun.c,v 1.2 2004/04/02 05:59:06 marcel Exp $
*/
#include "opt_kbd.h"
@@ -224,7 +224,9 @@
if (sc->sc_sysdev != NULL) {
sunkbd_softc.sc_uart = sc;
+#ifdef KBD_INSTALL_CDEV
kbd_attach(&sunkbd_softc.sc_kbd);
+#endif
sunkbd_enable(&sunkbd_softc.sc_kbd);
swi_add(&tty_ithd, uart_driver_name, sunkbd_uart_intr,
==== //depot/projects/gdb/sys/dev/usb/usb_subr.c#5 (text+ko) ====
@@ -7,7 +7,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/usb/usb_subr.c,v 1.62 2004/03/20 07:31:11 julian Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/usb_subr.c,v 1.63 2004/04/01 18:55:28 julian Exp $");
/*
* Copyright (c) 1998 The NetBSD Foundation, Inc.
@@ -1045,8 +1045,19 @@
up->device = dev;
/* Set the address. Do this early; some devices need that. */
- err = usbd_set_address(dev, addr);
+ /* Try a few times in case the device is slow (i.e. outside specs.) */
DPRINTFN(5,("usbd_new_device: setting device address=%d\n", addr));
+ for (i = 0; i < 15; i++) {
+ err = usbd_set_address(dev, addr);
+ if (!err)
+ break;
+ usbd_delay_ms(dev, 200);
+ if ((i & 3) == 3) {
+ DPRINTFN(-1,("usb_new_device: set address %d "
+ "failed - trying a port reset\n", addr));
+ usbd_reset_port(up->parent, port, &ps);
+ }
+ }
if (err) {
DPRINTFN(-1,("usb_new_device: set address %d failed\n", addr));
err = USBD_SET_ADDR_FAILED;
@@ -1059,16 +1070,8 @@
bus->devices[addr] = dev;
dd = &dev->ddesc;
- /* Try a few times in case the device is slow (i.e. outside specs.) */
- for (i = 0; i < 15; i++) {
- /* Get the first 8 bytes of the device descriptor. */
- err = usbd_get_desc(dev, UDESC_DEVICE, 0, USB_MAX_IPACKET, dd);
- if (!err)
- break;
- usbd_delay_ms(dev, 200);
- if ((i & 3) == 3)
- usbd_reset_port(up->parent, port, &ps);
- }
+ /* Get the first 8 bytes of the device descriptor. */
+ err = usbd_get_desc(dev, UDESC_DEVICE, 0, USB_MAX_IPACKET, dd);
if (err) {
DPRINTFN(-1, ("usbd_new_device: addr=%d, getting first desc "
"failed\n", addr));
==== //depot/projects/gdb/sys/i386/conf/GENERIC.hints#3 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/i386/conf/GENERIC.hints,v 1.12 2004/03/14 22:38:18 imp Exp $
+# $FreeBSD: src/sys/i386/conf/GENERIC.hints,v 1.13 2004/04/01 21:48:31 alfred Exp $
hint.fdc.0.at="isa"
hint.fdc.0.port="0x3F0"
hint.fdc.0.irq="6"
@@ -25,7 +25,6 @@
hint.atkbdc.0.port="0x060"
hint.atkbd.0.at="atkbdc"
hint.atkbd.0.irq="1"
-hint.atkbd.0.flags="0x1"
hint.psm.0.at="atkbdc"
hint.psm.0.irq="12"
hint.vga.0.at="isa"
==== //depot/projects/gdb/sys/kern/kern_thr.c#4 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/kern_thr.c,v 1.15 2004/03/27 14:30:43 mtm Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/kern_thr.c,v 1.17 2004/04/02 04:57:40 kris Exp $");
#include <sys/param.h>
#include <sys/kernel.h>
@@ -81,11 +81,8 @@
/* Clean up cpu resources. */
cpu_thread_exit(td);
- /* XXX make thread_unlink() */
- TAILQ_REMOVE(&p->p_threads, td, td_plist);
- p->p_numthreads--;
- TAILQ_REMOVE(&kg->kg_threads, td, td_kglist);
- kg->kg_numthreads--;
+ /* Unlink the thread from the process and kseg. */
+ thread_unlink(td);
ke->ke_state = KES_UNQUEUED;
ke->ke_thread = NULL;
==== //depot/projects/gdb/sys/kern/subr_bus.c#5 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/subr_bus.c,v 1.143 2004/03/24 16:49:37 imp Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/subr_bus.c,v 1.144 2004/04/01 07:18:42 scottl Exp $");
#include "opt_bus.h"
@@ -2148,7 +2148,7 @@
error = BUS_SETUP_INTR(dev->parent, dev, r, flags,
handler, arg, cookiep);
if (error == 0) {
- if (!(flags & INTR_MPSAFE))
+ if (!(flags & (INTR_MPSAFE | INTR_FAST)))
device_printf(dev, "[GIANT-LOCKED]\n");
if (bootverbose && (flags & INTR_MPSAFE))
device_printf(dev, "[MPSAFE]\n");
==== //depot/projects/gdb/sys/kern/sys_process.c#5 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/sys_process.c,v 1.119 2004/03/24 23:35:04 alc Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/sys_process.c,v 1.120 2004/04/01 20:56:44 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -154,18 +154,21 @@
vm_prot_t reqprot;
int error, writing;
- GIANT_REQUIRED;
-
+ mtx_lock(&Giant);
/*
* if the vmspace is in the midst of being deallocated or the
* process is exiting, don't try to grab anything. The page table
* usage in that process can be messed up.
*/
vm = p->p_vmspace;
- if ((p->p_flag & P_WEXIT))
+ if ((p->p_flag & P_WEXIT)) {
+ mtx_unlock(&Giant);
return (EFAULT);
- if (vm->vm_refcnt < 1)
+ }
+ if (vm->vm_refcnt < 1) {
+ mtx_unlock(&Giant);
return (EFAULT);
+ }
++vm->vm_refcnt;
/*
* The map we want...
@@ -274,6 +277,7 @@
} while (error == 0 && uio->uio_resid > 0);
vmspace_free(vm);
+ mtx_unlock(&Giant);
return (error);
}
@@ -602,9 +606,7 @@
uio.uio_segflg = UIO_SYSSPACE; /* i.e.: the uap */
uio.uio_rw = write ? UIO_WRITE : UIO_READ;
uio.uio_td = td;
- mtx_lock(&Giant);
error = proc_rwmem(p, &uio);
- mtx_unlock(&Giant);
if (uio.uio_resid != 0) {
/*
* XXX proc_rwmem() doesn't currently return ENOSPC,
@@ -645,9 +647,7 @@
default:
return (EINVAL);
}
- mtx_lock(&Giant);
error = proc_rwmem(p, &uio);
- mtx_unlock(&Giant);
piod->piod_len -= uio.uio_resid;
return (error);
==== //depot/projects/gdb/sys/net/if_sl.c#3 (text+ko) ====
@@ -31,7 +31,7 @@
* SUCH DAMAGE.
*
* @(#)if_sl.c 8.6 (Berkeley) 2/1/94
- * $FreeBSD: src/sys/net/if_sl.c,v 1.112 2004/03/31 22:59:56 rwatson Exp $
+ * $FreeBSD: src/sys/net/if_sl.c,v 1.113 2004/04/01 23:54:49 rwatson Exp $
*/
/*
@@ -469,8 +469,10 @@
return (ENXIO);
}
if (sc->sc_if.if_dunit != unit) {
- if (!slisunitfree(unit))
+ if (!slisunitfree(unit)) {
+ splx(s);
return (ENXIO);
+ }
wasup = sc->sc_if.if_flags & IFF_UP;
bpfdetach(&sc->sc_if);
==== //depot/projects/gdb/sys/netinet6/udp6_usrreq.c#4 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/netinet6/udp6_usrreq.c,v 1.46 2004/03/27 21:05:46 pjd Exp $ */
+/* $FreeBSD: src/sys/netinet6/udp6_usrreq.c,v 1.47 2004/04/01 13:48:23 suz Exp $ */
/* $KAME: udp6_usrreq.c,v 1.27 2001/05/21 05:45:10 jinmei Exp $ */
/*
@@ -168,9 +168,11 @@
/*
* Checksum extended UDP header and data.
*/
- if (uh->uh_sum == 0)
+ if (uh->uh_sum == 0) {
udpstat.udps_nosum++;
- else if (in6_cksum(m, IPPROTO_UDP, off, ulen) != 0) {
+ goto bad;
+ }
+ if (in6_cksum(m, IPPROTO_UDP, off, ulen) != 0) {
udpstat.udps_badsum++;
goto bad;
}
==== //depot/projects/gdb/sys/pc98/conf/NOTES#6 (text+ko) ====
@@ -4,7 +4,7 @@
# This file contains machine dependent kernel configuration notes. For
# machine independent notes, look in /sys/conf/NOTES.
#
-# $FreeBSD: src/sys/pc98/conf/NOTES,v 1.30 2004/03/28 12:06:29 nyan Exp $
+# $FreeBSD: src/sys/pc98/conf/NOTES,v 1.31 2004/04/01 14:23:41 nyan Exp $
#
#
@@ -775,6 +775,7 @@
nodevice mlx # Mylex DAC960
nodevice amr # AMI MegaRAID
nodevice twe # 3ware ATA RAID
+nodevice twa # 3ware 9000 series PATA/SATA RAID
nodevice ataraid
nodevice cm
nodevice cs
@@ -808,6 +809,8 @@
nooption DPT_LOST_IRQ
nooption DPT_RESET_HBA
nooption DPT_TIMEOUT_FACTOR
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list