PERFORCE change 139325 for review
Warner Losh
imp at FreeBSD.org
Fri Apr 4 07:09:16 UTC 2008
http://perforce.freebsd.org/chv.cgi?CH=139325
Change 139325 by imp at imp_paco-paco on 2008/04/04 07:08:57
IFC @139323
Affected files ...
.. //depot/projects/arm/src/bin/ls/ls.1#4 integrate
.. //depot/projects/arm/src/bin/ls/ls.c#2 integrate
.. //depot/projects/arm/src/bin/ls/ls.h#2 integrate
.. //depot/projects/arm/src/bin/ls/print.c#3 integrate
.. //depot/projects/arm/src/bin/ls/util.c#2 integrate
.. //depot/projects/arm/src/etc/rc.d/zfs#5 integrate
.. //depot/projects/arm/src/games/fortune/datfiles/fortunes#19 integrate
.. //depot/projects/arm/src/lib/libc/gen/err.c#3 integrate
.. //depot/projects/arm/src/lib/libc/gen/msgctl.3#3 integrate
.. //depot/projects/arm/src/lib/libc/include/namespace.h#4 integrate
.. //depot/projects/arm/src/lib/libc/include/un-namespace.h#4 integrate
.. //depot/projects/arm/src/lib/libc/sys/aio_cancel.2#2 integrate
.. //depot/projects/arm/src/lib/libc/sys/aio_suspend.2#2 integrate
.. //depot/projects/arm/src/lib/libthr/arch/amd64/Makefile.inc#3 integrate
.. //depot/projects/arm/src/lib/libthr/arch/amd64/amd64/_umtx_op_err.S#1 branch
.. //depot/projects/arm/src/lib/libthr/arch/amd64/include/pthread_md.h#3 integrate
.. //depot/projects/arm/src/lib/libthr/arch/i386/Makefile.inc#3 integrate
.. //depot/projects/arm/src/lib/libthr/arch/i386/i386/_umtx_op_err.S#1 branch
.. //depot/projects/arm/src/lib/libthr/arch/i386/include/pthread_md.h#3 integrate
.. //depot/projects/arm/src/lib/libthr/thread/thr_affinity.c#3 integrate
.. //depot/projects/arm/src/lib/libthr/thread/thr_cond.c#6 integrate
.. //depot/projects/arm/src/lib/libthr/thread/thr_private.h#13 integrate
.. //depot/projects/arm/src/lib/libthr/thread/thr_rtld.c#5 integrate
.. //depot/projects/arm/src/lib/libthr/thread/thr_umtx.c#10 integrate
.. //depot/projects/arm/src/lib/msun/src/s_fma.c#2 integrate
.. //depot/projects/arm/src/lib/msun/src/s_fmal.c#3 integrate
.. //depot/projects/arm/src/sbin/fsck_ffs/main.c#6 integrate
.. //depot/projects/arm/src/sbin/restore/dirs.c#3 integrate
.. //depot/projects/arm/src/sbin/restore/interactive.c#2 integrate
.. //depot/projects/arm/src/share/mk/sys.mk#7 integrate
.. //depot/projects/arm/src/sys/arm/arm/bus_space_generic.c#1 branch
.. //depot/projects/arm/src/sys/arm/arm/machdep.c#11 integrate
.. //depot/projects/arm/src/sys/arm/at91/kb920x_machdep.c#47 integrate
.. //depot/projects/arm/src/sys/arm/include/machdep.h#3 integrate
.. //depot/projects/arm/src/sys/arm/sa11x0/assabet_machdep.c#11 integrate
.. //depot/projects/arm/src/sys/arm/sa11x0/files.sa11x0#3 integrate
.. //depot/projects/arm/src/sys/arm/sa11x0/sa11x0_io.c#7 integrate
.. //depot/projects/arm/src/sys/arm/xscale/i80321/ep80219_machdep.c#8 integrate
.. //depot/projects/arm/src/sys/arm/xscale/i80321/files.ep80219#2 integrate
.. //depot/projects/arm/src/sys/arm/xscale/i80321/files.i80219#2 integrate
.. //depot/projects/arm/src/sys/arm/xscale/i80321/files.i80321#3 integrate
.. //depot/projects/arm/src/sys/arm/xscale/i80321/files.iq31244#2 integrate
.. //depot/projects/arm/src/sys/arm/xscale/i80321/iq31244_machdep.c#18 integrate
.. //depot/projects/arm/src/sys/arm/xscale/i80321/obio_space.c#4 integrate
.. //depot/projects/arm/src/sys/arm/xscale/i8134x/crb_machdep.c#4 integrate
.. //depot/projects/arm/src/sys/arm/xscale/i8134x/obio_space.c#3 integrate
.. //depot/projects/arm/src/sys/arm/xscale/ixp425/avila_machdep.c#15 integrate
.. //depot/projects/arm/src/sys/arm/xscale/ixp425/files.avila#9 integrate
.. //depot/projects/arm/src/sys/arm/xscale/ixp425/files.ixp425#12 integrate
.. //depot/projects/arm/src/sys/arm/xscale/ixp425/ixp425_a4x_space.c#5 integrate
.. //depot/projects/arm/src/sys/arm/xscale/ixp425/ixp425_space.c#6 integrate
.. //depot/projects/arm/src/sys/conf/Makefile.arm#21 integrate
.. //depot/projects/arm/src/sys/conf/NOTES#62 integrate
.. //depot/projects/arm/src/sys/conf/files#88 integrate
.. //depot/projects/arm/src/sys/dev/aac/aac_disk.c#4 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_80003es2lan.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_82540.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_82541.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_82542.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_82543.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_82571.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_82571.h#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_api.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_api.h#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_defines.h#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_hw.h#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_ich8lan.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_ich8lan.h#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_mac.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_mac.h#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_manage.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_nvm.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_nvm.h#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_osdep.c#1 branch
.. //depot/projects/arm/src/sys/dev/em/e1000_osdep.h#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_phy.c#5 integrate
.. //depot/projects/arm/src/sys/dev/em/e1000_phy.h#5 integrate
.. //depot/projects/arm/src/sys/dev/em/if_em.c#45 integrate
.. //depot/projects/arm/src/sys/dev/em/if_em.h#20 integrate
.. //depot/projects/arm/src/sys/dev/igb/e1000_mac.c#2 integrate
.. //depot/projects/arm/src/sys/dev/igb/e1000_osdep.c#1 branch
.. //depot/projects/arm/src/sys/dev/igb/if_igb.c#2 integrate
.. //depot/projects/arm/src/sys/dev/mpt/mpt.c#29 integrate
.. //depot/projects/arm/src/sys/dev/mxge/if_mxge.c#23 integrate
.. //depot/projects/arm/src/sys/kern/kern_clock.c#19 integrate
.. //depot/projects/arm/src/sys/kern/kern_conf.c#15 integrate
.. //depot/projects/arm/src/sys/kern/kern_cpuset.c#5 integrate
.. //depot/projects/arm/src/sys/kern/kern_event.c#17 integrate
.. //depot/projects/arm/src/sys/kern/kern_intr.c#19 integrate
.. //depot/projects/arm/src/sys/kern/kern_timeout.c#11 integrate
.. //depot/projects/arm/src/sys/kern/kern_umtx.c#21 integrate
.. //depot/projects/arm/src/sys/kern/sched_ule.c#33 integrate
.. //depot/projects/arm/src/sys/kern/subr_sleepqueue.c#21 integrate
.. //depot/projects/arm/src/sys/kern/vfs_subr.c#45 integrate
.. //depot/projects/arm/src/sys/modules/em/Makefile#7 integrate
.. //depot/projects/arm/src/sys/modules/igb/Makefile#3 integrate
.. //depot/projects/arm/src/sys/powerpc/include/asm.h#2 integrate
.. //depot/projects/arm/src/sys/powerpc/psim/openpic_iobus.c#5 integrate
.. //depot/projects/arm/src/sys/sys/callout.h#6 integrate
.. //depot/projects/arm/src/sys/sys/cpuset.h#5 integrate
.. //depot/projects/arm/src/tools/regression/lib/msun/Makefile#4 integrate
.. //depot/projects/arm/src/tools/regression/lib/msun/test-fma.c#1 branch
.. //depot/projects/arm/src/tools/regression/lib/msun/test-fma.t#1 branch
.. //depot/projects/arm/src/tools/tools/mctest/Makefile#1 branch
.. //depot/projects/arm/src/tools/tools/mctest/mctest.1#1 branch
.. //depot/projects/arm/src/tools/tools/mctest/mctest.cc#2 integrate
.. //depot/projects/arm/src/tools/tools/mctest/mctest.h#2 integrate
.. //depot/projects/arm/src/usr.bin/kdump/kdump.1#3 integrate
.. //depot/projects/arm/src/usr.bin/kdump/kdump.c#8 integrate
.. //depot/projects/arm/src/usr.bin/ktrace/ktrace.1#4 integrate
.. //depot/projects/arm/src/usr.bin/ktrace/ktrace.c#4 integrate
Differences ...
==== //depot/projects/arm/src/bin/ls/ls.1#4 (text+ko) ====
@@ -30,9 +30,9 @@
.\" SUCH DAMAGE.
.\"
.\" @(#)ls.1 8.7 (Berkeley) 7/29/94
-.\" $FreeBSD: src/bin/ls/ls.1,v 1.100 2006/10/12 10:08:52 ru Exp $
+.\" $FreeBSD: src/bin/ls/ls.1,v 1.102 2008/04/04 05:55:42 ru Exp $
.\"
-.Dd October 12, 2006
+.Dd April 4, 2008
.Dt LS 1
.Os
.Sh NAME
@@ -41,6 +41,7 @@
.Sh SYNOPSIS
.Nm
.Op Fl ABCFGHILPRSTUWZabcdfghiklmnopqrstuwx1
+.Op Fl D Ar format
.Op Ar
.Sh DESCRIPTION
For each operand that names a
@@ -88,6 +89,21 @@
is the numeric value of the character in octal.
.It Fl C
Force multi-column output; this is the default when output is to a terminal.
+.It Fl D Ar format
+When printing in the long
+.Pq Fl l
+format, use
+.Ar format
+to format the date and time output.
+The argument
+.Ar format
+is a string used by
+.Xr strftime 3 .
+Depending on the choice of format string, this may result in a
+different number of columns in the output.
+This option overrides the
+.Fl T
+option.
.It Fl F
Display a slash
.Pq Ql /
@@ -146,12 +162,13 @@
Sort by size (largest file first) before sorting the operands in
lexicographical order.
.It Fl T
-When used with the
-.Fl l
-(lowercase letter
-.Dq ell )
-option, display complete time information for the file, including
+When printing in the long
+.Pq Fl l
+format, display complete time information for the file, including
month, day, hour, minute, second, and year.
+The
+.Fl D
+option gives even more control over the output format.
.It Fl U
Use time when file was created for sorting or printing.
.It Fl W
@@ -325,7 +342,12 @@
modified, and the pathname.
.Pp
If the modification time of the file is more than 6 months
-in the past or future, then the year of the last modification
+in the past or future, and the
+.Fl D
+or
+.Fl T
+are not specified,
+then the year of the last modification
is displayed in place of the hour and minute fields.
.Pp
If the owner or group names are not a known user or group name,
@@ -657,6 +679,7 @@
.Xr getfacl 1 ,
.Xr sort 1 ,
.Xr xterm 1 ,
+.Xr strftime 3 ,
.Xr termcap 5 ,
.Xr maclabel 7 ,
.Xr symlink 7 ,
==== //depot/projects/arm/src/bin/ls/ls.c#2 (text+ko) ====
@@ -42,7 +42,7 @@
#endif /* not lint */
#endif
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.85 2006/03/24 17:09:03 jhb Exp $");
+__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.86 2008/04/04 03:57:46 grog Exp $");
#include <sys/types.h>
#include <sys/stat.h>
@@ -125,10 +125,11 @@
static int f_singlecol; /* use single column output */
int f_size; /* list size in short listing */
int f_slash; /* similar to f_type, but only for dirs */
- int f_sortacross; /* sort across rows, not down columns */
+ int f_sortacross; /* sort across rows, not down columns */
int f_statustime; /* use time of last mode change */
static int f_stream; /* stream the output, separate with commas */
static int f_timesort; /* sort by time vice name */
+ char *f_timeformat; /* user-specified time format */
static int f_sizesort;
int f_type; /* add type character for non-regular files */
static int f_whiteout; /* show whiteout entries */
@@ -179,7 +180,7 @@
fts_options = FTS_PHYSICAL;
while ((ch = getopt(argc, argv,
- "1ABCFGHILPRSTUWZabcdfghiklmnopqrstuwx")) != -1) {
+ "1ABCD:FGHILPRSTUWZabcdfghiklmnopqrstuwx")) != -1) {
switch (ch) {
/*
* The -1, -C, -x and -l options all override each other so
@@ -198,6 +199,9 @@
case 'C':
f_sortacross = f_longform = f_singlecol = 0;
break;
+ case 'D':
+ f_timeformat = optarg;
+ break;
case 'l':
f_longform = 1;
f_singlecol = 0;
==== //depot/projects/arm/src/bin/ls/ls.h#2 (text+ko) ====
@@ -30,7 +30,7 @@
* SUCH DAMAGE.
*
* from: @(#)ls.h 8.1 (Berkeley) 5/31/93
- * $FreeBSD: src/bin/ls/ls.h,v 1.22 2006/03/24 16:38:02 jhb Exp $
+ * $FreeBSD: src/bin/ls/ls.h,v 1.23 2008/04/04 03:57:46 grog Exp $
*/
#define NO_PRINT 1
@@ -50,8 +50,9 @@
extern int f_sectime; /* print the real time for all files */
extern int f_size; /* list size in short listing */
extern int f_slash; /* append a '/' if the file is a directory */
-extern int f_sortacross; /* sort across rows, not down columns */
+extern int f_sortacross; /* sort across rows, not down columns */
extern int f_statustime; /* use time of last mode change */
+extern char *f_timeformat; /* user-specified time format */
extern int f_notabs; /* don't use tab-separated multi-col output */
extern int f_type; /* add type character for non-regular files */
#ifdef COLORLS
==== //depot/projects/arm/src/bin/ls/print.c#3 (text+ko) ====
@@ -36,7 +36,7 @@
#endif /* not lint */
#endif
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/ls/print.c,v 1.76 2006/10/18 10:58:27 ru Exp $");
+__FBSDID("$FreeBSD: src/bin/ls/print.c,v 1.77 2008/04/04 03:57:46 grog Exp $");
#include <sys/param.h>
#include <sys/stat.h>
@@ -168,7 +168,7 @@
prevdev = sp->st_dev;
}
np = p->fts_pointer;
- (void)printf("%s %*u %-*s %-*s ", buf, dp->s_nlink,
+ (void)printf("%s %*u %-*s %-*s ", buf, dp->s_nlink,
sp->st_nlink, dp->s_user, np->user, dp->s_group,
np->group);
if (f_flags)
@@ -237,7 +237,7 @@
if (chcnt)
putchar('\n');
}
-
+
void
printcol(const DISPLAY *dp)
{
@@ -378,17 +378,20 @@
now = time(NULL);
#define SIXMONTHS ((365 / 2) * 86400)
- if (f_sectime)
+ if (f_timeformat) /* user specified format */
+ format = f_timeformat;
+ else if (f_sectime)
/* mmm dd hh:mm:ss yyyy || dd mmm hh:mm:ss yyyy */
- format = d_first ? "%e %b %T %Y " : "%b %e %T %Y ";
+ format = d_first ? "%e %b %T %Y" : "%b %e %T %Y";
else if (ftime + SIXMONTHS > now && ftime < now + SIXMONTHS)
/* mmm dd hh:mm || dd mmm hh:mm */
- format = d_first ? "%e %b %R " : "%b %e %R ";
+ format = d_first ? "%e %b %R" : "%b %e %R";
else
/* mmm dd yyyy || dd mmm yyyy */
- format = d_first ? "%e %b %Y " : "%b %e %Y ";
+ format = d_first ? "%e %b %Y" : "%b %e %Y";
strftime(longstring, sizeof(longstring), format, localtime(&ftime));
fputs(longstring, stdout);
+ fputc(' ', stdout);
}
static int
@@ -625,7 +628,7 @@
snprintf(name, sizeof(name), "%s", p->fts_name);
else
snprintf(name, sizeof(name), "%s/%s",
- p->fts_parent->fts_accpath, p->fts_name);
+ p->fts_parent->fts_accpath, p->fts_name);
/*
* We have no way to tell whether a symbolic link has an ACL since
* pathconf() and acl_get_file() both follow them. They also don't
==== //depot/projects/arm/src/bin/ls/util.c#2 (text+ko) ====
@@ -36,7 +36,7 @@
#endif /* not lint */
#endif
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/bin/ls/util.c,v 1.40 2006/03/24 16:38:02 jhb Exp $");
+__FBSDID("$FreeBSD: src/bin/ls/util.c,v 1.41 2008/04/04 05:55:42 ru Exp $");
#include <sys/types.h>
#include <sys/stat.h>
@@ -222,9 +222,9 @@
{
(void)fprintf(stderr,
#ifdef COLORLS
- "usage: ls [-ABCFGHILPRSTUWZabcdfghiklmnopqrstuwx1]"
+ "usage: ls [-ABCFGHILPRSTUWZabcdfghiklmnopqrstuwx1] [-D format]"
#else
- "usage: ls [-ABCFHILPRSTUWZabcdfghiklmnopqrstuwx1]"
+ "usage: ls [-ABCFHILPRSTUWZabcdfghiklmnopqrstuwx1] [-D format]"
#endif
" [file ...]\n");
exit(1);
==== //depot/projects/arm/src/etc/rc.d/zfs#5 (text+ko) ====
@@ -1,11 +1,10 @@
#!/bin/sh
#
-# $FreeBSD: src/etc/rc.d/zfs,v 1.6 2008/03/19 14:44:55 pjd Exp $
+# $FreeBSD: src/etc/rc.d/zfs,v 1.7 2008/04/02 19:29:16 dougb Exp $
#
# PROVIDE: zfs
# REQUIRE: mountcritlocal
-# BEFORE: mountcritremote
. /etc/rc.subr
==== //depot/projects/arm/src/games/fortune/datfiles/fortunes#19 (text+ko) ====
@@ -1,5 +1,5 @@
This fortune brought to you by:
-$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.259 2008/03/31 10:28:09 ganbold Exp $
+$FreeBSD: src/games/fortune/datfiles/fortunes,v 1.260 2008/04/03 10:22:56 yar Exp $
%
=======================================================================
|| ||
@@ -46075,6 +46075,12 @@
The greatest griefs are those we cause ourselves.
-- Sophocles
%
+The greatest joy a man can know is to conquer his enemies and drive them
+before him. To ride their horses and take away their possessions. To see
+the faces of those who were dear to them bedewed with tears, and to clasp
+their wives and daughters to his arms.
+ -- Chinggis (Genghis) Khan
+%
The greatest love is a mother's, then a dog's, then a sweetheart's.
-- Polish proverb
%
==== //depot/projects/arm/src/lib/libc/gen/err.c#3 (text+ko) ====
@@ -31,7 +31,7 @@
static char sccsid[] = "@(#)err.c 8.1 (Berkeley) 6/4/93";
#endif /* LIBC_SCCS and not lint */
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/lib/libc/gen/err.c,v 1.14 2007/01/09 00:27:53 imp Exp $");
+__FBSDID("$FreeBSD: src/lib/libc/gen/err.c,v 1.15 2008/04/03 20:36:44 imp Exp $");
#include "namespace.h"
#include <err.h>
@@ -97,11 +97,7 @@
}
void
-verrc(eval, code, fmt, ap)
- int eval;
- int code;
- const char *fmt;
- va_list ap;
+verrc(int eval, int code, const char *fmt, va_list ap)
{
if (err_file == 0)
err_set_file((FILE *)0);
@@ -126,10 +122,7 @@
}
void
-verrx(eval, fmt, ap)
- int eval;
- const char *fmt;
- va_list ap;
+verrx(int eval, const char *fmt, va_list ap)
{
if (err_file == 0)
err_set_file((FILE *)0);
@@ -154,9 +147,7 @@
}
void
-vwarn(fmt, ap)
- const char *fmt;
- va_list ap;
+vwarn(const char *fmt, va_list ap)
{
vwarnc(errno, fmt, ap);
}
@@ -171,10 +162,7 @@
}
void
-vwarnc(code, fmt, ap)
- int code;
- const char *fmt;
- va_list ap;
+vwarnc(int code, const char *fmt, va_list ap)
{
if (err_file == 0)
err_set_file((FILE *)0);
@@ -196,9 +184,7 @@
}
void
-vwarnx(fmt, ap)
- const char *fmt;
- va_list ap;
+vwarnx(const char *fmt, va_list ap)
{
if (err_file == 0)
err_set_file((FILE *)0);
==== //depot/projects/arm/src/lib/libc/gen/msgctl.3#3 (text+ko) ====
@@ -29,9 +29,9 @@
.\" (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/lib/libc/gen/msgctl.3,v 1.20 2006/08/09 18:05:44 maxim Exp $
+.\" $FreeBSD: src/lib/libc/gen/msgctl.3,v 1.21 2008/04/03 16:21:43 ru Exp $
.\"/
-.Dd November 24, 1997
+.Dd April 3, 2008
.Dt MSGCTL 3
.Os
.Sh NAME
@@ -65,9 +65,9 @@
struct ipc_perm msg_perm; /* msg queue permission bits */
struct msg *msg_first; /* first message in the queue */
struct msg *msg_last; /* last message in the queue */
- u_long msg_cbytes; /* number of bytes in use on the queue */
- u_long msg_qnum; /* number of msgs in the queue */
- u_long msg_qbytes; /* max # of bytes on the queue */
+ msglen_t msg_cbytes; /* number of bytes in use on the queue */
+ msgqnum_t msg_qnum; /* number of msgs in the queue */
+ msglen_t msg_qbytes; /* max # of bytes on the queue */
pid_t msg_lspid; /* pid of last msgsnd() */
pid_t msg_lrpid; /* pid of last msgrcv() */
time_t msg_stime; /* time of last msgsnd() */
@@ -89,13 +89,13 @@
and looks like this:
.Bd -literal
struct ipc_perm {
- ushort cuid; /* creator user id */
- ushort cgid; /* creator group id */
- ushort uid; /* user id */
- ushort gid; /* group id */
- ushort mode; /* r/w permission */
- ushort seq; /* sequence # (to generate unique msg/sem/shm id) */
- key_t key; /* user specified msg/sem/shm key */
+ unsigned short cuid; /* creator user id */
+ unsigned short cgid; /* creator group id */
+ unsigned short uid; /* user id */
+ unsigned short gid; /* group id */
+ unsigned short mode; /* r/w permission */
+ unsigned short seq; /* sequence # (to generate unique ipcid) */
+ key_t key; /* user specified msg/sem/shm key */
};
.Ed
.Pp
==== //depot/projects/arm/src/lib/libc/include/namespace.h#4 (text+ko) ====
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/lib/libc/include/namespace.h,v 1.22 2008/03/25 15:33:00 ru Exp $
+ * $FreeBSD: src/lib/libc/include/namespace.h,v 1.23 2008/04/02 08:53:18 davidxu Exp $
*/
#ifndef _NAMESPACE_H_
@@ -132,6 +132,7 @@
#define pthread_detach _pthread_detach
#define pthread_equal _pthread_equal
#define pthread_exit _pthread_exit
+#define pthread_getaffinity_np _pthread_getaffinity_np
#define pthread_getconcurrency _pthread_getconcurrency
#define pthread_getcpuclockid _pthread_getcpuclockid
#define pthread_getprio _pthread_getprio
@@ -182,6 +183,7 @@
#define pthread_rwlockattr_setpshared _pthread_rwlockattr_setpshared
#define pthread_self _pthread_self
#define pthread_set_name_np _pthread_set_name_np
+#define pthread_setaffinity_np _pthread_setaffinity_np
#define pthread_setcancelstate _pthread_setcancelstate
#define pthread_setcanceltype _pthread_setcanceltype
#define pthread_setconcurrency _pthread_setconcurrency
==== //depot/projects/arm/src/lib/libc/include/un-namespace.h#4 (text+ko) ====
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/lib/libc/include/un-namespace.h,v 1.19 2008/03/25 13:28:12 ru Exp $
+ * $FreeBSD: src/lib/libc/include/un-namespace.h,v 1.20 2008/04/02 08:53:18 davidxu Exp $
*/
#ifndef _UN_NAMESPACE_H_
@@ -113,6 +113,7 @@
#undef pthread_detach
#undef pthread_equal
#undef pthread_exit
+#undef pthread_getaffinity_np
#undef pthread_getconcurrency
#undef pthread_getcpuclockid
#undef pthread_getprio
@@ -163,6 +164,7 @@
#undef pthread_rwlockattr_setpshared
#undef pthread_self
#undef pthread_set_name_np
+#undef pthread_setaffinity_np
#undef pthread_setcancelstate
#undef pthread_setcanceltype
#undef pthread_setconcurrency
==== //depot/projects/arm/src/lib/libc/sys/aio_cancel.2#2 (text+ko) ====
@@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/lib/libc/sys/aio_cancel.2,v 1.22 2003/01/13 10:37:11 tjr Exp $
+.\" $FreeBSD: src/lib/libc/sys/aio_cancel.2,v 1.23 2008/04/03 02:41:54 kevlo Exp $
.\"
.Dd January 19, 2000
.Dt AIO_CANCEL 2
@@ -35,7 +35,7 @@
.Sh SYNOPSIS
.In aio.h
.Ft int
-.Fn aio_cancel "int fildes" "struct aiocb * iocb"
+.Fn aio_cancel "int fildes" "struct aiocb *iocb"
.Sh DESCRIPTION
The
.Fn aio_cancel
==== //depot/projects/arm/src/lib/libc/sys/aio_suspend.2#2 (text+ko) ====
@@ -22,7 +22,7 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/lib/libc/sys/aio_suspend.2,v 1.22 2004/12/23 23:45:25 keramida Exp $
+.\" $FreeBSD: src/lib/libc/sys/aio_suspend.2,v 1.23 2008/04/03 02:41:54 kevlo Exp $
.\"
.Dd June 2, 1999
.Dt AIO_SUSPEND 2
@@ -35,7 +35,7 @@
.Sh SYNOPSIS
.In aio.h
.Ft int
-.Fn aio_suspend "const struct aiocb * const iocbs[]" "int niocb" "const struct timespec * timeout"
+.Fn aio_suspend "const struct aiocb *const iocbs[]" "int niocb" "const struct timespec *timeout"
.Sh DESCRIPTION
The
.Fn aio_suspend
==== //depot/projects/arm/src/lib/libthr/arch/amd64/Makefile.inc#3 (text+ko) ====
@@ -1,5 +1,5 @@
-#$FreeBSD: src/lib/libthr/arch/amd64/Makefile.inc,v 1.3 2008/02/13 05:25:42 obrien Exp $
+#$FreeBSD: src/lib/libthr/arch/amd64/Makefile.inc,v 1.4 2008/04/02 07:41:23 davidxu Exp $
.PATH: ${.CURDIR}/arch/${MACHINE_ARCH}/${MACHINE_ARCH}
-SRCS+= pthread_md.c
+SRCS+= pthread_md.c _umtx_op_err.S
==== //depot/projects/arm/src/lib/libthr/arch/amd64/include/pthread_md.h#3 (text+ko) ====
@@ -24,7 +24,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/lib/libthr/arch/amd64/include/pthread_md.h,v 1.4 2006/12/15 11:52:00 davidxu Exp $
+ * $FreeBSD: src/lib/libthr/arch/amd64/include/pthread_md.h,v 1.5 2008/04/02 07:41:24 davidxu Exp $
*/
/*
@@ -97,4 +97,7 @@
{
return (TCB_GET64(tcb_thread));
}
+
+#define HAS__UMTX_OP_ERR 1
+
#endif
==== //depot/projects/arm/src/lib/libthr/arch/i386/Makefile.inc#3 (text+ko) ====
@@ -1,5 +1,5 @@
-# $FreeBSD: src/lib/libthr/arch/i386/Makefile.inc,v 1.3 2008/02/13 05:25:43 obrien Exp $
+# $FreeBSD: src/lib/libthr/arch/i386/Makefile.inc,v 1.4 2008/04/02 07:41:24 davidxu Exp $
.PATH: ${.CURDIR}/arch/${MACHINE_ARCH}/${MACHINE_ARCH}
-SRCS+= pthread_md.c
+SRCS+= pthread_md.c _umtx_op_err.S
==== //depot/projects/arm/src/lib/libthr/arch/i386/include/pthread_md.h#3 (text+ko) ====
@@ -24,7 +24,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/lib/libthr/arch/i386/include/pthread_md.h,v 1.8 2006/12/15 11:52:00 davidxu Exp $
+ * $FreeBSD: src/lib/libthr/arch/i386/include/pthread_md.h,v 1.9 2008/04/02 07:41:24 davidxu Exp $
*/
/*
@@ -102,4 +102,7 @@
{
return (TCB_GET32(tcb_thread));
}
+
+#define HAS__UMTX_OP_ERR 1
+
#endif
==== //depot/projects/arm/src/lib/libthr/thread/thr_affinity.c#3 (text+ko) ====
@@ -23,12 +23,12 @@
* (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/lib/libthr/thread/thr_affinity.c,v 1.2 2008/03/19 06:38:21 davidxu Exp $
+ * $FreeBSD: src/lib/libthr/thread/thr_affinity.c,v 1.3 2008/04/02 11:41:12 davidxu Exp $
*
*/
#include "namespace.h"
-#include <pthread.h>
+#include <pthread_np.h>
#include <sys/param.h>
#include <sys/cpuset.h>
#include "un-namespace.h"
==== //depot/projects/arm/src/lib/libthr/thread/thr_cond.c#6 (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/lib/libthr/thread/thr_cond.c,v 1.24 2008/03/31 02:55:49 davidxu Exp $
+ * $FreeBSD: src/lib/libthr/thread/thr_cond.c,v 1.25 2008/04/02 08:33:42 davidxu Exp $
*/
#include "namespace.h"
@@ -290,56 +290,3 @@
return (cond_signal_common(cond, 1));
}
-
-int
-_pthread_cond_wait_unlocked(pthread_cond_t *cond, pthread_mutex_t *mutex,
- const struct timespec *abstime)
-{
- struct pthread *curthread = _get_curthread();
- struct timespec ts, ts2, *tsp;
- pthread_cond_t cv;
- int ret;
-
- cv = *cond;
- THR_UMUTEX_LOCK(curthread, &cv->c_lock);
- _pthread_mutex_unlock(mutex);
-
- if (abstime != NULL) {
- clock_gettime(cv->c_clockid, &ts);
- TIMESPEC_SUB(&ts2, abstime, &ts);
- tsp = &ts2;
- } else
- tsp = NULL;
-
- ret = _thr_ucond_wait(&cv->c_kerncv, &cv->c_lock, tsp, 0);
- if (ret == EINTR)
- ret = 0;
- return (ret);
-}
-
-int
-_pthread_cond_broadcast_unlock(pthread_cond_t *cond, pthread_mutex_t *mutex, int broadcast)
-{
- struct pthread *curthread = _get_curthread();
- pthread_cond_t cv;
- int ret = 0;
-
- /*
- * If the condition variable is statically initialized, perform dynamic
- * initialization.
- */
- if (__predict_false(*cond == NULL &&
- (ret = init_static(curthread, cond)) != 0))
- return (ret);
-
- cv = *cond;
- THR_UMUTEX_LOCK(curthread, &cv->c_lock);
- _pthread_mutex_unlock(mutex);
- if (!broadcast)
- ret = _thr_ucond_signal(&cv->c_kerncv);
- else
- ret = _thr_ucond_broadcast(&cv->c_kerncv);
- THR_UMUTEX_UNLOCK(curthread, &cv->c_lock);
- return (ret);
-}
-
==== //depot/projects/arm/src/lib/libthr/thread/thr_private.h#13 (text+ko) ====
@@ -26,7 +26,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/lib/libthr/thread/thr_private.h,v 1.87 2008/04/02 04:32:31 davidxu Exp $
+ * $FreeBSD: src/lib/libthr/thread/thr_private.h,v 1.92 2008/04/03 02:47:35 davidxu Exp $
*/
#ifndef _THR_PRIVATE_H
@@ -460,8 +460,10 @@
(thrd)->critical_count++
#define THR_CRITICAL_LEAVE(thrd) \
- (thrd)->critical_count--; \
- _thr_ast(thrd);
+ do { \
+ (thrd)->critical_count--; \
+ _thr_ast(thrd); \
+ } while (0)
#define THR_UMUTEX_TRYLOCK(thrd, lck) \
_thr_umutex_trylock((lck), TID(thrd))
@@ -668,10 +670,6 @@
void _thread_bp_create(void);
void _thread_bp_death(void);
int _sched_yield(void);
-int _pthread_getaffinity_np(pthread_t, size_t, cpuset_t *);
-int _pthread_setaffinity_np(pthread_t, size_t, const cpuset_t *);
-int _pthread_cond_wait_unlocked(pthread_cond_t *, pthread_mutex_t *, const struct timespec *) __hidden;
-int _pthread_cond_broadcast_unlock(pthread_cond_t *, pthread_mutex_t *, int broadcast);
/* #include <fcntl.h> */
#ifdef _SYS_FCNTL_H_
@@ -709,6 +707,8 @@
void __sys_exit(int);
#endif
+int _umtx_op_err(void *, int op, u_long, void *, void *) __hidden;
+
static inline int
_thr_isthreaded(void)
{
==== //depot/projects/arm/src/lib/libthr/thread/thr_rtld.c#5 (text) ====
@@ -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/lib/libthr/thread/thr_rtld.c,v 1.6 2008/03/21 02:31:55 davidxu Exp $
+ * $FreeBSD: src/lib/libthr/thread/thr_rtld.c,v 1.7 2008/04/02 07:41:24 davidxu Exp $
*
*/
@@ -219,7 +219,7 @@
curthread = _get_curthread();
/* force to resolve _umtx_op PLT */
- _umtx_op((struct umtx *)&dummy, UMTX_OP_WAKE, 1, 0, 0);
+ _umtx_op_err((struct umtx *)&dummy, UMTX_OP_WAKE, 1, 0, 0);
/* force to resolve errno() PLT */
__error();
==== //depot/projects/arm/src/lib/libthr/thread/thr_umtx.c#10 (text+ko) ====
@@ -23,13 +23,22 @@
* (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/lib/libthr/thread/thr_umtx.c,v 1.14 2008/04/02 04:32:31 davidxu Exp $
+ * $FreeBSD: src/lib/libthr/thread/thr_umtx.c,v 1.15 2008/04/02 07:41:24 davidxu Exp $
*
*/
#include "thr_private.h"
#include "thr_umtx.h"
+#ifndef HAS__UMTX_OP_ERR
+int _umtx_op_err(void *obj, int op, u_long val, void *uaddr, void *uaddr2)
+{
+ if (_umtx_op(obj, op, val, uaddr, uaddr2) == -1)
+ return (errno);
+ return (0);
+}
+#endif
+
void
_thr_umutex_init(struct umutex *mtx)
{
@@ -41,9 +50,7 @@
int
__thr_umutex_lock(struct umutex *mtx)
{
- if (_umtx_op(mtx, UMTX_OP_MUTEX_LOCK, 0, 0, 0) != -1)
- return 0;
- return (errno);
+ return _umtx_op_err(mtx, UMTX_OP_MUTEX_LOCK, 0, 0, 0);
}
int
@@ -53,35 +60,27 @@
if (timeout && (timeout->tv_sec < 0 || (timeout->tv_sec == 0 &&
timeout->tv_nsec <= 0)))
return (ETIMEDOUT);
- if (_umtx_op(mtx, UMTX_OP_MUTEX_LOCK, 0, 0,
- __DECONST(void *, timeout)) != -1)
- return (0);
- return (errno);
+ return _umtx_op_err(mtx, UMTX_OP_MUTEX_LOCK, 0, 0,
+ __DECONST(void *, timeout));
}
int
__thr_umutex_unlock(struct umutex *mtx)
{
- if (_umtx_op(mtx, UMTX_OP_MUTEX_UNLOCK, 0, 0, 0) != -1)
- return (0);
- return (errno);
+ return _umtx_op_err(mtx, UMTX_OP_MUTEX_UNLOCK, 0, 0, 0);
}
int
__thr_umutex_trylock(struct umutex *mtx)
{
- if (_umtx_op(mtx, UMTX_OP_MUTEX_TRYLOCK, 0, 0, 0) != -1)
- return (0);
- return (errno);
+ return _umtx_op_err(mtx, UMTX_OP_MUTEX_TRYLOCK, 0, 0, 0);
}
int
__thr_umutex_set_ceiling(struct umutex *mtx, uint32_t ceiling,
uint32_t *oldceiling)
{
- if (_umtx_op(mtx, UMTX_OP_SET_CEILING, ceiling, oldceiling, 0) != -1)
- return (0);
- return (errno);
+ return _umtx_op_err(mtx, UMTX_OP_SET_CEILING, ceiling, oldceiling, 0);
}
int
@@ -90,10 +89,8 @@
if (timeout && (timeout->tv_sec < 0 || (timeout->tv_sec == 0 &&
timeout->tv_nsec <= 0)))
return (ETIMEDOUT);
- if (_umtx_op(__DEVOLATILE(void *, mtx), UMTX_OP_WAIT, id, 0,
- __DECONST(void*, timeout)) != -1)
- return (0);
- return (errno);
+ return _umtx_op_err(__DEVOLATILE(void *, mtx), UMTX_OP_WAIT, id, 0,
+ __DECONST(void*, timeout));
}
int
@@ -102,19 +99,15 @@
if (timeout && (timeout->tv_sec < 0 || (timeout->tv_sec == 0 &&
timeout->tv_nsec <= 0)))
return (ETIMEDOUT);
- if (_umtx_op(__DEVOLATILE(void *, mtx), UMTX_OP_WAIT_UINT, id, 0,
- __DECONST(void*, timeout)) != -1)
- return (0);
- return (errno);
+ return _umtx_op_err(__DEVOLATILE(void *, mtx), UMTX_OP_WAIT_UINT, id, 0,
+ __DECONST(void*, timeout));
}
int
_thr_umtx_wake(volatile void *mtx, int nr_wakeup)
{
- if (_umtx_op(__DEVOLATILE(void *, mtx), UMTX_OP_WAKE,
- nr_wakeup, 0, 0) != -1)
- return (0);
- return (errno);
+ return _umtx_op_err(__DEVOLATILE(void *, mtx), UMTX_OP_WAKE,
+ nr_wakeup, 0, 0);
}
void
@@ -132,12 +125,9 @@
__thr_umutex_unlock(m);
return (ETIMEDOUT);
}
- if (_umtx_op(cv, UMTX_OP_CV_WAIT,
+ return _umtx_op_err(cv, UMTX_OP_CV_WAIT,
check_unparking ? UMTX_CHECK_UNPARKING : 0,
- m, __DECONST(void*, timeout)) != -1) {
- return (0);
- }
- return (errno);
+ m, __DECONST(void*, timeout));
}
int
@@ -145,9 +135,7 @@
{
if (!cv->c_has_waiters)
return (0);
- if (_umtx_op(cv, UMTX_OP_CV_SIGNAL, 0, NULL, NULL) != -1)
- return (0);
- return (errno);
+ return _umtx_op_err(cv, UMTX_OP_CV_SIGNAL, 0, NULL, NULL);
}
int
@@ -155,31 +143,23 @@
{
if (!cv->c_has_waiters)
return (0);
- if (_umtx_op(cv, UMTX_OP_CV_BROADCAST, 0, NULL, NULL) != -1)
- return (0);
- return (errno);
+ return _umtx_op_err(cv, UMTX_OP_CV_BROADCAST, 0, NULL, NULL);
}
int
__thr_rwlock_rdlock(struct urwlock *rwlock, int flags, struct timespec *tsp)
{
- if (_umtx_op(rwlock, UMTX_OP_RW_RDLOCK, flags, NULL, tsp) != -1)
- return (0);
- return (errno);
+ return _umtx_op_err(rwlock, UMTX_OP_RW_RDLOCK, flags, NULL, tsp);
}
int
__thr_rwlock_wrlock(struct urwlock *rwlock, struct timespec *tsp)
{
- if (_umtx_op(rwlock, UMTX_OP_RW_WRLOCK, 0, NULL, tsp) != -1)
- return (0);
- return (errno);
+ return _umtx_op_err(rwlock, UMTX_OP_RW_WRLOCK, 0, NULL, tsp);
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list