From owner-p4-projects@FreeBSD.ORG Sun Oct 18 15:59:28 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 180461065694; Sun, 18 Oct 2009 15:59:28 +0000 (UTC)
Delivered-To: perforce@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id B0B94106566B
for ; Sun, 18 Oct 2009 15:59:27 +0000 (UTC)
(envelope-from yohanes@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 861C98FC0C
for ; Sun, 18 Oct 2009 15:59:27 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9IFxRcD003269
for ; Sun, 18 Oct 2009 15:59:27 GMT
(envelope-from yohanes@FreeBSD.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9IFxRDf003267
for perforce@freebsd.org; Sun, 18 Oct 2009 15:59:27 GMT
(envelope-from yohanes@FreeBSD.org)
Date: Sun, 18 Oct 2009 15:59:27 GMT
Message-Id: <200910181559.n9IFxRDf003267@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
yohanes@FreeBSD.org using -f
From: Yohanes Nugroho
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169569 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sun, 18 Oct 2009 15:59:28 -0000
http://p4web.freebsd.org/chv.cgi?CH=169569
Change 169569 by yohanes@econa on 2009/10/18 15:59:19
remove m_devget
Affected files ...
.. //depot/projects/str91xx/src/sys/arm/conf/CNS11XXNAS#5 edit
.. //depot/projects/str91xx/src/sys/arm/econa/if_ece.c#7 edit
Differences ...
==== //depot/projects/str91xx/src/sys/arm/conf/CNS11XXNAS#5 (text+ko) ====
@@ -52,8 +52,8 @@
#options COMPAT_FREEBSD7
-#options SCHED_ULE #ULE scheduler
-options SCHED_4BSD #4BSD scheduler
+options SCHED_ULE #ULE scheduler
+#options SCHED_4BSD #4BSD scheduler
options GEOM_PART_GPT # GUID Partition Tables.
#options GEOM_PART_EBR
#options GEOM_PART_EBR_COMPAT
==== //depot/projects/str91xx/src/sys/arm/econa/if_ece.c#7 (text+ko) ====
@@ -67,6 +67,9 @@
#include "miibus_if.h"
+//#define ECE_MAX_TX_BUFFERS 256
+//#define ECE_MAX_RX_BUFFERS 256
+
#define ECE_MAX_TX_BUFFERS 128
#define ECE_MAX_RX_BUFFERS 128
@@ -307,7 +310,7 @@
for (ii = 0; ii < 0x1000; ii++) {
status = RD4(sc, PHY_CONTROL);
- DELAY(1);
+ //DELAY(1);
if (status & (0x1 << 15)) {
/* clear the rw_ok status, and clear other bits value */
WR4(sc, PHY_CONTROL, (0x1 << 15));
@@ -655,7 +658,7 @@
desc_paddr = sc->ring_paddr_tx;
-
+
/* Allocate a busdma tag for mbufs. */
error = bus_dma_tag_create(sc->sc_parent_tag, /* parent */
16, 0, /* alignment, boundary */
@@ -1594,13 +1597,15 @@
bus_dmamap_sync(sc->dmatag_data_rx, sc->dmap_rx[idx],
BUS_DMASYNC_POSTREAD|BUS_DMASYNC_POSTWRITE);
-
+#if 0
mb = m_devget((void *)sc->buffer_rx[idx]->m_data,
desc->length+16,
0, ifp, NULL);
if (mb) {
+// int l;
mb->m_data += 2;
+
if (desc->prot!=3) {
mb->m_pkthdr.csum_flags |= CSUM_IP_CHECKED;
mb->m_pkthdr.csum_flags |= CSUM_IP_VALID;
@@ -1608,6 +1613,15 @@
}
mb->m_len = mb->m_pkthdr.len;
+/*
+ printf("packet len %d\n", mb->m_len);
+ for (l = 0; lm_len; l++) {
+ printf("%02x ", mb->m_data[l]);
+ if (((l+1) %16)==0) {
+ printf("\n");
+ }
+ }
+ printf("-----\n");*/
ECE_RXUNLOCK(sc);
(*ifp->if_input)(ifp, mb);
ECE_RXLOCK(sc);
@@ -1615,7 +1629,40 @@
if_printf(sc->ifp, "no mbuf length = %d\n", desc->length);
/* Give up if no mbufs */
}
+#else
+ mb = sc->buffer_rx[idx];
+ mb->m_data += 2;
+ mb->m_pkthdr.rcvif = ifp;
+ if (desc->prot!=3) {
+ mb->m_pkthdr.csum_flags |= CSUM_IP_CHECKED;
+ mb->m_pkthdr.csum_flags |= CSUM_IP_VALID;
+ mb->m_pkthdr.csum_data = 0xffff;
+ }
+
+ mb->m_len = mb->m_pkthdr.len = desc->length+16;
+/*
+
+ int l;
+ printf("packet len %d\n", mb->m_len);
+ for (l = 0; lm_len; l++) {
+ printf("%02x ", mb->m_data[l]);
+ if (((l+1) %16)==0) {
+ printf("\n");
+ }
+ }
+ printf("-----\n");*/
+
+ ECE_RXUNLOCK(sc);
+ (*ifp->if_input)(ifp, mb);
+ ECE_RXLOCK(sc);
+
+ ece_new_rxbuf(sc->dmatag_ring_rx, &sc->dmap_rx[idx],
+ &(sc->buffer_rx[idx]),
+ (bus_addr_t *)&(desc->data_ptr));
+
+#endif
+
} else {
/*not ready, process later*/
return;
@@ -1682,12 +1729,15 @@
struct ece_softc *sc = xsc;
struct ifnet *ifp = sc->ifp;
int stat;
- int fssd_curr, fssd;
+ //int fssd_curr, fssd;
stat = RD4(sc, INTERRUPT_STATUS);
- fssd_curr = RD4(sc, FS_DESCRIPTOR_POINTER);
+
+ //printf("status = %08x\n", stat);
+
+ //fssd_curr = RD4(sc, FS_DESCRIPTOR_POINTER);
- fssd = (fssd_curr - (uint32_t)sc->ring_paddr_rx)>>4;
+ //fssd = (fssd_curr - (uint32_t)sc->ring_paddr_rx)>>4;
WR4(sc, INTERRUPT_STATUS, stat);
@@ -1696,7 +1746,7 @@
return;
}
- taskqueue_enqueue(sc->sc_tq, &sc->sc_intr_task);
+ //taskqueue_enqueue(sc->sc_tq, &sc->sc_intr_task);
}
static void
@@ -1850,6 +1900,8 @@
sc->curr_tx_mbuf = (sc->curr_tx_mbuf+1) % ECE_MAX_TX_BUFFERS;
+ //printf("encap nsegs = %d\n", nsegs);
+
/* Everything is ok, now we can send buffers */
for (seg = 0; seg < nsegs; seg++) {
@@ -1858,6 +1910,7 @@
}
desc->length = segs[seg].ds_len;
+ // printf("dlength = %d\n", desc->length);
desc->data_ptr = segs[seg].ds_addr;
//dw->buffer = m0;
From owner-p4-projects@FreeBSD.ORG Sun Oct 18 19:48:17 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id B9FB61065679; Sun, 18 Oct 2009 19:48:17 +0000 (UTC)
Delivered-To: perforce@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 7E464106566C
for ; Sun, 18 Oct 2009 19:48:17 +0000 (UTC)
(envelope-from truncs@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 6AE928FC08
for ; Sun, 18 Oct 2009 19:48:17 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9IJmHDj034257
for ; Sun, 18 Oct 2009 19:48:17 GMT
(envelope-from truncs@FreeBSD.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9IJmHxl034255
for perforce@freebsd.org; Sun, 18 Oct 2009 19:48:17 GMT
(envelope-from truncs@FreeBSD.org)
Date: Sun, 18 Oct 2009 19:48:17 GMT
Message-Id: <200910181948.n9IJmHxl034255@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
truncs@FreeBSD.org using -f
From: Aditya Sarawgi
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169580 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sun, 18 Oct 2009 19:48:17 -0000
http://p4web.freebsd.org/chv.cgi?CH=169580
Change 169580 by truncs@aditya on 2009/10/18 19:47:55
Apply locking primitives to allocation functions.
Affected files ...
.. //depot/projects/soc2009/soc_ext2fs/src/sys/fs/ext2fs/ext2_alloc.c#11 edit
Differences ...
==== //depot/projects/soc2009/soc_ext2fs/src/sys/fs/ext2fs/ext2_alloc.c#11 (text+ko) ====
@@ -100,10 +100,13 @@
int32_t *bnp;
{
struct m_ext2fs *fs;
+ struct ext2mount *ump;
int32_t bno;
int cg;
*bnp = 0;
fs = ip->i_e2fs;
+ ump = ip->i_ump;
+ mtx_assert(EXT2_MTX(ump), MA_OWNED);
#ifdef DIAGNOSTIC
if ((u_int)size > fs->e2fs_bsize || blkoff(fs, size) != 0) {
vn_printf(ip->i_devvp, "bsize = %lu, size = %d, fs = %s\n",
@@ -177,6 +180,7 @@
struct inode *ip;
struct vnode *vp;
struct buf *sbp, *ebp;
+ struct ext2mount *ump;
struct cluster_save *buflist;
struct indir start_ap[NIADDR + 1], end_ap[NIADDR + 1], *idp;
int32_t *bap, *sbap, *ebap;
@@ -186,6 +190,7 @@
vp = ap->a_vp;
ip = VTOI(vp);
fs = ip->i_e2fs;
+ ump = ip->i_ump;
#ifdef UNKLAR
if (fs->fs_contigsumsize <= 0)
return (ENOSPC);
@@ -228,6 +233,7 @@
/*
* Find the preferred location for the cluster.
*/
+ EXT2_LOCK(ump);
pref = ext2_blkpref(ip, start_lbn, soff, sbap);
/*
* If the block range spans two block maps, get the second map.
@@ -240,16 +246,20 @@
panic("ext2_reallocblk: start == end");
#endif
ssize = len - (idp->in_off + 1);
- if (bread(vp, idp->in_lbn, (int)fs->e2fs_bsize, NOCRED, &ebp))
+ if (bread(vp, idp->in_lbn, (int)fs->e2fs_bsize, NOCRED, &ebp)){
+ EXT2_UNLOCK(ump);
goto fail;
+ }
ebap = (int32_t *)ebp->b_data;
}
/*
* Search the block map looking for an allocation of the desired size.
*/
if ((newblk = (int32_t)ext2_hashalloc(ip, dtog(fs, pref), (long)pref,
- len, (u_long (*)())ext2_clusteralloc)) == 0)
+ len, (u_long (*)())ext2_clusteralloc)) == 0){
+ EXT2_UNLOCK(ump);
goto fail;
+ }
/*
* We have found a new contiguous block.
*
@@ -330,12 +340,16 @@
struct inode *pip;
struct m_ext2fs *fs;
struct inode *ip;
+ struct ext2mount *ump;
ino_t ino, ipref;
int i, error, cg;
*vpp = NULL;
pip = VTOI(pvp);
fs = pip->i_e2fs;
+ ump = pip->i_ump;
+
+ EXT2_LOCK(ump);
if (fs->e2fs->e2fs_ficount == 0)
goto noinodes;
/*
@@ -390,6 +404,7 @@
*/
return (0);
noinodes:
+ EXT2_UNLOCK(ump);
ext2_fserr(fs, cred->cr_uid, "out of inodes");
uprintf("\n%s: create/symlink failed, no inodes free\n", fs->e2fs_fsmnt);
return (ENOSPC);
@@ -419,6 +434,7 @@
int mincg, minndir;
int maxcontigdirs;
+ mtx_assert(EXT2_MTX(pip->i_ump), MA_OWNED);
fs = pip->i_e2fs;
avgifree = fs->e2fs->e2fs_ficount / fs->e2fs_gcount;
@@ -529,6 +545,7 @@
int32_t blocknr;
{
int tmp;
+ mtx_assert(EXT2_MTX(pip->i_ump), MA_OWNED);
/* if the next block is actually what we thought it is,
then set the goal to what we thought it should be
@@ -569,6 +586,7 @@
ino_t result;
int i, icg = cg;
+ mtx_assert(EXT2_MTX(ip->i_ump), MA_OWNED);
fs = ip->i_e2fs;
/*
* 1: preferred cylinder group
@@ -615,18 +633,22 @@
{
struct m_ext2fs *fs;
struct buf *bp;
+ struct ext2mount *ump;
int error, bno, start, end, loc;
char *bbp;
/* XXX ondisk32 */
fs = ip->i_e2fs;
+ ump = ip->i_ump;
if (fs->e2fs_gd[cg].ext2bgd_nbfree == 0)
return (0);
+ EXT2_UNLOCK(ump);
error = bread(ip->i_devvp, fsbtodb(fs,
fs->e2fs_gd[cg].ext2bgd_b_bitmap),
(int)fs->e2fs_bsize, NOCRED, &bp);
if (error) {
brelse(bp);
+ EXT2_LOCK(ump);
return (0);
}
bbp = (char *)bp->b_data;
@@ -669,6 +691,8 @@
bno = ext2_mapsearch(fs, bbp, bpref);
if (bno < 0){
+ brelse(bp);
+ EXT2_LOCK(ump);
return (0);
}
gotit:
@@ -680,9 +704,11 @@
}
#endif
setbit(bbp, (daddr_t)bno);
+ EXT2_LOCK(ump);
fs->e2fs->e2fs_fbcount--;
fs->e2fs_gd[cg].ext2bgd_nbfree--;
fs->e2fs_fmod = 1;
+ EXT2_UNLOCK(ump);
bdwrite(bp);
return (cg * fs->e2fs->e2fs_fpg + fs->e2fs->e2fs_first_dblock + bno);
}
@@ -698,21 +724,23 @@
{
struct m_ext2fs *fs;
struct buf *bp;
+ struct ext2mount *ump;
int error, start, len, loc, map, i;
char *ibp;
ipref--; /* to avoid a lot of (ipref -1) */
if (ipref == -1)
ipref = 0;
fs = ip->i_e2fs;
+ ump = ip_i_ump;
if (fs->e2fs_gd[cg].ext2bgd_nifree == 0)
return (0);
- lock_super(DEVVP(ip));
+ EXT2_UNLOCK(ump);
error = bread(ip->i_devvp, fsbtodb(fs,
fs->e2fs_gd[cg].ext2bgd_i_bitmap),
(int)fs->e2fs_bsize, NOCRED, &bp);
if (error) {
brelse(bp);
- unlock_super(DEVVP(ip));
+ EXT2_LOCK(ump);
return (0);
}
ibp = (char *)bp->b_data;
@@ -748,6 +776,7 @@
/* NOTREACHED */
gotit:
setbit(ibp, ipref);
+ EXT2_LOCK(ump);
fs->e2fs_gd[cg].ext2bgd_nifree--;
fs->e2fs->e2fs_ficount--;
fs->e2fs_fmod = 1;
@@ -755,6 +784,7 @@
fs->e2fs_gd[cg].ext2bgd_ndirs++;
fs->e2fs_total_dir++;
}
+ EXT2_UNLOCK(ump);
bdwrite(bp);
unlock_super(DEVVP(ip));
return (cg * fs->e2fs->e2fs_ipg + ipref +1);
@@ -772,10 +802,12 @@
{
struct m_ext2fs *fs;
struct buf *bp;
+ struct ext2mount *ump;
int cg, error;
char *bbp;
fs = ip->i_e2fs;
+ ump = ip->i_ump;
cg = dtog(fs, bno);
if ((u_int)bno >= fs->e2fs->e2fs_bcount) {
printf("bad block %lld, ino %llu\n", (long long)bno,
@@ -798,9 +830,11 @@
panic("blkfree: freeing free block");
}
clrbit(bbp, bno);
+ EXT2_LOCK(ump);
fs->e2fs->e2fs_fbcount++;
fs->e2fs_gd[cg].ext2bgd_nbfree++;
fs->e2fs_fmod = 1;
+ EXT2_UNLOCK(ump);
bdwrite(bp);
}
@@ -817,12 +851,14 @@
struct m_ext2fs *fs;
struct inode *pip;
struct buf *bp;
+ struct ext2mount *ump;
int error, cg;
char * ibp;
/* mode_t save_i_mode; */
pip = VTOI(pvp);
fs = pip->i_e2fs;
+ ump = pip->i_ump;
if ((u_int)ino > fs->e2fs_ipg * fs->e2fs_gcount)
panic("ext2_vfree: range: devvp = %p, ino = %d, fs = %s",
pip->i_devvp, ino, fs->e2fs_fsmnt);
@@ -844,6 +880,7 @@
panic("ifree: freeing free inode");
}
clrbit(ibp, ino);
+ EXT2_LOCK(ump);
fs->e2fs->e2fs_ficount++;
fs->e2fs_gd[cg].ext2bgd_nifree++;
if ((mode & IFMT) == IFDIR) {
@@ -851,6 +888,7 @@
fs->e2fs_total_dir--;
}
fs->e2fs_fmod = 1;
+ EXT2_UNLOCK(ump);
bdwrite(bp);
return (0);
}
From owner-p4-projects@FreeBSD.ORG Sun Oct 18 20:10:40 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 38FD310656DB; Sun, 18 Oct 2009 20:10:40 +0000 (UTC)
Delivered-To: perforce@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id F08CF10656CB
for ; Sun, 18 Oct 2009 20:10:39 +0000 (UTC)
(envelope-from truncs@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id DD49F8FC18
for ; Sun, 18 Oct 2009 20:10:39 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9IKAdhA036634
for ; Sun, 18 Oct 2009 20:10:39 GMT
(envelope-from truncs@FreeBSD.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9IKAddL036632
for perforce@freebsd.org; Sun, 18 Oct 2009 20:10:39 GMT
(envelope-from truncs@FreeBSD.org)
Date: Sun, 18 Oct 2009 20:10:39 GMT
Message-Id: <200910182010.n9IKAddL036632@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
truncs@FreeBSD.org using -f
From: Aditya Sarawgi
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169581 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sun, 18 Oct 2009 20:10:40 -0000
http://p4web.freebsd.org/chv.cgi?CH=169581
Change 169581 by truncs@aditya on 2009/10/18 20:10:10
Reallocation cleanup.
Affected files ...
.. //depot/projects/soc2009/soc_ext2fs/src/sys/fs/ext2fs/ext2_alloc.c#12 edit
Differences ...
==== //depot/projects/soc2009/soc_ext2fs/src/sys/fs/ext2fs/ext2_alloc.c#12 (text+ko) ====
@@ -159,6 +159,8 @@
#ifdef FANCY_REALLOC
#include
static int doasyncfree = 1;
+static int doreallocblks = 1;
+
#ifdef OPT_DEBUG
SYSCTL_INT(_debug, 14, doasyncfree, CTLFLAG_RW, &doasyncfree, 0, "");
#endif /* OPT_DEBUG */
@@ -180,11 +182,11 @@
struct inode *ip;
struct vnode *vp;
struct buf *sbp, *ebp;
+ int32_t *bap, *sbap, *ebap = 0;
struct ext2mount *ump;
struct cluster_save *buflist;
struct indir start_ap[NIADDR + 1], end_ap[NIADDR + 1], *idp;
- int32_t *bap, *sbap, *ebap;
- int32_t start_lbn, end_lbn, soff, eoff, newblk, blkno;
+ int32_t start_lbn, end_lbn, soff, eoff, newblk, blkno =0;
int i, len, start_lvl, end_lvl, pref, ssize;
vp = ap->a_vp;
@@ -212,8 +214,8 @@
if (dtog(fs, dbtofsb(fs, buflist->bs_children[0]->b_blkno)) !=
dtog(fs, dbtofsb(fs, buflist->bs_children[len - 1]->b_blkno)))
return (ENOSPC);
- if (ufs_getlbns(vp, start_lbn, start_ap, &start_lvl) ||
- ufs_getlbns(vp, end_lbn, end_ap, &end_lvl))
+ if (ext2_getlbns(vp, start_lbn, start_ap, &start_lvl) ||
+ ext2_getlbns(vp, end_lbn, end_ap, &end_lvl))
return (ENOSPC);
/*
* Get the starting offset and block map for the first block.
@@ -234,7 +236,7 @@
* Find the preferred location for the cluster.
*/
EXT2_LOCK(ump);
- pref = ext2_blkpref(ip, start_lbn, soff, sbap);
+ pref = ext2_blkpref(ip, start_lbn, soff, sbap, blkno);
/*
* If the block range spans two block maps, get the second map.
*/
@@ -256,7 +258,7 @@
* Search the block map looking for an allocation of the desired size.
*/
if ((newblk = (int32_t)ext2_hashalloc(ip, dtog(fs, pref), (long)pref,
- len, (u_long (*)())ext2_clusteralloc)) == 0){
+ len, ext2_clusteralloc)) == 0){
EXT2_UNLOCK(ump);
goto fail;
}
@@ -271,6 +273,7 @@
for (bap = &sbap[soff], i = 0; i < len; i++, blkno += fs->e2fs_fpb) {
if (i == ssize)
bap = ebap;
+ soff = -i;
#ifdef DIAGNOSTIC
if (buflist->bs_children[i]->b_blkno != fsbtodb(fs, *bap))
panic("ext2_reallocblks: alloc mismatch");
@@ -301,11 +304,12 @@
if (!doasyncfree)
ext2_update(vp, 1);
}
- if (ssize < len)
+ if (ssize < len) {
if (doasyncfree)
bdwrite(ebp);
else
bwrite(ebp);
+ }
/*
* Last, free the old blocks and assign the new blocks to the buffers.
*/
From owner-p4-projects@FreeBSD.ORG Sun Oct 18 20:32:01 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id A5AEA106566C; Sun, 18 Oct 2009 20:32:01 +0000 (UTC)
Delivered-To: perforce@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 518F7106568F
for ; Sun, 18 Oct 2009 20:32:01 +0000 (UTC)
(envelope-from trasz@freebsd.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 3DBFC8FC12
for ; Sun, 18 Oct 2009 20:32:01 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9IKW1sP038139
for ; Sun, 18 Oct 2009 20:32:01 GMT
(envelope-from trasz@freebsd.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9IKW1up038137
for perforce@freebsd.org; Sun, 18 Oct 2009 20:32:01 GMT
(envelope-from trasz@freebsd.org)
Date: Sun, 18 Oct 2009 20:32:01 GMT
Message-Id: <200910182032.n9IKW1up038137@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
trasz@freebsd.org using -f
From: Edward Tomasz Napierala
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169582 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sun, 18 Oct 2009 20:32:01 -0000
http://p4web.freebsd.org/chv.cgi?CH=169582
Change 169582 by trasz@trasz_victim on 2009/10/18 20:31:35
Working container hierarchy.
Affected files ...
.. //depot/projects/soc2009/trasz_limits/sys/kern/init_main.c#17 edit
.. //depot/projects/soc2009/trasz_limits/sys/kern/kern_hrl.c#70 edit
.. //depot/projects/soc2009/trasz_limits/sys/sys/hrl.h#39 edit
Differences ...
==== //depot/projects/soc2009/trasz_limits/sys/kern/init_main.c#17 (text+ko) ====
@@ -477,6 +477,9 @@
#endif
td->td_ucred = crhold(p->p_ucred);
+ /* Let the HRL know about the new process. */
+ hrl_proc_init(p);
+
/* Create sigacts. */
p->p_sigacts = sigacts_alloc();
==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_hrl.c#70 (text+ko) ====
@@ -386,37 +386,6 @@
}
}
-#ifdef DIAGNOSTIC
-/*
- * Go through the resource usage info and verify that it makes sense.
- */
-static void
-hrl_assert_proc(const struct proc *p __unused)
-{
- int resource;
- struct ucred *cred;
- struct prison *pr;
-
- cred = p->p_ucred;
- mtx_assert(&hrl_lock, MA_OWNED);
- for (resource = 0; resource <= HRL_RESOURCE_MAX; resource++)
- KASSERT(p->p_container.hc_resources[resource] >= 0,
- ("resource usage propagation meltdown"));
- KASSERT(cred->cr_ruidinfo->ui_container.hc_resources[resource] >= 0,
- ("resource usage propagation meltdown"));
- KASSERT(cred->cr_ruidinfo->ui_container.hc_resources[resource] >=
- p->p_container.hc_resources[resource],
- ("resource usage propagation meltdown"));
- for (pr = cred->cr_prison; pr != NULL; pr = pr->pr_parent) {
- KASSERT(pr->pr_container.hc_resources[resource] >= 0,
- ("resource usage propagation meltdown"));
- KASSERT(pr->pr_container.hc_resources[resource] >=
- p->p_container.hc_resources[resource],
- ("resource usage propagation meltdown"));
- }
-}
-#endif /* DIAGNOSTIC */
-
static void
hrl_container_add(struct hrl_container *dest, const struct hrl_container *src)
{
@@ -426,12 +395,12 @@
for (i = 0; i <= HRL_RESOURCE_MAX; i++) {
KASSERT(dest->hc_resources[i] >= 0,
- ("resource usage propagation meltdown"));
+ ("resource usage propagation meltdown: dest < 0"));
KASSERT(src->hc_resources[i] >= 0,
- ("resource usage propagation meltdown"));
+ ("resource usage propagation meltdown: src < 0"));
dest->hc_resources[i] += src->hc_resources[i];
KASSERT(dest->hc_resources[i] >= 0,
- ("resource usage propagation meltdown"));
+ ("resource usage propagation meltdown: dest < 0 after addition"));
}
}
@@ -444,63 +413,70 @@
for (i = 0; i <= HRL_RESOURCE_MAX; i++) {
KASSERT(dest->hc_resources[i] >= 0,
- ("resource usage propagation meltdown"));
+ ("resource usage propagation meltdown: dest < 0"));
KASSERT(src->hc_resources[i] >= 0,
- ("resource usage propagation meltdown"));
+ ("resource usage propagation meltdown: src < 0"));
KASSERT(src->hc_resources[i] <= dest->hc_resources[i],
- ("resource usage propagation meltdown"));
+ ("resource usage propagation meltdown: src > dest"));
dest->hc_resources[i] -= src->hc_resources[i];
KASSERT(dest->hc_resources[i] >= 0,
- ("resource usage propagation meltdown"));
+ ("resource usage propagation meltdown: dest < 0 after subtraction"));
}
}
static void
hrl_container_join(struct hrl_container *child, struct hrl_container *parent)
{
- struct hrl_container *container;
+ int i;
mtx_assert(&hrl_lock, MA_OWNED);
KASSERT(child != NULL, ("child != NULL"));
KASSERT(parent != NULL, ("parent != NULL"));
- LIST_FOREACH(container, &child->hc_parents, hc_next)
- KASSERT(container != parent, ("container already joined"));
-
- LIST_INSERT_HEAD(&child->hc_parents, parent, hc_next);
- hrl_container_add(parent, child);
+ for (i = 0; i <= HRL_HC_PARENTS_MAX; i++) {
+ KASSERT(child->hc_parents[i] != parent,
+ ("container already joined"));
+ if (child->hc_parents[i] == NULL) {
+ child->hc_parents[i] = parent;
+ hrl_container_add(parent, child);
+ return;
+ }
+ }
+ panic("container has too many parents");
}
static void
hrl_container_leave(struct hrl_container *child, struct hrl_container *parent)
{
- struct hrl_container *container, *containertmp;
+ int i;
mtx_assert(&hrl_lock, MA_OWNED);
KASSERT(child != NULL, ("child != NULL"));
KASSERT(parent != NULL, ("parent != NULL"));
- hrl_container_subtract(parent, child);
- LIST_FOREACH_SAFE(container, &child->hc_parents, hc_next, containertmp) {
- if (container != parent)
- continue;
- LIST_REMOVE(container, hc_next);
- break;
+ for (i = 0; i <= HRL_HC_PARENTS_MAX; i++) {
+ if (child->hc_parents[i] == parent) {
+ hrl_container_subtract(parent, child);
+ child->hc_parents[i] = NULL;
+ return;
+ }
}
+ panic("container not joined");
}
static void
hrl_container_leave_parents(struct hrl_container *child)
{
- struct hrl_container *parent;
+ int i;
mtx_assert(&hrl_lock, MA_OWNED);
KASSERT(child != NULL, ("child != NULL"));
- while (!LIST_EMPTY(&child->hc_parents)) {
- parent = LIST_FIRST(&child->hc_parents);
- hrl_container_subtract(parent, child);
- LIST_REMOVE(parent, hc_next);
+ for (i = 0; i <= HRL_HC_PARENTS_MAX; i++) {
+ if (child->hc_parents[i] == NULL)
+ continue;
+ hrl_container_subtract(child->hc_parents[i], child);
+ child->hc_parents[i] = NULL;
}
}
@@ -511,9 +487,10 @@
for (i = 0; i <= HRL_RESOURCE_MAX; i++)
KASSERT(container->hc_resources[i] == 0,
- ("container not zeroed"));
-
- LIST_INIT(&container->hc_parents);
+ ("container->hc_resources[%d] != NULL", i));
+ for (i = 0; i <= HRL_HC_PARENTS_MAX; i++)
+ KASSERT(container->hc_parents[i] == NULL,
+ ("container->hc_parents[%d] != NULL", i));
}
void
@@ -535,6 +512,63 @@
mtx_unlock(&hrl_lock);
}
+#ifdef DIAGNOSTIC
+/*
+ * Go through the resource consumption information and make sure it makes sense.
+ */
+static void
+hrl_container_assert(const struct hrl_container *container)
+{
+ int i, resource;
+ struct hrl_container *parent;
+
+ mtx_assert(&hrl_lock, MA_OWNED);
+ KASSERT(container != NULL, ("NULL container"));
+
+ for (resource = 0; resource <= HRL_RESOURCE_MAX; resource++) {
+ KASSERT(container->hc_resources[resource] >= 0,
+ ("resource usage propagation meltdown: resource < 0"));
+ }
+
+ for (i = 0; i <= HRL_HC_PARENTS_MAX; i++) {
+ parent = container->hc_parents[i];
+ if (parent == NULL);
+ continue;
+ hrl_container_assert(parent);
+ for (resource = 0; resource <= HRL_RESOURCE_MAX; resource++) {
+ KASSERT(parent->hc_resources[resource] >=
+ container->hc_resources[resource],
+ ("resource usage propagation meltdown: child > parent"));
+ }
+ }
+}
+#endif /* DIAGNOSTIC */
+
+/*
+ * Increase consumption of 'resource' by 'amount' for 'container'
+ * and all its parents. Differently from other cases, 'amount' here
+ * may be less than zero.
+ */
+static void
+hrl_container_alloc_resource(struct hrl_container *container, int resource,
+ uint64_t amount)
+{
+ int i;
+
+ mtx_assert(&hrl_lock, MA_OWNED);
+ KASSERT(container != NULL, ("NULL container"));
+
+ container->hc_resources[resource] += amount;
+ for (i = 0; i <= HRL_HC_PARENTS_MAX; i++) {
+ if (container->hc_parents[i] == NULL)
+ continue;
+ hrl_container_alloc_resource(container->hc_parents[i], resource, amount);
+ }
+#ifdef DIAGNOSTIC
+ hrl_container_assert(container);
+#endif
+}
+
/*
* Increase allocation of 'resource' by 'amount' for process 'p'.
* Return 0 if it's below limits, or errno, if it's not.
@@ -543,31 +577,21 @@
hrl_alloc(struct proc *p, int resource, uint64_t amount)
{
int error;
- struct ucred *cred;
- struct prison *pr;
- KASSERT(amount > 0, ("hrl_alloc: invalid amount for %s: %ju",
- hrl_resource_name(resource), amount));
-
#if 0
printf("hrl_alloc: allocating %ju of %s for %s (pid %d)\n", amount, hrl_resource_name(resource), p->p_comm, p->p_pid);
#endif
+ KASSERT(amount > 0, ("hrl_alloc: invalid amount for %s: %ju",
+ hrl_resource_name(resource), amount));
+
mtx_lock(&hrl_lock);
error = hrl_enforce_proc(p, resource, amount);
if (error) {
mtx_unlock(&hrl_lock);
return (error);
}
- p->p_container.hc_resources[resource] += amount;
- cred = p->p_ucred;
- cred->cr_ruidinfo->ui_container.hc_resources[resource] += amount;
- for (pr = cred->cr_prison; pr != NULL; pr = pr->pr_parent)
- pr->pr_container.hc_resources[resource] += amount;
- cred->cr_loginclass->lc_container.hc_resources[resource] += amount;
-#ifdef DIAGNOSTIC
- hrl_assert_proc(p);
-#endif
+ hrl_container_alloc_resource(&p->p_container, resource, amount);
mtx_unlock(&hrl_lock);
return (0);
@@ -585,16 +609,14 @@
{
int error;
int64_t diff;
- struct ucred *cred;
- struct prison *pr;
- KASSERT(amount >= 0, ("hrl_allocated: invalid amount for %s: %ju",
- hrl_resource_name(resource), amount));
-
#if 0
printf("hrl_allocated: allocated %lld of %s for %s (pid %d)\n", amount, hrl_resource_name(resource), p->p_comm, p->p_pid);
#endif
+ KASSERT(amount >= 0, ("hrl_allocated: invalid amount for %s: %ju",
+ hrl_resource_name(resource), amount));
+
mtx_lock(&hrl_lock);
diff = amount - p->p_container.hc_resources[resource];
if (diff > 0) {
@@ -604,15 +626,7 @@
return (error);
}
}
- p->p_container.hc_resources[resource] = amount;
- cred = p->p_ucred;
- cred->cr_ruidinfo->ui_container.hc_resources[resource] += diff;
- for (pr = cred->cr_prison; pr != NULL; pr = pr->pr_parent)
- pr->pr_container.hc_resources[resource] += diff;
- cred->cr_loginclass->lc_container.hc_resources[resource] += diff;
-#ifdef DIAGNOSTIC
- hrl_assert_proc(p);
-#endif
+ hrl_container_alloc_resource(&p->p_container, resource, diff);
mtx_unlock(&hrl_lock);
return (0);
@@ -624,30 +638,21 @@
void
hrl_free(struct proc *p, int resource, uint64_t amount)
{
- struct ucred *cred;
- struct prison *pr;
-
- KASSERT(amount > 0, ("hrl_free: invalid amount for %s: %ju",
- hrl_resource_name(resource), amount));
#if 0
printf("hrl_free: freeing %lld of %s for %s (pid %d)\n", amount, hrl_resource_name(resource), p->p_comm, p->p_pid);
#endif
+ KASSERT(amount > 0, ("hrl_free: invalid amount for %s: %ju",
+ hrl_resource_name(resource), amount));
+
mtx_lock(&hrl_lock);
KASSERT(amount <= p->p_container.hc_resources[resource],
("hrl_free: freeing %ju of %s, which is more than allocated "
"%ld for %s (pid %d)", amount, hrl_resource_name(resource),
p->p_container.hc_resources[resource], p->p_comm, p->p_pid));
- p->p_container.hc_resources[resource] -= amount;
- cred = p->p_ucred;
- cred->cr_ruidinfo->ui_container.hc_resources[resource] -= amount;
- for (pr = cred->cr_prison; pr != NULL; pr = pr->pr_parent)
- pr->pr_container.hc_resources[resource] -= amount;
- cred->cr_loginclass->lc_container.hc_resources[resource] -= amount;
-#ifdef DIAGNOSTIC
- hrl_assert_proc(p);
-#endif
+
+ hrl_container_alloc_resource(&p->p_container, resource, -amount);
mtx_unlock(&hrl_lock);
}
@@ -1380,7 +1385,7 @@
struct sbuf *sb;
sb = sbuf_new_auto();
- for (i = 1; i <= HRL_RESOURCE_MAX; i++) {
+ for (i = 0; i <= HRL_RESOURCE_MAX; i++) {
sbuf_printf(sb, "%s=%jd,", hrl_resource_name(i),
container->hc_resources[i]);
}
@@ -1697,6 +1702,24 @@
}
/*
+ * Called from kern/init_main.c, for proc0 and initproc.
+ */
+void
+hrl_proc_init(struct proc *p)
+{
+ struct ucred *cred = p->p_ucred;
+
+ mtx_lock(&hrl_lock);
+
+ hrl_container_create(&p->p_container);
+ hrl_container_join(&p->p_container, &cred->cr_ruidinfo->ui_container);
+ hrl_container_join(&p->p_container, &cred->cr_loginclass->lc_container);
+ hrl_container_join(&p->p_container, &cred->cr_prison->pr_container);
+
+ mtx_unlock(&hrl_lock);
+}
+
+/*
* Called before credentials change, to adjust HRL data structures
* assigned to the process.
*/
@@ -1794,11 +1817,24 @@
int error, i;
struct hrl_limit *limit;
struct hrl_rule *rule;
+ struct hrl_container *container;
PROC_LOCK(parent);
PROC_LOCK(child);
mtx_lock(&hrl_lock);
+ /*
+ * Create container for the child process and inherit containing
+ * containers from the parent.
+ */
+ hrl_container_create(&child->p_container);
+ for (i = 0; i <= HRL_HC_PARENTS_MAX; i++) {
+ container = parent->p_container.hc_parents[i];
+ if (container == NULL)
+ continue;
+ hrl_container_join(&child->p_container, container);
+ }
+
for (i = 0; i <= HRL_RESOURCE_MAX; i++) {
if (parent->p_container.hc_resources[i] != 0 &&
hrl_resource_inheritable(i))
@@ -1806,6 +1842,11 @@
parent->p_container.hc_resources[i]);
}
+ /*
+ * Go through limits applicable to the parent and assign them to the child.
+ * Rules with 'process' subject have to be duplicated in order to make their
+ * hr_subject point to the new process.
+ */
LIST_FOREACH(limit, &parent->p_limits, hl_next) {
if (limit->hl_rule->hr_subject_type == HRL_SUBJECT_TYPE_PROCESS) {
rule = hrl_rule_duplicate(limit->hl_rule, M_NOWAIT);
@@ -1830,8 +1871,6 @@
void
hrl_proc_exiting(struct proc *p)
{
- int i;
-
/*
* XXX: Free these three some other way.
*/
@@ -1840,10 +1879,7 @@
hrl_allocated(p, HRL_RESOURCE_PTY, 0);
mtx_lock(&hrl_lock);
- for (i = 0; i <= HRL_RESOURCE_MAX; i++) {
- KASSERT(p->p_container.hc_resources[i] == 0,
- ("dead process still holding resources"));
- }
+ hrl_container_destroy(&p->p_container);
mtx_unlock(&hrl_lock);
}
==== //depot/projects/soc2009/trasz_limits/sys/sys/hrl.h#39 (text+ko) ====
@@ -123,6 +123,8 @@
#define HRL_AMOUNT_UNDEFINED -1
+#define HRL_HC_PARENTS_MAX 32
+
/*
* 'hrl_container' defines resource consumption for a particular
* subject, such as process or jail. Containers form a graph - each
@@ -139,9 +141,8 @@
* is HRL_SUBJECT_TYPE_USER.
*/
struct hrl_container {
- LIST_ENTRY(hrl_container) hc_next;
int64_t hc_resources[HRL_RESOURCE_MAX + 1];
- LIST_HEAD(, hrl_container) hc_parents;
+ struct hrl_container *hc_parents[HRL_HC_PARENTS_MAX + 1];
};
/*
@@ -164,6 +165,7 @@
void hrl_proc_exiting(struct proc *p);
+void hrl_proc_init(struct proc *p);
void hrl_proc_ucred_changing(struct proc *p, struct ucred *newcred);
struct hrl_rule *hrl_rule_alloc(int flags);
From owner-p4-projects@FreeBSD.ORG Sun Oct 18 20:46:17 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 7FB471065747; Sun, 18 Oct 2009 20:46:17 +0000 (UTC)
Delivered-To: perforce@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 415441065672
for ; Sun, 18 Oct 2009 20:46:17 +0000 (UTC)
(envelope-from lulf@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 2CE438FC13
for ; Sun, 18 Oct 2009 20:46:17 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9IKkHvg038988
for ; Sun, 18 Oct 2009 20:46:17 GMT
(envelope-from lulf@FreeBSD.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9IKkFmw038982
for perforce@freebsd.org; Sun, 18 Oct 2009 20:46:15 GMT
(envelope-from lulf@FreeBSD.org)
Date: Sun, 18 Oct 2009 20:46:15 GMT
Message-Id: <200910182046.n9IKkFmw038982@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
lulf@FreeBSD.org using -f
From: Ulf Lilleengen
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169583 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sun, 18 Oct 2009 20:46:18 -0000
http://p4web.freebsd.org/chv.cgi?CH=169583
Change 169583 by lulf@lulf_nobby on 2009/10/18 20:45:19
IFC
Affected files ...
.. //depot/projects/avr32/src/Makefile.inc1#10 integrate
.. //depot/projects/avr32/src/ObsoleteFiles.inc#12 integrate
.. //depot/projects/avr32/src/bin/cat/Makefile#3 integrate
.. //depot/projects/avr32/src/bin/csh/iconv_stub.c#2 integrate
.. //depot/projects/avr32/src/bin/ls/ls.c#2 integrate
.. //depot/projects/avr32/src/bin/sh/eval.c#6 integrate
.. //depot/projects/avr32/src/bin/sh/exec.c#5 integrate
.. //depot/projects/avr32/src/bin/sh/parser.c#5 integrate
.. //depot/projects/avr32/src/bin/sh/sh.1#5 integrate
.. //depot/projects/avr32/src/bin/uuidgen/Makefile#2 integrate
.. //depot/projects/avr32/src/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c#2 integrate
.. //depot/projects/avr32/src/contrib/openpam/doc/man/pam.conf.5#2 integrate
.. //depot/projects/avr32/src/contrib/tcpdump/print-tcp.c#3 integrate
.. //depot/projects/avr32/src/contrib/tcpdump/tcp.h#3 integrate
.. //depot/projects/avr32/src/contrib/tcsh/sh.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/ChangeLog#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/README#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/README.platform#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/auth-pam.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/auth-passwd.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/auth-sia.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/auth1.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/auth2-jpake.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/auth2-kbdint.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/auth2-none.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/auth2-passwd.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/auth2-pubkey.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/auth2.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/canohost.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/canohost.h#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/channels.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/clientloop.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/config.h#4 integrate
.. //depot/projects/avr32/src/crypto/openssh/config.h.in#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/defines.h#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/gss-genr.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/includes.h#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/jpake.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/jpake.h#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/kex.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/kex.h#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/kexdhs.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/kexgexs.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/monitor.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/monitor_mm.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/monitor_wrap.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/monitor_wrap.h#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/openbsd-compat/bsd-cygwin_util.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/openbsd-compat/bsd-cygwin_util.h#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/openbsd-compat/daemon.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/openbsd-compat/getrrsetbyname.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/openbsd-compat/openssl-compat.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/openbsd-compat/openssl-compat.h#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/openbsd-compat/port-aix.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/openbsd-compat/port-aix.h#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/packet.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/packet.h#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/readconf.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/readconf.h#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/roaming.h#1 branch
.. //depot/projects/avr32/src/crypto/openssh/roaming_common.c#1 branch
.. //depot/projects/avr32/src/crypto/openssh/roaming_dummy.c#1 branch
.. //depot/projects/avr32/src/crypto/openssh/schnorr.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/schnorr.h#1 branch
.. //depot/projects/avr32/src/crypto/openssh/servconf.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/serverloop.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/session.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/sftp-client.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/sftp-server.8#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/sftp-server.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/ssh-agent.1#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/ssh-agent.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/ssh-keygen.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/ssh.1#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/ssh.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/ssh_config#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/ssh_config.5#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/ssh_namespace.h#4 integrate
.. //depot/projects/avr32/src/crypto/openssh/sshconnect.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/sshconnect.h#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/sshconnect2.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/sshd.8#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/sshd.c#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/sshd_config#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/sshd_config.5#3 integrate
.. //depot/projects/avr32/src/crypto/openssh/sshlogin.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/uuencode.c#2 integrate
.. //depot/projects/avr32/src/crypto/openssh/version.h#3 integrate
.. //depot/projects/avr32/src/etc/defaults/rc.conf#7 integrate
.. //depot/projects/avr32/src/etc/mtree/BSD.usr.dist#4 integrate
.. //depot/projects/avr32/src/etc/network.subr#7 integrate
.. //depot/projects/avr32/src/etc/pam.d/ftpd#2 integrate
.. //depot/projects/avr32/src/etc/pam.d/kde#2 integrate
.. //depot/projects/avr32/src/etc/pam.d/other#2 integrate
.. //depot/projects/avr32/src/etc/pam.d/sshd#2 integrate
.. //depot/projects/avr32/src/etc/pam.d/system#2 integrate
.. //depot/projects/avr32/src/etc/pam.d/telnetd#2 integrate
.. //depot/projects/avr32/src/etc/pam.d/xdm#2 integrate
.. //depot/projects/avr32/src/etc/periodic/daily/400.status-disks#2 integrate
.. //depot/projects/avr32/src/etc/periodic/security/200.chkmounts#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/bgfsck#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/cleartmp#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/defaultroute#4 integrate
.. //depot/projects/avr32/src/etc/rc.d/faith#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/fsck#3 integrate
.. //depot/projects/avr32/src/etc/rc.d/hostid#3 integrate
.. //depot/projects/avr32/src/etc/rc.d/hostname#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/ip6addrctl#3 integrate
.. //depot/projects/avr32/src/etc/rc.d/ldconfig#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/motd#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/mountcritlocal#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/moused#3 integrate
.. //depot/projects/avr32/src/etc/rc.d/netif#5 integrate
.. //depot/projects/avr32/src/etc/rc.d/netoptions#3 integrate
.. //depot/projects/avr32/src/etc/rc.d/newsyslog#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/nfsclient#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/pf#4 integrate
.. //depot/projects/avr32/src/etc/rc.d/routing#3 integrate
.. //depot/projects/avr32/src/etc/rc.d/savecore#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/static_arp#2 integrate
.. //depot/projects/avr32/src/etc/rc.d/stf#2 integrate
.. //depot/projects/avr32/src/etc/rc.subr#4 integrate
.. //depot/projects/avr32/src/etc/services#2 integrate
.. //depot/projects/avr32/src/games/fortune/datfiles/fortunes#5 integrate
.. //depot/projects/avr32/src/games/fortune/datfiles/fortunes.sp.ok#2 integrate
.. //depot/projects/avr32/src/games/number/Makefile#2 integrate
.. //depot/projects/avr32/src/games/number/number.c#2 integrate
.. //depot/projects/avr32/src/include/langinfo.h#2 integrate
.. //depot/projects/avr32/src/include/libgen.h#2 integrate
.. //depot/projects/avr32/src/kerberos5/lib/libgssapi_krb5/Makefile#2 integrate
.. //depot/projects/avr32/src/kerberos5/lib/libgssapi_spnego/Makefile#2 integrate
.. //depot/projects/avr32/src/lib/libc/gen/Makefile.inc#7 integrate
.. //depot/projects/avr32/src/lib/libc/gen/Symbol.map#7 integrate
.. //depot/projects/avr32/src/lib/libc/gen/_pthread_stubs.c#2 integrate
.. //depot/projects/avr32/src/lib/libc/gen/basename.3#2 integrate
.. //depot/projects/avr32/src/lib/libc/gen/basename.c#2 integrate
.. //depot/projects/avr32/src/lib/libc/gen/errlst.c#2 integrate
.. //depot/projects/avr32/src/lib/libc/gen/fts.3#2 integrate
.. //depot/projects/avr32/src/lib/libc/gen/fts.c#3 integrate
.. //depot/projects/avr32/src/lib/libc/gen/getcwd.c#2 integrate
.. //depot/projects/avr32/src/lib/libc/include/namespace.h#2 integrate
.. //depot/projects/avr32/src/lib/libc/include/un-namespace.h#2 integrate
.. //depot/projects/avr32/src/lib/libc/locale/nl_langinfo.c#2 integrate
.. //depot/projects/avr32/src/lib/libc/nls/C.msg#2 integrate
.. //depot/projects/avr32/src/lib/libc/stdio/getdelim.c#3 integrate
.. //depot/projects/avr32/src/lib/libc/sys/Symbol.map#7 integrate
.. //depot/projects/avr32/src/lib/libc/sys/fcntl.2#2 integrate
.. //depot/projects/avr32/src/lib/libc/sys/intro.2#3 integrate
.. //depot/projects/avr32/src/lib/libc/sys/nanosleep.2#2 integrate
.. //depot/projects/avr32/src/lib/libpam/modules/pam_ssh/Makefile#2 integrate
.. //depot/projects/avr32/src/lib/libpmc/Makefile#2 integrate
.. //depot/projects/avr32/src/lib/libradius/radlib.c#3 integrate
.. //depot/projects/avr32/src/lib/libthr/pthread.map#2 integrate
.. //depot/projects/avr32/src/lib/libthr/thread/thr_private.h#2 integrate
.. //depot/projects/avr32/src/lib/libthr/thread/thr_syscalls.c#3 integrate
.. //depot/projects/avr32/src/libexec/rtld-elf/map_object.c#5 integrate
.. //depot/projects/avr32/src/libexec/rtld-elf/rtld.c#7 integrate
.. //depot/projects/avr32/src/release/doc/README#2 integrate
.. //depot/projects/avr32/src/release/doc/en_US.ISO8859-1/errata/article.sgml#2 integrate
.. //depot/projects/avr32/src/release/doc/share/misc/man2hwnotes.pl#2 integrate
.. //depot/projects/avr32/src/release/doc/share/mk/doc.relnotes.mk#2 integrate
.. //depot/projects/avr32/src/release/doc/share/sgml/release.dsl#2 integrate
.. //depot/projects/avr32/src/release/doc/share/sgml/release.ent#2 integrate
.. //depot/projects/avr32/src/sbin/camcontrol/camcontrol.c#4 integrate
.. //depot/projects/avr32/src/sbin/growfs/growfs.c#2 integrate
.. //depot/projects/avr32/src/sbin/ifconfig/af_nd6.c#2 integrate
.. //depot/projects/avr32/src/sbin/ifconfig/ifieee80211.c#7 integrate
.. //depot/projects/avr32/src/sbin/shutdown/shutdown.c#2 integrate
.. //depot/projects/avr32/src/secure/libexec/sftp-server/Makefile#2 integrate
.. //depot/projects/avr32/src/secure/libexec/ssh-keysign/Makefile#2 integrate
.. //depot/projects/avr32/src/secure/usr.bin/scp/Makefile#2 integrate
.. //depot/projects/avr32/src/secure/usr.bin/sftp/Makefile#2 integrate
.. //depot/projects/avr32/src/secure/usr.bin/ssh-add/Makefile#2 integrate
.. //depot/projects/avr32/src/secure/usr.bin/ssh-agent/Makefile#2 integrate
.. //depot/projects/avr32/src/secure/usr.bin/ssh-keygen/Makefile#2 integrate
.. //depot/projects/avr32/src/secure/usr.bin/ssh-keyscan/Makefile#2 integrate
.. //depot/projects/avr32/src/secure/usr.bin/ssh/Makefile#2 integrate
.. //depot/projects/avr32/src/secure/usr.sbin/sshd/Makefile#3 integrate
.. //depot/projects/avr32/src/share/man/man4/bce.4#3 integrate
.. //depot/projects/avr32/src/share/man/man4/bge.4#3 integrate
.. //depot/projects/avr32/src/share/man/man4/de.4#2 integrate
.. //depot/projects/avr32/src/share/man/man4/lindev.4#2 integrate
.. //depot/projects/avr32/src/share/man/man4/msk.4#4 integrate
.. //depot/projects/avr32/src/share/man/man4/sbp_targ.4#2 integrate
.. //depot/projects/avr32/src/share/man/man4/targ.4#2 integrate
.. //depot/projects/avr32/src/share/man/man4/unix.4#2 integrate
.. //depot/projects/avr32/src/share/man/man4/urtw.4#4 integrate
.. //depot/projects/avr32/src/share/man/man4/zyd.4#2 integrate
.. //depot/projects/avr32/src/share/man/man5/rc.conf.5#7 integrate
.. //depot/projects/avr32/src/share/man/man7/tuning.7#5 integrate
.. //depot/projects/avr32/src/share/man/man9/BUS_BIND_INTR.9#1 branch
.. //depot/projects/avr32/src/share/man/man9/BUS_DESCRIBE_INTR.9#1 branch
.. //depot/projects/avr32/src/share/man/man9/Makefile#11 integrate
.. //depot/projects/avr32/src/share/man/man9/fetch.9#2 integrate
.. //depot/projects/avr32/src/share/man/man9/store.9#2 integrate
.. //depot/projects/avr32/src/share/misc/committers-src.dot#7 integrate
.. //depot/projects/avr32/src/share/zoneinfo/asia#9 integrate
.. //depot/projects/avr32/src/share/zoneinfo/southamerica#4 integrate
.. //depot/projects/avr32/src/sys/amd64/acpica/acpi_machdep.c#5 integrate
.. //depot/projects/avr32/src/sys/amd64/acpica/acpi_wakecode.S#3 integrate
.. //depot/projects/avr32/src/sys/amd64/acpica/acpi_wakeup.c#5 integrate
.. //depot/projects/avr32/src/sys/amd64/amd64/elf_machdep.c#5 integrate
.. //depot/projects/avr32/src/sys/amd64/amd64/initcpu.c#4 integrate
.. //depot/projects/avr32/src/sys/amd64/amd64/intr_machdep.c#4 integrate
.. //depot/projects/avr32/src/sys/amd64/amd64/nexus.c#2 integrate
.. //depot/projects/avr32/src/sys/amd64/amd64/pmap.c#9 integrate
.. //depot/projects/avr32/src/sys/amd64/conf/GENERIC#8 integrate
.. //depot/projects/avr32/src/sys/amd64/include/atomic.h#2 integrate
.. //depot/projects/avr32/src/sys/amd64/include/cpufunc.h#5 integrate
.. //depot/projects/avr32/src/sys/amd64/include/elf.h#3 integrate
.. //depot/projects/avr32/src/sys/amd64/include/intr_machdep.h#5 integrate
.. //depot/projects/avr32/src/sys/arm/arm/cpufunc.c#4 integrate
.. //depot/projects/avr32/src/sys/arm/arm/elf_machdep.c#5 integrate
.. //depot/projects/avr32/src/sys/arm/arm/pmap.c#7 integrate
.. //depot/projects/avr32/src/sys/arm/conf/HL200#5 integrate
.. //depot/projects/avr32/src/sys/arm/conf/KB920X#5 integrate
.. //depot/projects/avr32/src/sys/arm/include/elf.h#3 integrate
.. //depot/projects/avr32/src/sys/arm/xscale/i80321/i80321_timer.c#2 integrate
.. //depot/projects/avr32/src/sys/arm/xscale/xscalereg.h#2 delete
.. //depot/projects/avr32/src/sys/arm/xscale/xscalevar.h#2 delete
.. //depot/projects/avr32/src/sys/avr32/avr32/machdep.c#14 edit
.. //depot/projects/avr32/src/sys/avr32/include/elf.h#3 edit
.. //depot/projects/avr32/src/sys/boot/i386/zfsboot/zfsboot.c#3 integrate
.. //depot/projects/avr32/src/sys/bsm/audit_kevents.h#5 integrate
.. //depot/projects/avr32/src/sys/cam/ata/ata_da.c#3 integrate
.. //depot/projects/avr32/src/sys/cddl/compat/opensolaris/kern/opensolaris_policy.c#3 integrate
.. //depot/projects/avr32/src/sys/cddl/compat/opensolaris/sys/policy.h#2 integrate
.. //depot/projects/avr32/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c#6 integrate
.. //depot/projects/avr32/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c#3 integrate
.. //depot/projects/avr32/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#9 integrate
.. //depot/projects/avr32/src/sys/compat/freebsd32/freebsd32_proto.h#8 integrate
.. //depot/projects/avr32/src/sys/compat/freebsd32/freebsd32_syscall.h#7 integrate
.. //depot/projects/avr32/src/sys/compat/freebsd32/freebsd32_syscalls.c#7 integrate
.. //depot/projects/avr32/src/sys/compat/freebsd32/freebsd32_sysent.c#7 integrate
.. //depot/projects/avr32/src/sys/compat/freebsd32/syscalls.master#7 integrate
.. //depot/projects/avr32/src/sys/compat/ia32/ia32_sysvec.c#5 integrate
.. //depot/projects/avr32/src/sys/compat/x86bios/x86bios.c#2 integrate
.. //depot/projects/avr32/src/sys/compat/x86bios/x86bios.h#2 integrate
.. //depot/projects/avr32/src/sys/conf/files#16 integrate
.. //depot/projects/avr32/src/sys/conf/files.amd64#9 integrate
.. //depot/projects/avr32/src/sys/conf/files.i386#10 integrate
.. //depot/projects/avr32/src/sys/ddb/db_ps.c#2 integrate
.. //depot/projects/avr32/src/sys/dev/acpica/acpi_acad.c#3 integrate
.. //depot/projects/avr32/src/sys/dev/acpica/acpi_video.c#4 integrate
.. //depot/projects/avr32/src/sys/dev/ae/if_ae.c#5 integrate
.. //depot/projects/avr32/src/sys/dev/age/if_age.c#5 integrate
.. //depot/projects/avr32/src/sys/dev/agp/agp_i810.c#4 integrate
.. //depot/projects/avr32/src/sys/dev/ahci/ahci.c#3 integrate
.. //depot/projects/avr32/src/sys/dev/alc/if_alc.c#5 integrate
.. //depot/projects/avr32/src/sys/dev/ale/if_ale.c#4 integrate
.. //depot/projects/avr32/src/sys/dev/ata/chipsets/ata-ati.c#4 integrate
.. //depot/projects/avr32/src/sys/dev/ath/ath_hal/ah_eeprom_v4k.c#1 branch
.. //depot/projects/avr32/src/sys/dev/ath/ath_hal/ah_eeprom_v4k.h#1 branch
.. //depot/projects/avr32/src/sys/dev/bge/if_bge.c#9 integrate
.. //depot/projects/avr32/src/sys/dev/bge/if_bgereg.h#3 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/common/cxgb_ael1002.c#4 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/common/cxgb_aq100x.c#1 branch
.. //depot/projects/avr32/src/sys/dev/cxgb/common/cxgb_common.h#4 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/common/cxgb_mv88e1xxx.c#2 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/common/cxgb_regs.h#2 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/common/cxgb_t3_hw.c#4 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/common/cxgb_tn1010.c#2 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/common/cxgb_vsc8211.c#2 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/common/cxgb_xgmac.c#3 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/cxgb_adapter.h#6 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/cxgb_main.c#7 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/cxgb_osdep.h#3 integrate
.. //depot/projects/avr32/src/sys/dev/cxgb/cxgb_t3fw.h#3 integrate
.. //depot/projects/avr32/src/sys/dev/drm/drm_pciids.h#6 integrate
.. //depot/projects/avr32/src/sys/dev/drm/i915_drv.h#6 integrate
.. //depot/projects/avr32/src/sys/dev/drm/r600_blit.c#2 integrate
.. //depot/projects/avr32/src/sys/dev/drm/radeon_cs.c#2 integrate
.. //depot/projects/avr32/src/sys/dev/drm/radeon_drv.h#6 integrate
.. //depot/projects/avr32/src/sys/dev/drm/radeon_irq.c#5 integrate
.. //depot/projects/avr32/src/sys/dev/drm/radeon_state.c#4 integrate
.. //depot/projects/avr32/src/sys/dev/fdc/fdc.c#3 integrate
.. //depot/projects/avr32/src/sys/dev/fxp/if_fxp.c#9 integrate
.. //depot/projects/avr32/src/sys/dev/hwpmc/hwpmc_mod.c#3 integrate
.. //depot/projects/avr32/src/sys/dev/if_ndis/if_ndis.c#12 integrate
.. //depot/projects/avr32/src/sys/dev/jme/if_jme.c#3 integrate
.. //depot/projects/avr32/src/sys/dev/mii/e1000phy.c#5 integrate
.. //depot/projects/avr32/src/sys/dev/mii/e1000phyreg.h#4 integrate
.. //depot/projects/avr32/src/sys/dev/msk/if_msk.c#7 integrate
.. //depot/projects/avr32/src/sys/dev/msk/if_mskreg.h#4 integrate
.. //depot/projects/avr32/src/sys/dev/mxge/if_mxge.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/mxge/if_mxge_var.h#7 integrate
.. //depot/projects/avr32/src/sys/dev/pci/pci.c#11 integrate
.. //depot/projects/avr32/src/sys/dev/ppbus/lpt.c#3 integrate
.. //depot/projects/avr32/src/sys/dev/siis/siis.c#3 integrate
.. //depot/projects/avr32/src/sys/dev/sound/pci/hda/hda_reg.h#2 integrate
.. //depot/projects/avr32/src/sys/dev/sound/pci/hda/hdac.c#10 integrate
.. //depot/projects/avr32/src/sys/dev/uart/uart_bus.h#2 integrate
.. //depot/projects/avr32/src/sys/dev/uart/uart_core.c#2 integrate
.. //depot/projects/avr32/src/sys/dev/uart/uart_tty.c#3 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/atmegadci.c#10 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/ehci.c#10 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/ehci.h#7 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/ehci_ixp4xx.c#6 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/ehci_mbus.c#6 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/ehci_pci.c#7 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/ehcireg.h#1 branch
.. //depot/projects/avr32/src/sys/dev/usb/controller/ohci.c#10 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/ohci.h#7 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/ohci_atmelarm.c#6 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/ohci_pci.c#7 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/ohcireg.h#1 branch
.. //depot/projects/avr32/src/sys/dev/usb/controller/uhci.c#10 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/uhci.h#7 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/uhci_pci.c#7 integrate
.. //depot/projects/avr32/src/sys/dev/usb/controller/uhcireg.h#1 branch
.. //depot/projects/avr32/src/sys/dev/usb/controller/usb_controller.c#11 integrate
.. //depot/projects/avr32/src/sys/dev/usb/input/ukbd.c#10 integrate
.. //depot/projects/avr32/src/sys/dev/usb/net/if_axe.c#9 integrate
.. //depot/projects/avr32/src/sys/dev/usb/net/if_cdce.c#10 integrate
.. //depot/projects/avr32/src/sys/dev/usb/net/if_cdcereg.h#4 integrate
.. //depot/projects/avr32/src/sys/dev/usb/quirk/usb_quirk.c#5 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/u3g.c#10 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/uark.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/ubsa.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/ubser.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/uch341.c#1 branch
.. //depot/projects/avr32/src/sys/dev/usb/serial/uchcom.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/ucycom.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/ufoma.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/uftdi.c#9 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/ugensa.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/uipaq.c#9 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/umct.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/umodem.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/umoscom.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/uplcom.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/usb_serial.c#7 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/usb_serial.h#5 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/uslcom.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/serial/uvscom.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/storage/umass.c#9 integrate
.. //depot/projects/avr32/src/sys/dev/usb/usb.h#7 integrate
.. //depot/projects/avr32/src/sys/dev/usb/usb_bus.h#9 integrate
.. //depot/projects/avr32/src/sys/dev/usb/usb_cdc.h#3 integrate
.. //depot/projects/avr32/src/sys/dev/usb/usb_device.c#12 integrate
.. //depot/projects/avr32/src/sys/dev/usb/usb_device.h#11 integrate
.. //depot/projects/avr32/src/sys/dev/usb/usb_hub.c#11 integrate
.. //depot/projects/avr32/src/sys/dev/usb/usb_transfer.c#11 integrate
.. //depot/projects/avr32/src/sys/dev/usb/usbdevs#10 integrate
.. //depot/projects/avr32/src/sys/dev/usb/wlan/if_rum.c#11 integrate
.. //depot/projects/avr32/src/sys/dev/usb/wlan/if_uath.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/wlan/if_upgt.c#8 integrate
.. //depot/projects/avr32/src/sys/dev/usb/wlan/if_ural.c#10 integrate
.. //depot/projects/avr32/src/sys/dev/usb/wlan/if_urtw.c#6 integrate
.. //depot/projects/avr32/src/sys/dev/usb/wlan/if_urtwreg.h#2 integrate
.. //depot/projects/avr32/src/sys/dev/usb/wlan/if_urtwvar.h#3 integrate
.. //depot/projects/avr32/src/sys/dev/usb/wlan/if_zyd.c#11 integrate
.. //depot/projects/avr32/src/sys/fs/fifofs/fifo_vnops.c#7 integrate
.. //depot/projects/avr32/src/sys/fs/nfs/nfs_commonacl.c#4 integrate
.. //depot/projects/avr32/src/sys/fs/tmpfs/tmpfs.h#4 integrate
.. //depot/projects/avr32/src/sys/fs/tmpfs/tmpfs_subr.c#5 integrate
.. //depot/projects/avr32/src/sys/fs/tmpfs/tmpfs_vnops.c#6 integrate
.. //depot/projects/avr32/src/sys/geom/concat/g_concat.c#3 integrate
.. //depot/projects/avr32/src/sys/geom/label/g_label.c#4 integrate
.. //depot/projects/avr32/src/sys/geom/part/g_part.c#8 integrate
.. //depot/projects/avr32/src/sys/geom/part/g_part_ebr.c#5 integrate
.. //depot/projects/avr32/src/sys/geom/part/g_part_gpt.c#5 integrate
.. //depot/projects/avr32/src/sys/geom/shsec/g_shsec.c#2 integrate
.. //depot/projects/avr32/src/sys/geom/stripe/g_stripe.c#3 integrate
.. //depot/projects/avr32/src/sys/geom/uzip/g_uzip.c#2 integrate
.. //depot/projects/avr32/src/sys/geom/vinum/geom_vinum_create.c#3 integrate
.. //depot/projects/avr32/src/sys/geom/vinum/geom_vinum_events.c#3 integrate
.. //depot/projects/avr32/src/sys/geom/vinum/geom_vinum_init.c#3 integrate
.. //depot/projects/avr32/src/sys/geom/vinum/geom_vinum_move.c#3 integrate
.. //depot/projects/avr32/src/sys/geom/vinum/geom_vinum_rm.c#4 integrate
.. //depot/projects/avr32/src/sys/geom/vinum/geom_vinum_subr.c#4 integrate
.. //depot/projects/avr32/src/sys/i386/conf/GENERIC#7 integrate
.. //depot/projects/avr32/src/sys/i386/i386/elf_machdep.c#6 integrate
.. //depot/projects/avr32/src/sys/i386/i386/initcpu.c#3 integrate
.. //depot/projects/avr32/src/sys/i386/i386/intr_machdep.c#4 integrate
.. //depot/projects/avr32/src/sys/i386/i386/nexus.c#2 integrate
.. //depot/projects/avr32/src/sys/i386/i386/vm_machdep.c#5 integrate
.. //depot/projects/avr32/src/sys/i386/include/atomic.h#2 integrate
.. //depot/projects/avr32/src/sys/i386/include/cpufunc.h#6 integrate
.. //depot/projects/avr32/src/sys/i386/include/elf.h#3 integrate
.. //depot/projects/avr32/src/sys/i386/include/intr_machdep.h#5 integrate
.. //depot/projects/avr32/src/sys/i386/xen/xen_machdep.c#4 integrate
.. //depot/projects/avr32/src/sys/ia64/ia64/elf_machdep.c#6 integrate
.. //depot/projects/avr32/src/sys/ia64/include/elf.h#3 integrate
.. //depot/projects/avr32/src/sys/kern/bus_if.m#3 integrate
.. //depot/projects/avr32/src/sys/kern/imgact_elf.c#6 integrate
.. //depot/projects/avr32/src/sys/kern/init_main.c#6 integrate
.. //depot/projects/avr32/src/sys/kern/init_sysent.c#6 integrate
.. //depot/projects/avr32/src/sys/kern/kern_descrip.c#7 integrate
.. //depot/projects/avr32/src/sys/kern/kern_event.c#5 integrate
.. //depot/projects/avr32/src/sys/kern/kern_exec.c#8 integrate
.. //depot/projects/avr32/src/sys/kern/kern_exit.c#9 integrate
.. //depot/projects/avr32/src/sys/kern/kern_intr.c#5 integrate
.. //depot/projects/avr32/src/sys/kern/kern_lock.c#9 integrate
.. //depot/projects/avr32/src/sys/kern/kern_proc.c#7 integrate
.. //depot/projects/avr32/src/sys/kern/kern_rwlock.c#8 integrate
.. //depot/projects/avr32/src/sys/kern/kern_sig.c#7 integrate
.. //depot/projects/avr32/src/sys/kern/kern_sx.c#8 integrate
.. //depot/projects/avr32/src/sys/kern/kern_thr.c#5 integrate
.. //depot/projects/avr32/src/sys/kern/sched_ule.c#7 integrate
.. //depot/projects/avr32/src/sys/kern/subr_acl_posix1e.c#3 integrate
.. //depot/projects/avr32/src/sys/kern/subr_bus.c#8 integrate
.. //depot/projects/avr32/src/sys/kern/subr_trap.c#4 integrate
.. //depot/projects/avr32/src/sys/kern/syscalls.c#6 integrate
.. //depot/projects/avr32/src/sys/kern/syscalls.master#6 integrate
.. //depot/projects/avr32/src/sys/kern/tty_ttydisc.c#6 integrate
.. //depot/projects/avr32/src/sys/kern/uipc_socket.c#8 integrate
.. //depot/projects/avr32/src/sys/kern/uipc_syscalls.c#8 integrate
.. //depot/projects/avr32/src/sys/kern/uipc_usrreq.c#8 integrate
.. //depot/projects/avr32/src/sys/kern/vfs_acl.c#6 integrate
.. //depot/projects/avr32/src/sys/kern/vfs_default.c#8 integrate
.. //depot/projects/avr32/src/sys/kern/vfs_export.c#5 integrate
.. //depot/projects/avr32/src/sys/kern/vfs_subr.c#10 integrate
.. //depot/projects/avr32/src/sys/kern/vfs_vnops.c#10 integrate
.. //depot/projects/avr32/src/sys/mips/include/elf.h#3 integrate
.. //depot/projects/avr32/src/sys/mips/mips/elf64_machdep.c#4 integrate
.. //depot/projects/avr32/src/sys/mips/mips/elf_machdep.c#5 integrate
.. //depot/projects/avr32/src/sys/modules/acpi/acpi/Makefile#5 integrate
.. //depot/projects/avr32/src/sys/modules/cxgb/cxgb/Makefile#3 integrate
.. //depot/projects/avr32/src/sys/modules/nfsclient/Makefile#6 integrate
.. //depot/projects/avr32/src/sys/modules/nfslockd/Makefile#3 integrate
.. //depot/projects/avr32/src/sys/modules/pf/Makefile#3 integrate
.. //depot/projects/avr32/src/sys/modules/ubser/Makefile#2 integrate
.. //depot/projects/avr32/src/sys/modules/usb/uch341/Makefile#1 branch
.. //depot/projects/avr32/src/sys/net/flowtable.c#7 integrate
.. //depot/projects/avr32/src/sys/net/flowtable.h#5 integrate
.. //depot/projects/avr32/src/sys/net/if_bridge.c#9 integrate
.. //depot/projects/avr32/src/sys/net/if_enc.c#5 integrate
.. //depot/projects/avr32/src/sys/net/if_ethersubr.c#9 integrate
.. //depot/projects/avr32/src/sys/net/pfil.c#2 integrate
.. //depot/projects/avr32/src/sys/net/route.c#8 integrate
.. //depot/projects/avr32/src/sys/net80211/ieee80211_hwmp.c#3 integrate
.. //depot/projects/avr32/src/sys/net80211/ieee80211_mesh.c#3 integrate
.. //depot/projects/avr32/src/sys/net80211/ieee80211_mesh.h#3 integrate
.. //depot/projects/avr32/src/sys/netgraph/ng_bridge.c#3 integrate
.. //depot/projects/avr32/src/sys/netinet/if_ether.c#11 integrate
.. //depot/projects/avr32/src/sys/netinet/in.c#10 integrate
.. //depot/projects/avr32/src/sys/netinet/ip_fastfwd.c#6 integrate
.. //depot/projects/avr32/src/sys/netinet/ip_icmp.c#8 integrate
.. //depot/projects/avr32/src/sys/netinet/ip_input.c#11 integrate
.. //depot/projects/avr32/src/sys/netinet/ip_output.c#13 integrate
.. //depot/projects/avr32/src/sys/netinet/ip_var.h#6 integrate
.. //depot/projects/avr32/src/sys/netinet/ipfw/ip_fw2.c#5 integrate
.. //depot/projects/avr32/src/sys/netinet/ipfw/ip_fw_pfil.c#3 integrate
.. //depot/projects/avr32/src/sys/netinet/raw_ip.c#11 integrate
.. //depot/projects/avr32/src/sys/netinet/sctp_bsd_addr.c#4 integrate
.. //depot/projects/avr32/src/sys/netinet/sctp_os_bsd.h#9 integrate
.. //depot/projects/avr32/src/sys/netinet/sctp_output.c#9 integrate
.. //depot/projects/avr32/src/sys/netinet/sctp_pcb.c#7 integrate
.. //depot/projects/avr32/src/sys/netinet/tcp_input.c#8 integrate
.. //depot/projects/avr32/src/sys/netinet6/icmp6.c#11 integrate
.. //depot/projects/avr32/src/sys/netinet6/in6_ifattach.c#12 integrate
.. //depot/projects/avr32/src/sys/netinet6/ip6_forward.c#4 integrate
.. //depot/projects/avr32/src/sys/netinet6/ip6_input.c#11 integrate
.. //depot/projects/avr32/src/sys/netinet6/ip6_output.c#10 integrate
.. //depot/projects/avr32/src/sys/netinet6/ip6_var.h#7 integrate
.. //depot/projects/avr32/src/sys/netipsec/xform_esp.c#4 integrate
.. //depot/projects/avr32/src/sys/nfsclient/nfs_kdtrace.c#3 integrate
.. //depot/projects/avr32/src/sys/nfsclient/nfs_vnops.c#11 integrate
.. //depot/projects/avr32/src/sys/nlm/nlm.h#3 integrate
.. //depot/projects/avr32/src/sys/nlm/nlm_prot_impl.c#5 integrate
.. //depot/projects/avr32/src/sys/nlm/nlm_prot_server.c#2 integrate
.. //depot/projects/avr32/src/sys/pc98/conf/GENERIC#7 integrate
.. //depot/projects/avr32/src/sys/powerpc/aim/swtch.S#4 integrate
.. //depot/projects/avr32/src/sys/powerpc/aim/trap_subr.S#5 integrate
.. //depot/projects/avr32/src/sys/powerpc/include/elf.h#3 integrate
.. //depot/projects/avr32/src/sys/powerpc/powerpc/elf_machdep.c#5 integrate
.. //depot/projects/avr32/src/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c#3 integrate
.. //depot/projects/avr32/src/sys/sparc64/conf/GENERIC#10 integrate
.. //depot/projects/avr32/src/sys/sparc64/include/elf.h#3 integrate
.. //depot/projects/avr32/src/sys/sparc64/sparc64/elf_machdep.c#5 integrate
.. //depot/projects/avr32/src/sys/sun4v/include/elf.h#3 integrate
.. //depot/projects/avr32/src/sys/sys/bus.h#5 integrate
.. //depot/projects/avr32/src/sys/sys/errno.h#2 integrate
.. //depot/projects/avr32/src/sys/sys/fcntl.h#5 integrate
.. //depot/projects/avr32/src/sys/sys/interrupt.h#3 integrate
.. //depot/projects/avr32/src/sys/sys/pmc.h#4 integrate
.. //depot/projects/avr32/src/sys/sys/rwlock.h#3 integrate
.. //depot/projects/avr32/src/sys/sys/signalvar.h#3 integrate
.. //depot/projects/avr32/src/sys/sys/sx.h#5 integrate
.. //depot/projects/avr32/src/sys/sys/syscall.h#6 integrate
.. //depot/projects/avr32/src/sys/sys/syscall.mk#6 integrate
.. //depot/projects/avr32/src/sys/sys/sysproto.h#7 integrate
.. //depot/projects/avr32/src/sys/sys/vnode.h#9 integrate
.. //depot/projects/avr32/src/sys/teken/sequences#2 integrate
.. //depot/projects/avr32/src/sys/teken/teken.c#2 integrate
.. //depot/projects/avr32/src/sys/teken/teken_subr.h#2 integrate
.. //depot/projects/avr32/src/sys/vm/swap_pager.c#6 integrate
.. //depot/projects/avr32/src/sys/vm/vm_map.c#8 integrate
.. //depot/projects/avr32/src/sys/vm/vm_mmap.c#8 integrate
.. //depot/projects/avr32/src/sys/vm/vm_page.c#5 integrate
.. //depot/projects/avr32/src/sys/vm/vm_page.h#4 integrate
.. //depot/projects/avr32/src/tools/regression/bin/sh/errors/backquote-error2.0#1 branch
.. //depot/projects/avr32/src/tools/regression/bin/sh/execution/unknown1.0#1 branch
.. //depot/projects/avr32/src/tools/regression/lib/libc/stdio/test-getdelim.c#3 integrate
.. //depot/projects/avr32/src/tools/regression/mmap/Makefile#1 branch
.. //depot/projects/avr32/src/tools/regression/mmap/mmap.c#1 branch
.. //depot/projects/avr32/src/tools/regression/sigqueue/sigqtest1/sigqtest1.c#2 integrate
.. //depot/projects/avr32/src/tools/regression/sigqueue/sigqtest2/sigqtest2.c#2 integrate
.. //depot/projects/avr32/src/tools/regression/sockets/unix_seqpacket/Makefile#1 branch
.. //depot/projects/avr32/src/tools/regression/sockets/unix_seqpacket/unix_seqpacket.c#1 branch
.. //depot/projects/avr32/src/tools/regression/sockets/unix_seqpacket_exercise/Makefile#1 branch
.. //depot/projects/avr32/src/tools/regression/sockets/unix_seqpacket_exercise/unix_seqpacket_exercise.c#1 branch
.. //depot/projects/avr32/src/tools/regression/tmpfs/h_tools.c#2 integrate
.. //depot/projects/avr32/src/tools/tools/nanobsd/nanobsd.sh#4 integrate
.. //depot/projects/avr32/src/tools/tools/netrate/netsend/netsend.c#2 integrate
.. //depot/projects/avr32/src/usr.bin/calendar/calendars/calendar.freebsd#6 integrate
.. //depot/projects/avr32/src/usr.bin/locale/locale.1#2 integrate
.. //depot/projects/avr32/src/usr.bin/locale/locale.c#2 integrate
.. //depot/projects/avr32/src/usr.bin/make/job.c#4 integrate
.. //depot/projects/avr32/src/usr.bin/make/main.c#4 integrate
.. //depot/projects/avr32/src/usr.bin/netstat/main.c#5 integrate
.. //depot/projects/avr32/src/usr.bin/netstat/netstat.h#5 integrate
.. //depot/projects/avr32/src/usr.bin/netstat/route.c#3 integrate
.. //depot/projects/avr32/src/usr.bin/netstat/unix.c#2 integrate
.. //depot/projects/avr32/src/usr.bin/systat/keyboard.c#2 integrate
.. //depot/projects/avr32/src/usr.bin/systat/main.c#2 integrate
.. //depot/projects/avr32/src/usr.bin/touch/touch.c#2 integrate
.. //depot/projects/avr32/src/usr.bin/whois/whois.1#2 integrate
.. //depot/projects/avr32/src/usr.bin/whois/whois.c#2 integrate
.. //depot/projects/avr32/src/usr.sbin/cdcontrol/cdcontrol.c#2 integrate
.. //depot/projects/avr32/src/usr.sbin/freebsd-update/freebsd-update.sh#3 integrate
.. //depot/projects/avr32/src/usr.sbin/lpr/lp/lp.sh#3 integrate
.. //depot/projects/avr32/src/usr.sbin/ntp/doc/ntpd.8#2 integrate
Differences ...
==== //depot/projects/avr32/src/Makefile.inc1#10 (text+ko) ====
@@ -1,5 +1,5 @@
#
-# $FreeBSD: src/Makefile.inc1,v 1.629 2009/09/10 07:37:36 des Exp $
+# $FreeBSD: src/Makefile.inc1,v 1.630 2009/10/13 05:38:08 bland Exp $
#
# Make command line options:
# -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir
@@ -1122,7 +1122,7 @@
_secure_lib_libssh= secure/lib/libssh
secure/lib/libssh__L: lib/libz__L secure/lib/libcrypto__L lib/libcrypt__L
.if ${MK_KERBEROS} != "no"
-kerberos5/lib/libgssapi_krb5__L: kerberos5/lib/libkrb5__L \
+kerberos5/lib/libgssapi_krb5__L: lib/libgssapi__L kerberos5/lib/libkrb5__L \
kerberos5/lib/libhx509__L kerberos5/lib/libasn1__L lib/libcom_err__L \
lib/libmd__L kerberos5/lib/libroken__L secure/lib/libcrypto__L \
lib/libcrypt__L
==== //depot/projects/avr32/src/ObsoleteFiles.inc#12 (text+ko) ====
@@ -1,5 +1,5 @@
#
-# $FreeBSD: src/ObsoleteFiles.inc,v 1.209 2009/09/10 21:42:00 delphij Exp $
+# $FreeBSD: src/ObsoleteFiles.inc,v 1.210 2009/10/12 21:10:28 markm Exp $
#
# This file lists old files (OLD_FILES), libraries (OLD_LIBS) and
# directories (OLD_DIRS) which should get removed at an update. Recently
@@ -503,6 +503,8 @@
OLD_FILES+=usr/include/dev/usb/usbcdc.h
OLD_FILES+=usr/include/dev/usb/usbdivar.h
OLD_FILES+=usr/include/dev/usb/uxb360gp_rdesc.h
+OLD_FILES+=usr/sbin/usbdevs
+OLD_FILES+=usr/share/man/man8/usbdevs.8.gz
# 20090203: removal of pccard header files
OLD_FILES+=usr/include/pccard/cardinfo.h
OLD_FILES+=usr/include/pccard/cis.h
==== //depot/projects/avr32/src/bin/cat/Makefile#3 (text+ko) ====
@@ -1,7 +1,6 @@
# @(#)Makefile 8.1 (Berkeley) 5/31/93
-# $FreeBSD: src/bin/cat/Makefile,v 1.8 2009/03/16 12:16:17 des Exp $
+# $FreeBSD: src/bin/cat/Makefile,v 1.9 2009/10/15 18:17:29 ru Exp $
PROG= cat
-WARNS?= 6
.include
==== //depot/projects/avr32/src/bin/csh/iconv_stub.c#2 (text) ====
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/bin/csh/iconv_stub.c,v 1.1 2006/02/19 06:40:29 ume Exp $
+ * $FreeBSD: src/bin/csh/iconv_stub.c,v 1.2 2009/10/17 15:53:15 ume Exp $
*/
#include
@@ -61,9 +61,20 @@
if (iconvlib == NULL)
return (iconv_t)-1;
iconv_open = (iconv_open_t *)dlfunc(iconvlib, ICONV_OPEN);
+ if (iconv_open == NULL)
+ goto dlfunc_err;
dl_iconv = (dl_iconv_t *)dlfunc(iconvlib, ICONV_ENGINE);
+ if (dl_iconv == NULL)
+ goto dlfunc_err;
dl_iconv_close = (dl_iconv_close_t *)dlfunc(iconvlib,
ICONV_CLOSE);
+ if (dl_iconv_close == NULL)
+ goto dlfunc_err;
}
return iconv_open(tocode, fromcode);
+
+dlfunc_err:
+ dlclose(iconvlib);
+ iconvlib = NULL;
+ return (iconv_t)-1;
}
==== //depot/projects/avr32/src/bin/ls/ls.c#2 (text+ko) ====
@@ -42,7 +42,7 @@
#endif /* not lint */
#endif
#include
-__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.86 2008/04/04 03:57:46 grog Exp $");
+__FBSDID("$FreeBSD: src/bin/ls/ls.c,v 1.87 2009/10/13 21:51:50 jilles Exp $");
#include
#include
@@ -399,7 +399,7 @@
* If not -F, -d or -l options, follow any symbolic links listed on
* the command line.
*/
- if (!f_longform && !f_listdir && !f_type)
+ if (!f_longform && !f_listdir && (!f_type || f_slash))
fts_options |= FTS_COMFOLLOW;
/*
==== //depot/projects/avr32/src/bin/sh/eval.c#6 (text+ko) ====
@@ -36,7 +36,7 @@
#endif
#endif /* not lint */
#include
-__FBSDID("$FreeBSD: src/bin/sh/eval.c,v 1.66 2009/08/28 22:41:25 jilles Exp $");
+__FBSDID("$FreeBSD: src/bin/sh/eval.c,v 1.67 2009/10/06 22:00:14 jilles Exp $");
#include
#include
@@ -713,12 +713,7 @@
do_clearcmdentry = 1;
}
- find_command(argv[0], &cmdentry, 1, path);
- if (cmdentry.cmdtype == CMDUNKNOWN) { /* command not found */
- exitstatus = 127;
- flushout(&errout);
- return;
- }
+ find_command(argv[0], &cmdentry, 0, path);
/* implement the bltin builtin here */
if (cmdentry.cmdtype == CMDBUILTIN && cmdentry.u.index == BLTINCMD) {
for (;;) {
@@ -740,7 +735,7 @@
/* Fork off a child process if necessary. */
if (cmd->ncmd.backgnd
- || (cmdentry.cmdtype == CMDNORMAL
+ || ((cmdentry.cmdtype == CMDNORMAL || cmdentry.cmdtype == CMDUNKNOWN)
&& ((flags & EV_EXIT) == 0 || have_traps()))
|| ((flags & EV_BACKCMD) != 0
&& (cmdentry.cmdtype != CMDBUILTIN
==== //depot/projects/avr32/src/bin/sh/exec.c#5 (text+ko) ====
@@ -36,7 +36,7 @@
#endif
#endif /* not lint */
#include
-__FBSDID("$FreeBSD: src/bin/sh/exec.c,v 1.36 2009/08/28 22:41:25 jilles Exp $");
+__FBSDID("$FreeBSD: src/bin/sh/exec.c,v 1.37 2009/10/06 22:00:14 jilles Exp $");
#include
#include
@@ -429,6 +429,7 @@
outfmt(out2, "%s: %s\n", name, strerror(e));
}
entry->cmdtype = CMDUNKNOWN;
+ entry->u.index = 0;
return;
success:
==== //depot/projects/avr32/src/bin/sh/parser.c#5 (text+ko) ====
@@ -36,7 +36,7 @@
#endif
#endif /* not lint */
#include
-__FBSDID("$FreeBSD: src/bin/sh/parser.c,v 1.63 2009/06/23 20:45:12 jilles Exp $");
+__FBSDID("$FreeBSD: src/bin/sh/parser.c,v 1.65 2009/10/16 16:17:57 jilles Exp $");
#include
#include
@@ -82,7 +82,6 @@
STATIC struct heredoc *heredoclist; /* list of here documents to read */
-STATIC int parsebackquote; /* nonzero if we are inside backquotes */
STATIC int doprompt; /* if set, prompt the user */
STATIC int needprompt; /* true if interactive and at start of line */
STATIC int lasttoken; /* last token read */
@@ -1043,7 +1042,7 @@
endword:
if (syntax == ARISYNTAX)
synerror("Missing '))'");
- if (syntax != BASESYNTAX && ! parsebackquote && eofmark == NULL)
+ if (syntax != BASESYNTAX && eofmark == NULL)
synerror("Unterminated quoted string");
if (varnest != 0) {
startlinno = plinno;
@@ -1303,20 +1302,22 @@
parsebackq: {
struct nodelist **nlpp;
- int savepbq;
union node *n;
char *volatile str;
struct jmploc jmploc;
struct jmploc *const savehandler = handler;
int savelen;
int saveprompt;
+ const int bq_startlinno = plinno;
- savepbq = parsebackquote;
if (setjmp(jmploc.loc)) {
if (str)
ckfree(str);
- parsebackquote = 0;
handler = savehandler;
+ if (exception == EXERROR) {
+ startlinno = bq_startlinno;
+ synerror("Error in command substitution");
+ }
longjmp(handler->loc, 1);
}
INTOFF;
@@ -1397,7 +1398,6 @@
nlpp = &(*nlpp)->next;
*nlpp = (struct nodelist *)stalloc(sizeof (struct nodelist));
(*nlpp)->next = NULL;
- parsebackquote = oldstyle;
if (oldstyle) {
saveprompt = doprompt;
@@ -1433,7 +1433,6 @@
str = NULL;
INTON;
}
- parsebackquote = savepbq;
handler = savehandler;
if (arinest || dblquote)
USTPUTC(CTLBACKQ | CTLQUOTE, out);
==== //depot/projects/avr32/src/bin/sh/sh.1#5 (text+ko) ====
@@ -30,7 +30,7 @@
.\" SUCH DAMAGE.
.\"
.\" from: @(#)sh.1 8.6 (Berkeley) 5/4/95
-.\" $FreeBSD: src/bin/sh/sh.1,v 1.131 2009/09/20 21:42:38 jilles Exp $
+.\" $FreeBSD: src/bin/sh/sh.1,v 1.132 2009/10/07 22:21:53 jilles Exp $
.\"
.Dd May 31, 2009
.Dt SH 1
@@ -1227,6 +1227,9 @@
final value of
.Ar parameter
is substituted.
+Quoting inside
+.Ar word
+does not prevent field splitting or pathname expansion.
Only variables, not positional
parameters or special parameters, can be
assigned in this way.
==== //depot/projects/avr32/src/bin/uuidgen/Makefile#2 (text+ko) ====
@@ -1,6 +1,5 @@
-# $FreeBSD: src/bin/uuidgen/Makefile,v 1.4 2008/03/13 17:38:06 obrien Exp $
+# $FreeBSD: src/bin/uuidgen/Makefile,v 1.5 2009/10/15 18:17:29 ru Exp $
PROG= uuidgen
-WARNS?= 6
.include
==== //depot/projects/avr32/src/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_dataset.c#2 (text+ko) ====
@@ -1790,11 +1790,14 @@
/* We don't support those properties on FreeBSD. */
switch (prop) {
+ case ZFS_PROP_DEVICES:
+ case ZFS_PROP_ZONED:
case ZFS_PROP_SHAREISCSI:
- case ZFS_PROP_DEVICES:
- case ZFS_PROP_ACLMODE:
- case ZFS_PROP_ACLINHERIT:
case ZFS_PROP_ISCSIOPTIONS:
+ case ZFS_PROP_XATTR:
+ case ZFS_PROP_VSCAN:
+ case ZFS_PROP_NBMAND:
+ case ZFS_PROP_SHARESMB:
(void) snprintf(errbuf, sizeof (errbuf),
"property '%s' not supported on FreeBSD", propname);
ret = zfs_error(hdl, EZFS_PERM, errbuf);
==== //depot/projects/avr32/src/contrib/openpam/doc/man/pam.conf.5#2 (text) ====
@@ -109,7 +109,7 @@
.It Cm requisite
If this module succeeds, the result of the chain will be success
unless a later module fails.
-If it module fails, the chain is broken and the result is failure.
+If the module fails, the chain is broken and the result is failure.
.It Cm sufficient
If this module succeeds, the chain is broken and the result is
success.
==== //depot/projects/avr32/src/contrib/tcpdump/print-tcp.c#3 (text+ko) ====
@@ -124,6 +124,7 @@
{ TCPOPT_CCECHO, "" },
{ TCPOPT_SIGNATURE, "md5" },
{ TCPOPT_AUTH, "enhanced auth" },
+ { TCPOPT_UTO, "uto" },
{ 0, NULL }
};
@@ -613,6 +614,17 @@
*/
break;
+ case TCPOPT_UTO:
+ datalen = 2;
+ LENCHECK(datalen);
+ uint utoval = EXTRACT_16BITS(cp);
+ if (utoval & 0x0001)
+ utoval = (utoval >> 1) * 60;
+ else
+ utoval >>= 1;
+ (void)printf(" %u", utoval);
+ break;
+
default:
datalen = len - 2;
for (i = 0; i < datalen; ++i) {
==== //depot/projects/avr32/src/contrib/tcpdump/tcp.h#3 (text+ko) ====
@@ -83,6 +83,8 @@
#define TCPOLEN_SIGNATURE 18
#define TCP_SIGLEN 16 /* length of an option 19 digest */
#define TCPOPT_AUTH 20 /* Enhanced AUTH option */
+#define TCPOPT_UTO 28 /* tcp user timeout (rfc5482) */
+#define TCPOLEN_UTO 4
#define TCPOPT_TSTAMP_HDR \
(TCPOPT_NOP<<24|TCPOPT_NOP<<16|TCPOPT_TIMESTAMP<<8|TCPOLEN_TIMESTAMP)
==== //depot/projects/avr32/src/contrib/tcsh/sh.c#3 (text+ko) ====
@@ -1291,6 +1291,8 @@
/*
* Mop-up.
*/
+ /* Take care of these (especially HUP) here instead of inside flush. */
+ handle_pending_signals();
if (intty) {
if (loginsh) {
xprintf("logout\n");
==== //depot/projects/avr32/src/crypto/openssh/ChangeLog#3 (text+ko) ====
@@ -1,3 +1,282 @@
+20090926
+ - (djm) [contrib/caldera/openssh.spec contrib/redhat/openssh.spec]
+ [contrib/suse/openssh.spec] Update for release
+ - (djm) [README] update relnotes URL
+ - (djm) [packet.c] Restore EWOULDBLOCK handling that got lost somewhere
+ - (djm) Release 5.3p1
+
+20090911
+ - (dtucker) [configure.ac] Change the -lresolv check so it works on Mac OS X
+ 10.6 (which doesn't have BIND8_COMPAT and thus uses res_9_query). Patch
+ from jbasney at ncsa uiuc edu.
+
+20090908
+ - (djm) [serverloop.c] Fix test for server-assigned remote forwarding port
+ (-R 0:...); bz#1578, spotted and fix by gavin AT emf.net; ok dtucker@
+
+20090901
+ - (dtucker) [configure.ac] Bug #1639: use AC_PATH_PROG to search the path for
+ krb5-config if it's not in the location specified by --with-kerberos5.
+ Patch from jchadima at redhat.
+
+20090829
+ - (dtucker) [README.platform] Add text about development packages, based on
+ text from Chris Pepper in bug #1631.
+
+20090828
+ - dtucker [auth-sia.c] Roll back the change for bug #1241 as it apparently
+ causes problems in some Tru64 configurations.
+ - (djm) [sshd_config.5] downgrade mention of login.conf to be an example
+ and mention PAM as another provider for ChallengeResponseAuthentication;
+ bz#1408; ok dtucker@
+ - (djm) [sftp-server.c] bz#1535: accept ENOSYS as a fallback error when
+ attempting atomic rename(); ok dtucker@
+ - (djm) [Makefile.in] bz#1505: Solaris make(1) doesn't accept make variables
+ in argv, so pass them in the environment; ok dtucker@
+ - (dtucker) [channels.c configure.ac] Bug #1528: skip the tcgetattr call on
+ the pty master on Solaris, since it never succeeds and can hang if large
+ amounts of data is sent to the slave (eg a copy-paste). Based on a patch
+ originally from Doke Scott, ok djm@
+ - (dtucker) [clientloop.c configure.ac defines.h] Make the client's IO buffer
+ size a compile-time option and set it to 64k on Cygwin, since Corinna
+ reports that it makes a significant difference to performance. ok djm@
+ - (dtucker) [configure.ac] Fix the syntax of the Solaris tcgetattr entry.
+
+20090820
+ - (dtucker) [includes.h] Bug #1634: do not include system glob.h if we're not
+ using it since the type conflicts can cause problems on FreeBSD. Patch
+ from Jonathan Chen.
+ - (dtucker) [session.c openbsd-compat/port-aix.h] Bugs #1249 and #1567: move
+ the setpcred call on AIX to immediately before the permanently_set_uid().
+ Ensures that we still have privileges when we call chroot and
+ pam_open_sesson. Based on a patch from David Leonard.
+
+20090817
+ - (dtucker) [configure.ac] Check for headers before libraries for openssl an
+ zlib, which should make the errors slightly more meaningful on platforms
+ where there's separate "-devel" packages for those.
+ - (dtucker) [sshlogin.c openbsd-compat/port-aix.{c,h}] Bug #1595: make
+ PrintLastLog work on AIX. Based in part on a patch from Miguel Sanders.
+
+20090729
+ - (tim) [contrib/cygwin/ssh-user-config] Change script to call correct error
+ function. Patch from Corinna Vinschen.
+
+20090713
+ - (dtucker) [openbsd-compat/getrrsetbyname.c] Reduce answer buffer size so it
+ fits into 16 bits to work around a bug in glibc's resolver where it masks
+ off the buffer size at 16 bits. Patch from Hauke Lampe, ok djm jakob.
+
+20090712
+ - (dtucker) [configure.ac] Include sys/param.h for the sys/mount.h test,
+ prevents configure complaining on older BSDs.
+ - (dtucker [contrib/cygwin/ssh-{host,user}-config] Add license text. Patch
+ from Corinna Vinschen.
+ - (dtucker) [auth-pam.c] Bug #1534: move the deletion of PAM credentials on
+ logout to after the session close. Patch from Anicka Bernathova,
+ originally from Andreas Schwab via Novelll ok djm.
+
+20090707
+ - (dtucker) [contrib/cygwin/ssh-host-config] better support for automated
+ scripts and fix usage of eval. Patch from Corinna Vinschen.
+
+20090705
+ - (dtucker) OpenBSD CVS Sync
+ - andreas@cvs.openbsd.org 2009/06/27 09:29:06
+ [packet.h packet.c]
+ packet_bacup_state() and packet_restore_state() will be used to
+ temporarily save the current state ren resuming a suspended connection.
+ ok markus@
+ - andreas@cvs.openbsd.org 2009/06/27 09:32:43
+ [roaming_common.c roaming.h]
+ It may be necessary to retransmit some data when resuming, so add it
+ to a buffer when roaming is enabled.
+ Most of this code was written by Martin Forssen, maf at appgate dot com.
+ ok markus@
+ - andreas@cvs.openbsd.org 2009/06/27 09:35:06
+ [readconf.h readconf.c]
+ Add client option UseRoaming. It doesn't do anything yet but will
+ control whether the client tries to use roaming if enabled on the
+ server. From Martin Forssen.
+ ok markus@
+ - markus@cvs.openbsd.org 2009/06/30 14:54:40
+ [version.h]
+ crank version; ok deraadt
+ - dtucker@cvs.openbsd.org 2009/07/02 02:11:47
+ [ssh.c]
+ allow for long home dir paths (bz #1615). ok deraadt
+ (based in part on a patch from jchadima at redhat)
+ - stevesk@cvs.openbsd.org 2009/07/05 19:28:33
+ [clientloop.c]
+ only send SSH2_MSG_DISCONNECT if we're in compat20; from dtucker@
+ ok deraadt@ markus@
+
+20090622
+ - (dtucker) OpenBSD CVS Sync
>>> TRUNCATED FOR MAIL (1000 lines) <<<
From owner-p4-projects@FreeBSD.ORG Sun Oct 18 21:28:00 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 26D9F1065676; Sun, 18 Oct 2009 21:28:00 +0000 (UTC)
Delivered-To: perforce@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id DC1731065670
for ; Sun, 18 Oct 2009 21:27:59 +0000 (UTC)
(envelope-from trasz@freebsd.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id C99B88FC13
for ; Sun, 18 Oct 2009 21:27:59 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9ILRxnA052588
for ; Sun, 18 Oct 2009 21:27:59 GMT
(envelope-from trasz@freebsd.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9ILRx9t052586
for perforce@freebsd.org; Sun, 18 Oct 2009 21:27:59 GMT
(envelope-from trasz@freebsd.org)
Date: Sun, 18 Oct 2009 21:27:59 GMT
Message-Id: <200910182127.n9ILRx9t052586@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
trasz@freebsd.org using -f
From: Edward Tomasz Napierala
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169588 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Sun, 18 Oct 2009 21:28:00 -0000
http://p4web.freebsd.org/chv.cgi?CH=169588
Change 169588 by trasz@trasz_victim on 2009/10/18 21:27:31
Make 'hrl -u' work again.
Affected files ...
.. //depot/projects/soc2009/trasz_limits/sys/kern/kern_hrl.c#71 edit
Differences ...
==== //depot/projects/soc2009/trasz_limits/sys/kern/kern_hrl.c#71 (text+ko) ====
@@ -1410,10 +1410,13 @@
if (error)
return (error);
+ sx_slock(&allproc_lock);
filter = hrl_rule_from_string(inputstr);
free(inputstr, M_HRL);
- if (filter == NULL)
+ if (filter == NULL) {
+ sx_sunlock(&allproc_lock);
return (EINVAL);
+ }
switch (filter->hr_subject_type) {
case HRL_SUBJECT_TYPE_PROCESS:
@@ -1461,6 +1464,7 @@
}
out:
hrl_rule_release(filter);
+ sx_sunlock(&allproc_lock);
if (error)
return (error);
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 06:46:17 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 554F41065692; Mon, 19 Oct 2009 06:46:17 +0000 (UTC)
Delivered-To: perforce@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id EB657106566B
for ; Mon, 19 Oct 2009 06:46:16 +0000 (UTC)
(envelope-from pgj@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id D7D0B8FC08
for ; Mon, 19 Oct 2009 06:46:16 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9J6kGfL015103
for ; Mon, 19 Oct 2009 06:46:16 GMT
(envelope-from pgj@FreeBSD.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9J6kGTS015101
for perforce@freebsd.org; Mon, 19 Oct 2009 06:46:16 GMT
(envelope-from pgj@FreeBSD.org)
Date: Mon, 19 Oct 2009 06:46:16 GMT
Message-Id: <200910190646.n9J6kGTS015101@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
pgj@FreeBSD.org using -f
From: Gabor Pali
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169590 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 06:46:17 -0000
http://p4web.freebsd.org/chv.cgi?CH=169590
Change 169590 by pgj@beehive on 2009/10/19 06:45:58
IFC
Affected files ...
.. //depot/projects/docproj_hu/src/release/doc/en_US.ISO8859-1/errata/article.sgml#2 integrate
.. //depot/projects/docproj_hu/src/release/doc/share/mk/doc.relnotes.mk#2 integrate
.. //depot/projects/docproj_hu/src/release/doc/share/sgml/release.dsl#2 integrate
.. //depot/projects/docproj_hu/src/release/doc/share/sgml/release.ent#3 integrate
.. //depot/projects/docproj_hu/www/en/administration.sgml#9 integrate
.. //depot/projects/docproj_hu/www/hu/platforms/ppc.sgml#14 integrate
Differences ...
==== //depot/projects/docproj_hu/src/release/doc/en_US.ISO8859-1/errata/article.sgml#2 (text+ko) ====
@@ -16,7 +16,6 @@
%release;
-
]>
@@ -37,7 +36,7 @@
The &os; Project
- $FreeBSD: src/release/doc/en_US.ISO8859-1/errata/article.sgml,v 1.73 2005/04/19 09:42:25 hrs Exp $
+ $FreeBSD: src/release/doc/en_US.ISO8859-1/errata/article.sgml,v 1.74 2009/10/15 07:58:01 hrs Exp $
2000
==== //depot/projects/docproj_hu/src/release/doc/share/mk/doc.relnotes.mk#2 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/release/doc/share/mk/doc.relnotes.mk,v 1.14 2007/02/16 02:10:12 bmah Exp $
+# $FreeBSD: src/release/doc/share/mk/doc.relnotes.mk,v 1.15 2009/10/15 07:58:01 hrs Exp $
DOC_PREFIX?= ${RELN_ROOT}/../../../doc
@@ -11,23 +11,6 @@
DSLPRINT?= ${RELN_ROOT}/share/sgml/default.dsl
#
-# Tweakable Makefile variables
-#
-# INCLUDE_HISTORIC Used by relnotes document only. When set,
-# causes all release notes entries to be printed,
-# even those marked as "historic". If not set
-# (the default), only print "non-historic"
-# release note entries. To designate a release
-# note entry as "historic", add a role="historic"
-# attribute to the applicable element(s).
-#
-.if defined(INCLUDE_HISTORIC)
-JADEFLAGS+= -iinclude.historic
-.else
-JADEFLAGS+= -ino.include.historic
-.endif
-
-#
# Automatic device list generation:
#
.if exists(${RELN_ROOT}/../man4)
==== //depot/projects/docproj_hu/src/release/doc/share/sgml/release.dsl#2 (text+ko) ====
@@ -1,10 +1,8 @@
-
+
-
-
%release.ent;
@@ -14,14 +12,6 @@
-; Configure behavior of this stylesheet
-
-
-
; String manipulation functions
(define (split-string-to-list STR)
;; return list of STR separated with char #\ or #\,
@@ -54,36 +44,6 @@
((equal? STR (car s)) #t)
(else (loop (cdr s))))))
-; Deal with conditional inclusion of text via entities.
-(default
- (let* ((role (attribute-string (normalize "role")))
- (for-arch (entity-text "arch")))
- (cond
-
- ;; If role=historic, and we're not printing historic things, then
- ;; don't output this element.
- ((and (equal? role "historic")
- (not %include-historic%))
- (empty-sosofo))
-
- ;; None of the above
- (else (next-match)))))
-
-(mode qandatoc
- (default
- (let* ((role (attribute-string (normalize "role")))
- (for-arch (entity-text "arch")))
- (cond
-
- ;; If role=historic, and we're not printing historic things, then
- ;; don't output this element.
- ((and (equal? role "historic")
- (not %include-historic%))
- (empty-sosofo))
-
- ;; None of the above
- (else (next-match))))))
-
; We might have some sect1 level elements where the modification times
; are significant. An example of this is the "What's New" section in
; the release notes. We enable the printing of pubdate entry in
@@ -198,7 +158,6 @@
(u (string-append "&release.man.url;?query="
(data r) "&" "sektion=" (data m))))
(case v
- (("xfree86") (string-append u "&" "manpath=XFree86+&release.manpath.xfree86;" ))
(("xorg") (string-append u "&" "manpath=Xorg+&release.manpath.xorg;" ))
(("netbsd") (string-append u "&" "manpath=NetBSD+&release.manpath.netbsd;"))
(("ports") (string-append u "&" "manpath=FreeBSD+&release.manpath.freebsd-ports;"))
==== //depot/projects/docproj_hu/src/release/doc/share/sgml/release.ent#3 (text+ko) ====
@@ -1,28 +1,28 @@
-
+
-
+
-
+
-
+
-
+
@@ -36,11 +36,10 @@
-
-
-
+
+
-
+
==== //depot/projects/docproj_hu/www/en/administration.sgml#9 (text+ko) ====
@@ -1,5 +1,5 @@
+
%developers;
@@ -26,8 +26,6 @@
Release Engineering
The Primary Release Engineering Team is responsible for setting and
publishing release schedules for official project releases of FreeBSD,
- announcing code freezes and maintaining RELENG_* branches, among other
+ announcing code freezes and maintaining RELENG_*
branches, among other
things. The release engineering team charter
describes the duties and responsibilities of the Primary Release
@@ -166,23 +164,11 @@
&a.hrs; <hrs@FreeBSD.org>
&a.kensmith; <kensmith@FreeBSD.org>
(Lead)
- &a.murray; <murray@FreeBSD.org>
&a.rwatson; <rwatson@FreeBSD.org>
&a.dwhite; <dwhite@FreeBSD.org>
&a.bz; <bz@FreeBSD.org>
-
-
- The FreeBSD/alpha Release Engineering Team is responsible for specific
- release issues related to the FreeBSD/alpha platform.
-
-
-
@@ -210,7 +196,6 @@
release issues related to the FreeBSD/i386 platform.
@@ -247,7 +232,6 @@
&a.tmm; <tmm@FreeBSD.org>
&a.obrien; <obrien@FreeBSD.org>
&a.kensmith; <kensmith@FreeBSD.org>
- &a.murray; <murray@FreeBSD.org>
&a.rwatson; <rwatson@FreeBSD.org>
==== //depot/projects/docproj_hu/www/hu/platforms/ppc.sgml#14 (text+ko) ====
@@ -1,6 +1,6 @@
-
+
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 07:41:12 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 4F29C1065676; Mon, 19 Oct 2009 07:41:12 +0000 (UTC)
Delivered-To: perforce@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id EF7B9106566B
for ; Mon, 19 Oct 2009 07:41:11 +0000 (UTC)
(envelope-from pgj@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id DD7948FC12
for ; Mon, 19 Oct 2009 07:41:11 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9J7fBU7019395
for ; Mon, 19 Oct 2009 07:41:11 GMT
(envelope-from pgj@FreeBSD.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9J7fBTt019393
for perforce@freebsd.org; Mon, 19 Oct 2009 07:41:11 GMT
(envelope-from pgj@FreeBSD.org)
Date: Mon, 19 Oct 2009 07:41:11 GMT
Message-Id: <200910190741.n9J7fBTt019393@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
pgj@FreeBSD.org using -f
From: Gabor Pali
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169591 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 07:41:12 -0000
http://p4web.freebsd.org/chv.cgi?CH=169591
Change 169591 by pgj@beehive on 2009/10/19 07:40:55
MFen (www):
1.26 -> 1.30 hu/administration.sgml
Affected files ...
.. //depot/projects/docproj_hu/www/hu/administration.sgml#22 edit
Differences ...
==== //depot/projects/docproj_hu/www/hu/administration.sgml#22 (text+ko) ====
@@ -9,7 +9,7 @@
@@ -42,10 +42,6 @@
&os;/alpha Release Engineering Team
-
-
- &os;/amd64 Release Engineering Team
@@ -194,7 +190,7 @@
&a.nik; <nik@FreeBSD.org>
&a.blackend; <blackend@FreeBSD.org>
&a.hrs; <hrs@FreeBSD.org>
- &a.murray; <murray@FreeBSD.org>
+ &a.keramida; <keramida@FreeBSD.org>
&os; Port Management Team
@@ -232,7 +228,7 @@
kiadásainak idõbeosztását határozza
meg és hirdeti ki. Több más tennivaló
mellett bejelenti a kód befagyasztását
- és karbantartja a RELENG_* ágakat. A RELENG_* ágakat. A releng szabadalomlevele
részletesen ismerteti az Elsõdleges Release Engineering
Team feladatait és kötelezettségeit.
@@ -246,24 +242,11 @@
&a.hrs; <hrs@FreeBSD.org>
&a.kensmith; <kensmith@FreeBSD.org>
(Vezetõ)
- &a.murray; <murray@FreeBSD.org>
&a.rwatson; <rwatson@FreeBSD.org>
&a.dwhite; <dwhite@FreeBSD.org>
&a.bz; <bz@FreeBSD.org>
-
-
- A &os;/alpha Release Engineering Team a &os;/alpha platform
- egyéni kiadási problémáiért
- felelõs.
-
-
-
@@ -294,7 +277,6 @@
felelõs.
@@ -334,7 +316,6 @@
&a.tmm; <tmm@FreeBSD.org>
&a.obrien; <obrien@FreeBSD.org>
&a.kensmith; <kensmith@FreeBSD.org>
- &a.murray; <murray@FreeBSD.org>
&a.rwatson; <rwatson@FreeBSD.org>
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 14:27:59 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 3EAFA1065692; Mon, 19 Oct 2009 14:27:59 +0000 (UTC)
Delivered-To: perforce@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id EB0B7106568B
for ; Mon, 19 Oct 2009 14:27:58 +0000 (UTC)
(envelope-from jhb@freebsd.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id D6F6D8FC1F
for ; Mon, 19 Oct 2009 14:27:58 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JERwn0070906
for ; Mon, 19 Oct 2009 14:27:58 GMT
(envelope-from jhb@freebsd.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JERvXh070903
for perforce@freebsd.org; Mon, 19 Oct 2009 14:27:57 GMT
(envelope-from jhb@freebsd.org)
Date: Mon, 19 Oct 2009 14:27:57 GMT
Message-Id: <200910191427.n9JERvXh070903@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
jhb@freebsd.org using -f
From: John Baldwin
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169593 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 14:27:59 -0000
http://p4web.freebsd.org/chv.cgi?CH=169593
Change 169593 by jhb@jhb_jhbbsd on 2009/10/19 14:27:26
IFC @169589
Affected files ...
.. //depot/projects/smpng/share/man/man9/BUS_BIND_INTR.9#1 branch
.. //depot/projects/smpng/share/man/man9/BUS_DESCRIBE_INTR.9#1 branch
.. //depot/projects/smpng/share/man/man9/Makefile#11 integrate
.. //depot/projects/smpng/share/man/man9/fetch.9#2 integrate
.. //depot/projects/smpng/share/man/man9/store.9#2 integrate
.. //depot/projects/smpng/sys/amd64/acpica/acpi_machdep.c#15 integrate
.. //depot/projects/smpng/sys/amd64/acpica/acpi_wakecode.S#4 integrate
.. //depot/projects/smpng/sys/amd64/acpica/acpi_wakeup.c#9 integrate
.. //depot/projects/smpng/sys/amd64/amd64/elf_machdep.c#19 integrate
.. //depot/projects/smpng/sys/amd64/amd64/intr_machdep.c#37 integrate
.. //depot/projects/smpng/sys/amd64/amd64/nexus.c#30 integrate
.. //depot/projects/smpng/sys/amd64/conf/GENERIC#85 integrate
.. //depot/projects/smpng/sys/amd64/include/atomic.h#33 integrate
.. //depot/projects/smpng/sys/amd64/include/elf.h#8 integrate
.. //depot/projects/smpng/sys/amd64/include/intr_machdep.h#22 integrate
.. //depot/projects/smpng/sys/arm/arm/cpufunc.c#20 integrate
.. //depot/projects/smpng/sys/arm/arm/elf_machdep.c#14 integrate
.. //depot/projects/smpng/sys/arm/arm/pmap.c#54 integrate
.. //depot/projects/smpng/sys/arm/conf/HL200#10 integrate
.. //depot/projects/smpng/sys/arm/conf/KB920X#17 integrate
.. //depot/projects/smpng/sys/arm/include/elf.h#9 integrate
.. //depot/projects/smpng/sys/arm/xscale/i80321/i80321_timer.c#13 integrate
.. //depot/projects/smpng/sys/arm/xscale/xscalereg.h#3 delete
.. //depot/projects/smpng/sys/arm/xscale/xscalevar.h#3 delete
.. //depot/projects/smpng/sys/boot/i386/zfsboot/zfsboot.c#4 integrate
.. //depot/projects/smpng/sys/cam/ata/ata_da.c#4 integrate
.. //depot/projects/smpng/sys/cddl/compat/opensolaris/kern/opensolaris_policy.c#6 integrate
.. //depot/projects/smpng/sys/cddl/compat/opensolaris/sys/policy.h#4 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c#9 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c#5 integrate
.. //depot/projects/smpng/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#17 integrate
.. //depot/projects/smpng/sys/compat/ia32/ia32_sysvec.c#26 integrate
.. //depot/projects/smpng/sys/conf/files#254 integrate
.. //depot/projects/smpng/sys/conf/files.amd64#70 integrate
.. //depot/projects/smpng/sys/conf/files.i386#129 integrate
.. //depot/projects/smpng/sys/dev/agp/agp_i810.c#10 integrate
.. //depot/projects/smpng/sys/dev/ahci/ahci.c#3 integrate
.. //depot/projects/smpng/sys/dev/ata/chipsets/ata-ati.c#4 integrate
.. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_eeprom_v4k.c#1 branch
.. //depot/projects/smpng/sys/dev/ath/ath_hal/ah_eeprom_v4k.h#1 branch
.. //depot/projects/smpng/sys/dev/bge/if_bge.c#110 integrate
.. //depot/projects/smpng/sys/dev/bge/if_bgereg.h#61 integrate
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_ael1002.c#12 integrate
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_aq100x.c#1 branch
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_common.h#11 integrate
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_mv88e1xxx.c#6 integrate
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_regs.h#4 integrate
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_t3_hw.c#13 integrate
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_tn1010.c#3 integrate
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_vsc8211.c#6 integrate
.. //depot/projects/smpng/sys/dev/cxgb/common/cxgb_xgmac.c#9 integrate
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_adapter.h#17 integrate
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_main.c#26 integrate
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_osdep.h#12 integrate
.. //depot/projects/smpng/sys/dev/cxgb/cxgb_t3fw.h#3 integrate
.. //depot/projects/smpng/sys/dev/drm/drm_pciids.h#17 integrate
.. //depot/projects/smpng/sys/dev/drm/i915_drv.h#12 integrate
.. //depot/projects/smpng/sys/dev/fdc/fdc.c#34 integrate
.. //depot/projects/smpng/sys/dev/gem/if_gem_pci.c#26 integrate
.. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_mod.c#31 integrate
.. //depot/projects/smpng/sys/dev/pci/pci.c#114 integrate
.. //depot/projects/smpng/sys/dev/ppbus/lpt.c#26 integrate
.. //depot/projects/smpng/sys/dev/siis/siis.c#3 integrate
.. //depot/projects/smpng/sys/dev/uart/uart_bus.h#12 integrate
.. //depot/projects/smpng/sys/dev/uart/uart_core.c#20 integrate
.. //depot/projects/smpng/sys/dev/uart/uart_tty.c#25 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci.c#15 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci.h#8 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci_ixp4xx.c#7 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci_mbus.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehci_pci.c#9 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ehcireg.h#1 branch
.. //depot/projects/smpng/sys/dev/usb/controller/ohci.c#12 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ohci.h#7 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ohci_atmelarm.c#6 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ohci_pci.c#8 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/ohcireg.h#1 branch
.. //depot/projects/smpng/sys/dev/usb/controller/uhci.c#12 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/uhci.h#7 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/uhci_pci.c#8 integrate
.. //depot/projects/smpng/sys/dev/usb/controller/uhcireg.h#1 branch
.. //depot/projects/smpng/sys/dev/usb/input/ukbd.c#12 integrate
.. //depot/projects/smpng/sys/dev/usb/net/if_cdce.c#13 integrate
.. //depot/projects/smpng/sys/dev/usb/usbdevs#146 integrate
.. //depot/projects/smpng/sys/dev/usb/wlan/if_rum.c#11 integrate
.. //depot/projects/smpng/sys/dev/usb/wlan/if_uath.c#10 integrate
.. //depot/projects/smpng/sys/dev/usb/wlan/if_upgt.c#10 integrate
.. //depot/projects/smpng/sys/dev/usb/wlan/if_ural.c#10 integrate
.. //depot/projects/smpng/sys/dev/usb/wlan/if_urtw.c#7 integrate
.. //depot/projects/smpng/sys/dev/usb/wlan/if_urtwreg.h#2 integrate
.. //depot/projects/smpng/sys/dev/usb/wlan/if_urtwvar.h#3 integrate
.. //depot/projects/smpng/sys/dev/usb/wlan/if_zyd.c#13 integrate
.. //depot/projects/smpng/sys/fs/tmpfs/tmpfs.h#7 integrate
.. //depot/projects/smpng/sys/fs/tmpfs/tmpfs_subr.c#11 integrate
.. //depot/projects/smpng/sys/fs/tmpfs/tmpfs_vnops.c#14 integrate
.. //depot/projects/smpng/sys/geom/concat/g_concat.c#19 integrate
.. //depot/projects/smpng/sys/geom/label/g_label.c#17 integrate
.. //depot/projects/smpng/sys/geom/part/g_part.c#23 integrate
.. //depot/projects/smpng/sys/geom/part/g_part_gpt.c#12 integrate
.. //depot/projects/smpng/sys/geom/shsec/g_shsec.c#6 integrate
.. //depot/projects/smpng/sys/geom/stripe/g_stripe.c#21 integrate
.. //depot/projects/smpng/sys/geom/uzip/g_uzip.c#11 integrate
.. //depot/projects/smpng/sys/geom/vinum/geom_vinum_create.c#3 integrate
.. //depot/projects/smpng/sys/geom/vinum/geom_vinum_events.c#3 integrate
.. //depot/projects/smpng/sys/geom/vinum/geom_vinum_init.c#14 integrate
.. //depot/projects/smpng/sys/geom/vinum/geom_vinum_move.c#5 integrate
.. //depot/projects/smpng/sys/geom/vinum/geom_vinum_rm.c#17 integrate
.. //depot/projects/smpng/sys/geom/vinum/geom_vinum_subr.c#18 integrate
.. //depot/projects/smpng/sys/i386/conf/GENERIC#116 integrate
.. //depot/projects/smpng/sys/i386/i386/elf_machdep.c#22 integrate
.. //depot/projects/smpng/sys/i386/i386/intr_machdep.c#38 integrate
.. //depot/projects/smpng/sys/i386/i386/nexus.c#31 integrate
.. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#93 integrate
.. //depot/projects/smpng/sys/i386/include/atomic.h#52 integrate
.. //depot/projects/smpng/sys/i386/include/cpufunc.h#43 integrate
.. //depot/projects/smpng/sys/i386/include/elf.h#11 integrate
.. //depot/projects/smpng/sys/i386/include/intr_machdep.h#24 integrate
.. //depot/projects/smpng/sys/i386/xen/xen_machdep.c#10 integrate
.. //depot/projects/smpng/sys/ia64/ia64/elf_machdep.c#28 integrate
.. //depot/projects/smpng/sys/ia64/include/elf.h#15 integrate
.. //depot/projects/smpng/sys/kern/bus_if.m#18 integrate
.. //depot/projects/smpng/sys/kern/imgact_elf.c#69 integrate
.. //depot/projects/smpng/sys/kern/init_main.c#83 integrate
.. //depot/projects/smpng/sys/kern/kern_event.c#61 integrate
.. //depot/projects/smpng/sys/kern/kern_exec.c#125 integrate
.. //depot/projects/smpng/sys/kern/kern_exit.c#146 integrate
.. //depot/projects/smpng/sys/kern/kern_intr.c#101 integrate
.. //depot/projects/smpng/sys/kern/kern_lock.c#80 integrate
.. //depot/projects/smpng/sys/kern/kern_proc.c#109 integrate
.. //depot/projects/smpng/sys/kern/kern_sig.c#152 integrate
.. //depot/projects/smpng/sys/kern/kern_thr.c#53 integrate
.. //depot/projects/smpng/sys/kern/sched_ule.c#97 integrate
.. //depot/projects/smpng/sys/kern/subr_bus.c#86 integrate
.. //depot/projects/smpng/sys/kern/subr_trap.c#93 integrate
.. //depot/projects/smpng/sys/kern/tty.c#99 integrate
.. //depot/projects/smpng/sys/kern/tty_ttydisc.c#9 integrate
.. //depot/projects/smpng/sys/kern/uipc_socket.c#134 integrate
.. //depot/projects/smpng/sys/kern/uipc_usrreq.c#92 integrate
.. //depot/projects/smpng/sys/kern/vfs_acl.c#10 integrate
.. //depot/projects/smpng/sys/mips/include/elf.h#4 integrate
.. //depot/projects/smpng/sys/mips/mips/elf64_machdep.c#4 integrate
.. //depot/projects/smpng/sys/mips/mips/elf_machdep.c#8 integrate
.. //depot/projects/smpng/sys/modules/acpi/acpi/Makefile#20 integrate
.. //depot/projects/smpng/sys/modules/cxgb/cxgb/Makefile#9 integrate
.. //depot/projects/smpng/sys/modules/nfsclient/Makefile#17 integrate
.. //depot/projects/smpng/sys/modules/nfslockd/Makefile#5 integrate
.. //depot/projects/smpng/sys/modules/pf/Makefile#17 integrate
.. //depot/projects/smpng/sys/modules/ubser/Makefile#4 integrate
.. //depot/projects/smpng/sys/net/flowtable.c#9 integrate
.. //depot/projects/smpng/sys/net/flowtable.h#8 integrate
.. //depot/projects/smpng/sys/net/if_bridge.c#63 integrate
.. //depot/projects/smpng/sys/net/if_enc.c#15 integrate
.. //depot/projects/smpng/sys/net/if_ethersubr.c#103 integrate
.. //depot/projects/smpng/sys/net/pfil.c#13 integrate
.. //depot/projects/smpng/sys/net/pfil.h#13 integrate
.. //depot/projects/smpng/sys/net/route.c#53 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_hwmp.c#4 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_mesh.c#4 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_mesh.h#4 integrate
.. //depot/projects/smpng/sys/netgraph/ng_bridge.c#23 integrate
.. //depot/projects/smpng/sys/netinet/if_ether.c#78 integrate
.. //depot/projects/smpng/sys/netinet/in.c#63 integrate
.. //depot/projects/smpng/sys/netinet/ip_fastfwd.c#40 integrate
.. //depot/projects/smpng/sys/netinet/ip_icmp.c#55 integrate
.. //depot/projects/smpng/sys/netinet/ip_input.c#107 integrate
.. //depot/projects/smpng/sys/netinet/ip_output.c#116 integrate
.. //depot/projects/smpng/sys/netinet/ip_var.h#45 integrate
.. //depot/projects/smpng/sys/netinet/ipfw/ip_fw2.c#8 integrate
.. //depot/projects/smpng/sys/netinet/ipfw/ip_fw_pfil.c#6 integrate
.. //depot/projects/smpng/sys/netinet/raw_ip.c#88 integrate
.. //depot/projects/smpng/sys/netinet/sctp_bsd_addr.c#15 integrate
.. //depot/projects/smpng/sys/netinet/sctp_os_bsd.h#28 integrate
.. //depot/projects/smpng/sys/netinet/sctp_output.c#33 integrate
.. //depot/projects/smpng/sys/netinet/sctp_pcb.c#32 integrate
.. //depot/projects/smpng/sys/netinet/tcp_input.c#132 integrate
.. //depot/projects/smpng/sys/netinet6/icmp6.c#62 integrate
.. //depot/projects/smpng/sys/netinet6/in6_ifattach.c#44 integrate
.. //depot/projects/smpng/sys/netinet6/ip6_forward.c#30 integrate
.. //depot/projects/smpng/sys/netinet6/ip6_input.c#72 integrate
.. //depot/projects/smpng/sys/netinet6/ip6_output.c#70 integrate
.. //depot/projects/smpng/sys/netinet6/ip6_var.h#32 integrate
.. //depot/projects/smpng/sys/nfsclient/nfs_kdtrace.c#3 integrate
.. //depot/projects/smpng/sys/nfsclient/nfs_vnops.c#95 integrate
.. //depot/projects/smpng/sys/nlm/nlm.h#5 integrate
.. //depot/projects/smpng/sys/nlm/nlm_prot_impl.c#8 integrate
.. //depot/projects/smpng/sys/nlm/nlm_prot_server.c#4 integrate
.. //depot/projects/smpng/sys/pc98/conf/GENERIC#88 integrate
.. //depot/projects/smpng/sys/powerpc/aim/platform_chrp.c#3 integrate
.. //depot/projects/smpng/sys/powerpc/aim/swtch.S#7 integrate
.. //depot/projects/smpng/sys/powerpc/aim/trap_subr.S#9 integrate
.. //depot/projects/smpng/sys/powerpc/include/elf.h#10 integrate
.. //depot/projects/smpng/sys/powerpc/powerpc/elf_machdep.c#20 integrate
.. //depot/projects/smpng/sys/sparc64/conf/GENERIC#100 integrate
.. //depot/projects/smpng/sys/sparc64/include/elf.h#15 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/elf_machdep.c#26 integrate
.. //depot/projects/smpng/sys/sun4v/include/elf.h#5 integrate
.. //depot/projects/smpng/sys/sys/bus.h#39 integrate
.. //depot/projects/smpng/sys/sys/errno.h#12 integrate
.. //depot/projects/smpng/sys/sys/interrupt.h#29 integrate
.. //depot/projects/smpng/sys/sys/pmc.h#17 integrate
.. //depot/projects/smpng/sys/sys/signalvar.h#33 integrate
.. //depot/projects/smpng/sys/teken/sequences#3 integrate
.. //depot/projects/smpng/sys/teken/teken.c#3 integrate
.. //depot/projects/smpng/sys/teken/teken_subr.h#3 integrate
.. //depot/projects/smpng/sys/vm/swap_pager.c#82 integrate
.. //depot/projects/smpng/sys/vm/vm_mmap.c#82 integrate
.. //depot/projects/smpng/sys/vm/vm_page.c#108 integrate
.. //depot/projects/smpng/sys/vm/vm_page.h#47 integrate
Differences ...
==== //depot/projects/smpng/share/man/man9/Makefile#11 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/share/man/man9/Makefile,v 1.360 2009/09/22 15:15:03 trasz Exp $
+# $FreeBSD: src/share/man/man9/Makefile,v 1.363 2009/10/15 14:54:35 jhb Exp $
MAN= accept_filter.9 \
accf_data.9 \
@@ -23,8 +23,10 @@
bus_activate_resource.9 \
BUS_ADD_CHILD.9 \
bus_alloc_resource.9 \
+ BUS_BIND_INTR.9 \
bus_child_present.9 \
BUS_CONFIG_INTR.9 \
+ BUS_DESCRIBE_INTR.9 \
bus_dma.9 \
bus_generic_attach.9 \
bus_generic_detach.9 \
@@ -403,6 +405,8 @@
MLINKS+=buf.9 bp.9
MLINKS+=bus_activate_resource.9 bus_deactivate_resource.9
MLINKS+=bus_alloc_resource.9 bus_alloc_resource_any.9
+MLINKS+=BUS_BIND_INTR.9 bus_bind_intr.9
+MLINKS+=BUS_DESCRIBE_INTR.9 bus_describe_intr.9
MLINKS+=bus_dma.9 busdma.9 \
bus_dma.9 bus_dmamap_create.9 \
bus_dma.9 bus_dmamap_destroy.9 \
@@ -606,8 +610,10 @@
EVENTHANDLER.9 eventhandler_register.9
MLINKS+=fetch.9 fubyte.9 \
fetch.9 fuswintr.9 \
- fetch.9 fusword.9 \
- fetch.9 fuword.9
+ fetch.9 fuword.9 \
+ fetch.9 fuword16.9 \
+ fetch.9 fuword32.9 \
+ fetch.9 fuword64.9
MLINKS+=g_attach.9 g_detach.9
MLINKS+=g_bio.9 g_clone_bio.9 \
g_bio.9 g_destroy_bio.9 \
@@ -1142,8 +1148,10 @@
stack.9 stack_zero.9
MLINKS+=store.9 subyte.9 \
store.9 suswintr.9 \
- store.9 susword.9 \
- store.9 suword.9
+ store.9 suword.9 \
+ store.9 suword16.9 \
+ store.9 suword32.9 \
+ store.9 suword64.9
MLINKS+=swi.9 swi_add.9 \
swi.9 swi_sched.9
MLINKS+=sx.9 sx_assert.9 \
==== //depot/projects/smpng/share/man/man9/fetch.9#2 (text+ko) ====
@@ -32,31 +32,37 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man9/fetch.9,v 1.10 2001/10/01 16:09:24 ru Exp $
+.\" $FreeBSD: src/share/man/man9/fetch.9,v 1.11 2009/10/05 15:16:28 trasz Exp $
.\"
-.Dd January 7, 1996
+.Dd October 5, 2009
.Dt FETCH 9
.Os
.Sh NAME
.Nm fetch ,
.Nm fubyte ,
-.Nm fusword ,
.Nm fuswintr ,
-.Nm fuword
+.Nm fuword ,
+.Nm fuword16 ,
+.Nm fuword32 ,
+.Nm fuword64
.Nd fetch data from user-space
.Sh SYNOPSIS
.In sys/types.h
.In sys/time.h
.In sys/systm.h
-.In sys/resourcevar.h
.Ft int
.Fn fubyte "const void *base"
+.Ft long
+.Fn fuword "const void *base"
.Ft int
-.Fn fusword "void *base"
+.Fn fuword16 "void *base"
+.Ft int32_t
+.Fn fuword32 "const void *base"
+.Ft int64_t
+.Fn fuword64 "const void *base"
+.In sys/resourcevar.h
.Ft int
.Fn fuswintr "void *base"
-.Ft long
-.Fn fuword "const void *base"
.Sh DESCRIPTION
The
.Nm
@@ -69,16 +75,22 @@
.It Fn fubyte
Fetches a byte of data from the user-space address
.Pa base .
-.It Fn fusword
-Fetches a short word of data from the user-space address
+.It Fn fuword
+Fetches a word of data from the user-space address
+.Pa base .
+.It Fn fuword16
+Fetches 16 bits of data from the user-space address
+.Pa base .
+.It Fn fuword32
+Fetches 32 bits of data from the user-space address
+.Pa base .
+.It Fn fuword64
+Fetches 64 bits of data from the user-space address
.Pa base .
.It Fn fuswintr
Fetches a short word of data from the user-space address
.Pa base .
This function is safe to call during an interrupt context.
-.It Fn fuword
-Fetches a word of data from the user-space address
-.Pa base .
.El
.Sh RETURN VALUES
The
==== //depot/projects/smpng/share/man/man9/store.9#2 (text+ko) ====
@@ -32,15 +32,14 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.\" $FreeBSD: src/share/man/man9/store.9,v 1.11 2001/10/01 16:09:25 ru Exp $
+.\" $FreeBSD: src/share/man/man9/store.9,v 1.12 2009/10/05 15:16:28 trasz Exp $
.\"
-.Dd January 7, 1996
+.Dd October 5, 2009
.Dt STORE 9
.Os
.Sh NAME
.Nm store ,
.Nm subyte ,
-.Nm susword ,
.Nm suswintr ,
.Nm suword
.Nd store data to user-space
@@ -48,15 +47,19 @@
.In sys/types.h
.In sys/time.h
.In sys/systm.h
-.In sys/resourcevar.h
.Ft int
.Fn subyte "void *base" "int byte"
.Ft int
-.Fn susword "void *base" "int word"
+.Fn suword "void *base" "long word"
+.Ft int
+.Fn suword16 "void *base" "int word"
+.Ft int
+.Fn suword32 "void *base" "int32_t word"
+.Ft int
+.Fn suword64 "void *base" "int64_t word"
+.In sys/resourcevar.h
.Ft int
.Fn suswintr "void *base" "int word"
-.Ft int
-.Fn suword "void *base" "long word"
.Sh DESCRIPTION
The
.Nm
@@ -69,16 +72,22 @@
.It Fn subyte
Stores a byte of data to the user-space address
.Pa base .
-.It Fn susword
-Stores a short word of data to the user-space address
+.It Fn suword
+Stores a word of data to the user-space address
+.Pa base .
+.It Fn suword16
+Stores 16 bits of of data to the user-space address
+.Pa base .
+.It Fn suword32
+Stores 32 bits of of data to the user-space address
+.Pa base .
+.It Fn suword64
+Stores 64 bits of of data to the user-space address
.Pa base .
.It Fn suswintr
Stores a short word of data to the user-space address
.Pa base .
This function is safe to call during an interrupt context.
-.It Fn suword
-Stores a word of data to the user-space address
-.Pa base .
.El
.Sh RETURN VALUES
The
==== //depot/projects/smpng/sys/amd64/acpica/acpi_machdep.c#15 (text+ko) ====
@@ -25,13 +25,14 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_machdep.c,v 1.23 2009/09/27 14:00:16 jkim Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_machdep.c,v 1.24 2009/10/08 17:41:53 jkim Exp $");
#include
#include
#include
#include
#include
+
#include
#include
@@ -511,7 +512,6 @@
sc->acpi_clone = apm_create_clone(sc->acpi_dev_t, sc);
clone_setup(&apm_clones);
EVENTHANDLER_REGISTER(dev_clone, apm_clone, 0, 1000);
- acpi_install_wakeup_handler(sc);
if (intr_model != ACPI_INTR_PIC)
acpi_SetIntrModel(intr_model);
@@ -801,13 +801,20 @@
static int
nexus_acpi_attach(device_t dev)
{
+ device_t acpi_dev;
+ int error;
nexus_init_resources();
bus_generic_probe(dev);
- if (BUS_ADD_CHILD(dev, 10, "acpi", 0) == NULL)
+ acpi_dev = BUS_ADD_CHILD(dev, 10, "acpi", 0);
+ if (acpi_dev == NULL)
panic("failed to add acpi0 device");
- return (bus_generic_attach(dev));
+ error = bus_generic_attach(dev);
+ if (error == 0)
+ acpi_install_wakeup_handler(device_get_softc(acpi_dev));
+
+ return (error);
}
static device_method_t nexus_acpi_methods[] = {
==== //depot/projects/smpng/sys/amd64/acpica/acpi_wakecode.S#4 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/amd64/acpica/acpi_wakecode.S,v 1.3 2009/04/02 00:23:56 jkim Exp $
+ * $FreeBSD: src/sys/amd64/acpica/acpi_wakecode.S,v 1.4 2009/10/08 17:41:53 jkim Exp $
*/
#define LOCORE
@@ -54,18 +54,17 @@
.data /* So we can modify it */
ALIGN_TEXT
+ .code16
wakeup_start:
- .code16
/*
* Set up segment registers for real mode, a small stack for
* any calls we make, and clear any flags.
*/
cli /* make sure no interrupts */
- cld
mov %cs, %ax /* copy %cs to %ds. Remember these */
mov %ax, %ds /* are offsets rather than selectors */
mov %ax, %ss
- movw $PAGE_SIZE - 8, %sp
+ movw $PAGE_SIZE, %sp
xorw %ax, %ax
pushw %ax
popfw
@@ -129,6 +128,7 @@
/*
* At this point, we are running in 32 bit legacy protected mode.
*/
+ ALIGN_TEXT
.code32
wakeup_32:
==== //depot/projects/smpng/sys/amd64/acpica/acpi_wakeup.c#9 (text+ko) ====
@@ -28,16 +28,14 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_wakeup.c,v 1.26 2009/06/05 18:44:36 jkim Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/acpica/acpi_wakeup.c,v 1.27 2009/10/08 17:41:53 jkim Exp $");
#include
-#include
#include
#include
#include
#include
#include
-#include
#include
#include
@@ -46,11 +44,11 @@
#include
#include
#include
-#include
#ifdef SMP
#include
#include
+#include
#endif
#include
@@ -63,10 +61,6 @@
/* Make sure the code is less than a page and leave room for the stack. */
CTASSERT(sizeof(wakecode) < PAGE_SIZE - 1024);
-#ifndef _SYS_CDEFS_H_
-#error this file needs sys/cdefs.h as a prerequisite
-#endif
-
extern int acpi_resume_beep;
extern int acpi_reset_video;
@@ -79,7 +73,7 @@
int acpi_restorecpu(struct xpcb *, vm_offset_t);
int acpi_savecpu(struct xpcb *);
-static void acpi_alloc_wakeup_handler(void);
+static void *acpi_alloc_wakeup_handler(void);
static void acpi_stop_beep(void *);
#ifdef SMP
@@ -322,49 +316,50 @@
return (ret);
}
-static vm_offset_t acpi_wakeaddr;
-
-static void
+static void *
acpi_alloc_wakeup_handler(void)
{
void *wakeaddr;
- if (!cold)
- return;
-
/*
* Specify the region for our wakeup code. We want it in the low 1 MB
- * region, excluding video memory and above (0xa0000). We ask for
- * it to be page-aligned, just to be safe.
+ * region, excluding real mode IVT (0-0x3ff), BDA (0x400-0x4ff), EBDA
+ * (less than 128KB, below 0xa0000, must be excluded by SMAP and DSDT),
+ * and ROM area (0xa0000 and above). The temporary page tables must be
+ * page-aligned.
*/
- wakeaddr = contigmalloc(4 * PAGE_SIZE, M_DEVBUF, M_NOWAIT, 0, 0x9ffff,
- PAGE_SIZE, 0ul);
+ wakeaddr = contigmalloc(4 * PAGE_SIZE, M_DEVBUF, M_NOWAIT, 0x500,
+ 0xa0000, PAGE_SIZE, 0ul);
if (wakeaddr == NULL) {
printf("%s: can't alloc wake memory\n", __func__);
- return;
+ return (NULL);
}
stopxpcbs = malloc(mp_ncpus * sizeof(*stopxpcbs), M_DEVBUF, M_NOWAIT);
if (stopxpcbs == NULL) {
contigfree(wakeaddr, 4 * PAGE_SIZE, M_DEVBUF);
printf("%s: can't alloc CPU state memory\n", __func__);
- return;
+ return (NULL);
}
- acpi_wakeaddr = (vm_offset_t)wakeaddr;
+
+ return (wakeaddr);
}
-SYSINIT(acpiwakeup, SI_SUB_KMEM, SI_ORDER_ANY, acpi_alloc_wakeup_handler, 0);
-
void
acpi_install_wakeup_handler(struct acpi_softc *sc)
{
+ static void *wakeaddr = NULL;
uint64_t *pt4, *pt3, *pt2;
int i;
- if (acpi_wakeaddr == 0ul)
+ if (wakeaddr != NULL)
+ return;
+
+ wakeaddr = acpi_alloc_wakeup_handler();
+ if (wakeaddr == NULL)
return;
- sc->acpi_wakeaddr = acpi_wakeaddr;
- sc->acpi_wakephys = vtophys(acpi_wakeaddr);
+ sc->acpi_wakeaddr = (vm_offset_t)wakeaddr;
+ sc->acpi_wakephys = vtophys(wakeaddr);
bcopy(wakecode, (void *)WAKECODE_VADDR(sc), sizeof(wakecode));
@@ -390,7 +385,7 @@
WAKECODE_FIXUP(wakeup_sfmask, uint64_t, rdmsr(MSR_SF_MASK));
/* Build temporary page tables below realmode code. */
- pt4 = (uint64_t *)acpi_wakeaddr;
+ pt4 = wakeaddr;
pt3 = pt4 + (PAGE_SIZE) / sizeof(uint64_t);
pt2 = pt3 + (PAGE_SIZE) / sizeof(uint64_t);
==== //depot/projects/smpng/sys/amd64/amd64/elf_machdep.c#19 (text+ko) ====
@@ -24,7 +24,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/elf_machdep.c,v 1.32 2009/08/30 14:38:17 bz Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/elf_machdep.c,v 1.33 2009/10/03 11:57:21 bz Exp $");
#include
#include
@@ -89,7 +89,7 @@
.flags = BI_CAN_EXEC_DYN | BI_BRAND_NOTE
};
-SYSINIT(elf64, SI_SUB_EXEC, SI_ORDER_ANY,
+SYSINIT(elf64, SI_SUB_EXEC, SI_ORDER_FIRST,
(sysinit_cfunc_t) elf64_insert_brand_entry,
&freebsd_brand_info);
==== //depot/projects/smpng/sys/amd64/amd64/intr_machdep.c#37 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.45 2009/07/01 17:20:07 jhb Exp $
+ * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.47 2009/10/16 12:00:59 kib Exp $
*/
/*
@@ -400,6 +400,23 @@
}
#endif
+/* Add a description to an active interrupt handler. */
+int
+intr_describe(u_int vector, void *ih, const char *descr)
+{
+ struct intsrc *isrc;
+ int error;
+
+ isrc = intr_lookup_source(vector);
+ if (isrc == NULL)
+ return (EINVAL);
+ error = intr_event_describe_handler(isrc->is_event, ih, descr);
+ if (error)
+ return (error);
+ intrcnt_updatename(isrc);
+ return (0);
+}
+
#ifdef DDB
/*
* Dump data about interrupt handlers
==== //depot/projects/smpng/sys/amd64/amd64/nexus.c#30 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.80 2008/03/20 21:24:32 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.81 2009/10/15 14:54:35 jhb Exp $");
/*
* This code implements a `root nexus' for Intel Architecture
@@ -92,6 +92,9 @@
#endif
static int nexus_config_intr(device_t, int, enum intr_trigger,
enum intr_polarity);
+static int nexus_describe_intr(device_t dev, device_t child,
+ struct resource *irq, void *cookie,
+ const char *descr);
static int nexus_activate_resource(device_t, device_t, int, int,
struct resource *);
static int nexus_deactivate_resource(device_t, device_t, int, int,
@@ -135,6 +138,7 @@
DEVMETHOD(bus_bind_intr, nexus_bind_intr),
#endif
DEVMETHOD(bus_config_intr, nexus_config_intr),
+ DEVMETHOD(bus_describe_intr, nexus_describe_intr),
DEVMETHOD(bus_get_resource_list, nexus_get_reslist),
DEVMETHOD(bus_set_resource, nexus_set_resource),
DEVMETHOD(bus_get_resource, nexus_get_resource),
@@ -479,6 +483,14 @@
return (intr_config_intr(irq, trig, pol));
}
+static int
+nexus_describe_intr(device_t dev, device_t child, struct resource *irq,
+ void *cookie, const char *descr)
+{
+
+ return (intr_describe(rman_get_start(irq), cookie, descr));
+}
+
static struct resource_list *
nexus_get_reslist(device_t dev, device_t child)
{
==== //depot/projects/smpng/sys/amd64/conf/GENERIC#85 (text+ko) ====
@@ -16,7 +16,7 @@
# If you are in doubt as to the purpose or necessity of a line, check first
# in NOTES.
#
-# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.533 2009/10/01 02:08:42 rpaulo Exp $
+# $FreeBSD: src/sys/amd64/conf/GENERIC,v 1.534 2009/10/13 19:02:03 jhb Exp $
cpu HAMMER
ident GENERIC
@@ -297,10 +297,6 @@
device ulpt # Printer
device umass # Disks/Mass storage - Requires scbus and da
device ums # Mouse
-device rum # Ralink Technology RT2501USB wireless NICs
-device uath # Atheros AR5523 wireless NICs
-device ural # Ralink Technology RT2500USB wireless NICs
-device zyd # ZyDAS zb1211/zb1211b wireless NICs
device urio # Diamond Rio 500 MP3 player
# USB Serial devices
device uark # Technologies ARK3116 based serial adapters
@@ -319,6 +315,11 @@
device kue # Kawasaki LSI USB Ethernet
device rue # RealTek RTL8150 USB Ethernet
device udav # Davicom DM9601E USB
+# USB Wireless
+device rum # Ralink Technology RT2501USB wireless NICs
+device uath # Atheros AR5523 wireless NICs
+device ural # Ralink Technology RT2500USB wireless NICs
+device zyd # ZyDAS zb1211/zb1211b wireless NICs
# FireWire support
device firewire # FireWire bus code
==== //depot/projects/smpng/sys/amd64/include/atomic.h#33 (text+ko) ====
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/amd64/include/atomic.h,v 1.46 2008/11/22 05:55:56 kmacy Exp $
+ * $FreeBSD: src/sys/amd64/include/atomic.h,v 1.49 2009/10/09 15:51:40 attilio Exp $
*/
#ifndef _MACHINE_ATOMIC_H_
#define _MACHINE_ATOMIC_H_
@@ -32,9 +32,9 @@
#error this file needs sys/cdefs.h as a prerequisite
#endif
-#define mb() __asm__ __volatile__ ("mfence;": : :"memory")
-#define wmb() __asm__ __volatile__ ("sfence;": : :"memory")
-#define rmb() __asm__ __volatile__ ("lfence;": : :"memory")
+#define mb() __asm __volatile("mfence;" : : : "memory")
+#define wmb() __asm __volatile("sfence;" : : : "memory")
+#define rmb() __asm __volatile("lfence;" : : : "memory")
/*
* Various simple operations on memory, each of which is atomic in the
@@ -73,7 +73,8 @@
*/
#if defined(KLD_MODULE) || !defined(__GNUCLIKE_ASM)
#define ATOMIC_ASM(NAME, TYPE, OP, CONS, V) \
-void atomic_##NAME##_##TYPE(volatile u_##TYPE *p, u_##TYPE v)
+void atomic_##NAME##_##TYPE(volatile u_##TYPE *p, u_##TYPE v); \
+void atomic_##NAME##_barr_##TYPE(volatile u_##TYPE *p, u_##TYPE v)
int atomic_cmpset_int(volatile u_int *dst, u_int exp, u_int src);
int atomic_cmpset_long(volatile u_long *dst, u_long exp, u_long src);
@@ -97,8 +98,9 @@
#endif
/*
- * The assembly is volatilized to demark potential before-and-after side
- * effects if an interrupt or SMP collision were to occur.
+ * The assembly is volatilized to avoid code chunk removal by the compiler.
+ * GCC aggressively reorders operations and memory clobbering is necessary
+ * in order to avoid that for memory barriers.
*/
#define ATOMIC_ASM(NAME, TYPE, OP, CONS, V) \
static __inline void \
@@ -108,6 +110,15 @@
: "=m" (*p) \
: CONS (V), "m" (*p)); \
} \
+ \
+static __inline void \
+atomic_##NAME##_barr_##TYPE(volatile u_##TYPE *p, u_##TYPE v)\
+{ \
+ __asm __volatile(MPLOCKED OP \
+ : "=m" (*p) \
+ : CONS (V), "m" (*p) \
+ : "memory"); \
+} \
struct __hack
/*
@@ -205,18 +216,23 @@
* PentiumPro or higher, reads may pass writes, so for that case we have
* to use a serializing instruction (i.e. with LOCK) to do the load in
* SMP kernels. For UP kernels, however, the cache of the single processor
- * is always consistent, so we don't need any memory barriers.
+ * is always consistent, so we only need to take care of compiler.
*/
#define ATOMIC_STORE_LOAD(TYPE, LOP, SOP) \
static __inline u_##TYPE \
atomic_load_acq_##TYPE(volatile u_##TYPE *p) \
{ \
- return (*p); \
+ u_##TYPE tmp; \
+ \
+ tmp = *p; \
+ __asm __volatile ("" : : : "memory"); \
+ return (tmp); \
} \
\
static __inline void \
atomic_store_rel_##TYPE(volatile u_##TYPE *p, u_##TYPE v)\
{ \
+ __asm __volatile ("" : : : "memory"); \
*p = v; \
} \
struct __hack
@@ -247,7 +263,8 @@
__asm __volatile(SOP \
: "=m" (*p), /* 0 */ \
"+r" (v) /* 1 */ \
- : "m" (*p)); /* 2 */ \
+ : "m" (*p) /* 2 */ \
+ : "memory"); \
} \
struct __hack
@@ -327,44 +344,43 @@
#endif /* __GNUCLIKE_ASM */
-/* Acquire and release variants are identical to the normal ones. */
-#define atomic_set_acq_char atomic_set_char
-#define atomic_set_rel_char atomic_set_char
-#define atomic_clear_acq_char atomic_clear_char
-#define atomic_clear_rel_char atomic_clear_char
-#define atomic_add_acq_char atomic_add_char
-#define atomic_add_rel_char atomic_add_char
-#define atomic_subtract_acq_char atomic_subtract_char
-#define atomic_subtract_rel_char atomic_subtract_char
+#define atomic_set_acq_char atomic_set_barr_char
+#define atomic_set_rel_char atomic_set_barr_char
+#define atomic_clear_acq_char atomic_clear_barr_char
+#define atomic_clear_rel_char atomic_clear_barr_char
+#define atomic_add_acq_char atomic_add_barr_char
+#define atomic_add_rel_char atomic_add_barr_char
+#define atomic_subtract_acq_char atomic_subtract_barr_char
+#define atomic_subtract_rel_char atomic_subtract_barr_char
-#define atomic_set_acq_short atomic_set_short
-#define atomic_set_rel_short atomic_set_short
-#define atomic_clear_acq_short atomic_clear_short
-#define atomic_clear_rel_short atomic_clear_short
-#define atomic_add_acq_short atomic_add_short
-#define atomic_add_rel_short atomic_add_short
-#define atomic_subtract_acq_short atomic_subtract_short
-#define atomic_subtract_rel_short atomic_subtract_short
+#define atomic_set_acq_short atomic_set_barr_short
+#define atomic_set_rel_short atomic_set_barr_short
+#define atomic_clear_acq_short atomic_clear_barr_short
+#define atomic_clear_rel_short atomic_clear_barr_short
+#define atomic_add_acq_short atomic_add_barr_short
+#define atomic_add_rel_short atomic_add_barr_short
+#define atomic_subtract_acq_short atomic_subtract_barr_short
+#define atomic_subtract_rel_short atomic_subtract_barr_short
-#define atomic_set_acq_int atomic_set_int
-#define atomic_set_rel_int atomic_set_int
-#define atomic_clear_acq_int atomic_clear_int
-#define atomic_clear_rel_int atomic_clear_int
-#define atomic_add_acq_int atomic_add_int
-#define atomic_add_rel_int atomic_add_int
-#define atomic_subtract_acq_int atomic_subtract_int
-#define atomic_subtract_rel_int atomic_subtract_int
+#define atomic_set_acq_int atomic_set_barr_int
+#define atomic_set_rel_int atomic_set_barr_int
+#define atomic_clear_acq_int atomic_clear_barr_int
+#define atomic_clear_rel_int atomic_clear_barr_int
+#define atomic_add_acq_int atomic_add_barr_int
+#define atomic_add_rel_int atomic_add_barr_int
+#define atomic_subtract_acq_int atomic_subtract_barr_int
+#define atomic_subtract_rel_int atomic_subtract_barr_int
#define atomic_cmpset_acq_int atomic_cmpset_int
#define atomic_cmpset_rel_int atomic_cmpset_int
-#define atomic_set_acq_long atomic_set_long
-#define atomic_set_rel_long atomic_set_long
-#define atomic_clear_acq_long atomic_clear_long
-#define atomic_clear_rel_long atomic_clear_long
-#define atomic_add_acq_long atomic_add_long
-#define atomic_add_rel_long atomic_add_long
-#define atomic_subtract_acq_long atomic_subtract_long
-#define atomic_subtract_rel_long atomic_subtract_long
+#define atomic_set_acq_long atomic_set_barr_long
+#define atomic_set_rel_long atomic_set_barr_long
+#define atomic_clear_acq_long atomic_clear_barr_long
+#define atomic_clear_rel_long atomic_clear_barr_long
+#define atomic_add_acq_long atomic_add_barr_long
+#define atomic_add_rel_long atomic_add_barr_long
+#define atomic_subtract_acq_long atomic_subtract_barr_long
+#define atomic_subtract_rel_long atomic_subtract_barr_long
#define atomic_cmpset_acq_long atomic_cmpset_long
#define atomic_cmpset_rel_long atomic_cmpset_long
==== //depot/projects/smpng/sys/amd64/include/elf.h#8 (text+ko) ====
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/amd64/include/elf.h,v 1.21 2009/03/17 12:50:16 kib Exp $
+ * $FreeBSD: src/sys/amd64/include/elf.h,v 1.22 2009/10/10 15:31:24 kib Exp $
*/
#ifndef _MACHINE_ELF_H_
@@ -106,4 +106,10 @@
#define ELF_TARG_MACH EM_X86_64
#define ELF_TARG_VER 1
+#if __ELF_WORD_SIZE == 32
+#define ET_DYN_LOAD_ADDR 0x01001000
+#else
+#define ET_DYN_LOAD_ADDR 0x01021000
+#endif
+
#endif /* !_MACHINE_ELF_H_ */
==== //depot/projects/smpng/sys/amd64/include/intr_machdep.h#22 (text+ko) ====
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/amd64/include/intr_machdep.h,v 1.24 2009/07/01 17:20:07 jhb Exp $
+ * $FreeBSD: src/sys/amd64/include/intr_machdep.h,v 1.25 2009/10/15 14:54:35 jhb Exp $
*/
#ifndef __MACHINE_INTR_MACHDEP_H__
@@ -151,6 +151,7 @@
#endif
int intr_config_intr(int vector, enum intr_trigger trig,
enum intr_polarity pol);
+int intr_describe(u_int vector, void *ih, const char *descr);
void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame);
u_int intr_next_cpu(void);
struct intsrc *intr_lookup_source(int vector);
>>> TRUNCATED FOR MAIL (1000 lines) <<<
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 14:54:26 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id E645A1065737; Mon, 19 Oct 2009 14:54:25 +0000 (UTC)
Delivered-To: perforce@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 8CCA7106572B
for ; Mon, 19 Oct 2009 14:54:25 +0000 (UTC)
(envelope-from bb+lists.freebsd.perforce@cyrus.watson.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 5F98E8FC21
for ; Mon, 19 Oct 2009 14:54:25 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JEsPb4072549
for ; Mon, 19 Oct 2009 14:54:25 GMT
(envelope-from bb+lists.freebsd.perforce@cyrus.watson.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JEsPp8072547
for perforce@freebsd.org; Mon, 19 Oct 2009 14:54:25 GMT
(envelope-from bb+lists.freebsd.perforce@cyrus.watson.org)
Date: Mon, 19 Oct 2009 14:54:25 GMT
Message-Id: <200910191454.n9JEsPp8072547@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
bb+lists.freebsd.perforce@cyrus.watson.org using -f
From: Robert Watson
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169594 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 14:54:26 -0000
http://p4web.freebsd.org/chv.cgi?CH=169594
Change 169594 by rwatson@rwatson_vimage_client on 2009/10/19 14:54:16
Add reference kernel config for amd64 capabilities work.
Affected files ...
.. //depot/projects/trustedbsd/capabilities/src/sys/amd64/conf/CAPABILITIES#1 add
Differences ...
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 15:01:33 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id EC1D71065676; Mon, 19 Oct 2009 15:01:32 +0000 (UTC)
Delivered-To: perforce@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id B0840106566B
for ; Mon, 19 Oct 2009 15:01:32 +0000 (UTC)
(envelope-from bb+lists.freebsd.perforce@cyrus.watson.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 9BD518FC0A
for ; Mon, 19 Oct 2009 15:01:32 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JF1WwS073025
for ; Mon, 19 Oct 2009 15:01:32 GMT
(envelope-from bb+lists.freebsd.perforce@cyrus.watson.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JF1WUq073023
for perforce@freebsd.org; Mon, 19 Oct 2009 15:01:32 GMT
(envelope-from bb+lists.freebsd.perforce@cyrus.watson.org)
Date: Mon, 19 Oct 2009 15:01:32 GMT
Message-Id: <200910191501.n9JF1WUq073023@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
bb+lists.freebsd.perforce@cyrus.watson.org using -f
From: Robert Watson
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169595 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 15:01:33 -0000
http://p4web.freebsd.org/chv.cgi?CH=169595
Change 169595 by rwatson@rwatson_vimage_client on 2009/10/19 15:01:02
Countless printf(3) format string warning fixes, most inspired
by my rediscovery of amd64.
Affected files ...
.. //depot/projects/trustedbsd/capabilities/src/tools/regression/security/cap_test/cap_test_capabilities.c#5 edit
Differences ...
==== //depot/projects/trustedbsd/capabilities/src/tools/regression/security/cap_test/cap_test_capabilities.c#5 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include
-__FBSDID("$P4: //depot/projects/trustedbsd/capabilities/src/tools/regression/security/cap_test/cap_test_capabilities.c#4 $");
+__FBSDID("$P4: //depot/projects/trustedbsd/capabilities/src/tools/regression/security/cap_test/cap_test_capabilities.c#5 $");
#include
#include
@@ -70,109 +70,109 @@
fd_capcap = cap_new(fd_cap, rights);
if ((fd_capcap < 0) || (fd_capcap == fd_cap))
- err(-1, "cap_new: fd_capcap = %i, fd_cap = %i",
+ err(-1, "cap_new: fd_capcap = %d, fd_cap = %d",
fd_capcap, fd_cap);
ssize = read(fd_cap, &ch, sizeof(ch));
if ((rights & (CAP_READ | CAP_SEEK)) == (CAP_READ | CAP_SEEK)) {
if (ssize < 0)
- warnx("rights 0x%llx read failed error %d", rights,
+ warnx("rights 0x%jx read failed error %d", rights,
errno);
} else {
if (ssize >= 0)
- warnx("rights 0x%llx read succeeded", rights);
+ warnx("rights 0x%jx read succeeded", rights);
else if (errno != ENOTCAPABLE)
- warnx("rights 0x%llx read wrong error %d", rights,
+ warnx("rights 0x%jx read wrong error %d", rights,
errno);
}
ssize = pread(fd_cap, &ch, sizeof(ch), 0);
ssize2 = pread(fd_cap, &ch, sizeof(ch), 0);
if(ssize != ssize2)
- err(-1, "pread(fd_capcap) != pread(fd_cap) (%i != %i)",
+ err(-1, "pread(fd_capcap) != pread(fd_cap) (%zd != %zd)",
ssize2, ssize);
if (rights & CAP_READ) {
if (ssize < 0)
- warnx("rights 0x%llx pread failed error %d", rights,
+ warnx("rights 0x%jx pread failed error %d", rights,
errno);
} else {
if (ssize >= 0)
- warnx("rights 0x%llx pread succeeded", rights);
+ warnx("rights 0x%jx pread succeeded", rights);
else if (errno != ENOTCAPABLE)
- warnx("rights 0x%llx pread wrong error %d", rights,
+ warnx("rights 0x%jx pread wrong error %d", rights,
errno);
}
ssize = write(fd_cap, &ch, sizeof(ch));
if ((rights & (CAP_WRITE | CAP_SEEK)) == (CAP_WRITE | CAP_SEEK)) {
if (ssize < 0)
- warnx("rights 0x%llx write failed error %d", rights,
+ warnx("rights 0x%jx write failed error %d", rights,
errno);
} else {
if (ssize >= 0)
- warnx("rights 0x%llx write succeeded", rights);
+ warnx("rights 0x%jx write succeeded", rights);
else if (errno != ENOTCAPABLE)
- warnx("rights 0x%llx write wrong error %d", rights,
+ warnx("rights 0x%jx write wrong error %d", rights,
errno);
}
ssize = pwrite(fd_cap, &ch, sizeof(ch), 0);
if (rights & CAP_WRITE) {
if (ssize < 0)
- warnx("rights 0x%llx pwrite failed error %d", rights,
+ warnx("rights 0x%jx pwrite failed error %d", rights,
errno);
} else {
if (ssize >= 0)
- warnx("rights 0x%llx pwrite succeeeded", rights);
+ warnx("rights 0x%jx pwrite succeeeded", rights);
else if (errno != ENOTCAPABLE)
- warnx("rights 0x%llx pwrite wrong error %d", rights,
+ warnx("rights 0x%jx pwrite wrong error %d", rights,
errno);
}
off = lseek(fd_cap, 0, SEEK_SET);
if (rights & CAP_SEEK) {
if (off < 0)
- warnx("rights 0x%llx lseek failed error %d", rights,
+ warnx("rights 0x%jx lseek failed error %d", rights,
errno);
} else {
if (off >= 0)
- warnx("rights 0x%llx lseek succeeded", rights);
+ warnx("rights 0x%jx lseek succeeded", rights);
else if (errno != ENOTCAPABLE)
- warnx("rights 0x%llx lseek wrong error %d", rights,
+ warnx("rights 0x%jx lseek wrong error %d", rights,
errno);
}
ret = fchflags(fd_cap, UF_NODUMP);
if (rights & CAP_FCHFLAGS) {
if (ret < 0)
- warnx("rights 0x%llx fchflags failed error %d",
+ warnx("rights 0x%jx fchflags failed error %d",
rights, errno);
} else {
if (ret == 0)
- warnx("rights 0x%llx fchflags succeeded", rights);
+ warnx("rights 0x%jx fchflags succeeded", rights);
}
ret = fstat(fd_cap, &sb);
if (rights & CAP_FSTAT) {
if (ret < 0)
- warnx("rights 0x%llx fstat failed error %d",
+ warnx("rights 0x%jx fstat failed error %d",
rights, errno);
} else {
if (ret == 0)
- warnx("rights 0x%llx fstat succeeded", rights);
+ warnx("rights 0x%jx fstat succeeded", rights);
}
p = mmap(NULL, getpagesize(), PROT_READ, MAP_SHARED, fd_cap, 0);
if ((rights & (CAP_MMAP | CAP_READ)) == (CAP_MMAP | CAP_READ)) {
if (p == MAP_FAILED)
- warnx("rights 0x%llx mmap read failed error %d",
+ warnx("rights 0x%jx mmap read failed error %d",
rights, errno);
else
(void)munmap(p, getpagesize());
} else {
if (p != MAP_FAILED) {
- warnx("rights 0x%llx mmap read succeeded", rights);
+ warnx("rights 0x%jx mmap read succeeded", rights);
(void)munmap(p, getpagesize());
}
}
@@ -180,13 +180,13 @@
p = mmap(NULL, getpagesize(), PROT_WRITE, MAP_SHARED, fd_cap, 0);
if ((rights & (CAP_MMAP | CAP_WRITE)) == (CAP_MMAP | CAP_WRITE)) {
if (p == MAP_FAILED)
- warnx("rights 0x%llx mmap write failed error %d",
+ warnx("rights 0x%jx mmap write failed error %d",
rights, errno);
else
(void)munmap(p, getpagesize());
} else {
if (p != MAP_FAILED) {
- warnx("rights 0x%llx mmap write succeeded", rights);
+ warnx("rights 0x%jx mmap write succeeded", rights);
(void)munmap(p, getpagesize());
}
}
@@ -194,13 +194,13 @@
p = mmap(NULL, getpagesize(), PROT_EXEC, MAP_SHARED, fd_cap, 0);
if ((rights & (CAP_MMAP | CAP_MAPEXEC)) == (CAP_MMAP | CAP_MAPEXEC)) {
if (p == MAP_FAILED)
- warnx("rights 0x%llx mmap mapexec failed error %d",
+ warnx("rights 0x%jx mmap mapexec failed error %d",
rights, errno);
else
(void)munmap(p, getpagesize());
} else {
if (p != MAP_FAILED) {
- warnx("rights 0x%llx mmap mapexec succeeded", rights);
+ warnx("rights 0x%jx mmap mapexec succeeded", rights);
(void)munmap(p, getpagesize());
}
}
@@ -210,13 +210,13 @@
if ((rights & (CAP_MMAP | CAP_READ | CAP_WRITE)) == (CAP_MMAP |
CAP_READ | CAP_WRITE)) {
if (p == MAP_FAILED)
- warnx("rights 0x%llx mmap read|write failed error %d",
+ warnx("rights 0x%jx mmap read|write failed error %d",
rights, errno);
else
(void)munmap(p, getpagesize());
} else {
if (p != MAP_FAILED) {
- warnx("rights 0x%llx mmap read|write succeeded",
+ warnx("rights 0x%jx mmap read|write succeeded",
rights);
(void)munmap(p, getpagesize());
}
@@ -227,13 +227,13 @@
if ((rights & (CAP_MMAP | CAP_READ | CAP_MAPEXEC)) == (CAP_MMAP |
CAP_READ | CAP_MAPEXEC)) {
if (p == MAP_FAILED)
- warnx("rights 0x%llx mmap read|mapexec failed error %d",
+ warnx("rights 0x%jx mmap read|mapexec failed error %d",
rights, errno);
else
(void)munmap(p, getpagesize());
} else {
if (p != MAP_FAILED) {
- warnx("rights 0x%llx mmap read|mapexec succeeded",
+ warnx("rights 0x%jx mmap read|mapexec succeeded",
rights);
(void)munmap(p, getpagesize());
}
@@ -244,13 +244,13 @@
if ((rights & (CAP_MMAP | CAP_MAPEXEC | CAP_WRITE)) == (CAP_MMAP |
CAP_MAPEXEC | CAP_WRITE)) {
if (p == MAP_FAILED)
- warnx("rights 0x%llx mmap mapexec|write failed "
+ warnx("rights 0x%jx mmap mapexec|write failed "
"error %d", rights, errno);
else
(void)munmap(p, getpagesize());
} else {
if (p != MAP_FAILED) {
- warnx("rights 0x%llx mmap mapexec|write succeeded",
+ warnx("rights 0x%jx mmap mapexec|write succeeded",
rights);
(void)munmap(p, getpagesize());
}
@@ -261,13 +261,13 @@
if ((rights & (CAP_MMAP | CAP_READ | CAP_WRITE | CAP_MAPEXEC)) ==
(CAP_MMAP | CAP_READ | CAP_WRITE | CAP_MAPEXEC)) {
if (p == MAP_FAILED)
- warnx("rights 0x%llx mmap read|write|mapexec failed "
+ warnx("rights 0x%jx mmap read|write|mapexec failed "
"error %d", rights, errno);
else
(void)munmap(p, getpagesize());
} else {
if (p != MAP_FAILED) {
- warnx("rights 0x%llx mmap read|write|mapexec "
+ warnx("rights 0x%jx mmap read|write|mapexec "
"succeeded", rights);
(void)munmap(p, getpagesize());
}
@@ -280,41 +280,41 @@
ret = fsync(fd_cap);
if (rights & CAP_FSYNC) {
if (ret < 0)
- warnx("rights 0x%llx fsync failed error %d",
+ warnx("rights 0x%jx fsync failed error %d",
rights, errno);
} else {
if (ret == 0)
- warnx("rights 0x%llx fsync succeeded", rights);
+ warnx("rights 0x%jx fsync succeeded", rights);
}
ret = fchown(fd_cap, -1, -1);
if (rights & CAP_FCHOWN) {
if (ret < 0)
- warnx("rights 0x%llx fchown failed error %d",
+ warnx("rights 0x%jx fchown failed error %d",
rights, errno);
} else {
if (ret == 0)
- warnx("rights 0x%llx fchown succeeded", rights);
+ warnx("rights 0x%jx fchown succeeded", rights);
}
ret = fchmod(fd_cap, 0644);
if (rights & CAP_FCHMOD) {
if (ret < 0)
- warnx("rights 0x%llx fchmod failed error %d",
+ warnx("rights 0x%jx fchmod failed error %d",
rights, errno);
} else {
if (ret == 0)
- warnx("rights 0x%llx fchmod succeeded", rights);
+ warnx("rights 0x%jx fchmod succeeded", rights);
}
ret = ftruncate(fd_cap, 0);
if (rights & CAP_FTRUNCATE) {
if (ret < 0)
- warnx("rights 0x%llx ftruncate failed error %d",
+ warnx("rights 0x%jx ftruncate failed error %d",
rights, errno);
} else {
if (ret == 0)
- warnx("rights 0x%llx ftruncate succeeded", rights);
+ warnx("rights 0x%jx ftruncate succeeded", rights);
}
/* XXX flock */
@@ -322,31 +322,31 @@
ret = fstatfs(fd_cap, &sf);
if (rights & CAP_FSTATFS) {
if (ret < 0)
- warnx("rights 0x%llx fstatfs failed error %d",
+ warnx("rights 0x%jx fstatfs failed error %d",
rights, errno);
} else {
if (ret == 0)
- warnx("rights 0x%llx fstatfs succeeded", rights);
+ warnx("rights 0x%jx fstatfs succeeded", rights);
}
ret = fpathconf(fd_cap, _PC_NAME_MAX);
if (rights & CAP_FPATHCONF) {
if (ret < 0)
- warnx("rights 0x%llx fpathconf failed error %d",
+ warnx("rights 0x%jx fpathconf failed error %d",
rights, errno);
} else {
if (ret == 0)
- warnx("rights 0x%llx fpathconf succeeded", rights);
+ warnx("rights 0x%jx fpathconf succeeded", rights);
}
ret = futimes(fd_cap, NULL);
if (rights & CAP_FUTIMES) {
if (ret < 0)
- warnx("rights 0x%llx futimes failed error %d",
+ warnx("rights 0x%jx futimes failed error %d",
rights, errno);
} else {
if (ret == 0)
- warnx("rights 0x%llx futimes succeeded", rights);
+ warnx("rights 0x%jx futimes succeeded", rights);
}
close (fd_cap);
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 15:23:55 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 9CC921065672; Mon, 19 Oct 2009 15:23:55 +0000 (UTC)
Delivered-To: perforce@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 61356106566C
for ; Mon, 19 Oct 2009 15:23:55 +0000 (UTC)
(envelope-from bb+lists.freebsd.perforce@cyrus.watson.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 4DB0C8FC17
for ; Mon, 19 Oct 2009 15:23:55 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JFNsod075303
for ; Mon, 19 Oct 2009 15:23:54 GMT
(envelope-from bb+lists.freebsd.perforce@cyrus.watson.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JFNseu075301
for perforce@freebsd.org; Mon, 19 Oct 2009 15:23:54 GMT
(envelope-from bb+lists.freebsd.perforce@cyrus.watson.org)
Date: Mon, 19 Oct 2009 15:23:54 GMT
Message-Id: <200910191523.n9JFNseu075301@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
bb+lists.freebsd.perforce@cyrus.watson.org using -f
From: Robert Watson
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169596 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 15:23:55 -0000
http://p4web.freebsd.org/chv.cgi?CH=169596
Change 169596 by rwatson@rwatson_vimage_client on 2009/10/19 15:23:30
amd64 also requires capability mode checks.
Affected files ...
.. //depot/projects/trustedbsd/capabilities/src/sys/amd64/amd64/trap.c#7 edit
Differences ...
==== //depot/projects/trustedbsd/capabilities/src/sys/amd64/amd64/trap.c#7 (text+ko) ====
@@ -44,6 +44,7 @@
* AMD64 Trap and System call handling
*/
+#include "opt_capabilities.h"
#include "opt_clock.h"
#include "opt_cpu.h"
#include "opt_hwpmc_hooks.h"
@@ -68,6 +69,7 @@
#include
#include
#include
+#include
#include
#include
#ifdef KTRACE
@@ -969,6 +971,18 @@
td->td_syscalls++;
+#ifdef CAPABILITIES
+ /*
+ * In capabilities mode, we only allow access to system calls flagged
+ * SYF_CAPENABLED.
+ */
+ if (error == 0) {
+ if (!(callp->sy_flags & SYF_CAPENABLED) &&
+ (td->td_ucred->cr_flags & CRED_FLAG_CAPMODE))
+ error = ENOSYS;
+ }
+#endif
+
if (error == 0) {
td->td_retval[0] = 0;
td->td_retval[1] = frame->tf_rdx;
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 15:38:10 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id EE7031065692; Mon, 19 Oct 2009 15:38:09 +0000 (UTC)
Delivered-To: perforce@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id B300D1065670
for ; Mon, 19 Oct 2009 15:38:09 +0000 (UTC)
(envelope-from trasz@freebsd.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id A05C18FC1B
for ; Mon, 19 Oct 2009 15:38:09 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JFc9eG076160
for ; Mon, 19 Oct 2009 15:38:09 GMT
(envelope-from trasz@freebsd.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JFc9Aj076158
for perforce@freebsd.org; Mon, 19 Oct 2009 15:38:09 GMT
(envelope-from trasz@freebsd.org)
Date: Mon, 19 Oct 2009 15:38:09 GMT
Message-Id: <200910191538.n9JFc9Aj076158@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
trasz@freebsd.org using -f
From: Edward Tomasz Napierala
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169597 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 15:38:10 -0000
http://p4web.freebsd.org/chv.cgi?CH=169597
Change 169597 by trasz@trasz_victim on 2009/10/19 15:37:34
No per-group limits for now.
Affected files ...
.. //depot/projects/soc2009/trasz_limits/usr.sbin/hrl/hrl.8#3 edit
Differences ...
==== //depot/projects/soc2009/trasz_limits/usr.sbin/hrl/hrl.8#3 (text+ko) ====
@@ -68,7 +68,7 @@
.Ar filter
from the HRL database.
.It Fl l Ar filter
-Display resource usage for a subject (process, user, group, login class
+Display resource usage for a subject (process, user, login class
or jail) matching the
.Ar filter .
.Pp
@@ -76,10 +76,10 @@
Syntax for a rule is subject:subject-id:resource:action=amount/per.
.Pp
Subject defines the kind of entity the rule applies to.
-It can be either process, user, group, login class, or jail.
+It can be either process, user, login class, or jail.
.Pp
-Subject ID identifies the subject. It can be user name, group name,
-login class name, or a numerical UID, GID, or JID.
+Subject ID identifies the subject. It can be user name,
+login class name, or a numerical UID, or JID.
.Pp
Resource identifies the resource the rule controls.
.Pp
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 15:39:11 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id DECD31065670; Mon, 19 Oct 2009 15:39:10 +0000 (UTC)
Delivered-To: perforce@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id A3541106566B
for ; Mon, 19 Oct 2009 15:39:10 +0000 (UTC)
(envelope-from trasz@freebsd.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 90F2F8FC14
for ; Mon, 19 Oct 2009 15:39:10 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JFdAxN076218
for ; Mon, 19 Oct 2009 15:39:10 GMT
(envelope-from trasz@freebsd.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JFdAF3076216
for perforce@freebsd.org; Mon, 19 Oct 2009 15:39:10 GMT
(envelope-from trasz@freebsd.org)
Date: Mon, 19 Oct 2009 15:39:10 GMT
Message-Id: <200910191539.n9JFdAF3076216@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
trasz@freebsd.org using -f
From: Edward Tomasz Napierala
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169598 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 15:39:11 -0000
http://p4web.freebsd.org/chv.cgi?CH=169598
Change 169598 by trasz@trasz_victim on 2009/10/19 15:38:49
Remove completed item.
Affected files ...
.. //depot/projects/soc2009/trasz_limits/TODO#14 edit
Differences ...
==== //depot/projects/soc2009/trasz_limits/TODO#14 (text+ko) ====
@@ -4,11 +4,6 @@
- Bring back per-group limits.
- - Fix up (add/remove resource counters) when:
- - Removing a group from a process,
- - Moving a process into a jail.
- - Changing [re]uid;
-
- Some things need to be accounted for per-euid, and some per-egid. Geez.
- In maxproc limit, make sure the 'p' argument is a child process. Otherwise,
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 16:07:40 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id EB1D71065679; Mon, 19 Oct 2009 16:07:39 +0000 (UTC)
Delivered-To: perforce@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id AE9EB1065670
for ; Mon, 19 Oct 2009 16:07:39 +0000 (UTC)
(envelope-from hselasky@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 7EDEC8FC0A
for ; Mon, 19 Oct 2009 16:07:39 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JG7dMM079343
for ; Mon, 19 Oct 2009 16:07:39 GMT
(envelope-from hselasky@FreeBSD.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JG7cc3079341
for perforce@freebsd.org; Mon, 19 Oct 2009 16:07:39 GMT
(envelope-from hselasky@FreeBSD.org)
Date: Mon, 19 Oct 2009 16:07:39 GMT
Message-Id: <200910191607.n9JG7cc3079341@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
hselasky@FreeBSD.org using -f
From: Hans Petter Selasky
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169599 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 16:07:40 -0000
http://p4web.freebsd.org/chv.cgi?CH=169599
Change 169599 by hselasky@hselasky_laptop001 on 2009/10/19 16:07:33
IFC @ 169589
Affected files ...
.. //depot/projects/usb/src/sys/amd64/amd64/intr_machdep.c#12 integrate
.. //depot/projects/usb/src/sys/amd64/amd64/nexus.c#8 integrate
.. //depot/projects/usb/src/sys/amd64/include/intr_machdep.h#10 integrate
.. //depot/projects/usb/src/sys/cddl/compat/opensolaris/rpc/xdr.h#4 branch
.. //depot/projects/usb/src/sys/dev/gem/if_gem_pci.c#7 integrate
.. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_mod.c#13 integrate
.. //depot/projects/usb/src/sys/dev/pci/pci.c#28 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ehci.c#37 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ehci.h#13 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ehci_ixp4xx.c#10 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ehci_mbus.c#9 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ehci_pci.c#15 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ehcireg.h#2 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ohci.c#29 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ohci.h#12 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ohci_atmelarm.c#9 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ohci_pci.c#12 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/ohcireg.h#2 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/uhci.c#27 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/uhci.h#12 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/uhci_pci.c#12 integrate
.. //depot/projects/usb/src/sys/dev/usb/controller/uhcireg.h#2 integrate
.. //depot/projects/usb/src/sys/dev/usb/input/ukbd.c#35 integrate
.. //depot/projects/usb/src/sys/dev/usb/net/if_cdce.c#23 integrate
.. //depot/projects/usb/src/sys/dev/usb/wlan/if_urtw.c#10 integrate
.. //depot/projects/usb/src/sys/dev/usb/wlan/if_urtwreg.h#2 integrate
.. //depot/projects/usb/src/sys/dev/usb/wlan/if_urtwvar.h#4 integrate
.. //depot/projects/usb/src/sys/i386/i386/intr_machdep.c#13 integrate
.. //depot/projects/usb/src/sys/i386/i386/nexus.c#7 integrate
.. //depot/projects/usb/src/sys/i386/include/intr_machdep.h#9 integrate
.. //depot/projects/usb/src/sys/kern/bus_if.m#7 integrate
.. //depot/projects/usb/src/sys/kern/imgact_elf.c#16 integrate
.. //depot/projects/usb/src/sys/kern/kern_intr.c#16 integrate
.. //depot/projects/usb/src/sys/kern/sched_ule.c#19 integrate
.. //depot/projects/usb/src/sys/kern/subr_bus.c#32 integrate
.. //depot/projects/usb/src/sys/kern/tty.c#31 integrate
.. //depot/projects/usb/src/sys/kern/tty_ttydisc.c#8 integrate
.. //depot/projects/usb/src/sys/net/pfil.c#5 integrate
.. //depot/projects/usb/src/sys/net/pfil.h#6 integrate
.. //depot/projects/usb/src/sys/netinet/if_ether.c#30 integrate
.. //depot/projects/usb/src/sys/netinet/in.c#38 integrate
.. //depot/projects/usb/src/sys/netinet/ip_input.c#32 integrate
.. //depot/projects/usb/src/sys/nfsclient/nfs_vnops.c#31 integrate
.. //depot/projects/usb/src/sys/powerpc/aim/platform_chrp.c#3 integrate
.. //depot/projects/usb/src/sys/sparc64/include/elf.h#6 integrate
.. //depot/projects/usb/src/sys/sun4v/include/elf.h#5 integrate
.. //depot/projects/usb/src/sys/sys/bus.h#12 integrate
.. //depot/projects/usb/src/sys/sys/interrupt.h#9 integrate
.. //depot/projects/usb/src/sys/vm/swap_pager.c#17 integrate
Differences ...
==== //depot/projects/usb/src/sys/amd64/amd64/intr_machdep.c#12 (text+ko) ====
@@ -26,7 +26,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.45 2009/07/01 17:20:07 jhb Exp $
+ * $FreeBSD: src/sys/amd64/amd64/intr_machdep.c,v 1.47 2009/10/16 12:00:59 kib Exp $
*/
/*
@@ -400,6 +400,23 @@
}
#endif
+/* Add a description to an active interrupt handler. */
+int
+intr_describe(u_int vector, void *ih, const char *descr)
+{
+ struct intsrc *isrc;
+ int error;
+
+ isrc = intr_lookup_source(vector);
+ if (isrc == NULL)
+ return (EINVAL);
+ error = intr_event_describe_handler(isrc->is_event, ih, descr);
+ if (error)
+ return (error);
+ intrcnt_updatename(isrc);
+ return (0);
+}
+
#ifdef DDB
/*
* Dump data about interrupt handlers
==== //depot/projects/usb/src/sys/amd64/amd64/nexus.c#8 (text+ko) ====
@@ -28,7 +28,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.80 2008/03/20 21:24:32 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/nexus.c,v 1.81 2009/10/15 14:54:35 jhb Exp $");
/*
* This code implements a `root nexus' for Intel Architecture
@@ -92,6 +92,9 @@
#endif
static int nexus_config_intr(device_t, int, enum intr_trigger,
enum intr_polarity);
+static int nexus_describe_intr(device_t dev, device_t child,
+ struct resource *irq, void *cookie,
+ const char *descr);
static int nexus_activate_resource(device_t, device_t, int, int,
struct resource *);
static int nexus_deactivate_resource(device_t, device_t, int, int,
@@ -135,6 +138,7 @@
DEVMETHOD(bus_bind_intr, nexus_bind_intr),
#endif
DEVMETHOD(bus_config_intr, nexus_config_intr),
+ DEVMETHOD(bus_describe_intr, nexus_describe_intr),
DEVMETHOD(bus_get_resource_list, nexus_get_reslist),
DEVMETHOD(bus_set_resource, nexus_set_resource),
DEVMETHOD(bus_get_resource, nexus_get_resource),
@@ -479,6 +483,14 @@
return (intr_config_intr(irq, trig, pol));
}
+static int
+nexus_describe_intr(device_t dev, device_t child, struct resource *irq,
+ void *cookie, const char *descr)
+{
+
+ return (intr_describe(rman_get_start(irq), cookie, descr));
+}
+
static struct resource_list *
nexus_get_reslist(device_t dev, device_t child)
{
==== //depot/projects/usb/src/sys/amd64/include/intr_machdep.h#10 (text+ko) ====
@@ -23,7 +23,7 @@
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
* SUCH DAMAGE.
*
- * $FreeBSD: src/sys/amd64/include/intr_machdep.h,v 1.24 2009/07/01 17:20:07 jhb Exp $
+ * $FreeBSD: src/sys/amd64/include/intr_machdep.h,v 1.25 2009/10/15 14:54:35 jhb Exp $
*/
#ifndef __MACHINE_INTR_MACHDEP_H__
@@ -151,6 +151,7 @@
#endif
int intr_config_intr(int vector, enum intr_trigger trig,
enum intr_polarity pol);
+int intr_describe(u_int vector, void *ih, const char *descr);
void intr_execute_handlers(struct intsrc *isrc, struct trapframe *frame);
u_int intr_next_cpu(void);
struct intsrc *intr_lookup_source(int vector);
==== //depot/projects/usb/src/sys/dev/gem/if_gem_pci.c#7 (text+ko) ====
@@ -29,7 +29,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/gem/if_gem_pci.c,v 1.26 2009/06/23 20:36:59 marius Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/gem/if_gem_pci.c,v 1.27 2009/10/18 17:11:16 nwhitehorn Exp $");
/*
* PCI bindings for Apple GMAC, Sun ERI and Sun GEM Ethernet controllers
@@ -295,6 +295,16 @@
GEM_PCI_ROM_OFFSET + j + PCI_VPDRES_LARGE_SIZE + PCI_VPD_SIZE,
sc->sc_enaddr, ETHER_ADDR_LEN);
#endif
+ /*
+ * The Xserve G5 has a fake GMAC with an all-zero MAC address.
+ * Check for this, and don't attach in this case.
+ */
+
+ for (i = 0; i < ETHER_ADDR_LEN && sc->sc_enaddr[i] == 0; i++) {}
+ if (i == ETHER_ADDR_LEN) {
+ device_printf(dev, "invalid MAC address\n");
+ goto fail;
+ }
if (gem_attach(sc) != 0) {
device_printf(dev, "could not be attached\n");
==== //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_mod.c#13 (text+ko) ====
@@ -30,7 +30,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/hwpmc/hwpmc_mod.c,v 1.43 2009/06/25 20:59:37 attilio Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/hwpmc/hwpmc_mod.c,v 1.44 2009/10/18 13:51:49 rpaulo Exp $");
#include
#include
@@ -504,7 +504,7 @@
pcd = pmc_rowindex_to_classdep[ri];
KASSERT(pcd != NULL,
- ("[amd,%d] ri %d null pcd", __LINE__, ri));
+ ("[pmc,%d] ri %d null pcd", __LINE__, ri));
*adjri = ri - pcd->pcd_ri;
==== //depot/projects/usb/src/sys/dev/pci/pci.c#28 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/pci/pci.c,v 1.387 2009/09/22 15:43:03 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/pci/pci.c,v 1.388 2009/10/15 20:07:08 thompsa Exp $");
#include "opt_bus.h"
==== //depot/projects/usb/src/sys/dev/usb/controller/ehci.c#37 (text+ko) ====
@@ -44,7 +44,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ehci.c,v 1.28 2009/10/01 18:37:16 thompsa Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ehci.c,v 1.29 2009/10/15 20:07:08 thompsa Exp $");
#include
#include
==== //depot/projects/usb/src/sys/dev/usb/controller/ehci.h#13 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/dev/usb/controller/ehci.h,v 1.8 2009/05/29 18:46:57 thompsa Exp $ */
+/* $FreeBSD: src/sys/dev/usb/controller/ehci.h,v 1.9 2009/10/15 20:07:08 thompsa Exp $ */
/*-
* Copyright (c) 2001 The NetBSD Foundation, Inc.
* All rights reserved.
==== //depot/projects/usb/src/sys/dev/usb/controller/ehci_ixp4xx.c#10 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ehci_ixp4xx.c,v 1.7 2009/06/23 02:19:59 thompsa Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ehci_ixp4xx.c,v 1.8 2009/10/15 20:07:08 thompsa Exp $");
#include "opt_bus.h"
==== //depot/projects/usb/src/sys/dev/usb/controller/ehci_mbus.c#9 (text+ko) ====
@@ -34,7 +34,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ehci_mbus.c,v 1.7 2009/06/23 02:19:59 thompsa Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ehci_mbus.c,v 1.8 2009/10/15 20:07:08 thompsa Exp $");
#include "opt_bus.h"
==== //depot/projects/usb/src/sys/dev/usb/controller/ehci_pci.c#15 (text+ko) ====
@@ -36,7 +36,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ehci_pci.c,v 1.9 2009/09/28 07:06:47 thompsa Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ehci_pci.c,v 1.10 2009/10/15 20:07:08 thompsa Exp $");
/*
* USB Enhanced Host Controller Driver, a.k.a. USB 2.0 controller.
==== //depot/projects/usb/src/sys/dev/usb/controller/ehcireg.h#2 (text+ko) ====
==== //depot/projects/usb/src/sys/dev/usb/controller/ohci.c#29 (text+ko) ====
@@ -26,7 +26,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ohci.c,v 1.21 2009/07/30 00:14:34 alfred Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ohci.c,v 1.22 2009/10/15 20:07:08 thompsa Exp $");
/*
* USB Open Host Controller driver.
==== //depot/projects/usb/src/sys/dev/usb/controller/ohci.h#12 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/dev/usb/controller/ohci.h,v 1.7 2009/05/29 18:46:57 thompsa Exp $ */
+/* $FreeBSD: src/sys/dev/usb/controller/ohci.h,v 1.8 2009/10/15 20:07:08 thompsa Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
* All rights reserved.
==== //depot/projects/usb/src/sys/dev/usb/controller/ohci_atmelarm.c#9 (text+ko) ====
@@ -23,7 +23,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ohci_atmelarm.c,v 1.6 2009/06/23 02:19:59 thompsa Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ohci_atmelarm.c,v 1.7 2009/10/15 20:07:08 thompsa Exp $");
#include
#include
==== //depot/projects/usb/src/sys/dev/usb/controller/ohci_pci.c#12 (text+ko) ====
@@ -36,7 +36,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ohci_pci.c,v 1.8 2009/07/30 00:12:47 alfred Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/controller/ohci_pci.c,v 1.9 2009/10/15 20:07:08 thompsa Exp $");
/*
* USB Open Host Controller driver.
==== //depot/projects/usb/src/sys/dev/usb/controller/ohcireg.h#2 (text+ko) ====
==== //depot/projects/usb/src/sys/dev/usb/controller/uhci.c#27 (text+ko) ====
@@ -26,7 +26,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/controller/uhci.c,v 1.21 2009/07/30 00:14:34 alfred Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/controller/uhci.c,v 1.22 2009/10/15 20:07:08 thompsa Exp $");
/*
* USB Universal Host Controller driver.
==== //depot/projects/usb/src/sys/dev/usb/controller/uhci.h#12 (text+ko) ====
@@ -1,4 +1,4 @@
-/* $FreeBSD: src/sys/dev/usb/controller/uhci.h,v 1.7 2009/05/29 18:46:57 thompsa Exp $ */
+/* $FreeBSD: src/sys/dev/usb/controller/uhci.h,v 1.8 2009/10/15 20:07:08 thompsa Exp $ */
/*-
* Copyright (c) 1998 The NetBSD Foundation, Inc.
* All rights reserved.
==== //depot/projects/usb/src/sys/dev/usb/controller/uhci_pci.c#12 (text+ko) ====
@@ -36,7 +36,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/controller/uhci_pci.c,v 1.8 2009/07/30 00:12:47 alfred Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/controller/uhci_pci.c,v 1.9 2009/10/15 20:07:08 thompsa Exp $");
/* Universal Host Controller Interface
*
==== //depot/projects/usb/src/sys/dev/usb/controller/uhcireg.h#2 (text+ko) ====
==== //depot/projects/usb/src/sys/dev/usb/input/ukbd.c#35 (text+ko) ====
@@ -1,5 +1,5 @@
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/input/ukbd.c,v 1.19 2009/10/12 19:19:08 hrs Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/input/ukbd.c,v 1.20 2009/10/15 20:09:27 thompsa Exp $");
/*-
==== //depot/projects/usb/src/sys/dev/usb/net/if_cdce.c#23 (text+ko) ====
@@ -46,7 +46,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/net/if_cdce.c,v 1.16 2009/08/24 05:00:33 alfred Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/net/if_cdce.c,v 1.18 2009/10/15 20:15:29 thompsa Exp $");
#include
#include
==== //depot/projects/usb/src/sys/dev/usb/wlan/if_urtw.c#10 (text+ko) ====
@@ -15,7 +15,7 @@
*/
#include
-__FBSDID("$FreeBSD: src/sys/dev/usb/wlan/if_urtw.c,v 1.12 2009/10/14 20:30:27 weongyo Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/usb/wlan/if_urtw.c,v 1.13 2009/10/18 00:11:49 weongyo Exp $");
#include
#include
#include
@@ -76,6 +76,7 @@
URTW_DEBUG_STATE = 0x00000020, /* 802.11 state transitions */
URTW_DEBUG_STAT = 0x00000040, /* statistic */
URTW_DEBUG_INIT = 0x00000080, /* initialization of dev */
+ URTW_DEBUG_TXSTATUS = 0x00000100, /* tx status */
URTW_DEBUG_ANY = 0xffffffff
};
#define DPRINTF(sc, m, fmt, ...) do { \
@@ -326,13 +327,47 @@
{ 0x0c, 0x0850 }, { 0x0d, 0x0cdf }, { 0x0e, 0x002b }, { 0x0f, 0x0114 }
};
-static struct urtw_pair urtw_8225v2b_rf_part1[] = {
+static struct urtw_pair urtw_8225v2b_rf_part0[] = {
{ 0x00, 0x00b7 }, { 0x01, 0x0ee0 }, { 0x02, 0x044d }, { 0x03, 0x0441 },
{ 0x04, 0x08c3 }, { 0x05, 0x0c72 }, { 0x06, 0x00e6 }, { 0x07, 0x082a },
{ 0x08, 0x003f }, { 0x09, 0x0335 }, { 0x0a, 0x09d4 }, { 0x0b, 0x07bb },
{ 0x0c, 0x0850 }, { 0x0d, 0x0cdf }, { 0x0e, 0x002b }, { 0x0f, 0x0114 }
};
+static struct urtw_pair urtw_8225v2b_rf_part1[] = {
+ {0x0f0, 0x32}, {0x0f1, 0x32}, {0x0f2, 0x00},
+ {0x0f3, 0x00}, {0x0f4, 0x32}, {0x0f5, 0x43},
+ {0x0f6, 0x00}, {0x0f7, 0x00}, {0x0f8, 0x46},
+ {0x0f9, 0xa4}, {0x0fa, 0x00}, {0x0fb, 0x00},
+ {0x0fc, 0x96}, {0x0fd, 0xa4}, {0x0fe, 0x00},
+ {0x0ff, 0x00}, {0x158, 0x4b}, {0x159, 0x00},
+ {0x15a, 0x4b}, {0x15b, 0x00}, {0x160, 0x4b},
+ {0x161, 0x09}, {0x162, 0x4b}, {0x163, 0x09},
+ {0x1ce, 0x0f}, {0x1cf, 0x00}, {0x1e0, 0xff},
+ {0x1e1, 0x0f}, {0x1e2, 0x00}, {0x1f0, 0x4e},
+ {0x1f1, 0x01}, {0x1f2, 0x02}, {0x1f3, 0x03},
+ {0x1f4, 0x04}, {0x1f5, 0x05}, {0x1f6, 0x06},
+ {0x1f7, 0x07}, {0x1f8, 0x08}, {0x24e, 0x00},
+ {0x20c, 0x04}, {0x221, 0x61}, {0x222, 0x68},
+ {0x223, 0x6f}, {0x224, 0x76}, {0x225, 0x7d},
+ {0x226, 0x84}, {0x227, 0x8d}, {0x24d, 0x08},
+ {0x250, 0x05}, {0x251, 0xf5}, {0x252, 0x04},
+ {0x253, 0xa0}, {0x254, 0x1f}, {0x255, 0x23},
+ {0x256, 0x45}, {0x257, 0x67}, {0x258, 0x08},
+ {0x259, 0x08}, {0x25a, 0x08}, {0x25b, 0x08},
+ {0x260, 0x08}, {0x261, 0x08}, {0x262, 0x08},
+ {0x263, 0x08}, {0x264, 0xcf}, {0x272, 0x56},
+ {0x273, 0x9a}, {0x034, 0xf0}, {0x035, 0x0f},
+ {0x05b, 0x40}, {0x084, 0x88}, {0x085, 0x24},
+ {0x088, 0x54}, {0x08b, 0xb8}, {0x08c, 0x07},
+ {0x08d, 0x00}, {0x094, 0x1b}, {0x095, 0x12},
+ {0x096, 0x00}, {0x097, 0x06}, {0x09d, 0x1a},
+ {0x09f, 0x10}, {0x0b4, 0x22}, {0x0be, 0x80},
+ {0x0db, 0x00}, {0x0ee, 0x00}, {0x091, 0x03},
+ {0x24c, 0x00}, {0x39f, 0x00}, {0x08c, 0x01},
+ {0x08d, 0x10}, {0x08e, 0x08}, {0x08f, 0x00}
+};
+
static struct urtw_pair urtw_8225v2_rf_part2[] = {
{ 0x00, 0x01 }, { 0x01, 0x02 }, { 0x02, 0x42 }, { 0x03, 0x00 },
{ 0x04, 0x00 }, { 0x05, 0x00 }, { 0x06, 0x40 }, { 0x07, 0x00 },
@@ -478,6 +513,7 @@
static usb_callback_t urtw_bulk_rx_callback;
static usb_callback_t urtw_bulk_tx_callback;
+static usb_callback_t urtw_bulk_tx_status_callback;
static const struct usb_config urtw_8187b_usbconfig[URTW_8187B_N_XFERS] = {
[URTW_8187B_BULK_RX] = {
@@ -492,6 +528,18 @@
},
.callback = urtw_bulk_rx_callback
},
+ [URTW_8187B_BULK_TX_STATUS] = {
+ .type = UE_BULK,
+ .endpoint = 0x89,
+ .direction = UE_DIR_IN,
+ .bufsize = MCLBYTES,
+ .flags = {
+ .ext_buffer = 1,
+ .pipe_bof = 1,
+ .short_xfer_ok = 1
+ },
+ .callback = urtw_bulk_tx_status_callback
+ },
[URTW_8187B_BULK_TX_BE] = {
.type = UE_BULK,
.endpoint = URTW_8187B_TXPIPE_BE,
@@ -703,9 +751,6 @@
static usb_error_t urtw_adapter_start_b(struct urtw_softc *);
static usb_error_t urtw_set_mode(struct urtw_softc *, uint32_t);
static usb_error_t urtw_8187b_cmd_reset(struct urtw_softc *);
-static usb_error_t urtw_write16_i(struct urtw_softc *, int, uint16_t, int);
-static usb_error_t urtw_write8_i(struct urtw_softc *, int, uint8_t, int);
-static usb_error_t urtw_write32_i(struct urtw_softc *, int, uint32_t, int);
static usb_error_t urtw_do_request(struct urtw_softc *,
struct usb_device_request *, void *);
static usb_error_t urtw_8225v2b_set_txpwrlvl(struct urtw_softc *, int);
@@ -713,6 +758,10 @@
static void urtw_abort_xfers(struct urtw_softc *);
static struct urtw_data *
urtw_getbuf(struct urtw_softc *sc);
+static int urtw_compute_txtime(uint16_t, uint16_t, uint8_t,
+ uint8_t);
+static void urtw_updateslot(struct ifnet *);
+static void urtw_updateslottask(void *, int);
static int
urtw_match(device_t dev)
@@ -757,6 +806,7 @@
MTX_DEF);
usb_callout_init_mtx(&sc->sc_led_ch, &sc->sc_mtx, 0);
TASK_INIT(&sc->sc_led_task, 0, urtw_ledtask, sc);
+ TASK_INIT(&sc->sc_updateslot_task, 0, urtw_updateslottask, sc);
callout_init(&sc->sc_watchdog_ch, 0);
if (sc->sc_flags & URTW_RTL8187B) {
@@ -845,7 +895,7 @@
ic->ic_scan_start = urtw_scan_start;
ic->ic_scan_end = urtw_scan_end;
ic->ic_set_channel = urtw_set_channel;
-
+ ic->ic_updateslot = urtw_updateslot;
ic->ic_vap_create = urtw_vap_create;
ic->ic_vap_delete = urtw_vap_delete;
ic->ic_update_mcast = urtw_update_mcast;
@@ -878,6 +928,7 @@
return (0);
urtw_stop(ifp, 1);
+ ieee80211_draintask(ic, &sc->sc_updateslot_task);
ieee80211_draintask(ic, &sc->sc_led_task);
usb_callout_drain(&sc->sc_led_ch);
@@ -1014,6 +1065,9 @@
if (error != 0)
goto fail;
+ if (sc->sc_flags & URTW_RTL8187B)
+ usbd_transfer_start(sc->sc_xfer[URTW_8187B_BULK_TX_STATUS]);
+
ifp->if_drv_flags &= ~IFF_DRV_OACTIVE;
ifp->if_drv_flags |= IFF_DRV_RUNNING;
@@ -1036,7 +1090,6 @@
urtw_adapter_start_b(struct urtw_softc *sc)
{
#define N(a) (sizeof(a) / sizeof((a)[0]))
- int i;
uint8_t data8;
usb_error_t error;
@@ -1068,81 +1121,12 @@
if (error)
goto fail;
- urtw_write16_m(sc, 0x2d, 0xfff);
- urtw_read8_m(sc, URTW_CW_CONF, &data8);
- urtw_write8_m(sc, URTW_CW_CONF, data8 | URTW_CW_CONF_PERPACKET_RETRY);
- urtw_read8_m(sc, URTW_TX_AGC_CTL, &data8);
- data8 |= URTW_TX_AGC_CTL_PERPACKET_GAIN |
- URTW_TX_AGC_CTL_PERPACKET_ANTSEL;
- urtw_write8_m(sc, URTW_TX_AGC_CTL, data8);
-
- error = urtw_write16_i(sc, 0xe0, 0xfff, 1);
- if (error)
- goto fail;
-
- urtw_read8_m(sc, URTW_RATE_FALLBACK, &data8);
- urtw_write8_m(sc, URTW_RATE_FALLBACK, data8 | URTW_RATE_FALLBACK_ENABLE);
-
- urtw_write16_m(sc, URTW_ATIM_WND, 2);
- urtw_write16_m(sc, URTW_BEACON_INTERVAL, 100);
- error = urtw_write16_i(sc, 0xd4, 0xffff, 1);
- if (error)
- goto fail;
-
- error = urtw_set_mode(sc, URTW_EPROM_CMD_CONFIG);
- if (error)
- goto fail;
- urtw_read8_m(sc, URTW_CONFIG1, &data8);
- urtw_write8_m(sc, URTW_CONFIG1, (data8 & 0x3f) | 0x80);
- error = urtw_set_mode(sc, URTW_EPROM_CMD_NORMAL);
- if (error)
- goto fail;
-
- urtw_write8_m(sc, URTW_WPA_CONFIG, 0);
- for (i = 0; i < N(urtw_8187b_reg_table); i++) {
- error = urtw_write8_i(sc, urtw_8187b_reg_table[i][0],
- urtw_8187b_reg_table[i][1], urtw_8187b_reg_table[i][2]);
- if (error)
- goto fail;
- }
-
- urtw_write16_m(sc, URTW_TID_AC_MAP, 0xfa50);
- urtw_write16_m(sc, URTW_INT_MIG, 0);
-
- error = urtw_write32_i(sc, 0xf0, 0, 1);
- if (error)
- goto fail;
- error = urtw_write32_i(sc, 0xf4, 0, 1);
- if (error)
- goto fail;
- error = urtw_write8_i(sc, 0xf8, 0, 1);
- if (error)
- goto fail;
-
- urtw_write32_m(sc, URTW_RF_TIMING, 0x00004001);
-
- error = urtw_write16_i(sc, 0x72, 0x569a, 2);
- if (error)
- goto fail;
-
- error = urtw_set_mode(sc, URTW_EPROM_CMD_CONFIG);
- if (error)
- goto fail;
- urtw_read8_m(sc, URTW_CONFIG3, &data8);
- urtw_write8_m(sc, URTW_CONFIG3, data8 | URTW_CONFIG3_ANAPARAM_WRITE);
- error = urtw_set_mode(sc, URTW_EPROM_CMD_NORMAL);
- if (error)
- goto fail;
-
- urtw_write16_m(sc, URTW_RF_PINS_OUTPUT, 0x0480);
- urtw_write16_m(sc, URTW_RF_PINS_SELECT, 0x2488);
- urtw_write16_m(sc, URTW_RF_PINS_ENABLE, 0x1fff);
- usb_pause_mtx(&sc->sc_mtx, 100);
-
error = sc->sc_rf_init(sc);
if (error != 0)
goto fail;
+ urtw_write8_m(sc, URTW_CMD, URTW_CMD_RX_ENABLE | URTW_CMD_TX_ENABLE);
+ /* fix RTL8187B RX stall */
error = urtw_intr_enable(sc);
if (error)
goto fail;
@@ -1171,42 +1155,21 @@
urtw_read8_m(sc, 0xdb, &data8);
urtw_write8_m(sc, 0xdb, data8 | (1 << 2));
- error = urtw_write16_i(sc, 0x72, 0x59fa, 3);
- if (error)
- goto fail;
- error = urtw_write16_i(sc, 0x74, 0x59d2, 3);
- if (error)
- goto fail;
- error = urtw_write16_i(sc, 0x76, 0x59d2, 3);
- if (error)
- goto fail;
- error = urtw_write16_i(sc, 0x78, 0x19fa, 3);
- if (error)
- goto fail;
- error = urtw_write16_i(sc, 0x7a, 0x19fa, 3);
- if (error)
- goto fail;
- error = urtw_write16_i(sc, 0x7c, 0x00d0, 3);
- if (error)
- goto fail;
+ urtw_write16_m(sc, 0x372, 0x59fa);
+ urtw_write16_m(sc, 0x374, 0x59d2);
+ urtw_write16_m(sc, 0x376, 0x59d2);
+ urtw_write16_m(sc, 0x378, 0x19fa);
+ urtw_write16_m(sc, 0x37a, 0x19fa);
+ urtw_write16_m(sc, 0x37c, 0x00d0);
urtw_write8_m(sc, 0x61, 0);
- error = urtw_write8_i(sc, 0x80, 0x0f, 1);
- if (error)
- goto fail;
- error = urtw_write8_i(sc, 0x83, 0x03, 1);
- if (error)
- goto fail;
+
+ urtw_write8_m(sc, 0x180, 0x0f);
+ urtw_write8_m(sc, 0x183, 0x03);
urtw_write8_m(sc, 0xda, 0x10);
- error = urtw_write8_i(sc, 0x4d, 0x08, 2);
- if (error)
- goto fail;
+ urtw_write8_m(sc, 0x24d, 0x08);
+ urtw_write32_m(sc, URTW_HSSI_PARA, 0x0600321b);
- urtw_write32_m(sc, URTW_HSSI_PARA, 0x0600321B);
-
- error = urtw_write16_i(sc, 0xec, 0x800, 1);
- if (error)
- goto fail;
-
+ urtw_write16_m(sc, 0x1ec, 0x800); /* RX MAX SIZE */
fail:
return (error);
#undef N
@@ -1310,41 +1273,11 @@
device_printf(sc->sc_dev, "reset timeout\n");
goto fail;
}
-
- error = urtw_set_mode(sc, URTW_EPROM_CMD_LOAD);
- if (error)
- goto fail;
-
- for (i = 0; i < 20; i++) {
- usb_pause_mtx(&sc->sc_mtx, 4);
- urtw_read8_m(sc, URTW_EPROM_CMD, &data8);
- if (!(data8 & URTW_EPROM_CMD_CONFIG))
- break;
- }
- if (i >= 20) {
- device_printf(sc->sc_dev, "eeprom reset timeout\n");
- goto fail;
- }
-
fail:
return (error);
}
static usb_error_t
-urtw_write16_i(struct urtw_softc *sc, int val, uint16_t data, int idx)
-{
- struct usb_device_request req;
-
- req.bmRequestType = UT_WRITE_VENDOR_DEVICE;
- req.bRequest = URTW_8187_SETREGS_REQ;
- USETW(req.wValue, val | 0xff00);
- USETW(req.wIndex, idx & 0x3);
- USETW(req.wLength, sizeof(uint16_t));
-
- return (urtw_do_request(sc, &req, &data));
-}
-
-static usb_error_t
urtw_do_request(struct urtw_softc *sc,
struct usb_device_request *req, void *data)
{
@@ -1367,34 +1300,6 @@
return (err);
}
-static usb_error_t
-urtw_write8_i(struct urtw_softc *sc, int val, uint8_t data, int idx)
-{
- struct usb_device_request req;
-
- req.bmRequestType = UT_WRITE_VENDOR_DEVICE;
- req.bRequest = URTW_8187_SETREGS_REQ;
- USETW(req.wValue, val | 0xff00);
- USETW(req.wIndex, idx & 0x3);
- USETW(req.wLength, sizeof(uint8_t));
-
- return (urtw_do_request(sc, &req, &data));
-}
-
-static usb_error_t
-urtw_write32_i(struct urtw_softc *sc, int val, uint32_t data, int idx)
-{
- struct usb_device_request req;
-
- req.bmRequestType = UT_WRITE_VENDOR_DEVICE;
- req.bRequest = URTW_8187_SETREGS_REQ;
- USETW(req.wValue, val | 0xff00);
- USETW(req.wIndex, idx & 0x3);
- USETW(req.wLength, sizeof(uint32_t));
-
- return (urtw_do_request(sc, &req, &data));
-}
-
static void
urtw_stop_locked(struct ifnet *ifp, int disable)
{
@@ -1534,6 +1439,7 @@
}
sc->sc_txtimer = 5;
+ callout_reset(&sc->sc_watchdog_ch, hz, urtw_watchdog, sc);
}
URTW_UNLOCK(sc);
}
@@ -1733,14 +1639,12 @@
urtw_tx_start(struct urtw_softc *sc, struct ieee80211_node *ni, struct mbuf *m0,
struct urtw_data *data, int prior)
{
- int xferlen;
struct ifnet *ifp = sc->sc_ifp;
struct ieee80211_frame *wh = mtod(m0, struct ieee80211_frame *);
struct ieee80211_key *k;
const struct ieee80211_txparam *tp;
struct ieee80211com *ic = ifp->if_l2com;
struct ieee80211vap *vap = ni->ni_vap;
- struct urtw_8187b_txhdr *hdr;
struct usb_xfer *rtl8187b_pipes[URTW_8187B_TXPIPE_MAX] = {
sc->sc_xfer[URTW_8187B_BULK_TX_BE],
sc->sc_xfer[URTW_8187B_BULK_TX_BK],
@@ -1748,6 +1652,10 @@
sc->sc_xfer[URTW_8187B_BULK_TX_VO]
};
struct usb_xfer *xfer;
+ int dur = 0, rtsdur = 0, rtsenable = 0, ctsenable = 0, rate,
+ pkttime = 0, txdur = 0, isshort = 0, xferlen;
+ uint16_t acktime, rtstime, ctstime;
+ uint32_t flags;
usb_error_t error;
URTW_ASSERT_LOCKED(sc);
@@ -1780,60 +1688,107 @@
ieee80211_radiotap_tx(vap, m0);
}
+ if ((wh->i_fc[10] & IEEE80211_FC0_TYPE_MASK) == IEEE80211_FC0_TYPE_MGT ||
+ (wh->i_fc[0] & IEEE80211_FC0_TYPE_MASK) == IEEE80211_FC0_TYPE_CTL) {
+ tp = &vap->iv_txparms[ieee80211_chan2mode(ic->ic_curchan)];
+ rate = tp->mgmtrate;
+ } else {
+ tp = &vap->iv_txparms[ieee80211_chan2mode(ni->ni_chan)];
+ /* for data frames */
+ if (IEEE80211_IS_MULTICAST(wh->i_addr1))
+ rate = tp->mcastrate;
+ else if (tp->ucastrate != IEEE80211_FIXED_RATE_NONE)
+ rate = tp->ucastrate;
+ else
+ rate = urtw_rtl2rate(sc->sc_currate);
+ }
+
+ if (IEEE80211_IS_MULTICAST(wh->i_addr1))
+ txdur = pkttime = urtw_compute_txtime(m0->m_pkthdr.len +
+ IEEE80211_CRC_LEN, rate, 0, 0);
+ else {
+ acktime = urtw_compute_txtime(14, 2,0, 0);
+ if ((m0->m_pkthdr.len + 4) > vap->iv_rtsthreshold) {
+ rtsenable = 1;
+ ctsenable = 0;
+ rtstime = urtw_compute_txtime(URTW_ACKCTS_LEN, 2, 0, 0);
+ ctstime = urtw_compute_txtime(14, 2, 0, 0);
+ pkttime = urtw_compute_txtime(m0->m_pkthdr.len +
+ IEEE80211_CRC_LEN, rate, 0, isshort);
+ rtsdur = ctstime + pkttime + acktime +
+ 3 * URTW_ASIFS_TIME;
+ txdur = rtstime + rtsdur;
+ } else {
+ rtsenable = ctsenable = rtsdur = 0;
+ pkttime = urtw_compute_txtime(m0->m_pkthdr.len +
+ IEEE80211_CRC_LEN, rate, 0, isshort);
+ txdur = pkttime + URTW_ASIFS_TIME + acktime;
+ }
+
+ if (wh->i_fc[1] & IEEE80211_FC1_MORE_FRAG)
+ dur = urtw_compute_txtime(m0->m_pkthdr.len +
+ IEEE80211_CRC_LEN, rate, 0, isshort) +
+ 3 * URTW_ASIFS_TIME +
+ 2 * acktime;
+ else
+ dur = URTW_ASIFS_TIME + acktime;
+ }
+ *(uint16_t *)wh->i_dur = htole16(dur);
+
xferlen = m0->m_pkthdr.len;
xferlen += (sc->sc_flags & URTW_RTL8187B) ? (4 * 8) : (4 * 3);
if ((0 == xferlen % 64) || (0 == xferlen % 512))
xferlen += 1;
bzero(data->buf, URTW_TX_MAXSIZE);
- data->buf[0] = m0->m_pkthdr.len & 0xff;
- data->buf[1] = (m0->m_pkthdr.len & 0x0f00) >> 8;
- data->buf[1] |= (1 << 7);
-
+ flags = m0->m_pkthdr.len & 0xfff;
+ flags |= URTW_TX_FLAG_NO_ENC;
if ((ic->ic_flags & IEEE80211_F_SHPREAMBLE) &&
(ni->ni_capinfo & IEEE80211_CAPINFO_SHORT_PREAMBLE) &&
(sc->sc_preamble_mode == URTW_PREAMBLE_MODE_SHORT) &&
(sc->sc_currate != 0))
- data->buf[2] |= 1;
- if ((m0->m_pkthdr.len > vap->iv_rtsthreshold) &&
- prior == URTW_PRIORITY_LOW) {
- device_printf(sc->sc_dev, "TODO tx.\n");
- return (EIO);
- }
+ flags |= URTW_TX_FLAG_SPLCP;
if (wh->i_fc[1] & IEEE80211_FC1_MORE_FRAG)
- data->buf[2] |= (1 << 1);
- /* RTS rate - 10 means we use a basic rate. */
- data->buf[2] |= (urtw_rate2rtl(2) << 3);
- /*
- * XXX currently TX rate control depends on the rate value of
- * RX descriptor because I don't know how to we can control TX rate
- * in more smart way. Please fix me you find a thing.
- */
- data->buf[3] = sc->sc_currate;
- if (prior == URTW_PRIORITY_NORMAL) {
- tp = &vap->iv_txparms[ieee80211_chan2mode(ni->ni_chan)];
- if (IEEE80211_IS_MULTICAST(wh->i_addr1))
- data->buf[3] = urtw_rate2rtl(tp->mcastrate);
- else if (tp->ucastrate != IEEE80211_FIXED_RATE_NONE)
- data->buf[3] = urtw_rate2rtl(tp->ucastrate);
- }
+ flags |= URTW_TX_FLAG_MOREFRAG;
+
+ flags |= (sc->sc_currate & 0xf) << URTW_TX_FLAG_TXRATE_SHIFT;
if (sc->sc_flags & URTW_RTL8187B) {
- hdr = (struct urtw_8187b_txhdr *)data->buf;
- hdr->rts_duration = 0;
- hdr->len = 0;
- hdr->retry = 3 | (7 << 4) | 11;
- hdr->tx_duration = ieee80211_compute_duration(ic->ic_rt,
- m0->m_pkthdr.len + IEEE80211_CRC_LEN,
- urtw_rtl2rate(data->buf[3]),
- (ic->ic_flags & IEEE80211_F_SHPREAMBLE) != 0);
- /* XXX MUST fill another variables like rts_duration, tx_.. */
- m_copydata(m0, 0, m0->m_pkthdr.len, (uint8_t *)&data->buf[32]);
+ struct urtw_8187b_txhdr *tx;
+
+ tx = (struct urtw_8187b_txhdr *)data->buf;
+ if (ctsenable)
+ flags |= URTW_TX_FLAG_CTS;
+ if (rtsenable) {
+ flags |= URTW_TX_FLAG_RTS;
+ flags |= (urtw_rate2rtl(11) & 0xf) <<
+ URTW_TX_FLAG_RTSRATE_SHIFT;
+ tx->rtsdur = rtsdur;
+ }
+ tx->flag = htole32(flags);
+ tx->txdur = txdur;
+ if ((wh->i_fc[0] & IEEE80211_FC0_TYPE_MASK) ==
+ IEEE80211_FC0_TYPE_MGT &&
+ (wh->i_fc[0] & IEEE80211_FC0_SUBTYPE_MASK) ==
+ IEEE80211_FC0_SUBTYPE_PROBE_RESP)
+ tx->retry = 1;
+ else
+ tx->retry = URTW_TX_MAXRETRY;
+ m_copydata(m0, 0, m0->m_pkthdr.len, (uint8_t *)(tx + 1));
} else {
- data->buf[8] = 3; /* CW minimum */
- data->buf[8] |= (7 << 4); /* CW maximum */
- data->buf[9] |= 11; /* retry limitation */
- m_copydata(m0, 0, m0->m_pkthdr.len, (uint8_t *)&data->buf[12]);
+ struct urtw_8187l_txhdr *tx;
+
+ tx = (struct urtw_8187l_txhdr *)data->buf;
+ if (rtsenable) {
+ flags |= URTW_TX_FLAG_RTS;
+ tx->rtsdur = rtsdur;
+ }
+ flags |= (urtw_rate2rtl(11) & 0xf) << URTW_TX_FLAG_RTSRATE_SHIFT;
+ tx->flag = htole32(flags);
+ tx->retry = 3; /* CW minimum */
+ tx->retry = 7 << 4; /* CW maximum */
+ tx->retry = URTW_TX_MAXRETRY << 8; /* retry limitation */
+ m_copydata(m0, 0, m0->m_pkthdr.len, (uint8_t *)(tx + 1));
}
data->buflen = xferlen;
@@ -2054,8 +2009,8 @@
req.bmRequestType = UT_READ_VENDOR_DEVICE;
req.bRequest = URTW_8187_GETREGS_REQ;
- USETW(req.wValue, val | 0xff00);
- USETW(req.wIndex, 0);
+ USETW(req.wValue, (val & 0xff) | 0xff00);
+ USETW(req.wIndex, (val >> 8) & 0x3);
USETW(req.wLength, sizeof(uint8_t));
error = urtw_do_request(sc, &req, data);
@@ -2072,8 +2027,8 @@
req.bmRequestType = UT_READ_VENDOR_DEVICE;
req.bRequest = URTW_8187_GETREGS_REQ;
- USETW(req.wValue, val | 0xff00);
- USETW(req.wIndex, 0);
+ USETW(req.wValue, (val & 0xff) | 0xff00);
+ USETW(req.wIndex, (val >> 8) & 0x3);
USETW(req.wLength, sizeof(uint16_t));
error = urtw_do_request(sc, &req, data);
@@ -2090,8 +2045,8 @@
req.bmRequestType = UT_READ_VENDOR_DEVICE;
req.bRequest = URTW_8187_GETREGS_REQ;
- USETW(req.wValue, val | 0xff00);
- USETW(req.wIndex, 0);
+ USETW(req.wValue, (val & 0xff) | 0xff00);
+ USETW(req.wIndex, (val >> 8) & 0x3);
USETW(req.wLength, sizeof(uint32_t));
error = urtw_do_request(sc, &req, data);
@@ -2107,8 +2062,8 @@
req.bmRequestType = UT_WRITE_VENDOR_DEVICE;
req.bRequest = URTW_8187_SETREGS_REQ;
- USETW(req.wValue, val | 0xff00);
- USETW(req.wIndex, 0);
+ USETW(req.wValue, (val & 0xff) | 0xff00);
+ USETW(req.wIndex, (val >> 8) & 0x3);
USETW(req.wLength, sizeof(uint8_t));
return (urtw_do_request(sc, &req, &data));
@@ -2123,8 +2078,8 @@
req.bmRequestType = UT_WRITE_VENDOR_DEVICE;
req.bRequest = URTW_8187_SETREGS_REQ;
- USETW(req.wValue, val | 0xff00);
- USETW(req.wIndex, 0);
+ USETW(req.wValue, (val & 0xff) | 0xff00);
+ USETW(req.wIndex, (val >> 8) & 0x3);
USETW(req.wLength, sizeof(uint16_t));
return (urtw_do_request(sc, &req, &data));
>>> TRUNCATED FOR MAIL (1000 lines) <<<
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 16:21:54 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id EEC7010656AB; Mon, 19 Oct 2009 16:21:53 +0000 (UTC)
Delivered-To: perforce@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id A6FAE1065692
for ; Mon, 19 Oct 2009 16:21:53 +0000 (UTC)
(envelope-from stas@freebsd.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 94A758FC12
for ; Mon, 19 Oct 2009 16:21:53 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JGLrvN080294
for ; Mon, 19 Oct 2009 16:21:53 GMT
(envelope-from stas@freebsd.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JGLrPH080292
for perforce@freebsd.org; Mon, 19 Oct 2009 16:21:53 GMT
(envelope-from stas@freebsd.org)
Date: Mon, 19 Oct 2009 16:21:53 GMT
Message-Id: <200910191621.n9JGLrPH080292@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
stas@freebsd.org using -f
From: Stanislav Sedov
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169600 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 16:21:54 -0000
http://p4web.freebsd.org/chv.cgi?CH=169600
Change 169600 by stas@stas_yandex on 2009/10/19 16:21:39
- Partially workaround signal source detection.
- Do not set SIGINFO flag on SIG_IGN and SIF_DFL.
Affected files ...
.. //depot/projects/valgrind/coregrind/m_signals.c#15 edit
Differences ...
==== //depot/projects/valgrind/coregrind/m_signals.c#15 (text+ko) ====
@@ -747,7 +747,8 @@
/* We don't set a signal stack, so ignore */
/* always ask for SA_SIGINFO */
- skss_flags |= VKI_SA_SIGINFO;
+ if (skss_handler != VKI_SIG_IGN && skss_handler != VKI_SIG_DFL)
+ skss_flags |= VKI_SA_SIGINFO;
#ifdef VGO_linux
/* use our own restorer */
@@ -1407,7 +1408,11 @@
// them.
return ( si_code > VKI_SI_USER ? True : False );
#elif defined(VGO_freebsd)
- return ( (si_code & VKI_SI_USER) == 0 ? True : False );
+ // It looks like there's no reliable way to say where the signal came from
+ if (VG_(threads)[tid].status == VgTs_WaitSys) {
+ return False;
+ } else
+ return True;
#elif defined(VGO_darwin)
// On Darwin 9.6.0, the si_code is completely unreliable. It should be the
// case that 0 means "user", and >0 means "kernel". But:
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 16:24:57 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 5FFDA1065694; Mon, 19 Oct 2009 16:24:57 +0000 (UTC)
Delivered-To: perforce@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id 214F1106566B
for ; Mon, 19 Oct 2009 16:24:57 +0000 (UTC)
(envelope-from hselasky@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 0E07B8FC12
for ; Mon, 19 Oct 2009 16:24:57 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JGOuuH080463
for ; Mon, 19 Oct 2009 16:24:56 GMT
(envelope-from hselasky@FreeBSD.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JGOumf080461
for perforce@freebsd.org; Mon, 19 Oct 2009 16:24:56 GMT
(envelope-from hselasky@FreeBSD.org)
Date: Mon, 19 Oct 2009 16:24:56 GMT
Message-Id: <200910191624.n9JGOumf080461@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
hselasky@FreeBSD.org using -f
From: Hans Petter Selasky
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169601 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 16:24:57 -0000
http://p4web.freebsd.org/chv.cgi?CH=169601
Change 169601 by hselasky@hselasky_laptop001 on 2009/10/19 16:24:34
USB CORE:
- make core debugging parameters tunable
- patch from: Andriy Gapon
Affected files ...
.. //depot/projects/usb/src/sys/dev/usb/controller/ehci.c#38 edit
.. //depot/projects/usb/src/sys/dev/usb/controller/ohci.c#30 edit
.. //depot/projects/usb/src/sys/dev/usb/controller/uhci.c#28 edit
.. //depot/projects/usb/src/sys/dev/usb/input/ukbd.c#36 edit
.. //depot/projects/usb/src/sys/dev/usb/storage/umass.c#35 edit
.. //depot/projects/usb/src/sys/dev/usb/usb_debug.c#11 edit
.. //depot/projects/usb/src/sys/dev/usb/usb_dev.c#38 edit
.. //depot/projects/usb/src/sys/dev/usb/usb_generic.c#23 edit
.. //depot/projects/usb/src/sys/dev/usb/usb_hub.c#35 edit
.. //depot/projects/usb/src/sys/dev/usb/usb_process.c#14 edit
Differences ...
==== //depot/projects/usb/src/sys/dev/usb/controller/ehci.c#38 (text+ko) ====
@@ -99,6 +99,9 @@
SYSCTL_INT(_hw_usb_ehci, OID_AUTO, no_hs, CTLFLAG_RW,
&ehcinohighspeed, 0, "Disable High Speed USB");
+TUNABLE_INT("hw.usb.ehci.debug", &ehcidebug);
+TUNABLE_INT("hw.usb.ehci.no_hs", &ehcinohighspeed);
+
static void ehci_dump_regs(ehci_softc_t *sc);
static void ehci_dump_sqh(ehci_softc_t *sc, ehci_qh_t *sqh);
==== //depot/projects/usb/src/sys/dev/usb/controller/ohci.c#30 (text+ko) ====
@@ -84,6 +84,9 @@
SYSCTL_NODE(_hw_usb, OID_AUTO, ohci, CTLFLAG_RW, 0, "USB ohci");
SYSCTL_INT(_hw_usb_ohci, OID_AUTO, debug, CTLFLAG_RW,
&ohcidebug, 0, "ohci debug level");
+
+TUNABLE_INT("hw.usb.ohci.debug", &ohcidebug);
+
static void ohci_dumpregs(ohci_softc_t *);
static void ohci_dump_tds(ohci_td_t *);
static uint8_t ohci_dump_td(ohci_td_t *);
==== //depot/projects/usb/src/sys/dev/usb/controller/uhci.c#28 (text+ko) ====
@@ -91,6 +91,10 @@
&uhcidebug, 0, "uhci debug level");
SYSCTL_INT(_hw_usb_uhci, OID_AUTO, loop, CTLFLAG_RW,
&uhcinoloop, 0, "uhci noloop");
+
+TUNABLE_INT("hw.usb.uhci.debug", &uhcidebug);
+TUNABLE_INT("hw.usb.uhci.loop", &uhcinoloop);
+
static void uhci_dumpregs(uhci_softc_t *sc);
static void uhci_dump_tds(uhci_td_t *td);
==== //depot/projects/usb/src/sys/dev/usb/input/ukbd.c#36 (text+ko) ====
@@ -105,6 +105,8 @@
SYSCTL_INT(_hw_usb_ukbd, OID_AUTO, no_leds, CTLFLAG_RW,
&ukbd_no_leds, 0, "Disables setting of keyboard leds");
+TUNABLE_INT("hw.usb.ukbd.debug", &ukbd_debug);
+TUNABLE_INT("hw.usb.ukbd.no_leds", &ukbd_no_leds);
#endif
#define UPROTO_BOOT_KEYBOARD 1
==== //depot/projects/usb/src/sys/dev/usb/storage/umass.c#35 (text+ko) ====
@@ -175,6 +175,8 @@
SYSCTL_NODE(_hw_usb, OID_AUTO, umass, CTLFLAG_RW, 0, "USB umass");
SYSCTL_INT(_hw_usb_umass, OID_AUTO, debug, CTLFLAG_RW,
&umass_debug, 0, "umass debug level");
+
+TUNABLE_INT("hw.usb.umass.debug", &umass_debug);
#else
#define DIF(...) do { } while (0)
#define DPRINTF(...) do { } while (0)
==== //depot/projects/usb/src/sys/dev/usb/usb_debug.c#11 (text+ko) ====
@@ -67,6 +67,8 @@
SYSCTL_INT(_hw_usb, OID_AUTO, debug, CTLFLAG_RW,
&usb_debug, 0, "Debug level");
+TUNABLE_INT("hw.usb.debug", &usb_debug);
+
/*------------------------------------------------------------------------*
* usb_dump_iface
*
==== //depot/projects/usb/src/sys/dev/usb/usb_dev.c#38 (text+ko) ====
@@ -85,6 +85,8 @@
SYSCTL_NODE(_hw_usb, OID_AUTO, dev, CTLFLAG_RW, 0, "USB device");
SYSCTL_INT(_hw_usb_dev, OID_AUTO, debug, CTLFLAG_RW,
&usb_fifo_debug, 0, "Debug Level");
+
+TUNABLE_INT("hw.usb.dev.debug", &usb_fifo_debug);
#endif
#if ((__FreeBSD_version >= 700001) || (__FreeBSD_version == 0) || \
==== //depot/projects/usb/src/sys/dev/usb/usb_generic.c#23 (text+ko) ====
@@ -130,6 +130,8 @@
SYSCTL_NODE(_hw_usb, OID_AUTO, ugen, CTLFLAG_RW, 0, "USB generic");
SYSCTL_INT(_hw_usb_ugen, OID_AUTO, debug, CTLFLAG_RW, &ugen_debug,
0, "Debug level");
+
+TUNABLE_INT("hw.usb.ugen.debug", &ugen_debug);
#endif
==== //depot/projects/usb/src/sys/dev/usb/usb_hub.c#35 (text+ko) ====
@@ -79,6 +79,8 @@
SYSCTL_NODE(_hw_usb, OID_AUTO, uhub, CTLFLAG_RW, 0, "USB HUB");
SYSCTL_INT(_hw_usb_uhub, OID_AUTO, debug, CTLFLAG_RW, &uhub_debug, 0,
"Debug level");
+
+TUNABLE_INT("hw.usb.uhub.debug", &uhub_debug);
#endif
#if USB_HAVE_POWERD
==== //depot/projects/usb/src/sys/dev/usb/usb_process.c#14 (text+ko) ====
@@ -83,6 +83,8 @@
SYSCTL_NODE(_hw_usb, OID_AUTO, proc, CTLFLAG_RW, 0, "USB process");
SYSCTL_INT(_hw_usb_proc, OID_AUTO, debug, CTLFLAG_RW, &usb_proc_debug, 0,
"Debug level");
+
+TUNABLE_INT("hw.usb.proc.debug", &usb_proc_debug);
#endif
/*------------------------------------------------------------------------*
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 18:38:18 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id E77AC1065676; Mon, 19 Oct 2009 18:38:17 +0000 (UTC)
Delivered-To: perforce@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id AB88E106566C
for ; Mon, 19 Oct 2009 18:38:17 +0000 (UTC)
(envelope-from trasz@freebsd.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 800EA8FC13
for ; Mon, 19 Oct 2009 18:38:17 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JIcHDV000741
for ; Mon, 19 Oct 2009 18:38:17 GMT
(envelope-from trasz@freebsd.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JIcHo6000739
for perforce@freebsd.org; Mon, 19 Oct 2009 18:38:17 GMT
(envelope-from trasz@freebsd.org)
Date: Mon, 19 Oct 2009 18:38:17 GMT
Message-Id: <200910191838.n9JIcHo6000739@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
trasz@freebsd.org using -f
From: Edward Tomasz Napierala
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169603 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 18:38:18 -0000
http://p4web.freebsd.org/chv.cgi?CH=169603
Change 169603 by trasz@trasz_victim on 2009/10/19 18:38:00
Fix comments and HRL_HC_PARENTS_MAX value.
Affected files ...
.. //depot/projects/soc2009/trasz_limits/sys/sys/hrl.h#40 edit
Differences ...
==== //depot/projects/soc2009/trasz_limits/sys/sys/hrl.h#40 (text+ko) ====
@@ -63,7 +63,7 @@
*/
struct hrl_rule {
int hr_subject_type;
-#if 1
+#ifdef DIAGNOSTIC
struct {
#else
union {
@@ -123,20 +123,28 @@
#define HRL_AMOUNT_UNDEFINED -1
-#define HRL_HC_PARENTS_MAX 32
+/*
+ * Processes may have at most three parent containers - prison, uidinfo,
+ * and loginclass. Other subjects have less - struct prison may have only
+ * one parent container, loginclass and uidinfo structures have none.
+ * This may change when - and if - we add per-group resource limits.
+ */
+#define HRL_HC_PARENTS_MAX 3
/*
* 'hrl_container' defines resource consumption for a particular
* subject, such as process or jail. Containers form a graph - each
* container has zero or more subcontainers and zero or more
* "containing" containers (parents). For example, container for
- * an uidinfo can have several subcontainers for processes for that
+ * an uidinfo can have several subcontainers for processes of that
* user. On the other hand, each process can have several containing
- * containers, one per every group this process belongs to.
+ * containers - one for jail the process is in, one for the user,
+ * one for every group this process belongs to (note that per-group
+ * limits are not implemented yet).
*
* Every process has exactly one container assigned to it. Containers
- * for other objects are created when there is a rule which requires it.
- * For example, uidinfo will have container assigned only if there
+ * for other objects are initialized when there is a rule which requires
+ * it. For example, uidinfo will have container assigned only if there
* is a rule this uidinfo is subject to, and 'hr_per' for this rule
* is HRL_SUBJECT_TYPE_USER.
*/
@@ -146,7 +154,7 @@
};
/*
- * 'hrl_limit' connects rule with every subject it's related to.
+ * 'hrl_limit' connects a rule with every subject it's related to.
* For example, rule 'user:X:openfiles:deny=N/process' is linked
* with uidinfo for user X, and to each process of that user.
*/
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 19:59:39 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 081F01065676; Mon, 19 Oct 2009 19:59:39 +0000 (UTC)
Delivered-To: perforce@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id C0B621065670
for ; Mon, 19 Oct 2009 19:59:38 +0000 (UTC)
(envelope-from hselasky@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id AF5268FC1D
for ; Mon, 19 Oct 2009 19:59:38 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JJxcnD006664
for ; Mon, 19 Oct 2009 19:59:38 GMT
(envelope-from hselasky@FreeBSD.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JJxc9i006662
for perforce@freebsd.org; Mon, 19 Oct 2009 19:59:38 GMT
(envelope-from hselasky@FreeBSD.org)
Date: Mon, 19 Oct 2009 19:59:38 GMT
Message-Id: <200910191959.n9JJxc9i006662@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
hselasky@FreeBSD.org using -f
From: Hans Petter Selasky
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169605 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 19:59:39 -0000
http://p4web.freebsd.org/chv.cgi?CH=169605
Change 169605 by hselasky@hselasky_laptop001 on 2009/10/19 19:59:35
LibUSB:
- clamp timeout variable in user-space aswell as in kernel-space,
so that large timeouts get the maximum timeout.
Affected files ...
.. //depot/projects/usb/src/lib/libusb/libusb20_ugen20.c#8 edit
Differences ...
==== //depot/projects/usb/src/lib/libusb/libusb20_ugen20.c#8 (text+ko) ====
@@ -800,7 +800,11 @@
if (xfer->flags & LIBUSB20_TRANSFER_DO_CLEAR_STALL) {
fsep->flags |= USB_FS_FLAG_CLEAR_STALL;
}
- fsep->timeout = xfer->timeout;
+ /* NOTE: The "fsep->timeout" variable is 16-bit. */
+ if (xfer->timeout > 65535)
+ fsep->timeout = 65535;
+ else
+ fsep->timeout = xfer->timeout;
temp.ep_index = xfer->trIndex;
From owner-p4-projects@FreeBSD.ORG Mon Oct 19 21:56:50 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 1EC9B10656B9; Mon, 19 Oct 2009 21:56:50 +0000 (UTC)
Delivered-To: perforce@freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id A1F51106568B
for ; Mon, 19 Oct 2009 21:56:49 +0000 (UTC)
(envelope-from thompsa@freebsd.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id 7618F8FC1C
for ; Mon, 19 Oct 2009 21:56:49 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9JLun4E027364
for ; Mon, 19 Oct 2009 21:56:49 GMT
(envelope-from thompsa@freebsd.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9JLun5Z027362
for perforce@freebsd.org; Mon, 19 Oct 2009 21:56:49 GMT
(envelope-from thompsa@freebsd.org)
Date: Mon, 19 Oct 2009 21:56:49 GMT
Message-Id: <200910192156.n9JLun5Z027362@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
thompsa@freebsd.org using -f
From: Andrew Thompson
To: Perforce Change Reviews
Precedence: bulk
Cc:
Subject: PERFORCE change 169609 for review
X-BeenThere: p4-projects@freebsd.org
X-Mailman-Version: 2.1.5
List-Id: p4 projects tree changes
List-Unsubscribe: ,
List-Archive:
List-Post:
List-Help:
List-Subscribe: ,
X-List-Received-Date: Mon, 19 Oct 2009 21:56:50 -0000
http://p4web.freebsd.org/chv.cgi?CH=169609
Change 169609 by thompsa@thompsa_burger on 2009/10/19 21:56:18
uch341.c is now dead.
Affected files ...
.. //depot/projects/usb/src/sys/dev/usb/serial/uch341.c#5 delete
Differences ...
From owner-p4-projects@FreeBSD.ORG Tue Oct 20 11:15:08 2009
Return-Path:
Delivered-To: p4-projects@freebsd.org
Received: by hub.freebsd.org (Postfix, from userid 32767)
id 589881065692; Tue, 20 Oct 2009 11:15:08 +0000 (UTC)
Delivered-To: perforce@FreeBSD.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
by hub.freebsd.org (Postfix) with ESMTP id EC68E10656A3
for ; Tue, 20 Oct 2009 11:15:07 +0000 (UTC)
(envelope-from rene@FreeBSD.org)
Received: from repoman.freebsd.org (repoman.freebsd.org
[IPv6:2001:4f8:fff6::29])
by mx1.freebsd.org (Postfix) with ESMTP id DA8ED8FC2E
for ; Tue, 20 Oct 2009 11:15:07 +0000 (UTC)
Received: from repoman.freebsd.org (localhost [127.0.0.1])
by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id n9KBF7nT036812
for ; Tue, 20 Oct 2009 11:15:07 GMT
(envelope-from rene@FreeBSD.org)
Received: (from perforce@localhost)
by repoman.freebsd.org (8.14.3/8.14.3/Submit) id n9KBF7Wj036810
for perforce@freebsd.org; Tue, 20 Oct 2009 11:15:07 GMT
(envelope-from rene@FreeBSD.org)
Date: Tue, 20 Oct 2009 11:15:07 GMT
Message-Id: <200910201115.n9KBF7Wj036810@repoman.freebsd.org>
X-Authentication-Warning: repoman.freebsd.org: perforce set sender to
rene@FreeBSD.org using -f
From: Rene Ladan