Date: Sun, 23 Mar 2008 20:51:07 GMT From: John Birrell <jb@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 138388 for review Message-ID: <200803232051.m2NKp7vd022012@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=138388 Change 138388 by jb@jb_freebsd1 on 2008/03/23 20:50:44 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#60 integrate .. //depot/projects/dtrace/doc/share/pgpkeys/keramida.key#4 integrate .. //depot/projects/dtrace/doc/share/sgml/man-refs.ent#27 integrate .. //depot/projects/dtrace/src/bin/sh/options.c#5 integrate .. //depot/projects/dtrace/src/include/pthread.h#5 integrate .. //depot/projects/dtrace/src/include/time.h#6 integrate .. //depot/projects/dtrace/src/lib/libthr/pthread.map#13 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/Makefile.inc#8 integrate .. //depot/projects/dtrace/src/lib/libthr/thread/thr_getcpuclockid.c#1 branch .. //depot/projects/dtrace/src/lib/libthread_db/Makefile#7 integrate .. //depot/projects/dtrace/src/lib/libthread_db/kse.h#1 branch .. //depot/projects/dtrace/src/lib/libthread_db/libc_r_db.c#4 integrate .. //depot/projects/dtrace/src/lib/libthread_db/libpthread_db.c#5 integrate .. //depot/projects/dtrace/src/lib/libthread_db/libthr_db.c#5 integrate .. //depot/projects/dtrace/src/lib/libthread_db/thread_db.c#5 integrate .. //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/relnotes/article.sgml#19 integrate .. //depot/projects/dtrace/src/sbin/bsdlabel/bsdlabel.c#6 integrate .. //depot/projects/dtrace/src/sbin/dhclient/dhclient.c#8 integrate .. //depot/projects/dtrace/src/sbin/route/route.c#6 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/pmap.c#35 integrate .. //depot/projects/dtrace/src/sys/arm/arm/elf_trampoline.c#11 integrate .. //depot/projects/dtrace/src/sys/arm/conf/AVILA.hints#2 integrate .. //depot/projects/dtrace/src/sys/arm/xscale/ixp425/if_npe.c#6 integrate .. //depot/projects/dtrace/src/sys/dev/ath/if_ath.c#18 integrate .. //depot/projects/dtrace/src/sys/dev/fxp/if_fxp.c#11 integrate .. //depot/projects/dtrace/src/sys/dev/mfi/mfi.c#14 integrate .. //depot/projects/dtrace/src/sys/dev/re/if_re.c#17 integrate .. //depot/projects/dtrace/src/sys/fs/msdosfs/msdosfs_vfsops.c#20 integrate .. //depot/projects/dtrace/src/sys/geom/geom.h#9 integrate .. //depot/projects/dtrace/src/sys/geom/geom_subr.c#7 integrate .. //depot/projects/dtrace/src/sys/geom/part/g_part.c#6 integrate .. //depot/projects/dtrace/src/sys/geom/part/g_part.h#5 integrate .. //depot/projects/dtrace/src/sys/geom/part/g_part_apm.c#3 integrate .. //depot/projects/dtrace/src/sys/geom/part/g_part_bsd.c#4 integrate .. //depot/projects/dtrace/src/sys/geom/part/g_part_gpt.c#4 integrate .. //depot/projects/dtrace/src/sys/geom/part/g_part_mbr.c#3 integrate .. //depot/projects/dtrace/src/sys/geom/part/g_part_vtoc8.c#2 integrate .. //depot/projects/dtrace/src/sys/i386/i386/pmap.c#30 integrate .. //depot/projects/dtrace/src/sys/kern/kern_exit.c#21 integrate .. //depot/projects/dtrace/src/sys/kern/kern_thr.c#23 integrate .. //depot/projects/dtrace/src/sys/kern/kern_timeout.c#10 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_bio.c#23 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_cluster.c#7 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_default.c#11 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_mount.c#28 integrate .. //depot/projects/dtrace/src/sys/kern/vfs_subr.c#33 integrate .. //depot/projects/dtrace/src/sys/modules/geom/geom_part/Makefile#2 integrate .. //depot/projects/dtrace/src/sys/modules/geom/geom_part/geom_part_apm/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/geom/geom_part/geom_part_bsd/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/geom/geom_part/geom_part_gpt/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/geom/geom_part/geom_part_mbr/Makefile#1 branch .. //depot/projects/dtrace/src/sys/modules/geom/geom_part/geom_part_vtoc8/Makefile#1 branch .. //depot/projects/dtrace/src/sys/nfs4client/nfs4_vfsops.c#12 integrate .. //depot/projects/dtrace/src/sys/nfs4client/nfs4_vnops.c#11 integrate .. //depot/projects/dtrace/src/sys/nfsclient/nfs_subs.c#14 integrate .. //depot/projects/dtrace/src/sys/nfsclient/nfs_vfsops.c#18 integrate .. //depot/projects/dtrace/src/sys/nfsclient/nfs_vnops.c#15 integrate .. //depot/projects/dtrace/src/sys/nfsserver/nfs_serv.c#11 integrate .. //depot/projects/dtrace/src/sys/pci/if_rlreg.h#13 integrate .. //depot/projects/dtrace/src/sys/sys/buf.h#12 integrate .. //depot/projects/dtrace/src/sys/sys/bufobj.h#8 integrate .. //depot/projects/dtrace/src/sys/sys/vnode.h#13 integrate .. //depot/projects/dtrace/src/sys/ufs/ffs/ffs_inode.c#7 integrate .. //depot/projects/dtrace/src/sys/ufs/ffs/ffs_rawread.c#8 integrate .. //depot/projects/dtrace/src/sys/ufs/ffs/ffs_softdep.c#17 integrate .. //depot/projects/dtrace/src/sys/ufs/ffs/ffs_vfsops.c#22 integrate .. //depot/projects/dtrace/src/sys/ufs/ffs/ffs_vnops.c#17 integrate .. //depot/projects/dtrace/src/tools/regression/bin/sh/builtins/getopts1.0#1 branch .. //depot/projects/dtrace/src/tools/regression/bin/sh/builtins/getopts1.0.stdout#1 branch .. //depot/projects/dtrace/src/tools/tools/net80211/wlanwatch/wlanwatch.c#5 integrate .. //depot/projects/dtrace/src/usr.sbin/freebsd-update/freebsd-update.sh#9 integrate .. //depot/projects/dtrace/www/en/gnome/docs/bugging.sgml#7 integrate .. //depot/projects/dtrace/www/en/gnome/docs/example-Makefile.sgml#8 integrate .. //depot/projects/dtrace/www/en/gnome/docs/faq2.sgml#16 integrate .. //depot/projects/dtrace/www/en/projects/ideas/ideas.xml#13 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/porters-handbook/book.sgml#60 (text+ko) ==== @@ -1,7 +1,7 @@ <!-- The FreeBSD Documentation Project - $FreeBSD: doc/en_US.ISO8859-1/books/porters-handbook/book.sgml,v 1.905 2008/03/09 11:51:53 antoine Exp $ + $FreeBSD: doc/en_US.ISO8859-1/books/porters-handbook/book.sgml,v 1.906 2008/03/23 08:07:48 jeff Exp $ --> <!DOCTYPE BOOK PUBLIC "-//FreeBSD//DTD DocBook V4.1-Based Extension//EN" [ @@ -12011,6 +12011,13 @@ to &man.fcntl.2;.</entry> <entry>800025</entry> </row> + + <row> + <entry>8.0-CURRENT after changing the priority parameter + to cv_broadcastpri such that 0 means no priority. + </entry> + <entry>800026</entry> + </row> </tbody> </tgroup> </table> ==== //depot/projects/dtrace/doc/share/pgpkeys/keramida.key#4 (text+ko) ==== @@ -1,4 +1,4 @@ -<!-- $FreeBSD: doc/share/pgpkeys/keramida.key,v 1.4 2006/10/21 00:24:15 keramida Exp $ --> +<!-- $FreeBSD: doc/share/pgpkeys/keramida.key,v 1.5 2008/03/23 15:48:00 keramida Exp $ --> <!-- sh addkey.sh keramida 318603B6; --> @@ -9,6 +9,7 @@ uid Giorgos Keramidas <keramida@ceid.upatras.gr> uid Giorgos Keramidas <keramida@hellug.gr> uid Giorgos Keramidas <keramida@linux.gr> +uid Giorgos Keramidas <charon@labs.gr> sub 1024g/50FDBAD1 2001-09-21 ]]></programlisting> <programlisting role="pgpkey"><![CDATA[ @@ -25,25 +26,106 @@ Hl6+vHUIagar1tGZNK6sTvbGt7TRhy8RDLV+wSvU4YTvAGtqWLQoR2lvcmdvcyBL ZXJhbWlkYXMgPGtlcmFtaWRhQEZyZWVCU0Qub3JnPohiBBMRAgAaBQsHCgMEAxUD AgMWAgECF4ACGQEFAju+Q6EAEgdlR1BHAAEBCRDWD5QaMYYDtn/gAJ0UcfvNt0XL -oA4TlfYpDdslz2LJewCcDxASNUAzOJcGn6FPUfhol5nzT5u0LEdpb3Jnb3MgS2Vy -YW1pZGFzIDxrZXJhbWlkYUBjZWlkLnVwYXRyYXMuZ3I+iF8EExECABcFAjuqmoUF -CwcKAwQDFQMCAxYCAQIXgAASCRDWD5QaMYYDtgdlR1BHAAEB+h8AoI3v1fOoyqR4 -/u72yFxQDEzbUACQAKC66iQb18quWS3QRNcFzbiTI8ifMohGBBARAgAGBQI7rKO8 -AAoJEGHjIVoOe1PRGvcAoKuKIaRiUHnSWzt7SGL7YtQzKHqMAJsGj5pBOcXj82xF -xfy3hpK7jSu3B7QmR2lvcmdvcyBLZXJhbWlkYXMgPGtlcmFtaWRhQGhlbGx1Zy5n -cj6IXAQTEQIAHAUCPdQL6QIbAwQLBwMCAxUCAwMWAgECHgECF4AACgkQ1g+UGjGG -A7ZKTwCfW+//cB8QAM3n3rFthG39VZeMEp0An2AV3OOQaKayX4MMx9Mr5rzGmkzj -tCVHaW9yZ29zIEtlcmFtaWRhcyA8a2VyYW1pZGFAbGludXguZ3I+iFwEExECABwF -Aj3UDA4CGwMECwcDAgMVAgMDFgIBAh4BAheAAAoJENYPlBoxhgO2MEsAoMOehdZO -6Vq06MYhzxLVwGSUSL/NAKC4YjRI3M07BhDNEiBCTTLd6V2kN7kBDQQ7qpooEAQA -oMOrDFI6w41FpGo1SaaeyF87ItkOZJNOZo05sNGK1xkb0A+/N047+QnoNq1wKp1M -MJJ6hV5N7BfoWjyqwdR0Au2+EGbyMC3VC3Ttq1fJ5xvQ7L/d5yBePYr2Kci7f8vP -H7yrsqm12B9MyJa8rTRzIiHT56MZosjaXJEn/rbqOKMAAwYD/3iCHaPl0tihQhDK -pLLGMpNvFrhrIUnf/AQgN3Ez2VchSJubuTms4ybNsS3jr1cvd4iyoYIqln7iRFMQ -/BQdgUhkKIOFW0E+wNRRUDob28ed/rz4cR4HEMmOf3uiCw7egrsdou3nkV8gmI42 -w9H5p+/qpxBRJX10xEeLOs/LVCKSiE4EGBECAAYFAjuqmigAEgkQ1g+UGjGGA7YH -ZUdQRwABAUnQAKCU1zwyCX9rKsiYRORPjK5G1mkVcwCeKAOtsSjWx31CViTq5Z8v -mEgj0aY= -=cDvT +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 +=6KNQ -----END PGP PUBLIC KEY BLOCK----- ]]></programlisting> ==== //depot/projects/dtrace/doc/share/sgml/man-refs.ent#27 (text+ko) ==== @@ -20,7 +20,7 @@ lexicographical order by the entity (i.e., the dots used in place of special characters should not be expanded when comparing). - $FreeBSD: doc/share/sgml/man-refs.ent,v 1.452 2008/03/15 06:55:16 bmah Exp $ + $FreeBSD: doc/share/sgml/man-refs.ent,v 1.453 2008/03/22 17:46:11 bmah Exp $ --> <!ENTITY man...1 "<citerefentry/<refentrytitle/[/<manvolnum/1//"> @@ -3296,6 +3296,7 @@ <!ENTITY man.clkbrd.4 "<citerefentry/<refentrytitle/clkbrd/<manvolnum/4//"> <!ENTITY man.ciss.4 "<citerefentry/<refentrytitle/ciss/<manvolnum/4//"> <!ENTITY man.cm.4 "<citerefentry/<refentrytitle/cm/<manvolnum/4//"> +<!ENTITY man.cmx.4 "<citerefentry/<refentrytitle/cmx/<manvolnum/4//"> <!ENTITY man.cnw.4 "<citerefentry/<refentrytitle/cnw/<manvolnum/4//"> <!ENTITY man.coretemp.4 "<citerefentry/<refentrytitle/coretemp/<manvolnum/4//"> <!ENTITY man.cp.4 "<citerefentry/<refentrytitle/cp/<manvolnum/4//"> @@ -3743,6 +3744,7 @@ <!ENTITY man.urio.4 "<citerefentry/<refentrytitle/urio/<manvolnum/4//"> <!ENTITY man.usb.4 "<citerefentry/<refentrytitle/usb/<manvolnum/4//"> <!ENTITY man.uscanner.4 "<citerefentry/<refentrytitle/uscanner/<manvolnum/4//"> +<!ENTITY man.uslcom.4 "<citerefentry/<refentrytitle/uslcom/<manvolnum/4//"> <!ENTITY man.utopia.4 "<citerefentry/<refentrytitle/utopia/<manvolnum/4//"> <!ENTITY man.uvisor.4 "<citerefentry/<refentrytitle/uvisor/<manvolnum/4//"> <!ENTITY man.uvscom.4 "<citerefentry/<refentrytitle/uvscom/<manvolnum/4//"> ==== //depot/projects/dtrace/src/bin/sh/options.c#5 (text+ko) ==== @@ -36,7 +36,7 @@ #endif #endif /* not lint */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/bin/sh/options.c,v 1.25 2006/04/09 12:20:42 stefanf Exp $"); +__FBSDID("$FreeBSD: src/bin/sh/options.c,v 1.26 2008/03/22 14:06:01 stefanf Exp $"); #include <signal.h> #include <unistd.h> @@ -383,7 +383,7 @@ } ap2 = shellparam.p; while ((*ap2++ = *ap1++) != NULL); - shellparam.optnext = NULL; + shellparam.reset = 1; INTON; return 0; } @@ -405,6 +405,7 @@ if (*argptr != NULL) { setparam(argptr); } + shellparam.reset = 1; INTON; return 0; } @@ -414,7 +415,6 @@ getoptsreset(const char *value) { if (number(value) == 1) { - shellparam.optnext = NULL; shellparam.reset = 1; } } ==== //depot/projects/dtrace/src/include/pthread.h#5 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/pthread.h,v 1.41 2007/10/29 21:01:47 kris Exp $ + * $FreeBSD: src/include/pthread.h,v 1.42 2008/03/22 09:59:20 davidxu Exp $ */ #ifndef _PTHREAD_H_ #define _PTHREAD_H_ @@ -185,6 +185,7 @@ int pthread_equal(pthread_t, pthread_t); void pthread_exit(void *) __dead2; void *pthread_getspecific(pthread_key_t); +int pthread_getcpuclockid(pthread_t, clockid_t *); int pthread_join(pthread_t, void **); int pthread_key_create(pthread_key_t *, void (*) (void *)); ==== //depot/projects/dtrace/src/include/time.h#6 (text+ko) ==== @@ -39,7 +39,7 @@ */ /* - * $FreeBSD: src/include/time.h,v 1.34 2006/04/15 03:08:55 jb Exp $ + * $FreeBSD: src/include/time.h,v 1.35 2008/03/22 09:59:20 davidxu Exp $ */ #ifndef _TIME_H_ @@ -108,6 +108,7 @@ #define CLOCK_MONOTONIC_PRECISE 11 /* FreeBSD-specific. */ #define CLOCK_MONOTONIC_FAST 12 /* FreeBSD-specific. */ #define CLOCK_SECOND 13 /* FreeBSD-specific. */ +#define CLOCK_THREAD_CPUTIME_ID 14 #endif /* !defined(CLOCK_REALTIME) && __POSIX_VISIBLE >= 200112 */ #if !defined(TIMER_ABSTIME) && __POSIX_VISIBLE >= 200112 ==== //depot/projects/dtrace/src/lib/libthr/pthread.map#13 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libthr/pthread.map,v 1.28 2008/03/05 06:56:35 davidxu Exp $ + * $FreeBSD: src/lib/libthr/pthread.map,v 1.29 2008/03/22 09:59:20 davidxu Exp $ */ /* @@ -271,6 +271,7 @@ _pthread_exit; _pthread_getaffinity_np; _pthread_getconcurrency; + _pthread_getcpuclockid; _pthread_getprio; _pthread_getschedparam; _pthread_getspecific; @@ -395,6 +396,7 @@ pthread_attr_getaffinity_np; pthread_attr_setaffinity_np; pthread_getaffinity_np; + pthread_getcpuclockid; pthread_setaffinity_np; pthread_mutex_getspinloops_np; pthread_mutex_getyieldloops_np; ==== //depot/projects/dtrace/src/lib/libthr/thread/Makefile.inc#8 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libthr/thread/Makefile.inc,v 1.17 2008/03/03 09:16:29 davidxu Exp $ +# $FreeBSD: src/lib/libthr/thread/Makefile.inc,v 1.18 2008/03/22 09:59:20 davidxu Exp $ # thr sources .PATH: ${.CURDIR}/thread @@ -20,6 +20,7 @@ thr_exit.c \ thr_fork.c \ thr_getprio.c \ + thr_getcpuclockid.c \ thr_getschedparam.c \ thr_info.c \ thr_init.c \ ==== //depot/projects/dtrace/src/lib/libthread_db/Makefile#7 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libthread_db/Makefile,v 1.11 2008/03/12 09:49:39 jeff Exp $ +# $FreeBSD: src/lib/libthread_db/Makefile,v 1.12 2008/03/23 09:38:11 jeff Exp $ .PATH: ${.CURDIR}/arch/${MACHINE_ARCH} @@ -6,6 +6,7 @@ SHLIB_MAJOR= 3 SRCS= thread_db.c SRCS+= libpthread_md.c +SRCS+= libpthread_db.c SRCS+= libthr_db.c INCS= thread_db.h WARNS?= 1 ==== //depot/projects/dtrace/src/lib/libthread_db/libc_r_db.c#4 (text+ko) ==== @@ -25,9 +25,10 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/lib/libthread_db/libc_r_db.c,v 1.3 2005/05/31 09:43:03 dfr Exp $"); +__FBSDID("$FreeBSD: src/lib/libthread_db/libc_r_db.c,v 1.4 2008/03/22 05:40:44 davidxu Exp $"); #include <machine/setjmp.h> +#include <sys/linker_set.h> #include <proc_service.h> #include <stdlib.h> #include <string.h> @@ -346,3 +347,5 @@ .to_thr_setxmmregs = libc_r_db_thr_setxmmregs, #endif }; + +DATA_SET(__ta_ops, libc_r_db_ops); ==== //depot/projects/dtrace/src/lib/libthread_db/libpthread_db.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/lib/libthread_db/libpthread_db.c,v 1.14 2006/05/17 05:12:42 davidxu Exp $"); +__FBSDID("$FreeBSD: src/lib/libthread_db/libpthread_db.c,v 1.16 2008/03/23 09:38:11 jeff Exp $"); #include <stddef.h> #include <stdlib.h> @@ -33,12 +33,13 @@ #include <unistd.h> #include <pthread.h> #include <sys/types.h> -#include <sys/kse.h> +#include <sys/linker_set.h> #include <sys/ptrace.h> #include <proc_service.h> #include <thread_db.h> #include "libpthread_db.h" +#include "kse.h" #define P2T(c) ps2td(c) @@ -1147,3 +1148,5 @@ .to_thr_setxmmregs = pt_thr_setxmmregs, #endif }; + +DATA_SET(__ta_ops, libpthread_db_ops); ==== //depot/projects/dtrace/src/lib/libthread_db/libthr_db.c#5 (text+ko) ==== @@ -26,13 +26,14 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/lib/libthread_db/libthr_db.c,v 1.12 2006/05/17 05:14:45 davidxu Exp $"); +__FBSDID("$FreeBSD: src/lib/libthread_db/libthr_db.c,v 1.13 2008/03/22 05:40:44 davidxu Exp $"); #include <proc_service.h> #include <stddef.h> #include <stdlib.h> #include <string.h> #include <sys/types.h> +#include <sys/linker_set.h> #include <sys/ptrace.h> #include <thread_db.h> #include <unistd.h> @@ -791,3 +792,5 @@ .to_thr_setxmmregs = pt_thr_setxmmregs, #endif }; + +DATA_SET(__ta_ops, libthr_db_ops); ==== //depot/projects/dtrace/src/lib/libthread_db/thread_db.c#5 (text+ko) ==== @@ -25,12 +25,14 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/lib/libthread_db/thread_db.c,v 1.4 2006/10/20 14:15:42 davidxu Exp $"); +__FBSDID("$FreeBSD: src/lib/libthread_db/thread_db.c,v 1.5 2008/03/22 05:40:44 davidxu Exp $"); #include <proc_service.h> #include <stddef.h> #include <thread_db.h> #include <unistd.h> +#include <sys/cdefs.h> +#include <sys/linker_set.h> #include "thread_db_int.h" @@ -41,24 +43,20 @@ static TAILQ_HEAD(, td_thragent) proclist = TAILQ_HEAD_INITIALIZER(proclist); -extern struct ta_ops libpthread_db_ops; -extern struct ta_ops libthr_db_ops; +SET_DECLARE(__ta_ops, struct ta_ops); -static struct ta_ops *ops[] = { - &libpthread_db_ops, - &libthr_db_ops, -}; - td_err_e td_init(void) { td_err_e ret, tmp; + struct ta_ops *ops_p, **ops_pp; size_t i; ret = 0; - for (i = 0; i < sizeof(ops)/sizeof(ops[0]); i++) { - if (ops[i]->to_init != NULL) { - tmp = ops[i]->to_init(); + SET_FOREACH(ops_pp, __ta_ops) { + ops_p = *ops_pp; + if (ops_p->to_init != NULL) { + tmp = ops_p->to_init(); if (tmp != TD_OK) ret = tmp; } @@ -107,11 +105,13 @@ td_ta_new(struct ps_prochandle *ph, td_thragent_t **pta) { size_t i; + struct ta_ops *ops_p, **ops_pp; - for (i = 0; i < sizeof(ops)/sizeof(ops[0]); ++i) { - if (ops[i]->to_ta_new(ph, pta) == TD_OK) { + SET_FOREACH(ops_pp, __ta_ops) { + ops_p = *ops_pp; + if (ops_p->to_ta_new(ph, pta) == TD_OK) { TAILQ_INSERT_HEAD(&proclist, *pta, ta_next); - (*pta)->ta_ops = ops[i]; + (*pta)->ta_ops = ops_p; return (TD_OK); } } ==== //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/relnotes/article.sgml#19 (text+ko) ==== @@ -20,7 +20,7 @@ <corpauthor>The &os; Project</corpauthor> - <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/article.sgml,v 1.1080 2008/03/15 07:06:12 bmah Exp $</pubdate> + <pubdate>$FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/article.sgml,v 1.1081 2008/03/23 04:12:07 bmah Exp $</pubdate> <copyright> <year>2000</year> @@ -167,6 +167,14 @@ synchronized source code. More information can be found in the &man.textdump.4; manual page.</para> + <para>Kernel support for M:N threading has been removed. While + the KSE (Kernel Scheduled Entities) project was quite successful + in bringing threading to FreeBSD, the M:N approach taken by the + kse library was never developed to its full potential. + Backwards compatibility for applications using KSE threading + will be provided via &man.libmap.conf.5; for dynamically linked + binaries.</para> + <sect3 id="boot"> <title>Boot Loader Changes</title> @@ -187,7 +195,12 @@ <sect3 id="proc"> <title>Hardware Support</title> - <para></para> + <para>The &man.cmx.4; driver, a driver for Omnikey CardMan 4040 + PCMCIA smartcard readers, has been added.</para> + + <para>The &man.uslcom.4; driver, a driver for Silicon + Laboratories CP2101/CP2102-based USB serial adapters, has been + imported from OpenBSD.</para> <sect4 id="mm"> <title>Multimedia Support</title> @@ -199,6 +212,18 @@ <sect4 id="net-if"> <title>Network Interface Support</title> + <para>The &man.sf.4; driver has been overhauled to improve its + performance and to add support for checksum offloading. It + should also work on all architectures.</para> + + <para>The &man.re.4; driver has been overhauled to fix a + number of issues. This driver now has Wake On LAN (WOL) + support.</para> + + <para>The &man.vr.4; driver has been overhauled to fix a + number of outstanding issues. It also now works on all + architectures.</para> + <para>[&arch.amd64;, &arch.i386;] The &man.wpi.4; driver has been added to support the Intel 3945 Wireless LAN Controller.</para> @@ -209,21 +234,31 @@ <sect3 id="net-proto"> <title>Network Protocols</title> - <para></para> + <para>A bug in TCP options padding, where the wrong padding + bytes were used, has been fixed.</para> </sect3> <sect3 id="disks"> <title>Disks and Storage</title> - <para></para> + <para>The &man.ata.4; driver now supports a spindown command for + disks; after a configurable amount of time, if no requests + have been received for a disk, the disk will be spun down + until the next request. The &man.atacontrol.8; utility now + supports a <command>spindown</command> command to configure + this feature.</para> + + <para>The &man.hptrr.4; driver has been updated to version 1.2 + from Highpoint.</para> </sect3> <sect3 id="fs"> <title>File Systems</title> - <para></para> + <para>A problem with using &man.mmap.2; on ZFS filesystems has + been fixed.</para> </sect3> </sect2> @@ -235,6 +270,26 @@ based on <filename>libarchive</filename>, have replaced the GNU Binutils versions of these utilities.</para> + <para>&man.chflags.1; now supports a <option>-v</option> flag for + verbose output and a <option>-f</option> flag to ignore errors + with the same semantics as (for example) + &man.chmod.1;. &merged;</para> + + <para>For compatiblity with other implementations, &man.cp.1; now + supports a <option>-a</option> flag, which is equivalent to + specifying the <option>-RrP</option> flags.</para> + + <para>&man.find.1; has been enhanced by the addition of a number + of primaries that were present in GNU find but not &os; + &man.find.1;.</para> + + <para>The &man.split.1; utility now supports a <option>-n</option> + flag to split a file into a certain number of chunks.</para> + + <para>The &man.tar.1; utility now supports a <option>-Z</option> + flag to enable &man.compress.1;-style + compression/decompression.</para> + <para>&man.traceroute.8; now has the ability to print the AS number for each hop with the new <option>-a</option> switch; a new <option>-A</option> option allows selecting a particular @@ -261,8 +316,11 @@ <para><application>awk</application> has been updated from 1 May 2007 release to the 23 October 2007 release. &merged;</para> + <para><application>bzip2</application> has been updated from 1.0.4 + to 1.0.5.</para> + <para><application>CVS</application> has been updated from 1.11.17 - to 1.11.22.</para> + to a post-1.11.22 snapshot from 10 March 2008.</para> <para><application>IPFilter</application> has been updated from 4.1.23 to 4.1.28.</para> ==== //depot/projects/dtrace/src/sbin/bsdlabel/bsdlabel.c#6 (text+ko) ==== @@ -53,7 +53,7 @@ #endif /* not lint */ #endif #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sbin/bsdlabel/bsdlabel.c,v 1.113 2007/12/09 22:58:49 marcel Exp $"); +__FBSDID("$FreeBSD: src/sbin/bsdlabel/bsdlabel.c,v 1.114 2008/03/23 03:01:10 rodrigc Exp $"); #include <sys/param.h> #include <stdint.h> @@ -463,7 +463,6 @@ /* * Fetch disklabel for disk. - * Use ioctl to get label unless -r flag is given. */ static int readlabel(int flag) ==== //depot/projects/dtrace/src/sbin/dhclient/dhclient.c#8 (text+ko) ==== @@ -54,7 +54,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sbin/dhclient/dhclient.c,v 1.21 2007/02/09 17:50:26 emaste Exp $"); +__FBSDID("$FreeBSD: src/sbin/dhclient/dhclient.c,v 1.23 2008/03/22 16:24:02 sam Exp $"); #include "dhcpd.h" #include "privsep.h" @@ -176,8 +176,30 @@ return (NULL); } + struct iaddr defaddr = { 4 }; +uint8_t curbssid[6]; +static void +disassoc(void *arg) +{ + struct interface_info *ifi = arg; + + /* + * Clear existing state. + */ + if (ifi->client->active != NULL) { + script_init("EXPIRE", NULL); + script_write_params("old_", + ifi->client->active); + if (ifi->client->alias) + script_write_params("alias_", + ifi->client->alias); + script_go(); + } + ifi->client->state = S_INIT; +} + /* ARGSUSED */ void routehandler(struct protocol *p) @@ -187,6 +209,7 @@ struct if_msghdr *ifm; struct ifa_msghdr *ifam; struct if_announcemsghdr *ifan; + struct ieee80211_join_event *jev; struct client_lease *l; time_t t = time(NULL); struct sockaddr *sa; @@ -255,24 +278,17 @@ switch (ifan->ifan_what) { case RTM_IEEE80211_ASSOC: case RTM_IEEE80211_REASSOC: - state_reboot(ifi); - break; - case RTM_IEEE80211_DISASSOC: /* - * Clear existing state; transition to the init - * state and then wait for either a link down - * notification or an associate event. + * Use assoc/reassoc event to kick state machine + * in case we roam. Otherwise fall back to the + * normal state machine just like a wired network. */ - if (ifi->client->active != NULL) { - script_init("EXPIRE", NULL); - script_write_params("old_", - ifi->client->active); - if (ifi->client->alias) - script_write_params("alias_", - ifi->client->alias); - script_go(); + jev = (struct ieee80211_join_event *) &ifan[1]; + if (memcmp(curbssid, jev->iev_addr, 6)) { + disassoc(ifi); + state_reboot(ifi); } - ifi->client->state = S_INIT; + memcpy(curbssid, jev->iev_addr, 6); break; } break; @@ -300,7 +316,7 @@ /* Initially, log errors to stderr as well as to syslogd. */ openlog(__progname, LOG_PID | LOG_NDELAY, DHCPD_LOG_FACILITY); - setlogmask(LOG_UPTO(LOG_INFO)); + setlogmask(LOG_UPTO(LOG_DEBUG)); while ((ch = getopt(argc, argv, "bc:dl:qu")) != -1) switch (ch) { ==== //depot/projects/dtrace/src/sbin/route/route.c#6 (text+ko) ==== @@ -38,7 +38,7 @@ static char sccsid[] = "@(#)route.c 8.6 (Berkeley) 4/28/95"; #endif static const char rcsid[] = - "$FreeBSD: src/sbin/route/route.c,v 1.83 2007/11/04 11:12:40 mtm Exp $"; + "$FreeBSD: src/sbin/route/route.c,v 1.84 2008/03/22 12:50:43 remko Exp $"; #endif /* not lint */ #include <sys/param.h> @@ -748,7 +748,7 @@ break; } if (*cmd == 'g') - exit(0); + exit(ret != 0); if (!qflag) { oerrno = errno; (void) printf("%s %s %s", cmd, ishost? "host" : "net", dest); ==== //depot/projects/dtrace/src/sys/amd64/amd64/pmap.c#35 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.606 2008/03/04 18:50:15 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.608 2008/03/23 20:38:01 alc Exp $"); /* * Manages physical address maps. @@ -1861,12 +1861,8 @@ ("pmap_collect: wired pte %#lx", tpte)); if (tpte & PG_A) vm_page_flag_set(m, PG_REFERENCED); - if (tpte & PG_M) { - KASSERT((tpte & PG_RW), - ("pmap_collect: modified page not writable: va: %#lx, pte: %#lx", - va, tpte)); + if ((tpte & (PG_M | PG_RW)) == (PG_M | PG_RW)) vm_page_dirty(m); - } free = NULL; pmap_unuse_pt(pmap, va, *pde, &free); pmap_invalidate_page(pmap, va); @@ -2311,12 +2307,8 @@ eva = sva + NBPDR; for (va = sva, m = PHYS_TO_VM_PAGE(oldpde & PG_FRAME); va < eva; va += PAGE_SIZE, m++) { - if (oldpde & PG_M) { - KASSERT((oldpde & PG_RW) != 0, - ("pmap_remove_pde: modified 2mpage not writable: va: %#lx, pde: %#lx", - va, oldpde)); + if ((oldpde & (PG_M | PG_RW)) == (PG_M | PG_RW)) vm_page_dirty(m); - } if (oldpde & PG_A) vm_page_flag_set(m, PG_REFERENCED); if (TAILQ_EMPTY(&m->md.pv_list) && @@ -2364,12 +2356,8 @@ pmap->pm_stats.resident_count -= 1; if (oldpte & PG_MANAGED) { m = PHYS_TO_VM_PAGE(oldpte & PG_FRAME); - if (oldpte & PG_M) { - KASSERT((oldpte & PG_RW), - ("pmap_remove_pte: modified page not writable: va: %#lx, pte: %#lx", - va, oldpte)); + if ((oldpte & (PG_M | PG_RW)) == (PG_M | PG_RW)) vm_page_dirty(m); - } if (oldpte & PG_A) vm_page_flag_set(m, PG_REFERENCED); pmap_remove_entry(pmap, m, va); @@ -2444,12 +2432,16 @@ pml4e = pmap_pml4e(pmap, sva); if ((*pml4e & PG_V) == 0) { va_next = (sva + NBPML4) & ~PML4MASK; + if (va_next < sva) + va_next = eva; continue; } pdpe = pmap_pml4e_to_pdpe(pml4e, sva); if ((*pdpe & PG_V) == 0) { va_next = (sva + NBPDP) & ~PDPMASK; + if (va_next < sva) + va_next = eva; continue; } @@ -2457,6 +2449,8 @@ * Calculate index for next page table. */ va_next = (sva + NBPDR) & ~PDRMASK; + if (va_next < sva) + va_next = eva; pde = pmap_pdpe_to_pde(pdpe, sva); ptpaddr = *pde; @@ -2575,12 +2569,8 @@ /* * Update the vm_page_t clean and reference bits. */ - if (tpte & PG_M) { - KASSERT((tpte & PG_RW), - ("pmap_remove_all: modified page not writable: va: %#lx, pte: %#lx", - pv->pv_va, tpte)); + if ((tpte & (PG_M | PG_RW)) == (PG_M | PG_RW)) vm_page_dirty(m); - } free = NULL; pmap_unuse_pt(pmap, pv->pv_va, *pde, &free); pmap_invalidate_page(pmap, pv->pv_va); @@ -2621,7 +2611,7 @@ * page mapping with a stored page table page has PG_A * set. */ - if ((oldpde & PG_M) != 0) + if ((oldpde & (PG_M | PG_RW)) == (PG_M | PG_RW)) vm_page_dirty(m); } } @@ -2672,16 +2662,22 @@ pml4e = pmap_pml4e(pmap, sva); if ((*pml4e & PG_V) == 0) { va_next = (sva + NBPML4) & ~PML4MASK; + if (va_next < sva) + va_next = eva; continue; } pdpe = pmap_pml4e_to_pdpe(pml4e, sva); if ((*pdpe & PG_V) == 0) { va_next = (sva + NBPDP) & ~PDPMASK; + if (va_next < sva) + va_next = eva; continue; } va_next = (sva + NBPDR) & ~PDRMASK; + if (va_next < sva) + va_next = eva; pde = pmap_pdpe_to_pde(pdpe, sva); ptpaddr = *pde; @@ -2733,7 +2729,7 @@ vm_page_flag_set(m, PG_REFERENCED); pbits &= ~PG_A; } - if ((pbits & PG_M) != 0) { + if ((pbits & (PG_M | PG_RW)) == (PG_M | PG_RW)) { if (m == NULL) m = PHYS_TO_VM_PAGE(pbits & PG_FRAME); @@ -2806,12 +2802,15 @@ return; } if ((oldpte & (PG_M | PG_RW)) == PG_RW) { + /* + * When PG_M is already clear, PG_RW can be cleared + * without a TLB invalidation. + */ if (!atomic_cmpset_long(pte, oldpte, oldpte & ~PG_RW)) goto retry; oldpte &= ~PG_RW; oldpteva = (oldpte & PG_FRAME & PDRMASK) | (va & ~PDRMASK); - pmap_invalidate_page(pmap, oldpteva); CTR2(KTR_PMAP, "pmap_promote_pde: protect for va %#lx" " in pmap %p", oldpteva, pmap); } @@ -3023,10 +3022,7 @@ PG_NX) == 0 && (newpte & PG_NX))) invlva = TRUE; } - if (origpte & PG_M) { - KASSERT((origpte & PG_RW), - ("pmap_enter: modified page not writable: va: %#lx, pte: %#lx", - va, origpte)); + if ((origpte & (PG_M | PG_RW)) == (PG_M | PG_RW)) { if ((origpte & PG_MANAGED) != 0) vm_page_dirty(om); if ((newpte & PG_RW) == 0) @@ -3084,7 +3080,7 @@ newpde |= PG_MANAGED; >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200803232051.m2NKp7vd022012>