PERFORCE change 105875 for review
Warner Losh
imp at FreeBSD.org
Sat Sep 9 06:05:50 UTC 2006
http://perforce.freebsd.org/chv.cgi?CH=105875
Change 105875 by imp at imp_paco-paco on 2006/09/09 06:04:54
IFC @105873
Affected files ...
.. //depot/projects/arm/src/Makefile#5 integrate
.. //depot/projects/arm/src/Makefile.inc1#15 integrate
.. //depot/projects/arm/src/etc/defaults/rc.conf#5 integrate
.. //depot/projects/arm/src/etc/rc.d/Makefile#4 integrate
.. //depot/projects/arm/src/etc/rc.d/bthidd#1 branch
.. //depot/projects/arm/src/lib/libc/stdlib/malloc.c#7 integrate
.. //depot/projects/arm/src/lib/libthr/thread/thr_mutex.c#4 integrate
.. //depot/projects/arm/src/lib/libutil/pw_util.c#3 integrate
.. //depot/projects/arm/src/libexec/rtld-elf/rtld.c#4 integrate
.. //depot/projects/arm/src/release/Makefile#3 integrate
.. //depot/projects/arm/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#12 integrate
.. //depot/projects/arm/src/release/scripts/kernels-install.sh#3 integrate
.. //depot/projects/arm/src/sbin/geom/class/nop/geom_nop.c#2 integrate
.. //depot/projects/arm/src/sbin/geom/class/nop/gnop.8#2 integrate
.. //depot/projects/arm/src/sbin/ifconfig/ifconfig.c#3 integrate
.. //depot/projects/arm/src/sbin/mount/mount.8#2 integrate
.. //depot/projects/arm/src/share/man/man7/security.7#2 integrate
.. //depot/projects/arm/src/share/man/man9/printf.9#2 integrate
.. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_proto.h#15 integrate
.. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_syscall.h#15 integrate
.. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_syscalls.c#15 integrate
.. //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_sysent.c#15 integrate
.. //depot/projects/arm/src/sys/compat/freebsd32/syscalls.master#16 integrate
.. //depot/projects/arm/src/sys/dev/bge/if_bge.c#22 integrate
.. //depot/projects/arm/src/sys/dev/bge/if_bgereg.h#16 integrate
.. //depot/projects/arm/src/sys/dev/drm/drmP.h#5 integrate
.. //depot/projects/arm/src/sys/dev/drm/drm_drv.c#5 integrate
.. //depot/projects/arm/src/sys/dev/drm/drm_pciids.h#6 integrate
.. //depot/projects/arm/src/sys/dev/drm/i915_dma.c#4 integrate
.. //depot/projects/arm/src/sys/dev/drm/i915_drm.h#4 integrate
.. //depot/projects/arm/src/sys/dev/drm/i915_drv.h#4 integrate
.. //depot/projects/arm/src/sys/dev/drm/i915_irq.c#4 integrate
.. //depot/projects/arm/src/sys/dev/drm/mach64_drm.h#3 integrate
.. //depot/projects/arm/src/sys/dev/drm/radeon_cp.c#5 integrate
.. //depot/projects/arm/src/sys/dev/drm/radeon_drm.h#5 integrate
.. //depot/projects/arm/src/sys/dev/drm/radeon_drv.h#5 integrate
.. //depot/projects/arm/src/sys/dev/drm/radeon_state.c#8 integrate
.. //depot/projects/arm/src/sys/dev/fdc/fdc.c#7 integrate
.. //depot/projects/arm/src/sys/dev/ic/nec765.h#3 integrate
.. //depot/projects/arm/src/sys/dev/mpt/mpt.c#18 integrate
.. //depot/projects/arm/src/sys/dev/mpt/mpt.h#18 integrate
.. //depot/projects/arm/src/sys/dev/mpt/mpt_cam.c#23 integrate
.. //depot/projects/arm/src/sys/dev/mpt/mpt_pci.c#16 integrate
.. //depot/projects/arm/src/sys/dev/re/if_re.c#16 integrate
.. //depot/projects/arm/src/sys/geom/gate/g_gate.c#5 integrate
.. //depot/projects/arm/src/sys/geom/gate/g_gate.h#5 integrate
.. //depot/projects/arm/src/sys/geom/nop/g_nop.c#6 integrate
.. //depot/projects/arm/src/sys/geom/nop/g_nop.h#3 integrate
.. //depot/projects/arm/src/sys/modules/Makefile#30 integrate
.. //depot/projects/arm/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#5 integrate
.. //depot/projects/arm/src/sys/netgraph/bluetooth/drivers/ubt/ng_ubt_var.h#3 integrate
.. //depot/projects/arm/src/sys/netinet/tcp_subr.c#12 integrate
.. //depot/projects/arm/src/sys/pc98/cbus/fdc.c#5 integrate
.. //depot/projects/arm/src/sys/sys/param.h#17 integrate
.. //depot/projects/arm/src/usr.bin/calendar/calendars/calendar.holiday#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/Makefile#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/Makefile#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/bthid_config.h#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/bthidd.8#1 branch
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/bthidd.c#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/bthidd.conf.sample#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/bthidd.h#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/client.c#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/hid.c#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/kbd.c#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/kbd.h#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/lexer.l#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/parser.y#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/server.c#2 integrate
.. //depot/projects/arm/src/usr.sbin/bluetooth/bthidd/session.c#2 integrate
Differences ...
==== //depot/projects/arm/src/Makefile#5 (text+ko) ====
@@ -1,5 +1,5 @@
#
-# $FreeBSD: src/Makefile,v 1.334 2006/06/22 16:52:53 imp Exp $
+# $FreeBSD: src/Makefile,v 1.335 2006/09/08 10:13:15 ru Exp $
#
# The user-driven targets are:
#
@@ -58,8 +58,8 @@
#
# See src/UPDATING `COMMON ITEMS' for more complete information.
#
-# If TARGET_ARCH=arch (e.g. ia64, sparc64, ...) is specified you can
-# cross build world for other architectures using the buildworld target,
+# If TARGET=machine (e.g. ia64, sparc64, ...) is specified you can
+# cross build world for other machine types using the buildworld target,
# and once the world is built you can cross build a kernel using the
# buildkernel target.
#
@@ -268,36 +268,32 @@
@echo "--------------------------------------------------------------"
@echo ">>> make universe started on ${STARTTIME}"
@echo "--------------------------------------------------------------"
-.for target in i386 i386:pc98 sparc64 ia64 amd64
-.for arch in ${target:C/:.*$//}
-.for mach in ${target:C/^.*://}
-KERNCONFS!= cd ${.CURDIR}/sys/${mach}/conf && \
+.for target in amd64 i386 ia64 pc98 sparc64
+KERNCONFS!= cd ${.CURDIR}/sys/${target}/conf && \
find [A-Z]*[A-Z] -type f -maxdepth 0 \
! -name DEFAULTS ! -name LINT
KERNCONFS:= ${KERNCONFS:S/^NOTES$/LINT/}
-universe: universe_${mach}
-.ORDER: universe_prologue universe_${mach} universe_epilogue
-universe_${mach}:
- @echo ">> ${mach} started on `LC_ALL=C date`"
+universe: universe_${target}
+.ORDER: universe_prologue universe_${target} universe_epilogue
+universe_${target}:
+ @echo ">> ${target} started on `LC_ALL=C date`"
-cd ${.CURDIR} && ${MAKE} ${JFLAG} buildworld \
- TARGET_ARCH=${arch} TARGET=${mach} \
+ TARGET=${target} \
__MAKE_CONF=/dev/null \
- > _.${mach}.buildworld 2>&1
- @echo ">> ${mach} buildworld completed on `LC_ALL=C date`"
-.if exists(${.CURDIR}/sys/${mach}/conf/NOTES)
- -cd ${.CURDIR}/sys/${mach}/conf && ${MAKE} LINT \
- > ${.CURDIR}/_.${mach}.makeLINT 2>&1
+ > _.${target}.buildworld 2>&1
+ @echo ">> ${target} buildworld completed on `LC_ALL=C date`"
+.if exists(${.CURDIR}/sys/${target}/conf/NOTES)
+ -cd ${.CURDIR}/sys/${target}/conf && ${MAKE} LINT \
+ > ${.CURDIR}/_.${target}.makeLINT 2>&1
.endif
.for kernel in ${KERNCONFS}
-cd ${.CURDIR} && ${MAKE} ${JFLAG} buildkernel \
- TARGET_ARCH=${arch} TARGET=${mach} \
+ TARGET=${target} \
KERNCONF=${kernel} \
__MAKE_CONF=/dev/null \
- > _.${mach}.${kernel} 2>&1
+ > _.${target}.${kernel} 2>&1
.endfor
- @echo ">> ${mach} completed on `LC_ALL=C date`"
-.endfor
-.endfor
+ @echo ">> ${target} completed on `LC_ALL=C date`"
.endfor
universe: universe_epilogue
universe_epilogue:
==== //depot/projects/arm/src/Makefile.inc1#15 (text+ko) ====
@@ -1,5 +1,5 @@
#
-# $FreeBSD: src/Makefile.inc1,v 1.558 2006/09/07 20:27:56 ru Exp $
+# $FreeBSD: src/Makefile.inc1,v 1.559 2006/09/08 10:09:02 ru Exp $
#
# Make command line options:
# -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir
@@ -207,6 +207,7 @@
# build-tools stage
TMAKE= MAKEOBJDIRPREFIX=${OBJTREE} \
${BMAKEENV} ${MAKE} -f Makefile.inc1 \
+ TARGET=${TARGET} TARGET_ARCH=${TARGET_ARCH} \
DESTDIR= \
BOOTSTRAPPING=${OSRELDATE} -DNO_LINT -DNO_CPU_CFLAGS -DNO_WARNS
==== //depot/projects/arm/src/etc/defaults/rc.conf#5 (text+ko) ====
@@ -15,7 +15,7 @@
# For a more detailed explanation of all the rc.conf variables, please
# refer to the rc.conf(5) manual page.
#
-# $FreeBSD: src/etc/defaults/rc.conf,v 1.294 2006/08/17 20:13:24 brian Exp $
+# $FreeBSD: src/etc/defaults/rc.conf,v 1.295 2006/09/07 22:25:07 emax Exp $
##############################################################
### Important initial Boot-time options ####################
@@ -336,6 +336,10 @@
sdpd_groupname="nobody" # set spdp(8) user/group to run as after
sdpd_username="nobody" # it initializes
+bthidd_enable="NO" # Enable bthidd(8) (or NO)
+bthidd_config="/etc/bluetooth/bthidd.conf" # bthidd(8) configuration file
+bthidd_hids="/var/db/bthidd.hids" # bthidd(8) known HID devices file
+
### Miscellaneous network options: ###
icmp_bmcastecho="NO" # respond to broadcast ping packets
==== //depot/projects/arm/src/etc/rc.d/Makefile#4 (text+ko) ====
@@ -1,12 +1,12 @@
# $NetBSD: Makefile,v 1.16 2001/01/14 15:37:22 minoura Exp $
-# $FreeBSD: src/etc/rc.d/Makefile,v 1.75 2006/08/22 11:12:09 flz Exp $
+# $FreeBSD: src/etc/rc.d/Makefile,v 1.76 2006/09/07 22:25:08 emax Exp $
.include <bsd.own.mk>
FILES= DAEMON LOGIN NETWORKING SERVERS \
abi accounting addswap adjkerntz amd \
apm apmd archdep atm1 atm2 atm3 auditd \
- bgfsck bluetooth bootparams bridge bsnmpd \
+ bgfsck bluetooth bootparams bridge bsnmpd bthidd \
ccd cleanvar cleartmp cron \
devd devfs dhclient \
dmesg dumpon \
==== //depot/projects/arm/src/lib/libc/stdlib/malloc.c#7 (text+ko) ====
@@ -185,7 +185,7 @@
#endif
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.136 2006/09/01 19:14:14 marcel Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/stdlib/malloc.c,v 1.137 2006/09/08 17:52:15 jasone Exp $");
#include "libc_private.h"
#ifdef MALLOC_DEBUG
@@ -699,6 +699,12 @@
/*
* Try to use brk for chunk-size allocations, due to address space constraints.
*/
+/*
+ * Protects sbrk() calls. This must be separate from chunks_mtx, since
+ * base_chunk_alloc() also uses sbrk(), but cannot lock chunks_mtx (doing so
+ * could cause recursive lock acquisition).
+ */
+static malloc_mutex_t brk_mtx;
/* Result of first sbrk(0) call. */
static void *brk_base;
/* Current end of brk, or ((void *)-1) if brk is exhausted. */
@@ -816,6 +822,7 @@
static void wrtmessage(const char *p1, const char *p2, const char *p3,
const char *p4);
static void malloc_printf(const char *format, ...);
+static bool base_chunk_alloc(size_t minsize);
static void *base_alloc(size_t size);
static chunk_node_t *base_chunk_node_alloc(void);
static void base_chunk_node_dealloc(chunk_node_t *node);
@@ -967,6 +974,69 @@
/******************************************************************************/
+static bool
+base_chunk_alloc(size_t minsize)
+{
+
+ assert(minsize <= chunk_size);
+
+#ifdef USE_BRK
+ /*
+ * Do special brk allocation here, since the base chunk doesn't really
+ * need to be chunk-aligned.
+ */
+ if (brk_prev != (void *)-1) {
+ void *brk_cur;
+ intptr_t incr;
+
+ malloc_mutex_lock(&brk_mtx);
+ do {
+ /* Get the current end of brk. */
+ brk_cur = sbrk(0);
+
+ /*
+ * Calculate how much padding is necessary to
+ * chunk-align the end of brk. Don't worry about
+ * brk_cur not being chunk-aligned though.
+ */
+ incr = (intptr_t)chunk_size
+ - (intptr_t)CHUNK_ADDR2OFFSET(brk_cur);
+ if (incr < minsize)
+ incr += chunk_size;
+
+ brk_prev = sbrk(incr);
+ if (brk_prev == brk_cur) {
+ /* Success. */
+ malloc_mutex_unlock(&brk_mtx);
+ base_chunk = brk_cur;
+ base_next_addr = base_chunk;
+ base_past_addr = (void *)((uintptr_t)base_chunk +
+ incr);
+#ifdef MALLOC_STATS
+ base_total += incr;
+#endif
+ return (false);
+ }
+ } while (brk_prev != (void *)-1);
+ malloc_mutex_unlock(&brk_mtx);
+ }
+#endif
+
+ /*
+ * Don't worry about chunk alignment here, since base_chunk doesn't really
+ * need to be aligned.
+ */
+ base_chunk = pages_map(NULL, chunk_size);
+ if (base_chunk == NULL)
+ return (true);
+ base_next_addr = base_chunk;
+ base_past_addr = (void *)((uintptr_t)base_chunk + chunk_size);
+#ifdef MALLOC_STATS
+ base_total += chunk_size;
+#endif
+ return (false);
+}
+
static void *
base_alloc(size_t size)
{
@@ -980,21 +1050,10 @@
/* Make sure there's enough space for the allocation. */
if ((uintptr_t)base_next_addr + csize > (uintptr_t)base_past_addr) {
- void *tchunk;
-
- assert(csize <= chunk_size);
-
- tchunk = chunk_alloc(chunk_size);
- if (tchunk == NULL) {
+ if (base_chunk_alloc(csize)) {
ret = NULL;
goto RETURN;
}
- base_chunk = tchunk;
- base_next_addr = (void *)base_chunk;
- base_past_addr = (void *)((uintptr_t)base_chunk + chunk_size);
-#ifdef MALLOC_STATS
- base_total += chunk_size;
-#endif
}
/* Allocate. */
@@ -1234,6 +1293,7 @@
* The loop is necessary to recover from races with other
* threads that are using brk for something other than malloc.
*/
+ malloc_mutex_lock(&brk_mtx);
do {
/* Get the current end of brk. */
brk_cur = sbrk(0);
@@ -1254,10 +1314,12 @@
brk_prev = sbrk(incr);
if (brk_prev == brk_cur) {
/* Success. */
+ malloc_mutex_unlock(&brk_mtx);
brk_max = (void *)(intptr_t)ret + size;
goto RETURN;
}
} while (brk_prev != (void *)-1);
+ malloc_mutex_unlock(&brk_mtx);
}
#endif
@@ -1327,6 +1389,7 @@
&& (uintptr_t)chunk < (uintptr_t)brk_max) {
void *brk_cur;
+ malloc_mutex_lock(&brk_mtx);
/* Get the current end of brk. */
brk_cur = sbrk(0);
@@ -1340,6 +1403,7 @@
if (brk_cur == brk_max
&& (void *)(uintptr_t)chunk + size == brk_max
&& sbrk(-(intptr_t)size) == brk_max) {
+ malloc_mutex_unlock(&brk_mtx);
if (brk_prev == brk_max) {
/* Success. */
brk_prev = (void *)(intptr_t)brk_max
@@ -1348,6 +1412,7 @@
}
goto RETURN;
} else
+ malloc_mutex_unlock(&brk_mtx);
madvise(chunk, size, MADV_FREE);
} else
#endif
@@ -1567,7 +1632,7 @@
*
* becomes
*
- * (size_invs[(D >> QUANTUM_2POW_MIN) - 3] * D) >> SIZE_INV_SHIFT
+ * (X * size_invs[(D >> QUANTUM_2POW_MIN) - 3]) >> SIZE_INV_SHIFT
*/
#define SIZE_INV_SHIFT 21
#define SIZE_INV(s) (((1 << SIZE_INV_SHIFT) / (s << QUANTUM_2POW_MIN)) + 1)
@@ -1645,7 +1710,7 @@
*/
regind = diff / size;
};
- assert(regind == diff / size);
+ assert(diff == regind * size);
assert(regind < bin->nregs);
elm = regind >> (SIZEOF_INT_2POW + 3);
@@ -2940,6 +3005,15 @@
malloc_printf("Allocated: %zu, space used: %zu\n",
allocated, total);
+ /* Print base stats. */
+ {
+ malloc_mutex_lock(&base_mtx);
+ malloc_printf("\nbase:\n");
+ malloc_printf(" %13s\n", "total");
+ malloc_printf(" %13llu\n", base_total);
+ malloc_mutex_unlock(&base_mtx);
+ }
+
/* Print chunk stats. */
{
chunk_stats_t chunks_stats;
@@ -3240,6 +3314,7 @@
malloc_mutex_init(&chunks_mtx);
RB_INIT(&huge);
#ifdef USE_BRK
+ malloc_mutex_init(&brk_mtx);
brk_base = sbrk(0);
brk_prev = brk_base;
brk_max = brk_base;
@@ -3257,49 +3332,11 @@
#endif
#ifdef USE_BRK
/*
- * Do special brk allocation here, since the base chunk doesn't really
- * need to be chunk-aligned.
+ * Allocate a base chunk here, since it doesn't actually have to be
+ * chunk-aligned. Doing this before allocating any other chunks allows
+ * the use of space that would otherwise be wasted.
*/
- {
- void *brk_cur;
- intptr_t incr;
-
- do {
- /* Get the current end of brk. */
- brk_cur = sbrk(0);
-
- /*
- * Calculate how much padding is necessary to
- * chunk-align the end of brk. Don't worry about
- * brk_cur not being chunk-aligned though.
- */
- incr = (intptr_t)chunk_size
- - (intptr_t)CHUNK_ADDR2OFFSET(brk_cur);
-
- brk_prev = sbrk(incr);
- if (brk_prev == brk_cur) {
- /* Success. */
- break;
- }
- } while (brk_prev != (void *)-1);
-
- base_chunk = brk_cur;
- base_next_addr = base_chunk;
- base_past_addr = (void *)((uintptr_t)base_chunk + incr);
-#ifdef MALLOC_STATS
- base_total += incr;
- stats_chunks.nchunks = 1;
- stats_chunks.curchunks = 1;
- stats_chunks.highchunks = 1;
-#endif
- }
-#else
- /*
- * The first base chunk will be allocated when needed by base_alloc().
- */
- base_chunk = NULL;
- base_next_addr = NULL;
- base_past_addr = NULL;
+ base_chunk_alloc(0);
#endif
base_chunk_nodes = NULL;
malloc_mutex_init(&base_mtx);
==== //depot/projects/arm/src/lib/libthr/thread/thr_mutex.c#4 (text+ko) ====
@@ -30,7 +30,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/lib/libthr/thread/thr_mutex.c,v 1.46 2006/08/28 04:52:50 davidxu Exp $
+ * $FreeBSD: src/lib/libthr/thread/thr_mutex.c,v 1.47 2006/09/08 09:29:14 davidxu Exp $
*/
#include "namespace.h"
@@ -355,8 +355,7 @@
ret = mutex_self_lock(m, abstime);
} else {
if (abstime == NULL) {
- _thr_umutex_lock(&m->m_lock, id);
- ret = 0;
+ ret = _thr_umutex_lock(&m->m_lock, id);
} else if (__predict_false(
abstime->tv_sec < 0 || abstime->tv_nsec < 0 ||
abstime->tv_nsec >= 1000000000)) {
==== //depot/projects/arm/src/lib/libutil/pw_util.c#3 (text+ko) ====
@@ -43,7 +43,7 @@
static const char sccsid[] = "@(#)pw_util.c 8.3 (Berkeley) 4/2/94";
#endif
static const char rcsid[] =
- "$FreeBSD: src/lib/libutil/pw_util.c,v 1.36 2006/09/04 15:09:21 thomas Exp $";
+ "$FreeBSD: src/lib/libutil/pw_util.c,v 1.37 2006/09/08 08:14:32 thomas Exp $";
#endif /* not lint */
/*
@@ -488,7 +488,7 @@
fpw = pw_scan(r, PWSCAN_MASTER);
/*
- * fpw is either the struct password for the current line,
+ * fpw is either the struct passwd for the current line,
* or NULL if the line is malformed.
*/
==== //depot/projects/arm/src/libexec/rtld-elf/rtld.c#4 (text+ko) ====
@@ -23,7 +23,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $FreeBSD: src/libexec/rtld-elf/rtld.c,v 1.116 2006/09/01 06:13:16 marcel Exp $
+ * $FreeBSD: src/libexec/rtld-elf/rtld.c,v 1.117 2006/09/08 14:59:54 kib Exp $
*/
/*
@@ -123,7 +123,7 @@
static void set_program_var(const char *, const void *);
static const Elf_Sym *symlook_default(const char *, unsigned long,
const Obj_Entry *, const Obj_Entry **, const Ver_Entry *, int);
-static const Elf_Sym *symlook_list(const char *, unsigned long, Objlist *,
+static const Elf_Sym *symlook_list(const char *, unsigned long, const Objlist *,
const Obj_Entry **, const Ver_Entry *, int flags, DoneList *);
static void trace_loaded_objects(Obj_Entry *obj);
static void unlink_object(Obj_Entry *);
@@ -1851,21 +1851,18 @@
return NULL;
}
+ DoneList donelist;
+ const Objlist *srch_list;
+ donelist_init(&donelist);
if (obj->mainprog) {
- DoneList donelist;
-
/* Search main program and all libraries loaded by it. */
- donelist_init(&donelist);
- def = symlook_list(name, hash, &list_main, &defobj, ve, flags,
- &donelist);
+ srch_list = &list_main;
} else {
- /*
- * XXX - This isn't correct. The search should include the whole
- * DAG rooted at the given object.
- */
- def = symlook_obj(name, hash, obj, ve, flags);
- defobj = obj;
+ /* Search the whole DAG rooted at the given object. */
+ srch_list = &(obj->dagmembers);
}
+ def = symlook_list(name, hash, srch_list, &defobj, ve, flags,
+ &donelist);
}
if (def != NULL) {
@@ -2336,7 +2333,7 @@
}
static const Elf_Sym *
-symlook_list(const char *name, unsigned long hash, Objlist *objlist,
+symlook_list(const char *name, unsigned long hash, const Objlist *objlist,
const Obj_Entry **defobj_out, const Ver_Entry *ventry, int flags,
DoneList *dlp)
{
==== //depot/projects/arm/src/release/Makefile#3 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/release/Makefile,v 1.912 2006/08/22 07:51:08 ru Exp $
+# $FreeBSD: src/release/Makefile,v 1.913 2006/09/08 19:54:36 ru Exp $
#
# make release [BUILDNAME=somename] CHROOTDIR=/some/dir CVSROOT=/cvs/dir \
# [RELEASETAG=tag]
@@ -1098,7 +1098,7 @@
@rm -rf ${RD}/dists/${TD}/${TN}*
@mkdir -p ${RD}/dists/${TD}
@( cd ${SD} && \
- tn=`echo ${TN} | tr 'A-Z' 'a-z' | cut -c1-8` && \
+ tn=`echo ${TN} | tr 'A-Z' 'a-z'` && \
echo rolling ${TD}/$$tn tarball &&\
tar --exclude CVS --exclude obj --exclude BOOTMFS -cf - ${ARG} | \
${ZIPNSPLIT} ${RD}/dists/${TD}/$$tn. && \
==== //depot/projects/arm/src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#12 (text+ko) ====
@@ -3,7 +3,7 @@
<corpauthor>The &os; Project</corpauthor>
- <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.972 2006/09/07 18:58:19 bmah Exp $</pubdate>
+ <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.974 2006/09/07 23:49:26 bmah Exp $</pubdate>
<copyright>
<year>2000</year>
@@ -210,7 +210,7 @@
<para>A potential denial of service attack against &man.named.8;
has been fixed. For more details, see security advisory
- <ulink url="http://security.FreeBSD.org/advisories/FreeBSD-SA-06:20.named.asc">FreeBSD-SA-06:20.named</ulink>. &merged;</para>
+ <ulink url="http://security.FreeBSD.org/advisories/FreeBSD-SA-06:20.bind.asc">FreeBSD-SA-06:20.bind</ulink>. &merged;</para>
</sect2>
@@ -1609,8 +1609,8 @@
<para><application>GCC</application> has been updated from 3.4.4
to 3.4.6. &merged;</para>
- <para><application>GNU Readline library</application>
- has been updated from 5.0 to 5.1.</para>
+ <para><application>GNU Readline library</application> has been
+ updated from 5.0 to 5.1.</para>
<para><application>GNU Troff</application>
has been updated from version 1.19 to version 1.19.2.
@@ -1627,7 +1627,7 @@
<para><application>lukemftpd</application> has been updated from a
snapshot from NetBSD as of 9 August 2004 to a snapshot from
- NetBSD as of 31 August 2006.</para>
+ NetBSD as of 31 August 2006. &merged;</para>
<para><application>OpenSSH</application> has been updated from
4.2p1 to 4.3p1.</para>
==== //depot/projects/arm/src/release/scripts/kernels-install.sh#3 (text) ====
@@ -1,6 +1,6 @@
#!/bin/sh
#
-# $FreeBSD: src/release/scripts/kernels-install.sh,v 1.3 2006/08/28 08:06:21 ru Exp $
+# $FreeBSD: src/release/scripts/kernels-install.sh,v 1.4 2006/09/08 19:54:37 ru Exp $
#
if [ "`id -u`" != "0" ]; then
@@ -35,8 +35,8 @@
echo "Saving existing $KERNEL as $sav"
mv $KERNEL $sav
fi
- # translate per Makefile:doTARBALL XXX are we sure to have tr+cut?
- tn=`echo ${CONFIG} | tr 'A-Z' 'a-z' | cut -c1-8`
+ # translate per Makefile:doTARBALL XXX are we sure to have tr?
+ tn=`echo ${CONFIG} | tr 'A-Z' 'a-z'`
cat $tn.?? | tar --unlink -xpzf - -C $BOOT
else
echo "Installation of $CONFIG kernel distribution not done."
==== //depot/projects/arm/src/sbin/geom/class/nop/geom_nop.c#2 (text+ko) ====
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2004 Pawel Jakub Dawidek <pjd at FreeBSD.org>
+ * Copyright (c) 2004-2006 Pawel Jakub Dawidek <pjd at FreeBSD.org>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sbin/geom/class/nop/geom_nop.c,v 1.8 2006/02/01 12:11:36 pjd Exp $");
+__FBSDID("$FreeBSD: src/sbin/geom/class/nop/geom_nop.c,v 1.9 2006/09/08 09:21:21 pjd Exp $");
#include <stdio.h>
#include <stdint.h>
@@ -38,7 +38,9 @@
uint32_t lib_version = G_LIB_VERSION;
uint32_t version = G_NOP_VERSION;
-static intmax_t failprob = 0;
+static intmax_t error = -1;
+static intmax_t rfailprob = -1;
+static intmax_t wfailprob = -1;
static intmax_t offset = 0;
static intmax_t secsize = 0;
static intmax_t size = 0;
@@ -46,20 +48,25 @@
struct g_command class_commands[] = {
{ "create", G_FLAG_VERBOSE | G_FLAG_LOADKLD, NULL,
{
- { 'f', "failprob", &failprob, G_TYPE_NUMBER },
+ { 'e', "error", &error, G_TYPE_NUMBER },
{ 'o', "offset", &offset, G_TYPE_NUMBER },
+ { 'r', "rfailprob", &rfailprob, G_TYPE_NUMBER },
{ 's', "size", &size, G_TYPE_NUMBER },
{ 'S', "secsize", &secsize, G_TYPE_NUMBER },
+ { 'w', "wfailprob", &wfailprob, G_TYPE_NUMBER },
G_OPT_SENTINEL
},
- "[-v] [-f failprob] [-o offset] [-s size] [-S secsize] dev ..."
+ "[-v] [-e error] [-o offset] [-r rfailprob] [-s size] [-S secsize] "
+ "[-w wfailprob] dev ..."
},
{ "configure", G_FLAG_VERBOSE, NULL,
{
- { 'f', "failprob", &failprob, G_TYPE_NUMBER },
+ { 'e', "error", &error, G_TYPE_NUMBER },
+ { 'r', "rfailprob", &rfailprob, G_TYPE_NUMBER },
+ { 'w', "wfailprob", &wfailprob, G_TYPE_NUMBER },
G_OPT_SENTINEL
},
- "[-v] [-f failprob] prov ..."
+ "[-v] [-e error] [-r rfailprob] [-w wfailprob] prov ..."
},
{ "destroy", G_FLAG_VERBOSE, NULL,
{
==== //depot/projects/arm/src/sbin/geom/class/nop/gnop.8#2 (text+ko) ====
@@ -1,4 +1,4 @@
-.\" Copyright (c) 2004-2005 Pawel Jakub Dawidek <pjd at FreeBSD.org>
+.\" Copyright (c) 2004-2006 Pawel Jakub Dawidek <pjd at FreeBSD.org>
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -22,9 +22,9 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/sbin/geom/class/nop/gnop.8,v 1.19 2005/12/08 23:00:31 pjd Exp $
+.\" $FreeBSD: src/sbin/geom/class/nop/gnop.8,v 1.20 2006/09/08 09:21:21 pjd Exp $
.\"
-.Dd May 21, 2004
+.Dd September 8, 2006
.Dt GNOP 8
.Os
.Sh NAME
@@ -34,15 +34,19 @@
.Nm
.Cm create
.Op Fl v
-.Op Fl f Ar failprob
+.Op Fl e Ar error
.Op Fl o Ar offset
+.Op Fl r Ar rfailprob
.Op Fl s Ar size
.Op Fl S Ar secsize
+.Op Fl w Ar wfailprob
.Ar dev ...
.Nm
.Cm configure
.Op Fl v
-.Op Fl f Ar failprob
+.Op Fl e Ar error
+.Op Fl r Ar rfailprob
+.Op Fl w Ar wfailprob
.Ar prov ...
.Nm
.Cm destroy
@@ -104,17 +108,21 @@
.El
.Pp
Additional options:
-.Bl -tag -width ".Fl f Ar failprob"
+.Bl -tag -width ".Fl f Ar rfailprob"
+.It Fl e Ar error
+Specifies the error number to return on failure.
.It Fl f
Force the removal of the specified provider.
-.It Fl f Ar failprob
-Specifies failure probability in percentage.
.It Fl o Ar offset
Where to begin on the original provider.
+.It Fl r Ar rfailprob
+Specifies read failure probability in percent.
.It Fl s Ar size
Size of the transparent provider.
.It Fl S Ar secsize
Sector size of the transparent provider.
+.It Fl w Ar wfailprob
+Specifies write failure probability in percent.
.It Fl v
Be more verbose.
.El
==== //depot/projects/arm/src/sbin/ifconfig/ifconfig.c#3 (text+ko) ====
@@ -38,7 +38,7 @@
static char sccsid[] = "@(#)ifconfig.c 8.2 (Berkeley) 2/16/94";
#endif
static const char rcsid[] =
- "$FreeBSD: src/sbin/ifconfig/ifconfig.c,v 1.121 2006/09/06 22:07:14 andre Exp $";
+ "$FreeBSD: src/sbin/ifconfig/ifconfig.c,v 1.122 2006/09/08 13:29:38 andre Exp $";
#endif /* not lint */
#include <sys/param.h>
@@ -805,7 +805,7 @@
#define IFCAPBITS \
"\020\1RXCSUM\2TXCSUM\3NETCONS\4VLAN_MTU\5VLAN_HWTAGGING\6JUMBO_MTU\7POLLING" \
-"\8TSO4\9TSO6\10VLAN_HWCSUM"
+"\10VLAN_HWCSUM\11TSO4\12TSO6"
/*
* Print the status of the interface. If an address family was
==== //depot/projects/arm/src/sbin/mount/mount.8#2 (text+ko) ====
@@ -26,7 +26,7 @@
.\" SUCH DAMAGE.
.\"
.\" @(#)mount.8 8.8 (Berkeley) 6/16/94
-.\" $FreeBSD: src/sbin/mount/mount.8,v 1.78 2006/07/12 16:05:51 des Exp $
+.\" $FreeBSD: src/sbin/mount/mount.8,v 1.79 2006/09/08 13:47:39 danger Exp $
.\"
.Dd July 12, 2006
.Dt MOUNT 8
@@ -131,9 +131,12 @@
to the file system should be done asynchronously.
This is a
.Em dangerous
-flag to set,
-and should not be used unless you are prepared to recreate the file
-system should your system crash.
+flag to set, since it does not guarantee that the file system structure
+on the disk will remain consistent.
+For this reason, the
+.Cm async
+flag should be used sparingly, and only when some data recovery
+mechanism is present.
.It Cm current
When used with the
.Fl u
==== //depot/projects/arm/src/share/man/man7/security.7#2 (text+ko) ====
@@ -21,9 +21,9 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man7/security.7,v 1.47 2006/07/12 18:12:11 keramida Exp $
+.\" $FreeBSD: src/share/man/man7/security.7,v 1.48 2006/09/08 04:56:21 trhodes Exp $
.\"
-.Dd November 29, 2004
+.Dd September 8, 2006
.Dt SECURITY 7
.Os
.Sh NAME
@@ -54,19 +54,6 @@
In a nutshell,
what you want to do is to create as many layers of security as are convenient
and then carefully monitor the system for intrusions.
-You do not want to
-overbuild your security or you will interfere with the detection side, and
-detection is one of the single most important aspects of any security
-mechanism.
-For example, it makes little sense to set the
-.Cm schg
-flags
-(see
-.Xr chflags 1 )
-on every system binary because while this may temporarily protect the
-binaries, it prevents an attacker who has broken in from making an
-easily detectable change that may result in your security mechanisms not
-detecting the attacker at all.
.Pp
System security also pertains to dealing with various forms of attacks,
including attacks that attempt to crash or otherwise make a system unusable
==== //depot/projects/arm/src/share/man/man9/printf.9#2 (text+ko) ====
@@ -24,9 +24,9 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man9/printf.9,v 1.7 2005/07/31 03:30:45 keramida Exp $
+.\" $FreeBSD: src/share/man/man9/printf.9,v 1.8 2006/09/08 14:05:03 ru Exp $
.\"
-.Dd August 10, 2004
+.Dd September 8, 2006
.Dt PRINTF 9
.Os
.Sh NAME
@@ -90,7 +90,7 @@
for example, \e10 gives octal and \e20 gives hexadecimal.
The arguments are made up of a sequence of bit identifiers.
Each bit identifier begins with an integer value which is the number of the
-bit this identifier describes.
+bit (starting from 1) this identifier describes.
The rest of the identifier is a string of characters containing the name of
the bit.
The string is terminated by either the bit number at the start of the next
@@ -140,7 +140,11 @@
.Fn uprintf
functions return the number of characters displayed.
.Sh EXAMPLES
-This example demonstrates the use of the \&%b and \&%D conversion specifiers.
+This example demonstrates the use of the
+.Cm \&%b
+and
+.Cm \&%D
+conversion specifiers.
The function
.Bd -literal -offset indent
void
==== //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_proto.h#15 (text+ko) ====
@@ -2,7 +2,7 @@
* System call prototypes.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.60 2006/09/03 16:24:36 rwatson Exp $
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_proto.h,v 1.61 2006/09/09 01:22:13 davidxu Exp $
* created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.73 2006/09/03 16:17:49 rwatson Exp
*/
==== //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_syscall.h#15 (text+ko) ====
@@ -2,7 +2,7 @@
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.58 2006/09/03 16:24:36 rwatson Exp $
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscall.h,v 1.59 2006/09/09 01:22:13 davidxu Exp $
* created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.73 2006/09/03 16:17:49 rwatson Exp
*/
@@ -310,5 +310,10 @@
#define FREEBSD32_SYS_thr_suspend 442
#define FREEBSD32_SYS_thr_wake 443
#define FREEBSD32_SYS_kldunloadf 444
+#define FREEBSD32_SYS_sigqueue 456
#define FREEBSD32_SYS_abort2 463
+#define FREEBSD32_SYS_thr_set_name 464
+#define FREEBSD32_SYS_thr_setscheduler 466
+#define FREEBSD32_SYS_thr_getscheduler 467
+#define FREEBSD32_SYS_thr_setschedparam 468
#define FREEBSD32_SYS_MAXSYSCALL 471
==== //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_syscalls.c#15 (text+ko) ====
@@ -2,7 +2,7 @@
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.49 2006/09/03 16:24:36 rwatson Exp $
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_syscalls.c,v 1.50 2006/09/09 01:22:13 davidxu Exp $
* created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.73 2006/09/03 16:17:49 rwatson Exp
*/
@@ -463,7 +463,7 @@
"#453", /* 453 = auditctl */
"#454", /* 454 = _umtx_op */
"#455", /* 455 = thr_new */
- "#456", /* 456 = sigqueue */
+ "sigqueue", /* 456 = sigqueue */
"#457", /* 457 = kmq_open */
"#458", /* 458 = kmq_setattr */
"#459", /* 459 = kmq_timedreceive */
@@ -471,11 +471,11 @@
"#461", /* 461 = kmq_notify */
"#462", /* 462 = kmq_unlink */
"abort2", /* 463 = abort2 */
- "#464", /* 464 = thr_set_name */
+ "thr_set_name", /* 464 = thr_set_name */
"#465", /* 465 = aio_fsync */
- "#466", /* 466 = thr_setscheduler */
- "#467", /* 467 = thr_getscheduler */
- "#468", /* 468 = thr_setschedparam */
+ "thr_setscheduler", /* 466 = thr_setscheduler */
+ "thr_getscheduler", /* 467 = thr_getscheduler */
+ "thr_setschedparam", /* 468 = thr_setschedparam */
"#469", /* 469 = __getpath_fromfd */
"#470", /* 470 = __getpath_fromaddr */
};
==== //depot/projects/arm/src/sys/compat/freebsd32/freebsd32_sysent.c#15 (text+ko) ====
@@ -2,7 +2,7 @@
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.59 2006/09/03 16:24:36 rwatson Exp $
+ * $FreeBSD: src/sys/compat/freebsd32/freebsd32_sysent.c,v 1.60 2006/09/09 01:22:13 davidxu Exp $
* created from FreeBSD: src/sys/compat/freebsd32/syscalls.master,v 1.73 2006/09/03 16:17:49 rwatson Exp
*/
@@ -488,7 +488,7 @@
{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 453 = auditctl */
{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 454 = _umtx_op */
{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 455 = thr_new */
- { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 456 = sigqueue */
+ { AS(sigqueue_args), (sy_call_t *)sigqueue, AUE_NULL, NULL, 0, 0 }, /* 456 = sigqueue */
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list