Date: Fri, 23 May 2008 20:32:11 GMT From: John Birrell <jb@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 142155 for review Message-ID: <200805232032.m4NKWBqC032209@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=142155 Change 142155 by jb@freebsd3 on 2008/05/23 20:31:47 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/mac/chapter.sgml#10 integrate .. //depot/projects/dtrace/src/sbin/restore/dirs.c#8 integrate .. //depot/projects/dtrace/src/sys/fs/devfs/devfs_vnops.c#20 integrate .. //depot/projects/dtrace/src/sys/ia64/ia64/interrupt.c#12 integrate .. //depot/projects/dtrace/src/sys/kern/kern_conf.c#13 integrate .. //depot/projects/dtrace/src/sys/kern/sys_pipe.c#13 integrate .. //depot/projects/dtrace/src/sys/kern/tty.c#14 integrate .. //depot/projects/dtrace/src/sys/kern/tty_cons.c#15 integrate .. //depot/projects/dtrace/src/sys/kern/tty_subr.c#5 integrate .. //depot/projects/dtrace/src/sys/powerpc/aim/mmu_oea.c#5 integrate .. //depot/projects/dtrace/src/sys/sys/clist.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/cons.h#6 integrate .. //depot/projects/dtrace/src/sys/sys/pipe.h#4 integrate .. //depot/projects/dtrace/src/sys/sys/tty.h#5 integrate .. //depot/projects/dtrace/src/usr.sbin/sade/termcap.c#6 integrate .. //depot/projects/dtrace/src/usr.sbin/sysinstall/termcap.c#5 integrate .. //depot/projects/dtrace/www/en/news/news.sgml#7 integrate .. //depot/projects/dtrace/www/en/platforms/alpha.sgml#5 integrate .. //depot/projects/dtrace/www/share/sgml/commercial.consult.xml#12 integrate .. //depot/projects/dtrace/www/share/sgml/commercial.isp.xml#12 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/mac/chapter.sgml#10 (text+ko) ==== @@ -1,6 +1,6 @@ <!-- The FreeBSD Documentation Project - $FreeBSD: doc/en_US.ISO8859-1/books/handbook/mac/chapter.sgml,v 1.70 2007/06/27 11:49:40 chinsan Exp $ + $FreeBSD: doc/en_US.ISO8859-1/books/handbook/mac/chapter.sgml,v 1.71 2008/05/23 13:36:58 remko Exp $ --> <chapter id="mac"> @@ -1080,10 +1080,7 @@ <itemizedlist> <listitem> <para><literal>security.mac.portacl.enabled</literal> will - enable/disable the policy completely.<footnote><para>Due to - a bug the <literal>security.mac.portacl.enabled</literal> - <command>sysctl</command> variable will not work on - &os; 5.2.1 or previous releases.</para></footnote></para> + enable/disable the policy completely.</para> </listitem> <listitem> ==== //depot/projects/dtrace/src/sbin/restore/dirs.c#8 (text+ko) ==== @@ -37,7 +37,7 @@ static char sccsid[] = "@(#)dirs.c 8.7 (Berkeley) 5/1/95"; #endif static const char rcsid[] = - "$FreeBSD: src/sbin/restore/dirs.c,v 1.34 2008/04/14 20:15:53 mckusick Exp $"; + "$FreeBSD: src/sbin/restore/dirs.c,v 1.35 2008/05/23 19:17:08 mckusick Exp $"; #endif /* not lint */ #include <sys/param.h> @@ -139,7 +139,7 @@ vprintf(stdout, "Extract directories from tape\n"); if ((tmpdir = getenv("TMPDIR")) == NULL || tmpdir[0] == '\0') tmpdir = _PATH_TMP; - (void) sprintf(dirfile, "%s/rstdir%d", tmpdir, dumpdate); + (void) sprintf(dirfile, "%s/rstdir%ld", tmpdir, dumpdate); if (command != 'r' && command != 'R') { (void *) strcat(dirfile, "-XXXXXX"); fd = mkstemp(dirfile); @@ -152,7 +152,7 @@ done(1); } if (genmode != 0) { - (void) sprintf(modefile, "%s/rstmode%d", tmpdir, dumpdate); + (void) sprintf(modefile, "%s/rstmode%ld", tmpdir, dumpdate); if (command != 'r' && command != 'R') { (void *) strcat(modefile, "-XXXXXX"); fd = mkstemp(modefile); @@ -566,7 +566,7 @@ if ((tmpdir = getenv("TMPDIR")) == NULL || tmpdir[0] == '\0') tmpdir = _PATH_TMP; if (command == 'r' || command == 'R') - (void) sprintf(modefile, "%s/rstmode%d", tmpdir, dumpdate); + (void) sprintf(modefile, "%s/rstmode%ld", tmpdir, dumpdate); if (modefile[0] == '#') { panic("modefile not defined\n"); fprintf(stderr, "directory mode, owner, and times not set\n"); ==== //depot/projects/dtrace/src/sys/fs/devfs/devfs_vnops.c#20 (text+ko) ==== @@ -31,7 +31,7 @@ * @(#)kernfs_vnops.c 8.15 (Berkeley) 5/21/95 * From: FreeBSD: src/sys/miscfs/kernfs/kernfs_vnops.c 1.43 * - * $FreeBSD: src/sys/fs/devfs/devfs_vnops.c,v 1.158 2008/05/21 09:31:44 kib Exp $ + * $FreeBSD: src/sys/fs/devfs/devfs_vnops.c,v 1.159 2008/05/23 16:36:39 kib Exp $ */ /* @@ -280,7 +280,6 @@ sx_xunlock(&dmp->dm_lock); return (ENOENT); } - loop: DEVFS_DE_HOLD(de); DEVFS_DMP_HOLD(dmp); mtx_lock(&devfs_de_interlock); @@ -296,8 +295,10 @@ vput(vp); return (ENOENT); } - else if (error) - goto loop; + else if (error) { + sx_xunlock(&dmp->dm_lock); + return (error); + } sx_xunlock(&dmp->dm_lock); *vpp = vp; return (0); ==== //depot/projects/dtrace/src/sys/ia64/ia64/interrupt.c#12 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/ia64/ia64/interrupt.c,v 1.68 2008/04/15 05:02:42 marcel Exp $ */ +/* $FreeBSD: src/sys/ia64/ia64/interrupt.c,v 1.69 2008/05/23 19:53:50 marcel Exp $ */ /* $NetBSD: interrupt.c,v 1.23 1998/02/24 07:38:01 thorpej Exp $ */ /*- @@ -138,10 +138,10 @@ u_int vector; int count; uint8_t inta; + ia64_set_fpsr(IA64_FPSR_DEFAULT); td = curthread; - atomic_add_int(&td->td_intr_nesting_level, 1); vector = tf->tf_special.ifa; @@ -195,7 +195,7 @@ adjust_ticks++; count++; } - ia64_set_itm(itc + ia64_clock_reload - adj); + ia64_set_itm(ia64_get_itc() + ia64_clock_reload - adj); if (count > 0) { adjust_lost += count - 1; if (delta > (ia64_clock_reload >> 3)) { @@ -229,7 +229,9 @@ } else if (vector == ipi_vector[IPI_RENDEZVOUS]) { rdvs[PCPU_GET(cpuid)]++; CTR1(KTR_SMP, "IPI_RENDEZVOUS, cpuid=%d", PCPU_GET(cpuid)); + enable_intr(); smp_rendezvous_action(); + disable_intr(); } else if (vector == ipi_vector[IPI_STOP]) { cpumask_t mybit = PCPU_GET(cpumask); @@ -244,11 +246,17 @@ mp_ipi_test++; } else if (vector == ipi_vector[IPI_PREEMPT]) { CTR1(KTR_SMP, "IPI_PREEMPT, cpuid=%d", PCPU_GET(cpuid)); + __asm __volatile("mov cr.eoi = r0;; srlz.d"); + enable_intr(); sched_preempt(curthread); + disable_intr(); + goto stray; #endif } else { ints[PCPU_GET(cpuid)]++; + atomic_add_int(&td->td_intr_nesting_level, 1); ia64_dispatch_intr(tf, vector); + atomic_subtract_int(&td->td_intr_nesting_level, 1); } __asm __volatile("mov cr.eoi = r0;; srlz.d"); @@ -257,8 +265,6 @@ goto next; stray: - atomic_subtract_int(&td->td_intr_nesting_level, 1); - if (TRAPF_USERMODE(tf)) { enable_intr(); userret(td, tf); ==== //depot/projects/dtrace/src/sys/kern/kern_conf.c#13 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/kern/kern_conf.c,v 1.213 2008/05/21 09:31:44 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_conf.c,v 1.214 2008/05/23 16:38:38 kib Exp $"); #include <sys/param.h> #include <sys/kernel.h> @@ -225,6 +225,8 @@ mtx_assert(&devmtx, MA_NOTOWNED); dev_lock(); + KASSERT(dev->si_threadcount > 0, + ("%s threadcount is wrong", dev->si_name)); dev->si_threadcount--; dev_unlock(); } ==== //depot/projects/dtrace/src/sys/kern/sys_pipe.c#13 (text+ko) ==== @@ -89,7 +89,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/kern/sys_pipe.c,v 1.196 2008/01/07 20:05:18 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sys_pipe.c,v 1.198 2008/05/23 11:14:03 kib Exp $"); #include "opt_mac.h" @@ -265,8 +265,8 @@ * one at a time. When both are free'd, then the whole pair * is released. */ - rpipe->pipe_present = 1; - wpipe->pipe_present = 1; + rpipe->pipe_present = PIPE_ACTIVE; + wpipe->pipe_present = PIPE_ACTIVE; /* * Eventually, the MAC Framework may initialize the label @@ -975,7 +975,8 @@ /* * detect loss of pipe read side, issue SIGPIPE if lost. */ - if ((!wpipe->pipe_present) || (wpipe->pipe_state & PIPE_EOF)) { + if (wpipe->pipe_present != PIPE_ACTIVE || + (wpipe->pipe_state & PIPE_EOF)) { pipeunlock(wpipe); PIPE_UNLOCK(rpipe); return (EPIPE); @@ -1346,13 +1347,14 @@ revents |= events & (POLLIN | POLLRDNORM); if (events & (POLLOUT | POLLWRNORM)) - if (!wpipe->pipe_present || (wpipe->pipe_state & PIPE_EOF) || + if (wpipe->pipe_present != PIPE_ACTIVE || + (wpipe->pipe_state & PIPE_EOF) || (((wpipe->pipe_state & PIPE_DIRECTW) == 0) && (wpipe->pipe_buffer.size - wpipe->pipe_buffer.cnt) >= PIPE_BUF)) revents |= events & (POLLOUT | POLLWRNORM); if ((rpipe->pipe_state & PIPE_EOF) || - (!wpipe->pipe_present) || + wpipe->pipe_present != PIPE_ACTIVE || (wpipe->pipe_state & PIPE_EOF)) revents |= POLLHUP; @@ -1493,7 +1495,7 @@ * Disconnect from peer, if any. */ ppipe = cpipe->pipe_peer; - if (ppipe->pipe_present != 0) { + if (ppipe->pipe_present == PIPE_ACTIVE) { pipeselwakeup(ppipe); ppipe->pipe_state |= PIPE_EOF; @@ -1510,16 +1512,23 @@ PIPE_UNLOCK(cpipe); pipe_free_kmem(cpipe); PIPE_LOCK(cpipe); - cpipe->pipe_present = 0; + cpipe->pipe_present = PIPE_CLOSING; pipeunlock(cpipe); + + /* + * knlist_clear() may sleep dropping the PIPE_MTX. Set the + * PIPE_FINALIZED, that allows other end to free the + * pipe_pair, only after the knotes are completely dismantled. + */ knlist_clear(&cpipe->pipe_sel.si_note, 1); + cpipe->pipe_present = PIPE_FINALIZED; knlist_destroy(&cpipe->pipe_sel.si_note); /* * If both endpoints are now closed, release the memory for the * pipe pair. If not, unlock. */ - if (ppipe->pipe_present == 0) { + if (ppipe->pipe_present == PIPE_FINALIZED) { PIPE_UNLOCK(cpipe); #ifdef MAC mac_pipe_destroy(pp); @@ -1543,7 +1552,7 @@ break; case EVFILT_WRITE: kn->kn_fop = &pipe_wfiltops; - if (!cpipe->pipe_peer->pipe_present) { + if (cpipe->pipe_peer->pipe_present != PIPE_ACTIVE) { /* other end of pipe has been closed */ PIPE_UNLOCK(cpipe); return (EPIPE); @@ -1566,13 +1575,8 @@ struct pipe *cpipe = (struct pipe *)kn->kn_fp->f_data; PIPE_LOCK(cpipe); - if (kn->kn_filter == EVFILT_WRITE) { - if (!cpipe->pipe_peer->pipe_present) { - PIPE_UNLOCK(cpipe); - return; - } + if (kn->kn_filter == EVFILT_WRITE) cpipe = cpipe->pipe_peer; - } knlist_remove(&cpipe->pipe_sel.si_note, kn, 1); PIPE_UNLOCK(cpipe); } @@ -1591,7 +1595,8 @@ kn->kn_data = rpipe->pipe_map.cnt; if ((rpipe->pipe_state & PIPE_EOF) || - (!wpipe->pipe_present) || (wpipe->pipe_state & PIPE_EOF)) { + wpipe->pipe_present != PIPE_ACTIVE || + (wpipe->pipe_state & PIPE_EOF)) { kn->kn_flags |= EV_EOF; PIPE_UNLOCK(rpipe); return (1); @@ -1609,7 +1614,8 @@ struct pipe *wpipe = rpipe->pipe_peer; PIPE_LOCK(rpipe); - if ((!wpipe->pipe_present) || (wpipe->pipe_state & PIPE_EOF)) { + if (wpipe->pipe_present != PIPE_ACTIVE || + (wpipe->pipe_state & PIPE_EOF)) { kn->kn_data = 0; kn->kn_flags |= EV_EOF; PIPE_UNLOCK(rpipe); ==== //depot/projects/dtrace/src/sys/kern/tty.c#14 (text+ko) ==== @@ -71,13 +71,14 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/kern/tty.c,v 1.276 2008/04/15 08:33:32 davidxu Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/tty.c,v 1.280 2008/05/23 16:47:55 kib Exp $"); #include "opt_compat.h" #include "opt_tty.h" #include <sys/param.h> #include <sys/systm.h> +#include <sys/cons.h> #include <sys/filio.h> #include <sys/lock.h> #include <sys/mutex.h> @@ -269,11 +270,12 @@ struct cdevsw *csw; csw = dev_refthread(dev); - KASSERT(csw != NULL, ("No cdevsw in ttycode (%s)", devtoname(dev))); + if (csw == NULL) + return (NULL); KASSERT(csw->d_flags & D_TTY, ("non D_TTY (%s) in tty code", devtoname(dev))); + tp = dev->si_tty; dev_relthread(dev); - tp = dev->si_tty; KASSERT(tp != NULL, ("no tty pointer on (%s) in tty code", devtoname(dev))); return (tp); @@ -1324,7 +1326,7 @@ int s; tp = tty_gettp(dev); - if (tp->t_state & TS_GONE) + if (tp == NULL || (tp->t_state & TS_GONE)) return (ENODEV); switch (kn->kn_filter) { @@ -3055,9 +3057,10 @@ ttygone(tp); unit = tp->t_devunit; dev = tp->t_mdev; + dev->si_tty = NULL; tp->t_dev = NULL; + destroy_dev(dev); ttyrel(tp); - destroy_dev(dev); free_unr(tty_unit, unit); } @@ -3074,6 +3077,8 @@ if (tp != NULL) ttyref(tp); while (tp != NULL) { + if (tp->t_state & TS_GONE) + goto nexttp; bzero(&xt, sizeof xt); xt.xt_size = sizeof xt; #define XT_COPY(field) xt.xt_##field = tp->t_##field @@ -3122,7 +3127,7 @@ return (error); } mtx_lock(&tty_list_mutex); - tp2 = TAILQ_NEXT(tp, t_list); +nexttp: tp2 = TAILQ_NEXT(tp, t_list); if (tp2 != NULL) ttyref(tp2); mtx_unlock(&tty_list_mutex); @@ -3180,7 +3185,7 @@ return (EBUSY); error = tsleep(&tp->t_actout, TTIPRI | PCATCH, "ttybi", 0); - if (error != 0 || (tp->t_flags & TS_GONE)) + if (error != 0 || (tp->t_state & TS_GONE)) goto out; goto open_top; } @@ -3254,7 +3259,7 @@ tp = tty_gettp(dev); - if (tp->t_state & TS_GONE) + if (tp == NULL || (tp->t_state & TS_GONE)) return (ENODEV); return (ttyld_read(tp, uio, flag)); } @@ -3266,7 +3271,7 @@ tp = tty_gettp(dev); - if (tp->t_state & TS_GONE) + if (tp == NULL || (tp->t_state & TS_GONE)) return (ENODEV); return (ttyld_write(tp, uio, flag)); } ==== //depot/projects/dtrace/src/sys/kern/tty_cons.c#15 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/kern/tty_cons.c,v 1.143 2008/03/26 20:09:20 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/tty_cons.c,v 1.144 2008/05/23 16:06:34 ed Exp $"); #include "opt_ddb.h" @@ -66,6 +66,8 @@ #include <machine/cpu.h> #include <machine/clock.h> +static MALLOC_DEFINE(M_TTYCONS, "tty console", "tty console handling"); + static d_open_t cnopen; static d_close_t cnclose; static d_read_t cnread; @@ -673,7 +675,7 @@ KASSERT(tp != NULL, ("constty_set: NULL tp")); if (consbuf == NULL) { size = consmsgbuf_size; - consbuf = malloc(size, M_TTYS, M_WAITOK); + consbuf = malloc(size, M_TTYCONS, M_WAITOK); msgbuf_init(&consmsgbuf, consbuf, size); callout_init(&conscallout, 0); } @@ -695,7 +697,7 @@ callout_stop(&conscallout); while ((c = msgbuf_getchar(&consmsgbuf)) != -1) cnputc(c); - free(consbuf, M_TTYS); + free(consbuf, M_TTYCONS); consbuf = NULL; } ==== //depot/projects/dtrace/src/sys/kern/tty_subr.c#5 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/kern/tty_subr.c,v 1.44 2008/03/16 10:58:05 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/tty_subr.c,v 1.45 2008/05/23 16:06:34 ed Exp $"); #include <sys/param.h> #include <sys/kernel.h> @@ -42,6 +42,8 @@ static void clist_init(void *); SYSINIT(clist, SI_SUB_CLIST, SI_ORDER_FIRST, clist_init, NULL); +static MALLOC_DEFINE(M_CLIST, "clist", "clist queue blocks"); + static struct cblock *cfreelist = 0; int cfreecount = 0; static int cslushcount; @@ -133,11 +135,11 @@ struct cblock *cbp; for (i = 0; i < number; ++i) { - cbp = malloc(sizeof *cbp, M_TTYS, M_NOWAIT); + cbp = malloc(sizeof *cbp, M_CLIST, M_NOWAIT); if (cbp == NULL) { printf( "cblock_alloc_cblocks: M_NOWAIT malloc failed, trying M_WAITOK\n"); - cbp = malloc(sizeof *cbp, M_TTYS, M_WAITOK); + cbp = malloc(sizeof *cbp, M_CLIST, M_WAITOK); } /* * Freed cblocks have zero quotes and garbage elsewhere. @@ -192,7 +194,7 @@ int i; for (i = 0; i < number; ++i) - free(cblock_alloc(), M_TTYS); + free(cblock_alloc(), M_CLIST); ctotcount -= number; } ==== //depot/projects/dtrace/src/sys/powerpc/aim/mmu_oea.c#5 (text+ko) ==== @@ -91,7 +91,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/sys/powerpc/aim/mmu_oea.c,v 1.121 2008/04/28 03:04:41 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/powerpc/aim/mmu_oea.c,v 1.122 2008/05/23 19:16:24 marcel Exp $"); /* * Manages physical address maps. @@ -655,6 +655,10 @@ trcp[0] = 0x1006; trcp[1] = sdr; + + tlbia(); + + trcp[0] = 0x1007; } void @@ -895,7 +899,6 @@ kernel_pmap->pm_active = ~0; pmap_cpu_bootstrap(trace, 0); - tlbia(); pmap_bootstrapped++; ==== //depot/projects/dtrace/src/sys/sys/clist.h#4 (text+ko) ==== @@ -27,12 +27,27 @@ * SUCH DAMAGE. * * @(#)clist.h 8.1 (Berkeley) 6/4/93 - * $FreeBSD: src/sys/sys/clist.h,v 1.11 2004/04/07 04:19:49 imp Exp $ + * $FreeBSD: src/sys/sys/clist.h,v 1.13 2008/05/23 18:34:33 ed Exp $ */ #ifndef _SYS_CLIST_H_ #define _SYS_CLIST_H_ +#include <sys/param.h> + +/* + * Clists are character lists, which is a variable length linked list + * of cblocks, with a count of the number of characters in the list. + */ +struct clist { + int c_cc; /* Number of characters in the clist. */ + int c_cbcount; /* Number of cblocks. */ + int c_cbmax; /* Max # cblocks allowed for this clist. */ + int c_cbreserved; /* # cblocks reserved for this clist. */ + char *c_cf; /* Pointer to the first cblock. */ + char *c_cl; /* Pointer to the last cblock. */ +}; + struct cblock { struct cblock *c_next; /* next cblock in queue */ unsigned char c_quote[CBQSIZE]; /* quoted characters */ @@ -40,8 +55,18 @@ }; #ifdef _KERNEL -extern struct cblock *cfree; extern int cfreecount; + +int b_to_q(char *cp, int cc, struct clist *q); +void catq(struct clist *from, struct clist *to); +void clist_alloc_cblocks(struct clist *q, int ccmax, int ccres); +void clist_free_cblocks(struct clist *q); +int getc(struct clist *q); +void ndflush(struct clist *q, int cc); +char *nextc(struct clist *q, char *cp, int *c); +int putc(int c, struct clist *q); +int q_to_b(struct clist *q, char *cp, int cc); +int unputc(struct clist *q); #endif #endif ==== //depot/projects/dtrace/src/sys/sys/cons.h#6 (text+ko) ==== @@ -32,13 +32,15 @@ * SUCH DAMAGE. * * from: @(#)cons.h 7.2 (Berkeley) 5/9/91 - * $FreeBSD: src/sys/sys/cons.h,v 1.40 2006/11/01 04:54:51 jb Exp $ + * $FreeBSD: src/sys/sys/cons.h,v 1.41 2008/05/23 16:06:35 ed Exp $ */ #ifndef _MACHINE_CONS_H_ #define _MACHINE_CONS_H_ struct consdev; +struct tty; + typedef void cn_probe_t(struct consdev *); typedef void cn_init_t(struct consdev *); typedef void cn_term_t(struct consdev *); @@ -80,6 +82,9 @@ #ifdef _KERNEL +extern struct msgbuf consmsgbuf; /* Message buffer for constty. */ +extern struct tty *constty; /* Temporary virtual console. */ + #define CONS_DRIVER(name, probe, init, term, getc, checkc, putc, dbctl) \ static struct consdev name##_consdev = { \ probe, init, term, getc, checkc, putc \ @@ -108,6 +113,8 @@ void cnputc(int); void cnputs(char *); int cnunavailable(void); +void constty_set(struct tty *tp); +void constty_clear(void); #endif /* _KERNEL */ ==== //depot/projects/dtrace/src/sys/sys/pipe.h#4 (text+ko) ==== @@ -18,7 +18,7 @@ * 5. Modifications may be freely made to this file if the above conditions * are met. * - * $FreeBSD: src/sys/sys/pipe.h,v 1.29 2005/01/07 02:29:23 imp Exp $ + * $FreeBSD: src/sys/sys/pipe.h,v 1.30 2008/05/23 11:14:03 kib Exp $ */ #ifndef _SYS_PIPE_H_ @@ -115,6 +115,13 @@ }; /* + * Values for the pipe_present. + */ +#define PIPE_ACTIVE 1 +#define PIPE_CLOSING 2 +#define PIPE_FINALIZED 3 + +/* * Container structure to hold the two pipe endpoints, mutex, and label * pointer. */ ==== //depot/projects/dtrace/src/sys/sys/tty.h#5 (text+ko) ==== @@ -40,31 +40,19 @@ * SUCH DAMAGE. * * @(#)tty.h 8.6 (Berkeley) 1/21/94 - * $FreeBSD: src/sys/sys/tty.h,v 1.102 2007/12/16 06:12:53 jeff Exp $ + * $FreeBSD: src/sys/sys/tty.h,v 1.103 2008/05/23 16:06:35 ed Exp $ */ #ifndef _SYS_TTY_H_ #define _SYS_TTY_H_ +#include <sys/clist.h> #include <sys/termios.h> #include <sys/queue.h> #include <sys/selinfo.h> #include <sys/_lock.h> #include <sys/_mutex.h> -/* - * Clists are character lists, which is a variable length linked list - * of cblocks, with a count of the number of characters in the list. - */ -struct clist { - int c_cc; /* Number of characters in the clist. */ - int c_cbcount; /* Number of cblocks. */ - int c_cbmax; /* Max # cblocks allowed for this clist. */ - int c_cbreserved; /* # cblocks reserved for this clist. */ - char *c_cf; /* Pointer to the first cblock. */ - char *c_cl; /* Pointer to the last cblock. */ -}; - struct tty; struct pps_state; struct cdev; @@ -313,25 +301,12 @@ #define ISINIT(dev) (minor(dev) & MINOR_INIT) #define ISLOCK(dev) (minor(dev) & MINOR_LOCK) -extern struct msgbuf consmsgbuf; /* Message buffer for constty. */ -extern struct tty *constty; /* Temporary virtual console. */ extern long tk_cancc; extern long tk_nin; extern long tk_nout; extern long tk_rawcc; -int b_to_q(char *cp, int cc, struct clist *q); -void catq(struct clist *from, struct clist *to); -void clist_alloc_cblocks(struct clist *q, int ccmax, int ccres); -void clist_free_cblocks(struct clist *q); -void constty_set(struct tty *tp); -void constty_clear(void); -int getc(struct clist *q); -void ndflush(struct clist *q, int cc); -char *nextc(struct clist *q, char *cp, int *c); void nottystop(struct tty *tp, int rw); -int putc(int c, struct clist *q); -int q_to_b(struct clist *q, char *cp, int cc); void termioschars(struct termios *t); int tputchar(int c, struct tty *tp); int ttcompat(struct tty *tp, u_long com, caddr_t data, int flag); @@ -367,7 +342,6 @@ int ttyrel(struct tty *tp); int ttysleep(struct tty *tp, void *chan, int pri, char *wmesg, int timo); int ttywait(struct tty *tp); -int unputc(struct clist *q); static __inline int tt_open(struct tty *t, struct cdev *c) ==== //depot/projects/dtrace/src/usr.sbin/sade/termcap.c#6 (text+ko) ==== @@ -10,7 +10,7 @@ * software, nor does the author assume any responsibility for damages * incurred with its use. * - * $FreeBSD: src/usr.sbin/sade/termcap.c,v 1.36 2008/05/11 07:13:08 obrien Exp $ + * $FreeBSD: src/usr.sbin/sade/termcap.c,v 1.37 2008/05/23 14:24:33 ed Exp $ */ #include "sade.h" @@ -39,7 +39,7 @@ { char *term; int stat; - struct ttysize ts; + struct winsize ws; term = getenv("TERM"); stat = ioctl(STDERR_FILENO, GIO_COLOR, &ColorDisplay); @@ -95,10 +95,10 @@ } #endif } - if (ioctl(0, TIOCGSIZE, &ts) == -1) { + if (ioctl(0, TIOCGWINSZ, &ws) == -1) { msgDebug("Unable to get terminal size - errno %d\n", errno); - ts.ts_lines = 0; + ws.ws_row = 0; } - StatusLine = ts.ts_lines ? ts.ts_lines - 1: (OnVTY ? VTY_STATUS_LINE : TTY_STATUS_LINE); + StatusLine = ws.ws_row ? ws.ws_row - 1: (OnVTY ? VTY_STATUS_LINE : TTY_STATUS_LINE); return 0; } ==== //depot/projects/dtrace/src/usr.sbin/sysinstall/termcap.c#5 (text+ko) ==== @@ -10,7 +10,7 @@ * software, nor does the author assume any responsibility for damages * incurred with its use. * - * $FreeBSD: src/usr.sbin/sysinstall/termcap.c,v 1.31 2007/03/06 09:32:41 kevlo Exp $ + * $FreeBSD: src/usr.sbin/sysinstall/termcap.c,v 1.32 2008/05/23 14:24:33 ed Exp $ */ #include "sysinstall.h" @@ -75,7 +75,7 @@ { char *term; int stat; - struct ttysize ts; + struct winsize ws; term = getenv("TERM"); stat = ioctl(STDERR_FILENO, GIO_COLOR, &ColorDisplay); @@ -141,10 +141,10 @@ } #endif } - if (ioctl(0, TIOCGSIZE, &ts) == -1) { + if (ioctl(0, TIOCGWINSZ, &ws) == -1) { msgDebug("Unable to get terminal size - errno %d\n", errno); - ts.ts_lines = 0; + ws.ws_row = 0; } - StatusLine = ts.ts_lines ? ts.ts_lines - 1: (OnVTY ? VTY_STATUS_LINE : TTY_STATUS_LINE); + StatusLine = ws.ws_row ? ws.ws_row - 1: (OnVTY ? VTY_STATUS_LINE : TTY_STATUS_LINE); return 0; } ==== //depot/projects/dtrace/www/en/news/news.sgml#7 (text+ko) ==== @@ -1,6 +1,6 @@ <!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [ <!ENTITY base CDATA ".."> -<!ENTITY date "$FreeBSD: www/en/news/news.sgml,v 1.48 2007/02/06 12:45:46 gabor Exp $"> +<!ENTITY date "$FreeBSD: www/en/news/news.sgml,v 1.49 2008/05/23 12:40:53 jkois Exp $"> <!ENTITY title "FreeBSD News"> <!ENTITY % navinclude.about "INCLUDE"> ]> @@ -53,22 +53,17 @@ A site dedicated to delivering BSD-related articles and tutorials from a user's perspective.</p> </li> - +<!-- <li> <p><b><a href="http://www.bsdnews.org/">BSDnews.org</a></b>: An online magazine dedicated to all BSDs.</p> </li> - +--> <li> - <p><b><a href="http://bsdportal.org/">BSDPortal.org</a></b>: - This site collects the most important news from other - BSD-related sites, providing a good summary about the - progress of all the BSD operating systems.</p> - </li> - - <li> <p><b><a href="http://www.daemonnews.org/">DaemonNews</a></b> +<!-- (<b><a href="http://www.bsdnews.com/">BSDnews.com</a></b>): +--> Monthly articles and daily discussion about all things BSD.</p> </li> ==== //depot/projects/dtrace/www/en/platforms/alpha.sgml#5 (text+ko) ==== @@ -1,6 +1,6 @@ <!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [ <!ENTITY base CDATA ".."> -<!ENTITY date "$FreeBSD: www/en/platforms/alpha.sgml,v 1.6 2006/08/19 21:20:40 hrs Exp $"> +<!ENTITY date "$FreeBSD: www/en/platforms/alpha.sgml,v 1.7 2008/05/23 18:22:15 jkois Exp $"> <!ENTITY title "FreeBSD/alpha Project"> <!ENTITY email 'freebsd-alpha'> <!ENTITY % navinclude.developers "INCLUDE"> @@ -10,9 +10,13 @@ &header; <p>This page contains information about porting FreeBSD to HP/Compaq Alpha - systems.</p> + systems. Discussion of the Alpha port takes place on the <a + href="http://lists.freebsd.org/mailman/listinfo/freebsd-alpha">freebsd-alpha</a> + mailing list.</p> + + <h3>Status</h3> - <p><b>Note</b>: As of FreeBSD 7.0, support for the Alpha platform will be + <p>As of FreeBSD 7.0, support for the Alpha platform has been removed. The development of new Alpha systems has been discontinued by the hardware vendor; this combined with the widespread deployment of more mainstream 64-bit platforms, such as the AMD64 and Intel EM64T @@ -20,12 +24,12 @@ community interest. FreeBSD/alpha support will continue in maintenance mode for future FreeBSD 6.x releases.</p> - <h3>FreeBSD/alpha Specific Links</h3> + <h3><a name="list">FreeBSD/alpha mailing list</a></h3> - <ul> - <li><a href="mailto:freebsd-alpha@FreeBSD.org">FreeBSD/alpha mailing - list</a></li> - </ul> + <p>To subscribe to this list, send an email to <tt class="EMAIL"><<a + href="mailto:freebsd-alpha-subscribe@FreeBSD.org">freebsd-alpha-subscribe@FreeBSD.org</a>></tt> + or visit the <a + href="http://lists.FreeBSD.org/mailman/listinfo/freebsd-alpha">mailman interface</a>.</p> <h3>Other Links of Interest</h3> ==== //depot/projects/dtrace/www/share/sgml/commercial.consult.xml#12 (text+ko) ==== @@ -1,12 +1,12 @@ <?xml version="1.0"?> <!DOCTYPE entries PUBLIC "-//FreeBSD//DTD FreeBSD XML Database for Commercial Gallery//EN" "http://www.FreeBSD.org/XML/www/share/sgml/gallery.dtd"> -<!-- $FreeBSD: www/share/sgml/commercial.consult.xml,v 1.46 2007/12/20 21:55:49 gabor Exp $ --> +<!-- $FreeBSD: www/share/sgml/commercial.consult.xml,v 1.47 2008/05/23 14:25:44 jkois Exp $ --> <entries> <cvs:keywords xmlns:cvs="http://www.FreeBSD.org/XML/CVS" version="1.0"> <cvs:keyword name="freebsd"> - $FreeBSD: www/share/sgml/commercial.consult.xml,v 1.46 2007/12/20 21:55:49 gabor Exp $ + $FreeBSD: www/share/sgml/commercial.consult.xml,v 1.47 2008/05/23 14:25:44 jkois Exp $ </cvs:keyword> </cvs:keywords> @@ -1832,6 +1832,20 @@ </description> </entry> + <entry id="OpenSourcery" category="europe"> + <name>Open Sourcery</name> + <url>http://www.opensourcery.co.uk</url> + <description> + Open Sourcery is a UK based company providing support and consultancy + for Free and Open Source Software. We have <a + href="http://www.opensourcery.co.uk/open-sourcery/our-experience/" + title="Open Source support">experience</a> with a wide variety of + Open Source software. You can find out more and contact us at our + <a href="http://www.opensourcery.co.uk" + title="Open Source support">website</a>. + </description> + </entry> + <entry id="Oxalide" category="europe"> <name>Oxalide</name> <url>http://www.oxalide.com/</url> ==== //depot/projects/dtrace/www/share/sgml/commercial.isp.xml#12 (text+ko) ==== @@ -1,12 +1,12 @@ <?xml version="1.0"?> <!DOCTYPE entries PUBLIC "-//FreeBSD//DTD FreeBSD XML Database for Commercial Gallery//EN" "http://www.FreeBSD.org/XML/www/share/sgml/gallery.dtd"> -<!-- $FreeBSD: www/share/sgml/commercial.isp.xml,v 1.30 2008/04/14 19:16:59 jkois Exp $ --> +<!-- $FreeBSD: www/share/sgml/commercial.isp.xml,v 1.31 2008/05/23 13:54:49 jkois Exp $ --> <entries> <cvs:keywords xmlns:cvs="http://www.FreeBSD.org/XML/CVS" version="1.0"> <cvs:keyword name="freebsd"> - $FreeBSD: www/share/sgml/commercial.isp.xml,v 1.30 2008/04/14 19:16:59 jkois Exp $ + $FreeBSD: www/share/sgml/commercial.isp.xml,v 1.31 2008/05/23 13:54:49 jkois Exp $ </cvs:keyword> </cvs:keywords> @@ -167,6 +167,18 @@ </description> </entry> + <entry id="iweb"> + <name>iWeb Technologies Inc.</name> + <url>http://iweb.com/dedicated/server-deal/</url> + <description> + iWeb has been providing reliable and scalable Internet hosting + infrastructure solutions with its shared web hosting, dedicated + servers, managed hosting and colocation services for over a + decade. Power your valuable online web presence with an iWeb + Dedicated Server running FreeBSD. + </description> + </entry> + <entry id="gradwell"> <name>gradwell dot com Ltd</name> <url>http://www.gradwell.com/</url>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200805232032.m4NKWBqC032209>