PERFORCE change 142155 for review
John Birrell
jb at FreeBSD.org
Fri May 23 20:32:12 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=142155
Change 142155 by jb at 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 at 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 at FreeBSD.org">freebsd-alpha-subscribe at 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>
More information about the p4-projects
mailing list