svn commit: r219216 - head/sys/dev/ath/ath_rate/sample

2011-03-03 Thread Adrian Chadd
Author: adrian
Date: Thu Mar  3 08:09:49 2011
New Revision: 219216
URL: http://svn.freebsd.org/changeset/base/219216

Log:
  Modify the sample rate module output to be (slightly) easier to understand.
  
  * add dot11rate_label() which returns Mb or MCS based on legacy or HT
  * use it everywhere dot11rate() is used
  * in the "current selection" part at the top of the debugging output,
otuput what the rate itself is rather than the rix. The rate index
(rix) has very little meaning to normal humans who don't know how
to find the PHY settings for each of the chipsets; pointing out the
rix rate and type is likely more useful.

Modified:
  head/sys/dev/ath/ath_rate/sample/sample.c

Modified: head/sys/dev/ath/ath_rate/sample/sample.c
==
--- head/sys/dev/ath/ath_rate/sample/sample.c   Thu Mar  3 05:56:29 2011
(r219215)
+++ head/sys/dev/ath/ath_rate/sample/sample.c   Thu Mar  3 08:09:49 2011
(r219216)
@@ -150,6 +150,12 @@ dot11rate(const HAL_RATE_TABLE *rt, int 
rt->info[rix].dot11Rate : (rt->info[rix].dot11Rate & 
IEEE80211_RATE_VAL) / 2;
 }
 
+static const char *
+dot11rate_label(const HAL_RATE_TABLE *rt, int rix)
+{
+   return rt->info[rix].phy == IEEE80211_T_HT ? "MCS" : "Mb ";
+}
+
 /*
  * Return the rix with the lowest average_tx_time,
  * or -1 if all the average_tx_times are 0.
@@ -553,11 +559,11 @@ ath_rate_tx_complete(struct ath_softc *s
 * Only one rate was used; optimize work.
 */
IEEE80211_NOTE(an->an_node.ni_vap, IEEE80211_MSG_RATECTL,
-&an->an_node, "%s: size %d %s rate/try %d/%d/%d",
+&an->an_node, "%s: size %d %s rate/try %d %s/%d/%d",
 __func__,
 bin_to_size(size_to_bin(frame_size)),
 ts->ts_status ? "FAIL" : "OK",
-dot11rate(rt, final_rix), short_tries, long_tries);
+dot11rate(rt, final_rix), dot11rate_label(rt, final_rix), 
short_tries, long_tries);
update_stats(sc, an, frame_size, 
 final_rix, long_tries,
 0, 0,
@@ -580,16 +586,16 @@ ath_rate_tx_complete(struct ath_softc *s
 
IEEE80211_NOTE(an->an_node.ni_vap, IEEE80211_MSG_RATECTL,
&an->an_node,
-"%s: size %d finaltsidx %d tries %d %s rate/try [%d/%d %d/%d %d/%d %d/%d]", 
+"%s: size %d finaltsidx %d tries %d %s rate/try [%d %s/%d %d %s/%d %d %s/%d %d 
%s/%d]", 
 __func__,
 bin_to_size(size_to_bin(frame_size)),
 finalTSIdx,
 long_tries, 
 ts->ts_status ? "FAIL" : "OK",
-dot11rate(rt, rix[0]), tries[0],
-dot11rate(rt, rix[1]), tries[1],
-dot11rate(rt, rix[2]), tries[2],
-dot11rate(rt, rix[3]), tries[3]);
+dot11rate(rt, rix[0]), dot11rate_label(rt, rix[0]), 
tries[0],
+dot11rate(rt, rix[1]), dot11rate_label(rt, rix[1]), 
tries[1],
+dot11rate(rt, rix[2]), dot11rate_label(rt, rix[2]), 
tries[2],
+dot11rate(rt, rix[3]), dot11rate_label(rt, rix[3]), 
tries[3]);
 
for (i = 0; i < 4; i++) {
if (tries[i] && !IS_RATE_DEFINED(sn, rix[i]))
@@ -765,7 +771,7 @@ ath_rate_ctl_reset(struct ath_softc *sc,
for (mask = sn->ratemask, rix = 0; mask != 0; mask >>= 1, 
rix++) {
if ((mask & 1) == 0)
continue;
-   printf(" %d/%d", dot11rate(rt, rix),
+   printf(" %d %s/%d", dot11rate(rt, rix), 
dot11rate_label(rt, rix),
calc_usecs_unicast_packet(sc, 1600, rix, 0,0,
(ni->ni_htcap & IEEE80211_HTCAP_CHWIDTH40)));
}
@@ -835,8 +841,10 @@ sample_stats(void *arg, struct ieee80211
ether_sprintf(ni->ni_macaddr), ieee80211_node_refcnt(ni),
sn->static_rix, sn->ratemask);
for (y = 0; y < NUM_PACKET_SIZE_BINS; y++) {
-   printf("[%4u] cur rix %d since switch: packets %d ticks %u\n",
+   printf("[%4u] cur rix %d (%d %s) since switch: packets %d ticks 
%u\n",
bin_to_size(y), sn->current_rix[y],
+   dot11rate(rt, sn->current_rix[y]),
+   dot11rate_label(rt, sn->current_rix[y]),
sn->packets_since_switch[y], sn->ticks_since_switch[y]);
printf("[%4u] last sample %d cur sample %d packets sent %d\n",
bin_to_size(y), sn->last_sample_rix[y],
@@ -851,8 +859,8 @@ sample_stats(void *arg, struct ieee80211
for (y = 0; y < NUM_PACKET_SIZE_BINS; y++) {
if (sn->stats[y][rix].total_packets == 0)

svn commit: r219217 - head/sys/dev/ath/ath_hal/ar5416

2011-03-03 Thread Adrian Chadd
Author: adrian
Date: Thu Mar  3 08:30:28 2011
New Revision: 219217
URL: http://svn.freebsd.org/changeset/base/219217

Log:
  * fix the ar5416 check macros to be slightly more correct;
  * add some stubs for chipsets that we haven't yet obtained support for.

Modified:
  head/sys/dev/ath/ath_hal/ar5416/ar5416reg.h

Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416reg.h
==
--- head/sys/dev/ath/ath_hal/ar5416/ar5416reg.h Thu Mar  3 08:09:49 2011
(r219216)
+++ head/sys/dev/ath/ath_hal/ar5416/ar5416reg.h Thu Mar  3 08:30:28 2011
(r219217)
@@ -505,6 +505,7 @@
 #defineAR_PCU_CLEAR_BA_VALID   0x0400 /* clear ba state */
 
 #defineAR_PCU_MISC_MODE2_HWWAR10x0010
+#defineAR_PCU_MISC_MODE2_HWWAR20x0200
 
 /* GPIO Interrupt */
 #defineAR_INTR_GPIO0x3FF0  /* gpio interrupted */
@@ -580,6 +581,7 @@
 #defineAR_XSREV_REVISION_OWL_100   /* Owl 1.0 */
 #defineAR_XSREV_REVISION_OWL_201   /* Owl 2.0/2.1 */
 #defineAR_XSREV_REVISION_OWL_222   /* Owl 2.2 */
+#defineAR_XSREV_VERSION_HOWL   0x14/* Howl (AR9130) */
 #defineAR_XSREV_VERSION_SOWL   0x40
 #defineAR_XSREV_REVISION_SOWL_10   0   /* Sowl 1.0 */
 #defineAR_XSREV_REVISION_SOWL_11   1   /* Sowl 1.1 */
@@ -597,11 +599,11 @@
 (AH_PRIVATE((_ah))->ah_macVersion == AR_XSREV_VERSION_OWL_PCIE))
 
 #defineAR_SREV_OWL_20_OR_LATER(_ah) \
-   (AH_PRIVATE((_ah))->ah_macVersion >= AR_XSREV_VERSION_SOWL || \
-AH_PRIVATE((_ah))->ah_macRev >= AR_XSREV_REVISION_OWL_20)
+   ((AR_SREV_OWL(_ah) && AH_PRIVATE((_ah))->ah_macRev >= 
AR_XSREV_REVISION_OWL_20) || \
+   AH_PRIVATE((_ah))->ah_macVersion >= AR_XSREV_VERSION_HOWL)
 #defineAR_SREV_OWL_22_OR_LATER(_ah) \
-   (AH_PRIVATE((_ah))->ah_macVersion >= AR_XSREV_VERSION_SOWL || \
-AH_PRIVATE((_ah))->ah_macRev >= AR_XSREV_REVISION_OWL_22)
+   ((AR_SREV_OWL(_ah) && AH_PRIVATE((_ah))->ah_macRev >= 
AR_XSREV_REVISION_OWL_22) || \
+   AH_PRIVATE((_ah))->ah_macVersion >= AR_XSREV_VERSION_HOWL)
 
 #defineAR_SREV_SOWL(_ah) \
(AH_PRIVATE((_ah))->ah_macVersion == AR_XSREV_VERSION_SOWL)
@@ -642,4 +644,9 @@
(AR_SREV_KITE_12_OR_LATER(_ah) && \
((OS_REG_READ(_ah, AR_AN_SYNTH9) & 0x7) == 0x1))
 
+/* Not yet implemented chips */
+#defineAR_SREV_9271(_ah)   0
+#defineAR_SREV_9287_11_OR_LATER(_ah)   0
+#defineAR_SREV_9100(_ah)   0
+
 #endif /* _DEV_ATH_AR5416REG_H */
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r219218 - in head/sys/dev/ath/ath_hal: ar5416 ar9002

2011-03-03 Thread Adrian Chadd
Author: adrian
Date: Thu Mar  3 08:38:31 2011
New Revision: 219218
URL: http://svn.freebsd.org/changeset/base/219218

Log:
  Port over ar5416OverrideIni() from ath9k ar5008_hw_override_ini().
  
  * change the BB gating logic to explicitly define which chips are covered;
the ath9k method isn't as clear.
  * don't disable the BB gating for now, the ar5416 initvals have it, and the
ar9160 initval sets it to 0x0. Figure out why before re-enabling this.
  * migrate the Merlin (ar9280) applicable WAR from the Kite (ar9285) code
(which won't get called for Merlin!) and stuff it in here.

Modified:
  head/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c
  head/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c

Modified: head/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c
==
--- head/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c  Thu Mar  3 08:30:28 
2011(r219217)
+++ head/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c  Thu Mar  3 08:38:31 
2011(r219218)
@@ -45,6 +45,7 @@ static void ar5416InitIMR(struct ath_hal
 static void ar5416InitQoS(struct ath_hal *ah);
 static void ar5416InitUserSettings(struct ath_hal *ah);
 static void ar5416UpdateChainMasks(struct ath_hal *ah, HAL_BOOL is_ht);
+static void ar5416OverrideIni(struct ath_hal *ah, const struct 
ieee80211_channel *);
 
 #if 0
 static HAL_BOOLar5416ChannelChange(struct ath_hal *, const struct 
ieee80211_channel *);
@@ -183,6 +184,9 @@ ar5416Reset(struct ath_hal *ah, HAL_OPMO
 
AH5416(ah)->ah_writeIni(ah, chan);
 
+   /* Override ini values (that can be overriden in this fashion) */
+   ar5416OverrideIni(ah, chan);
+
/* Setup 11n MAC/Phy mode registers */
ar5416Set11nRegs(ah, chan); 
 
@@ -2323,3 +2327,57 @@ ar5416GetChannelCenters(struct ath_hal *
centers->ext_center = freq;
}
 }
+
+/*
+ * Override the INI vals being programmed.
+ */
+static void
+ar5416OverrideIni(struct ath_hal *ah, const struct ieee80211_channel *chan)
+{
+   uint32_t val;
+
+   /*
+* Set the RX_ABORT and RX_DIS and clear if off only after
+* RXE is set for MAC. This prevents frames with corrupted
+* descriptor status.
+*/
+   OS_REG_SET_BIT(ah, AR_DIAG_SW, (AR_DIAG_RX_DIS | AR_DIAG_RX_ABORT));
+
+if (AR_SREV_MERLIN_20_OR_LATER(ah)) {
+val = OS_REG_READ(ah, AR_PCU_MISC_MODE2);
+
+if (!AR_SREV_9271(ah))
+val &= ~AR_PCU_MISC_MODE2_HWWAR1;
+
+if (AR_SREV_9287_11_OR_LATER(ah))
+val = val & (~AR_PCU_MISC_MODE2_HWWAR2);
+
+OS_REG_WRITE(ah, AR_PCU_MISC_MODE2, val);
+}
+
+   /*
+* The AR5416 initvals have this already set to 0x11; AR9160 has
+* the register set to 0x0. Figure out whether AR9100/AR9160 needs
+* this before moving forward with it.
+*/
+#if 0
+   /* Disable BB clock gating for AR5416v2, AR9100, AR9160 */
+if (AR_SREV_OWL_20_OR_LATER(ah) || AR_SREV_9100(ah) || 
AR_SREV_SOWL(ah)) {
+   /*
+* Disable BB clock gating
+* Necessary to avoid issues on AR5416 2.0
+*/
+   OS_REG_WRITE(ah, 0x9800 + (651 << 2), 0x11);
+   }
+#endif
+
+   /*
+* Disable RIFS search on some chips to avoid baseband
+* hang issues.
+*/
+   if (AR_SREV_9100(ah) || AR_SREV_SOWL(ah)) {
+   val = OS_REG_READ(ah, AR_PHY_HEAVY_CLIP_FACTOR_RIFS);
+   val &= ~AR_PHY_RIFS_INIT_DELAY;
+   OS_REG_WRITE(ah, AR_PHY_HEAVY_CLIP_FACTOR_RIFS, val);
+   }
+}

Modified: head/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c
==
--- head/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c Thu Mar  3 08:30:28 
2011(r219217)
+++ head/sys/dev/ath/ath_hal/ar9002/ar9285_attach.c Thu Mar  3 08:38:31 
2011(r219218)
@@ -339,17 +339,6 @@ ar9285WriteIni(struct ath_hal *ah, const
}
regWrites = ath_hal_ini_write(ah, &AH5212(ah)->ah_ini_common,
1, regWrites);
-
-   OS_REG_SET_BIT(ah, AR_DIAG_SW, (AR_DIAG_RX_DIS | AR_DIAG_RX_ABORT));
-
-   if (AR_SREV_MERLIN_10_OR_LATER(ah)) {
-   uint32_t val;
-   val = OS_REG_READ(ah, AR_PCU_MISC_MODE2) &
-   (~AR_PCU_MISC_MODE2_HWWAR1);
-   OS_REG_WRITE(ah, AR_PCU_MISC_MODE2, val);
-   OS_REG_WRITE(ah, 0x9800 + (651 << 2), 0x11);
-   }
-
 }
 
 /*
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r219221 - in head/sys: conf dev/usb/serial

2011-03-03 Thread Hans Petter Selasky
Author: hselasky
Date: Thu Mar  3 10:25:41 2011
New Revision: 219221
URL: http://svn.freebsd.org/changeset/base/219221

Log:
  - Remove dependency to ucom from ulpt.
  
  MFC after:14 days
  Approved by:  thompsa (mentor)

Modified:
  head/sys/conf/files
  head/sys/dev/usb/serial/ulpt.c

Modified: head/sys/conf/files
==
--- head/sys/conf/files Thu Mar  3 09:49:03 2011(r219220)
+++ head/sys/conf/files Thu Mar  3 10:25:41 2011(r219221)
@@ -1878,7 +1878,7 @@ dev/usb/serial/uvisor.c   optional uvisor
 dev/usb/serial/uvscom.coptional uvscom
 dev/usb/serial/usb_serial.coptional ucom | u3g | uark | ubsa | ubser | \
 uchcom | ucycom | ufoma | uftdi | \
-ugensa | uipaq | ulpt | umct | \
+ugensa | uipaq | umct | \
 umodem | umoscom | uplcom | uslcom | \
 uvisor | uvscom
 #

Modified: head/sys/dev/usb/serial/ulpt.c
==
--- head/sys/dev/usb/serial/ulpt.c  Thu Mar  3 09:49:03 2011
(r219220)
+++ head/sys/dev/usb/serial/ulpt.c  Thu Mar  3 10:25:41 2011
(r219221)
@@ -743,5 +743,4 @@ static driver_t ulpt_driver = {
 
 DRIVER_MODULE(ulpt, uhub, ulpt_driver, ulpt_devclass, NULL, 0);
 MODULE_DEPEND(ulpt, usb, 1, 1, 1);
-MODULE_DEPEND(ulpt, ucom, 1, 1, 1);
 MODULE_VERSION(ulpt, 1);
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219138 - head/usr.bin/kdump

2011-03-03 Thread Robert Watson


On Tue, 1 Mar 2011, Dmitry Chagin wrote:


 Teach kdump to decode linux syscalls names too.

 Fix bug introduced in my previous commit: the kernel always dump native
 signal numbers, so no need to check the ABI in ktrpsig().


Does this mean that we're eliminating the need for the long-broken 
linux_kdump?


Is there any ABI record in ktrace files, and/or should we add one somehow?

I'd love to be able to process a kdump file generated from a blend of ABIs: 
i.e., if I do ktrace -di tcsh, and then run a bunch of commands from different 
ABIs (FreeBSD/32-bit Intel, FreeBSD/64-bit Intel, Linux/32-bit Intel, and 
possible FreeBSD/64 MIPS so that a distributed ktracing tool gathers the 
results across hosts for a single action), have kdump Just Work.  This 
suggests that a per-record ABI indicator might be useful.


Robert



 Suggested by:  jhb
 MFC after: 1 Month.

Added:
 head/usr.bin/kdump/linux_syscalls.conf   (contents, props changed)
Modified:
 head/usr.bin/kdump/Makefile
 head/usr.bin/kdump/kdump.c

Modified: head/usr.bin/kdump/Makefile
==
--- head/usr.bin/kdump/Makefile Tue Mar  1 14:54:14 2011(r219137)
+++ head/usr.bin/kdump/Makefile Tue Mar  1 16:42:28 2011(r219138)
@@ -1,15 +1,23 @@
#   @(#)Makefile8.1 (Berkeley) 6/6/93
# $FreeBSD$

+.if (${MACHINE_ARCH} == "amd64")
+SFX=   32
+.endif
+
.PATH: ${.CURDIR}/../ktrace

PROG=   kdump
SRCS=   kdump.c ioctl.c kdump_subr.c subr.c
CFLAGS+=-I${.CURDIR}/../ktrace -I${.CURDIR} -I${.CURDIR}/../..

+.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386"
+SRCS+= linux_syscalls.c
+.endif
+
WARNS?= 0

-CLEANFILES=ioctl.c kdump_subr.c
+CLEANFILES=ioctl.c kdump_subr.c linux_syscalls.c

ioctl.c: mkioctls
sh ${.CURDIR}/mkioctls ${DESTDIR}/usr/include > ${.TARGET}
@@ -17,4 +25,10 @@ ioctl.c: mkioctls
kdump_subr.c: mksubr
sh ${.CURDIR}/mksubr ${DESTDIR}/usr/include > ${.TARGET}

+linux_syscalls.c:
+   /bin/sh ${.CURDIR}/../../sys/kern/makesyscalls.sh \
+   ${.CURDIR}/../../sys/${MACHINE_ARCH}/linux${SFX}/syscalls.master 
${.CURDIR}/linux_syscalls.conf
+   echo "int nlinux_syscalls = sizeof(linux_syscallnames) / 
sizeof(linux_syscallnames[0]);" \
+   >> linux_syscalls.c
+
.include 

Modified: head/usr.bin/kdump/kdump.c
==
--- head/usr.bin/kdump/kdump.c  Tue Mar  1 14:54:14 2011(r219137)
+++ head/usr.bin/kdump/kdump.c  Tue Mar  1 16:42:28 2011(r219138)
@@ -93,7 +93,7 @@ void ktrnamei(char *, int);
void hexdump(char *, int, int);
void visdump(char *, int, int);
void ktrgenio(struct ktr_genio *, int);
-void ktrpsig(struct ktr_psig *, u_int);
+void ktrpsig(struct ktr_psig *);
void ktrcsw(struct ktr_csw *);
void ktruser(int, unsigned char *);
void ktrsockaddr(struct sockaddr *);
@@ -111,6 +111,41 @@ struct ktr_header ktr_header;
#define TIME_FORMAT "%b %e %T %Y"
#define eqs(s1, s2) (strcmp((s1), (s2)) == 0)

+#define print_number(i,n,c) do {   \
+   if (decimal)\
+   printf("%c%ld", c, (long)*i); \
+   else\
+   printf("%c%#lx", c, (long)*i);\
+   i++;\
+   n--;\
+   c = ',';\
+   } while (0);
+
+#if defined(__amd64__) || defined(__i386__)
+
+void linux_ktrsyscall(struct ktr_syscall *);
+void linux_ktrsysret(struct ktr_sysret *);
+extern char *linux_syscallnames[];
+extern int nlinux_syscalls;
+
+/*
+ * from linux.h
+ * Linux syscalls return negative errno's, we do positive and map them
+ */
+static int bsd_to_linux_errno[ELAST + 1] = {
+   -0,  -1,  -2,  -3,  -4,  -5,  -6,  -7,  -8,  -9,
+   -10, -35, -12, -13, -14, -15, -16, -17, -18, -19,
+   -20, -21, -22, -23, -24, -25, -26, -27, -28, -29,
+   -30, -31, -32, -33, -34, -11,-115,-114, -88, -89,
+   -90, -91, -92, -93, -94, -95, -96, -97, -98, -99,
+   -100,-101,-102,-103,-104,-105,-106,-107,-108,-109,
+   -110,-111, -40, -36,-112,-113, -39, -11, -87,-122,
+   -116, -66,  -6,  -6,  -6,  -6,  -6, -37, -38,  -9,
+   -6,  -6, -43, -42, -75,-125, -84, -95, -16, -74,
+   -72, -67, -71
+};
+#endif
+
struct proc_info
{
TAILQ_ENTRY(proc_info)  info;
@@ -233,10 +268,20 @@ main(int argc, char *argv[])
drop_logged = 0;
switch (ktr_header.ktr_type) {
case KTR_SYSCALL:
-   ktrsyscall((struct ktr_syscall *)m, sv_flags);
+#if defined(__amd64__) || defined(__i386__)
+   if ((sv_flags & SV_ABI_MASK) == SV_ABI_LINUX)
+   linux_ktrsyscall((struct ktr_syscall *)m);
+   else
+#endif
+   ktrsyscall((struct

svn commit: r219222 - head/lib/libc/gen

2011-03-03 Thread Robert Watson
Author: rwatson
Date: Thu Mar  3 11:28:57 2011
New Revision: 219222
URL: http://svn.freebsd.org/changeset/base/219222

Log:
  Add text string for ECAPMODE to libc.
  
  Discussed with:   anderson
  Obtained from:Capsicum Project
  Sponsored by: Google, Inc.
  MFC after:3 months

Modified:
  head/lib/libc/gen/errlst.c

Modified: head/lib/libc/gen/errlst.c
==
--- head/lib/libc/gen/errlst.c  Thu Mar  3 10:25:41 2011(r219221)
+++ head/lib/libc/gen/errlst.c  Thu Mar  3 11:28:57 2011(r219222)
@@ -151,5 +151,6 @@ const char *const sys_errlist[] = {
"Link has been severed",/* 91 - ENOLINK */
"Protocol error",   /* 92 - EPROTO */
"Capabilities insufficient",/* 93 - ENOTCAPABLE */
+   "Not permitted in capability mode", /* 94 - ECAPMODE */
 };
 const int sys_nerr = sizeof(sys_errlist) / sizeof(sys_errlist[0]);
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r219223 - head/lib/libc/sys

2011-03-03 Thread Robert Watson
Author: rwatson
Date: Thu Mar  3 11:29:48 2011
New Revision: 219223
URL: http://svn.freebsd.org/changeset/base/219223

Log:
  Add description of ECAPMODE to errno(2) man page.
  
  Discussed with: anderson
  Obtained from:  Capsicum Project
  Sponsored by:   Google, Inc.
  MFC after:  3 months

Modified:
  head/lib/libc/sys/intro.2

Modified: head/lib/libc/sys/intro.2
==
--- head/lib/libc/sys/intro.2   Thu Mar  3 11:28:57 2011(r219222)
+++ head/lib/libc/sys/intro.2   Thu Mar  3 11:29:48 2011(r219223)
@@ -467,6 +467,8 @@ A device or socket encountered an unreco
 .It Er 93 ENOTCAPABLE Em "Capabilities insufficient" .
 An operation on a capability file descriptor requires greater privilege than
 the capability allows.
+.It Er 94 ECAPMODE Em "Not permitted in capability mode" .
+The system call or operation is not permitted for capability mode processes.
 .El
 .Sh DEFINITIONS
 .Bl -tag -width Ds
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r219224 - head/lib/libc/sys

2011-03-03 Thread Robert Watson
Author: rwatson
Date: Thu Mar  3 11:31:08 2011
New Revision: 219224
URL: http://svn.freebsd.org/changeset/base/219224

Log:
  Make cap_new(2) and cap_getmode(2) symbols from libc public so applications
  can link against them.  Add man pages for the new system calls, with one
  errant forward reference to changes not yet present in FreeBSD, but soon
  will be.
  
  Reviewed by:  anderson
  Obtained from:Capsicum Project
  Sponsored by: Google, Inc.
  Discussed with:   benl, kris, pjd
  MFC after:3 months

Added:
  head/lib/libc/sys/cap_enter.2   (contents, props changed)
Modified:
  head/lib/libc/sys/Makefile.inc
  head/lib/libc/sys/Symbol.map

Modified: head/lib/libc/sys/Makefile.inc
==
--- head/lib/libc/sys/Makefile.inc  Thu Mar  3 11:29:48 2011
(r219223)
+++ head/lib/libc/sys/Makefile.inc  Thu Mar  3 11:31:08 2011
(r219224)
@@ -74,7 +74,7 @@ ${SPSEUDO}:
 MAN+=  abort2.2 accept.2 access.2 acct.2 adjtime.2 \
aio_cancel.2 aio_error.2 aio_read.2 aio_return.2 \
aio_suspend.2 aio_waitcomplete.2 aio_write.2 \
-   bind.2 brk.2 chdir.2 chflags.2 \
+   bind.2 brk.2 cap_enter.2 chdir.2 chflags.2 \
chmod.2 chown.2 chroot.2 clock_gettime.2 close.2 closefrom.2 \
connect.2 cpuset.2 cpuset_getaffinity.2 dup.2 execve.2 _exit.2 \
extattr_get_file.2 fcntl.2 fhopen.2 flock.2 fork.2 fsync.2 \
@@ -115,6 +115,7 @@ MAN+=   sctp_generic_recvmsg.2 sctp_generi
 
 MLINKS+=access.2 eaccess.2 access.2 faccessat.2
 MLINKS+=brk.2 sbrk.2
+MLINKS+=cap_enter.2 cap_getmode.2
 MLINKS+=chdir.2 fchdir.2
 MLINKS+=chflags.2 fchflags.2 chflags.2 lchflags.2
 MLINKS+=chmod.2 fchmod.2 chmod.2 fchmodat.2 chmod.2 lchmod.2

Modified: head/lib/libc/sys/Symbol.map
==
--- head/lib/libc/sys/Symbol.mapThu Mar  3 11:29:48 2011
(r219223)
+++ head/lib/libc/sys/Symbol.mapThu Mar  3 11:31:08 2011
(r219224)
@@ -330,6 +330,8 @@ FBSD_1.0 {
 
 FBSD_1.1 {
__semctl;
+   cap_enter;
+   cap_getmode;
closefrom;
cpuset;
cpuset_getid;

Added: head/lib/libc/sys/cap_enter.2
==
--- /dev/null   00:00:00 1970   (empty, because file is newly added)
+++ head/lib/libc/sys/cap_enter.2   Thu Mar  3 11:31:08 2011
(r219224)
@@ -0,0 +1,101 @@
+.\"
+.\" Copyright (c) 2008-2009 Robert N. M. Watson
+.\" All rights reserved.
+.\"
+.\" This software was developed at the University of Cambridge Computer
+.\" Laboratory with support from a grant from Google, Inc.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\"notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"notice, this list of conditions and the following disclaimer in the
+.\"documentation and/or other materials provided with the distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd June 11, 2009
+.Dt CAP_ENTER 2
+.Os
+.Sh NAME
+.Nm cap_enter ,
+.Nm cap_getmode
+.Nd Capability mode system calls
+.Sh LIBRARY
+.Lb libc
+.Sh SYNOPSIS
+.In sys/capability.h
+.Ft int
+.Fn cap_enter "void"
+.Ft int
+.Fn cap_getmode "u_int *modep"
+.Sh DESCRIPTION
+.Fn cap_enter
+places the current process into capability mode, a mode of execution in which
+processes may only issue system calls operating on file descriptors or
+reading limited global system state.
+Access to global name spaces, such as file system or IPC name spaces, is
+prevented.
+If the process is already in a capability mode sandbox, the system call is a
+no-op.
+Future process descendants create with
+.Xr fork 2
+or
+.Xr pdfork 2
+will be placed in capability mode from inception.
+.Pp
+When combined with capabilities created with
+.Xr cap_new 2 ,
+.Fn cap_enter
+may be used to create kernel-enforced sandboxes in which
+appropriately-c

svn commit: r219225 - head/sys/boot/pc98/boot2

2011-03-03 Thread Takahashi Yoshihiro
Author: nyan
Date: Thu Mar  3 11:45:54 2011
New Revision: 219225
URL: http://svn.freebsd.org/changeset/base/219225

Log:
  MFi386: revision 219186
  
This patch shrinks boot2 a little.
  
oIt switches kname to be just a pointer instead of an array.
oIt changes ioctl to unsigned from uint8_t.
oIt changes the second keyhit limit to 3 seconds from 5.
oIt removes bi_basemem/bi_extmem/bi_memsizes_valid setting.

Modified:
  head/sys/boot/pc98/boot2/boot2.c

Modified: head/sys/boot/pc98/boot2/boot2.c
==
--- head/sys/boot/pc98/boot2/boot2.cThu Mar  3 11:31:08 2011
(r219224)
+++ head/sys/boot/pc98/boot2/boot2.cThu Mar  3 11:45:54 2011
(r219225)
@@ -133,11 +133,11 @@ static struct dsk {
 unsigned start;
 } dsk;
 static char cmd[512], cmddup[512];
-static char kname[1024];
+static const char *kname = NULL;
 static uint32_t opts;
 static int comspeed = SIOSPD;
 static struct bootinfo bootinfo;
-static uint8_t ioctrl = IO_KEYBOARD;
+static unsigned ioctrl = IO_KEYBOARD;
 
 void exit(int);
 static void load(void);
@@ -146,7 +146,6 @@ static int xfsread(ino_t, void *, size_t
 static int dskread(void *, unsigned, unsigned);
 static void printf(const char *,...);
 static void putchar(int);
-static uint32_t memsize(void);
 static int drvread(void *, unsigned);
 static int keyhit(unsigned);
 static int xputc(int);
@@ -184,13 +183,6 @@ xfsread(ino_t inode, void *buf, size_t n
 return 0;
 }
 
-static inline uint32_t
-memsize(void)
-{
-return (*(u_char *)PTOV(0x401) * 128 * 1024 +
-   *(uint16_t *)PTOV(0x594) * 1024 * 1024);
-}
-
 static inline void
 getstr(void)
 {
@@ -382,9 +374,6 @@ main(void)
 #endif
 bootinfo.bi_version = BOOTINFO_VERSION;
 bootinfo.bi_size = sizeof(bootinfo);
-bootinfo.bi_basemem = 0;   /* XXX will be filled by loader or kernel */
-bootinfo.bi_extmem = memsize();
-bootinfo.bi_memsizes_valid++;
 
 /* Process configuration file */
 
@@ -408,11 +397,11 @@ main(void)
  * or in case of failure, try to load a kernel directly instead.
  */
 
-if (autoboot && !*kname) {
-   memcpy(kname, PATH_BOOT3, sizeof(PATH_BOOT3));
+if (autoboot && !kname) {
+   kname = PATH_BOOT3;
if (!keyhit(3*SECOND)) {
load();
-   memcpy(kname, PATH_KERNEL, sizeof(PATH_KERNEL));
+   kname = PATH_KERNEL;
}
 }
 
@@ -427,7 +416,7 @@ main(void)
   'a' + dsk.part, kname);
if (ioctrl & IO_SERIAL)
sio_flush();
-   if (!autoboot || keyhit(5*SECOND))
+   if (!autoboot || keyhit(3*SECOND))
getstr();
else if (!autoboot || !OPT_CHECK(RBX_QUIET))
putchar('\n');
@@ -611,11 +600,7 @@ parse()
dsk.daua = dsk.disk | dsk.unit;
dsk_meta = 0;
}
-   if ((i = ep - arg)) {
-   if ((size_t)i >= sizeof(kname))
-   return -1;
-   memcpy(kname, arg, i + 1);
-   }
+kname = arg;
}
arg = p;
 }
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219129 - in head/sys: compat/freebsd32 conf kern sys

2011-03-03 Thread Robert N. M. Watson

On 1 Mar 2011, at 14:53, Alexander Leidinger wrote:

> Quoting Robert Watson  (from Tue, 1 Mar 2011 13:23:37 
> + (UTC)):
> 
>> Author: rwatson
>> Date: Tue Mar  1 13:23:37 2011
>> New Revision: 219129
>> URL: http://svn.freebsd.org/changeset/base/219129
>> 
>> Log:
>>  Add initial support for Capsicum's Capability Mode to the FreeBSD kernel,
>>  compiled conditionally on options CAPABILITIES:
> 
> Typo in NOTES.

Should now be fixed.

> What about adding a FEATURE to sys_capabilities.c, could it be useful?

Yes, this sounds like a good idea -- feel free to add one :-).

Robert___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219138 - head/usr.bin/kdump

2011-03-03 Thread Alexander Leidinger
Quoting Robert Watson  (from Thu, 3 Mar 2011  
11:14:59 + (GMT)):




On Tue, 1 Mar 2011, Dmitry Chagin wrote:


Teach kdump to decode linux syscalls names too.

Fix bug introduced in my previous commit: the kernel always dump native
signal numbers, so no need to check the ABI in ktrpsig().


Does this mean that we're eliminating the need for the long-broken  
linux_kdump?


For the linux parts there is (L?)GPLed code in linux_kdump (the main  
reason that it is a port, I think), it is unlikely that someone sits  
there and will do a clean-room implementation of those linux-kernel  
derived things (I like to get proven wrong, anyone out there accepts  
the challenge? ;-) ). Dmitry provided an updated linux-kdump which  
contains preprocessed things (no need to have a non-default  
linuxulator setup). I have the corresponding PR assigned to me, but  
from his comments it looks like his new version depends upon his  
changes and does not DTRT without them (I am awaiting confirmation,  
and I asked about changes to let it DTRT if this is true).


Bye,
Alexander.

--
Commitment, n.:
Commitment can be illustrated by a breakfast of ham and eggs.
The chicken was involved, the pig was committed.

http://www.Leidinger.netAlexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org   netchild @ FreeBSD.org  : PGP ID = 72077137
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r219229 - head/sys/netgraph/netflow

2011-03-03 Thread Bjoern A. Zeeb
Author: bz
Date: Thu Mar  3 16:16:49 2011
New Revision: 219229
URL: http://svn.freebsd.org/changeset/base/219229

Log:
  Unbreak the build for no options INET6.
  
  PR:   kern/155227
  Submitted by: Dmitry Afanasiev (KOT MATPOCKuH.Ru)

Modified:
  head/sys/netgraph/netflow/netflow.c
  head/sys/netgraph/netflow/netflow_v9.c

Modified: head/sys/netgraph/netflow/netflow.c
==
--- head/sys/netgraph/netflow/netflow.c Thu Mar  3 15:27:06 2011
(r219228)
+++ head/sys/netgraph/netflow/netflow.c Thu Mar  3 16:16:49 2011
(r219229)
@@ -99,7 +99,9 @@ static int export_add(item_p, struct flo
 static int export_send(priv_p, fib_export_p, item_p, int);
 
 static int hash_insert(priv_p, struct flow_hash_entry *, struct flow_rec *, 
int, uint8_t);
+#ifdef INET6
 static int hash6_insert(priv_p, struct flow6_hash_entry *, struct flow6_rec *, 
int, uint8_t);
+#endif
 
 static __inline void expire_flow(priv_p, fib_export_p, struct flow_entry *, 
int);
 
@@ -282,8 +284,10 @@ expire_flow(priv_p priv, fib_export_p fe
atomic_add_32(&priv->info.nfinfo_export9_failed, 1);
if (version == IPVERSION)
uma_zfree_arg(priv->zone, fle, priv);
+#ifdef INET6
else if (version == IP6VERSION)
uma_zfree_arg(priv->zone6, fle, priv);
+#endif
else
panic("ng_netflow: Unknown IP proto: %d", 
version);
return;
@@ -297,8 +301,10 @@ expire_flow(priv_p priv, fib_export_p fe
 
if (version == IPVERSION)
uma_zfree_arg(priv->zone, fle, priv);
+#ifdef INET6
else if (version == IP6VERSION)
uma_zfree_arg(priv->zone6, fle, priv);
+#endif
 }
 
 /* Get a snapshot of node statistics */

Modified: head/sys/netgraph/netflow/netflow_v9.c
==
--- head/sys/netgraph/netflow/netflow_v9.c  Thu Mar  3 15:27:06 2011
(r219228)
+++ head/sys/netgraph/netflow/netflow_v9.c  Thu Mar  3 16:16:49 2011
(r219229)
@@ -256,7 +256,9 @@ export9_add(item_p item, struct netflow_
 
/* Prepare flow record */
fed = (struct flow_entry_data *)&fle->f;
+#ifdef INET6
fed6 = (struct flow6_entry_data *)&fle->f;
+#endif
/* We can use flow_type field since fle6 offset is equal to fle */
flow_type = fed->r.flow_type;
 
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219138 - head/usr.bin/kdump

2011-03-03 Thread Robert N. M. Watson

On 3 Mar 2011, at 13:14, Alexander Leidinger wrote:

> Quoting Robert Watson  (from Thu, 3 Mar 2011 11:14:59 
> + (GMT)):
> 
>> On Tue, 1 Mar 2011, Dmitry Chagin wrote:
>> 
>>> Teach kdump to decode linux syscalls names too.
>>> 
>>> Fix bug introduced in my previous commit: the kernel always dump native
>>> signal numbers, so no need to check the ABI in ktrpsig().
>> 
>> Does this mean that we're eliminating the need for the long-broken 
>> linux_kdump?
> 
> For the linux parts there is (L?)GPLed code in linux_kdump (the main reason 
> that it is a port, I think), it is unlikely that someone sits there and will 
> do a clean-room implementation of those linux-kernel derived things (I like 
> to get proven wrong, anyone out there accepts the challenge? ;-) ). Dmitry 
> provided an updated linux-kdump which contains preprocessed things (no need 
> to have a non-default linuxulator setup). I have the corresponding PR 
> assigned to me, but from his comments it looks like his new version depends 
> upon his changes and does not DTRT without them (I am awaiting confirmation, 
> and I asked about changes to let it DTRT if this is true).

On a related note, the solution for handling different OS ABIs and calls for 
OpenBSM was to have a file format that (a) expressed a superset of the 
capabilities of each platform and (b) attempted to provide common terms to 
describe their intersections. This has its limitations, but works fairly well 
in practice: you can generally have a single piece of software that makes 
pretty good use of BSM streams generated on Solaris, Mac OS X, or FreeBSD 
across those platforms and also Linux (on which OpenBSM compiles and runs, but 
whose kernel audit stack differs).

Robert___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219181 - head/release

2011-03-03 Thread John Baldwin
On Wednesday, March 02, 2011 11:06:57 am Nathan Whitehorn wrote:
> Author: nwhitehorn
> Date: Wed Mar  2 16:06:57 2011
> New Revision: 219181
> URL: http://svn.freebsd.org/changeset/base/219181
> 
> Log:
>   Add additional release makefile for bsdinstall-based media, along with
>   support files. This does not change the default behavior of anything.
>   
>   To make bsdinstall-based media, pre-build world and GENERIC, then run
>   the release target in Makefile.bsdinstall.

Are you planning on keeping the current 'make release' behavior of building a 
full chroot and doing a clean build in the chroot to build a release?  That 
is, is 'Makefile.bsdinstall' just a temporary shortcut for building test 
releases or is that the final replacement for 'release/Makefile'?

-- 
John Baldwin
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219181 - head/release

2011-03-03 Thread Nathan Whitehorn

On 03/03/11 11:09, John Baldwin wrote:

On Wednesday, March 02, 2011 11:06:57 am Nathan Whitehorn wrote:

Author: nwhitehorn
Date: Wed Mar  2 16:06:57 2011
New Revision: 219181
URL: http://svn.freebsd.org/changeset/base/219181

Log:
   Add additional release makefile for bsdinstall-based media, along with
   support files. This does not change the default behavior of anything.

   To make bsdinstall-based media, pre-build world and GENERIC, then run
   the release target in Makefile.bsdinstall.

Are you planning on keeping the current 'make release' behavior of building a
full chroot and doing a clean build in the chroot to build a release?  That
is, is 'Makefile.bsdinstall' just a temporary shortcut for building test
releases or is that the final replacement for 'release/Makefile'?


It was intended (modulo memstick building, docs, and some miscellaneous 
cleanup) to be the final replacement for release/Makefile. In my 
experience, the automatic fetching, clean build, and chroot was a major 
impediment to easily making installation media for users to test 
patches. I figured that if people (e.g. re@) really want a totally clean 
tree, checking one out by hand and building from there didn't seem like 
an enormous obstacle.


If you think it's a really important feature, I'm happy to add it back, 
however.

-Nathan

___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r219238 - head/sys/kern

2011-03-03 Thread Edward Tomasz Napierala
Author: trasz
Date: Thu Mar  3 17:33:22 2011
New Revision: 219238
URL: http://svn.freebsd.org/changeset/base/219238

Log:
  Make "struct pts_softc" point to ucred instead of uidinfo.  This is no-op,
  required for resource containers.
  
  Reviewed by:  kib (as part of a larger patch), ed

Modified:
  head/sys/kern/tty_pts.c

Modified: head/sys/kern/tty_pts.c
==
--- head/sys/kern/tty_pts.c Thu Mar  3 17:12:24 2011(r219237)
+++ head/sys/kern/tty_pts.c Thu Mar  3 17:33:22 2011(r219238)
@@ -97,7 +97,7 @@ struct pts_softc {
struct cdev *pts_cdev;  /* (c) Master device node. */
 #endif /* PTS_EXTERNAL */
 
-   struct uidinfo  *pts_uidinfo;   /* (c) Resource limit. */
+   struct ucred*pts_cred;  /* (c) Resource limit. */
 };
 
 /*
@@ -681,8 +681,8 @@ ptsdrv_free(void *softc)
if (psc->pts_unit >= 0)
free_unr(pts_pool, psc->pts_unit);
 
-   chgptscnt(psc->pts_uidinfo, -1, 0);
-   uifree(psc->pts_uidinfo);
+   chgptscnt(psc->pts_cred->cr_ruidinfo, -1, 0);
+   crfree(psc->pts_cred);
 
knlist_destroy(&psc->pts_inpoll.si_note);
knlist_destroy(&psc->pts_outpoll.si_note);
@@ -716,11 +716,11 @@ pts_alloc(int fflags, struct thread *td,
struct tty *tp;
struct pts_softc *psc;
struct proc *p = td->td_proc;
-   struct uidinfo *uid = td->td_ucred->cr_ruidinfo;
+   struct ucred *cred = td->td_ucred;
 
/* Resource limiting. */
PROC_LOCK(p);
-   ok = chgptscnt(uid, 1, lim_cur(p, RLIMIT_NPTS));
+   ok = chgptscnt(cred->cr_ruidinfo, 1, lim_cur(p, RLIMIT_NPTS));
PROC_UNLOCK(p);
if (!ok)
return (EAGAIN);
@@ -728,7 +728,7 @@ pts_alloc(int fflags, struct thread *td,
/* Try to allocate a new pts unit number. */
unit = alloc_unr(pts_pool);
if (unit < 0) {
-   chgptscnt(uid, -1, 0);
+   chgptscnt(cred->cr_ruidinfo, -1, 0);
return (EAGAIN);
}
 
@@ -738,8 +738,7 @@ pts_alloc(int fflags, struct thread *td,
cv_init(&psc->pts_outwait, "ptsout");
 
psc->pts_unit = unit;
-   psc->pts_uidinfo = uid;
-   uihold(uid);
+   psc->pts_cred = crhold(cred);
 
tp = tty_alloc(&pts_class, psc);
knlist_init_mtx(&psc->pts_inpoll.si_note, tp->t_mtx);
@@ -762,11 +761,11 @@ pts_alloc_external(int fflags, struct th
struct tty *tp;
struct pts_softc *psc;
struct proc *p = td->td_proc;
-   struct uidinfo *uid = td->td_ucred->cr_ruidinfo;
+   struct ucred *cred = td->td_ucred;
 
/* Resource limiting. */
PROC_LOCK(p);
-   ok = chgptscnt(uid, 1, lim_cur(p, RLIMIT_NPTS));
+   ok = chgptscnt(cred->cr_ruidinfo, 1, lim_cur(p, RLIMIT_NPTS));
PROC_UNLOCK(p);
if (!ok)
return (EAGAIN);
@@ -778,8 +777,7 @@ pts_alloc_external(int fflags, struct th
 
psc->pts_unit = -1;
psc->pts_cdev = dev;
-   psc->pts_uidinfo = uid;
-   uihold(uid);
+   psc->pts_cred = crhold(cred);
 
tp = tty_alloc(&pts_class, psc);
knlist_init_mtx(&psc->pts_inpoll.si_note, tp->t_mtx);
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219138 - head/usr.bin/kdump

2011-03-03 Thread Chagin Dmitry
On Thu, Mar 03, 2011 at 11:14:59AM +, Robert Watson wrote:
> 
> On Tue, 1 Mar 2011, Dmitry Chagin wrote:
> 
> >  Teach kdump to decode linux syscalls names too.
> >
> >  Fix bug introduced in my previous commit: the kernel always dump native
> >  signal numbers, so no need to check the ABI in ktrpsig().
> 
> Does this mean that we're eliminating the need for the long-broken 
> linux_kdump?
> 

mostly yes, w/o syscall parameter decoding.

> Is there any ABI record in ktrace files, and/or should we add one somehow?
> 

Now kernel writes sv_flags to the trace file at fork, exec, exit time.
And kdump knows how to handle this.

> I'd love to be able to process a kdump file generated from a blend of ABIs: 
> i.e., if I do ktrace -di tcsh, and then run a bunch of commands from 
> different 
> ABIs (FreeBSD/32-bit Intel, FreeBSD/64-bit Intel, Linux/32-bit Intel, and 
> possible FreeBSD/64 MIPS so that a distributed ktracing tool gathers the 
> results across hosts for a single action), have kdump Just Work.  This 
> suggests that a per-record ABI indicator might be useful.
> 
> Robert

This is the next stage :)

--
chd,
Have fun!

> 


pgpK7qWM3w562.pgp
Description: PGP signature


Re: svn commit: r219138 - head/usr.bin/kdump

2011-03-03 Thread Chagin Dmitry
On Thu, Mar 03, 2011 at 02:14:58PM +0100, Alexander Leidinger wrote:
> Quoting Robert Watson  (from Thu, 3 Mar 2011  
> 11:14:59 + (GMT)):
> 
> >
> > On Tue, 1 Mar 2011, Dmitry Chagin wrote:
> >
> >> Teach kdump to decode linux syscalls names too.
> >>
> >> Fix bug introduced in my previous commit: the kernel always dump native
> >> signal numbers, so no need to check the ABI in ktrpsig().
> >
> > Does this mean that we're eliminating the need for the long-broken  
> > linux_kdump?
> 
> For the linux parts there is (L?)GPLed code in linux_kdump (the main  
> reason that it is a port, I think), it is unlikely that someone sits  
> there and will do a clean-room implementation of those linux-kernel  
> derived things (I like to get proven wrong, anyone out there accepts  
> the challenge? ;-) ). Dmitry provided an updated linux-kdump which  
> contains preprocessed things (no need to have a non-default  
> linuxulator setup). I have the corresponding PR assigned to me, but  
> from his comments it looks like his new version depends upon his  
> changes and does not DTRT without them (I am awaiting confirmation,  
> and I asked about changes to let it DTRT if this is true).
> 

It will be mergeed soon, I'll let you know. thnx!

-- 
Have fun!
chd


pgpV6VPFugrLr.pgp
Description: PGP signature


svn commit: r219240 - head/sys/compat/linux

2011-03-03 Thread Dmitry Chagin
Author: dchagin
Date: Thu Mar  3 18:19:10 2011
New Revision: 219240
URL: http://svn.freebsd.org/changeset/base/219240

Log:
  Switch PROCESS_SHARE to AUTO_SHARE (as umtx do). Even for SHARED,
  if page mapped MAP_ANON linux uses private algorithm too.
  
  Disscussed with:  jhb
  
  MFC after:3 Days

Modified:
  head/sys/compat/linux/linux_futex.c

Modified: head/sys/compat/linux/linux_futex.c
==
--- head/sys/compat/linux/linux_futex.c Thu Mar  3 18:16:35 2011
(r219239)
+++ head/sys/compat/linux/linux_futex.c Thu Mar  3 18:19:10 2011
(r219240)
@@ -161,7 +161,7 @@ futex_get0(uint32_t *uaddr, struct futex
*newf = tmpf = NULL;
 
error = umtx_key_get(uaddr, TYPE_FUTEX, (flags & FUTEX_SHARED) ?
-   PROCESS_SHARE : THREAD_SHARE, &key);
+   AUTO_SHARE : THREAD_SHARE, &key);
if (error)
return (error);
 retry:
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r219241 - head/sys/cam

2011-03-03 Thread Matt Jacob
Author: mjacob
Date: Thu Mar  3 18:28:21 2011
New Revision: 219241
URL: http://svn.freebsd.org/changeset/base/219241

Log:
  Don't automatically send a START UNIT to sequential access devices-
  this might cause them to load the tape unintentionally.
  
  Reviewed by:  gibbs
  MFC after:1 month

Modified:
  head/sys/cam/cam_periph.c

Modified: head/sys/cam/cam_periph.c
==
--- head/sys/cam/cam_periph.c   Thu Mar  3 18:19:10 2011(r219240)
+++ head/sys/cam/cam_periph.c   Thu Mar  3 18:28:21 2011(r219241)
@@ -1560,6 +1560,15 @@ camperiphscsisenseerror(union ccb *ccb, 
case SS_START:
{
int le;
+   if (SID_TYPE(&cgd.inq_data) == T_SEQUENTIAL) {
+   xpt_free_ccb(orig_ccb);
+   ccb->ccb_h.status |= CAM_DEV_QFRZN;
+   *action_string = "Will not autostart a "
+   "sequential access device";
+   err_action = SS_FAIL;
+   error = EIO;
+   break;
+   }
 
/*
 * Send a start unit command to the device, and
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r219242 - head/sys/compat/linux

2011-03-03 Thread Dmitry Chagin
Author: dchagin
Date: Thu Mar  3 18:29:55 2011
New Revision: 219242
URL: http://svn.freebsd.org/changeset/base/219242

Log:
  Print out shared flag for debug purpose.
  
  MFC after:1 Week

Modified:
  head/sys/compat/linux/linux_futex.c

Modified: head/sys/compat/linux/linux_futex.c
==
--- head/sys/compat/linux/linux_futex.c Thu Mar  3 18:28:21 2011
(r219241)
+++ head/sys/compat/linux/linux_futex.c Thu Mar  3 18:29:55 2011
(r219242)
@@ -137,16 +137,16 @@ futex_put(struct futex *f, struct waitin
FUTEXES_UNLOCK;
FUTEX_UNLOCK(f);
 
-   LINUX_CTR2(sys_futex, "futex_put destroy uaddr %p ref %d",
-   f->f_uaddr, f->f_refcount);
+   LINUX_CTR3(sys_futex, "futex_put destroy uaddr %p ref %d "
+   "shared %d", f->f_uaddr, f->f_refcount, f->f_key.shared);
umtx_key_release(&f->f_key);
FUTEX_DESTROY(f);
free(f, M_FUTEX);
return;
}
 
-   LINUX_CTR2(sys_futex, "futex_put uaddr %p ref %d",
-   f->f_uaddr, f->f_refcount);
+   LINUX_CTR3(sys_futex, "futex_put uaddr %p ref %d shared %d",
+   f->f_uaddr, f->f_refcount, f->f_key.shared);
FUTEXES_UNLOCK;
FUTEX_UNLOCK(f);
 }
@@ -189,8 +189,8 @@ retry:
 
FUTEX_LOCK(f);
*newf = f;
-   LINUX_CTR2(sys_futex, "futex_get uaddr %p ref %d",
-   uaddr, f->f_refcount);
+   LINUX_CTR3(sys_futex, "futex_get uaddr %p ref %d shared 
%d",
+   uaddr, f->f_refcount, f->f_key.shared);
return (0);
}
}
@@ -223,8 +223,8 @@ retry:
LIST_INSERT_HEAD(&futex_list, tmpf, f_list);
FUTEXES_UNLOCK;
 
-   LINUX_CTR2(sys_futex, "futex_get uaddr %p ref %d new",
-   uaddr, tmpf->f_refcount);
+   LINUX_CTR3(sys_futex, "futex_get uaddr %p ref %d shared %d new",
+   uaddr, tmpf->f_refcount, tmpf->f_key.shared);
*newf = tmpf;
return (0);
 }
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219181 - head/release

2011-03-03 Thread John Baldwin
On Thursday, March 03, 2011 12:22:44 pm Nathan Whitehorn wrote:
> On 03/03/11 11:09, John Baldwin wrote:
> > On Wednesday, March 02, 2011 11:06:57 am Nathan Whitehorn wrote:
> >> Author: nwhitehorn
> >> Date: Wed Mar  2 16:06:57 2011
> >> New Revision: 219181
> >> URL: http://svn.freebsd.org/changeset/base/219181
> >>
> >> Log:
> >>Add additional release makefile for bsdinstall-based media, along with
> >>support files. This does not change the default behavior of anything.
> >>
> >>To make bsdinstall-based media, pre-build world and GENERIC, then run
> >>the release target in Makefile.bsdinstall.
> > Are you planning on keeping the current 'make release' behavior of building 
> > a
> > full chroot and doing a clean build in the chroot to build a release?  That
> > is, is 'Makefile.bsdinstall' just a temporary shortcut for building test
> > releases or is that the final replacement for 'release/Makefile'?
> 
> It was intended (modulo memstick building, docs, and some miscellaneous 
> cleanup) to be the final replacement for release/Makefile. In my 
> experience, the automatic fetching, clean build, and chroot was a major 
> impediment to easily making installation media for users to test 
> patches. I figured that if people (e.g. re@) really want a totally clean 
> tree, checking one out by hand and building from there didn't seem like 
> an enormous obstacle.
> 
> If you think it's a really important feature, I'm happy to add it back, 
> however.

I think it is a very important feature to ensure release builds are not
polluted by local changes in /etc/src.conf, etc.  I think it would be good
to support both models perhaps, but for our official release builds I think
we need the clean environment.  I certainly use 'make release' now for my
own custom FooBSD builds to get a clean environment.

-- 
John Baldwin
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219181 - head/release

2011-03-03 Thread Matthew Jacob




I think it is a very important feature to ensure release builds are not
polluted by local changes in /etc/src.conf, etc.  I think it would be good
to support both models perhaps, but for our official release builds I think
we need the clean environment.  I certainly use 'make release' now for my
own custom FooBSD builds to get a clean environment.

While not disagreeing with you on this, one should really always do 'env 
-i PATH=/usr/bin:/bin make release' if you want to ensure non-pollution.

___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219181 - head/release

2011-03-03 Thread Garrett Cooper
On Thu, Mar 3, 2011 at 11:37 AM, Matthew Jacob  wrote:
>
>
>> I think it is a very important feature to ensure release builds are not
>> polluted by local changes in /etc/src.conf, etc.  I think it would be good
>> to support both models perhaps, but for our official release builds I
>> think
>> we need the clean environment.  I certainly use 'make release' now for my
>> own custom FooBSD builds to get a clean environment.
>>
> While not disagreeing with you on this, one should really always do 'env -i
> PATH=/usr/bin:/bin make release' if you want to ensure non-pollution.

It's more in-depth than that. The only way to ensure that the release
builds are non-tainted without doing a ton of hacks is to create an
untainted chroot/jail for the release build, or do the previous
incantation in release/Makefile, as a number of components can taint
the environment outside of PATH (see nanobsd's build scripts for a
start on this).

My personal preference is to have the scripts and infrastructure exist
within release to do this instead of within release/Makefile, but this
would require changes to any existing infrastructure that anyone
depending on release/Makefile is employing out in the field; on the
bright side maybe release/Makefile and nanobsd could converge because
they'd be using more of the same logic to run things and the things
that would truly differ are just the payload content.

Thanks,
-Garrett
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r219252 - head/sys/dev/ath/ath_rate/sample

2011-03-03 Thread Adrian Chadd
Author: adrian
Date: Thu Mar  3 20:41:59 2011
New Revision: 219252
URL: http://svn.freebsd.org/changeset/base/219252

Log:
  The sample rate module currently does the slightly wrong thing when
  determining whether to use MRR or not.
  
  It uses the 11g protection mode when calculating 11n related stuff, rather
  than checking the 11n protection mode.
  
  Furthermore, the 11n chipsets can quite happily handle multi-rate retry w/
  protection; the TX path and rate control modules need to be taught about
  that.

Modified:
  head/sys/dev/ath/ath_rate/sample/sample.c

Modified: head/sys/dev/ath/ath_rate/sample/sample.c
==
--- head/sys/dev/ath/ath_rate/sample/sample.c   Thu Mar  3 20:14:00 2011
(r219251)
+++ head/sys/dev/ath/ath_rate/sample/sample.c   Thu Mar  3 20:41:59 2011
(r219252)
@@ -273,6 +273,7 @@ ath_rate_findrate(struct ath_softc *sc, 
goto done;
}
 
+   /* XXX TODO: this doesn't know about 11gn vs 11g protection; teach it */
mrr = sc->sc_mrretry && !(ic->ic_flags & IEEE80211_F_USEPROT);
 
best_rix = pick_best_rate(sn, rt, size_bin, !mrr);
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219181 - head/release

2011-03-03 Thread Scott Long
On Mar 3, 2011, at 12:32 PM, John Baldwin wrote:
> On Thursday, March 03, 2011 12:22:44 pm Nathan Whitehorn wrote:
>> On 03/03/11 11:09, John Baldwin wrote:
>>> On Wednesday, March 02, 2011 11:06:57 am Nathan Whitehorn wrote:
 Author: nwhitehorn
 Date: Wed Mar  2 16:06:57 2011
 New Revision: 219181
 URL: http://svn.freebsd.org/changeset/base/219181
 
 Log:
  Add additional release makefile for bsdinstall-based media, along with
  support files. This does not change the default behavior of anything.
 
  To make bsdinstall-based media, pre-build world and GENERIC, then run
  the release target in Makefile.bsdinstall.
>>> Are you planning on keeping the current 'make release' behavior of building 
>>> a
>>> full chroot and doing a clean build in the chroot to build a release?  That
>>> is, is 'Makefile.bsdinstall' just a temporary shortcut for building test
>>> releases or is that the final replacement for 'release/Makefile'?
>> 
>> It was intended (modulo memstick building, docs, and some miscellaneous 
>> cleanup) to be the final replacement for release/Makefile. In my 
>> experience, the automatic fetching, clean build, and chroot was a major 
>> impediment to easily making installation media for users to test 
>> patches. I figured that if people (e.g. re@) really want a totally clean 
>> tree, checking one out by hand and building from there didn't seem like 
>> an enormous obstacle.
>> 
>> If you think it's a really important feature, I'm happy to add it back, 
>> however.
> 
> I think it is a very important feature to ensure release builds are not
> polluted by local changes in /etc/src.conf, etc.  I think it would be good
> to support both models perhaps, but for our official release builds I think
> we need the clean environment.  I certainly use 'make release' now for my
> own custom FooBSD builds to get a clean environment.
> 

Agreed entirely.  I'd consider it a major bug if the insulated release 
environment went away, especially since I'm switching release building at Yahoo 
to use it.  There are plenty of shortcuts available in the script to reduce the 
time overhead for quick turnaround testing.

Scott


___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219181 - head/release

2011-03-03 Thread Nathan Whitehorn

On 03/03/11 15:14, Scott Long wrote:

On Mar 3, 2011, at 12:32 PM, John Baldwin wrote:

On Thursday, March 03, 2011 12:22:44 pm Nathan Whitehorn wrote:

On 03/03/11 11:09, John Baldwin wrote:

On Wednesday, March 02, 2011 11:06:57 am Nathan Whitehorn wrote:

Author: nwhitehorn
Date: Wed Mar  2 16:06:57 2011
New Revision: 219181
URL: http://svn.freebsd.org/changeset/base/219181

Log:
  Add additional release makefile for bsdinstall-based media, along with
  support files. This does not change the default behavior of anything.

  To make bsdinstall-based media, pre-build world and GENERIC, then run
  the release target in Makefile.bsdinstall.

Are you planning on keeping the current 'make release' behavior of building a
full chroot and doing a clean build in the chroot to build a release?  That
is, is 'Makefile.bsdinstall' just a temporary shortcut for building test
releases or is that the final replacement for 'release/Makefile'?

It was intended (modulo memstick building, docs, and some miscellaneous
cleanup) to be the final replacement for release/Makefile. In my
experience, the automatic fetching, clean build, and chroot was a major
impediment to easily making installation media for users to test
patches. I figured that if people (e.g. re@) really want a totally clean
tree, checking one out by hand and building from there didn't seem like
an enormous obstacle.

If you think it's a really important feature, I'm happy to add it back,
however.

I think it is a very important feature to ensure release builds are not
polluted by local changes in /etc/src.conf, etc.  I think it would be good
to support both models perhaps, but for our official release builds I think
we need the clean environment.  I certainly use 'make release' now for my
own custom FooBSD builds to get a clean environment.


Agreed entirely.  I'd consider it a major bug if the insulated release 
environment went away, especially since I'm switching release building at Yahoo 
to use it.  There are plenty of shortcuts available in the script to reduce the 
time overhead for quick turnaround testing.


To me, there's a distinction between "release building" and "make 
bootable media", and I like the suggestion to support both. One option 
would be that we keep the "make cdrom" target as is, but add 
dependencies, and then have a "release" target that actually the chroot 
setup. Another would be to keep the Makefile as-is, but to add a shell 
script that does the version control checkout, building, chroot setup, 
etc., etc. Would you have a preference there?

-Nathan
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219181 - head/release

2011-03-03 Thread Scott Long
On Mar 3, 2011, at 2:42 PM, Nathan Whitehorn wrote:
> On 03/03/11 15:14, Scott Long wrote:
>> On Mar 3, 2011, at 12:32 PM, John Baldwin wrote:
>>> On Thursday, March 03, 2011 12:22:44 pm Nathan Whitehorn wrote:
 On 03/03/11 11:09, John Baldwin wrote:
> On Wednesday, March 02, 2011 11:06:57 am Nathan Whitehorn wrote:
>> Author: nwhitehorn
>> Date: Wed Mar  2 16:06:57 2011
>> New Revision: 219181
>> URL: http://svn.freebsd.org/changeset/base/219181
>> 
>> Log:
>>  Add additional release makefile for bsdinstall-based media, along with
>>  support files. This does not change the default behavior of anything.
>> 
>>  To make bsdinstall-based media, pre-build world and GENERIC, then run
>>  the release target in Makefile.bsdinstall.
> Are you planning on keeping the current 'make release' behavior of 
> building a
> full chroot and doing a clean build in the chroot to build a release?  
> That
> is, is 'Makefile.bsdinstall' just a temporary shortcut for building test
> releases or is that the final replacement for 'release/Makefile'?
 It was intended (modulo memstick building, docs, and some miscellaneous
 cleanup) to be the final replacement for release/Makefile. In my
 experience, the automatic fetching, clean build, and chroot was a major
 impediment to easily making installation media for users to test
 patches. I figured that if people (e.g. re@) really want a totally clean
 tree, checking one out by hand and building from there didn't seem like
 an enormous obstacle.
 
 If you think it's a really important feature, I'm happy to add it back,
 however.
>>> I think it is a very important feature to ensure release builds are not
>>> polluted by local changes in /etc/src.conf, etc.  I think it would be good
>>> to support both models perhaps, but for our official release builds I think
>>> we need the clean environment.  I certainly use 'make release' now for my
>>> own custom FooBSD builds to get a clean environment.
>>> 
>> Agreed entirely.  I'd consider it a major bug if the insulated release 
>> environment went away, especially since I'm switching release building at 
>> Yahoo to use it.  There are plenty of shortcuts available in the script to 
>> reduce the time overhead for quick turnaround testing.
> 
> To me, there's a distinction between "release building" and "make bootable 
> media", and I like the suggestion to support both. One option would be that 
> we keep the "make cdrom" target as is, but add dependencies, and then have a 
> "release" target that actually the chroot setup. Another would be to keep the 
> Makefile as-is, but to add a shell script that does the version control 
> checkout, building, chroot setup, etc., etc. Would you have a preference 
> there?
> -Nathan

I've been using the existing /usr/src/release/Makefile for 10 years, so it's 
pretty ingrained in me; I'm reluctant to embrace change =-)  That being said, 
yeah, I can see how there can be some improved modularization between obtaining 
the src tree, setting up the chroot, generating object bits, and packaging 
those bits onto release media.  Those functional splits already exist within 
the Makefile, but probably aren't too clear unless you're very familiar with 
all of the sub-targets and control variables.  If you wanted to clean this up 
and provide some clearer modularization, I think it could be a good thing.

Scott

___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


Re: svn commit: r219181 - head/release

2011-03-03 Thread Nathan Whitehorn

On 03/03/11 15:52, Scott Long wrote:

On Mar 3, 2011, at 2:42 PM, Nathan Whitehorn wrote:

On 03/03/11 15:14, Scott Long wrote:

On Mar 3, 2011, at 12:32 PM, John Baldwin wrote:

On Thursday, March 03, 2011 12:22:44 pm Nathan Whitehorn wrote:

On 03/03/11 11:09, John Baldwin wrote:

On Wednesday, March 02, 2011 11:06:57 am Nathan Whitehorn wrote:

Author: nwhitehorn
Date: Wed Mar  2 16:06:57 2011
New Revision: 219181
URL: http://svn.freebsd.org/changeset/base/219181

Log:
  Add additional release makefile for bsdinstall-based media, along with
  support files. This does not change the default behavior of anything.

  To make bsdinstall-based media, pre-build world and GENERIC, then run
  the release target in Makefile.bsdinstall.

Are you planning on keeping the current 'make release' behavior of building a
full chroot and doing a clean build in the chroot to build a release?  That
is, is 'Makefile.bsdinstall' just a temporary shortcut for building test
releases or is that the final replacement for 'release/Makefile'?

It was intended (modulo memstick building, docs, and some miscellaneous
cleanup) to be the final replacement for release/Makefile. In my
experience, the automatic fetching, clean build, and chroot was a major
impediment to easily making installation media for users to test
patches. I figured that if people (e.g. re@) really want a totally clean
tree, checking one out by hand and building from there didn't seem like
an enormous obstacle.

If you think it's a really important feature, I'm happy to add it back,
however.

I think it is a very important feature to ensure release builds are not
polluted by local changes in /etc/src.conf, etc.  I think it would be good
to support both models perhaps, but for our official release builds I think
we need the clean environment.  I certainly use 'make release' now for my
own custom FooBSD builds to get a clean environment.


Agreed entirely.  I'd consider it a major bug if the insulated release 
environment went away, especially since I'm switching release building at Yahoo 
to use it.  There are plenty of shortcuts available in the script to reduce the 
time overhead for quick turnaround testing.

To me, there's a distinction between "release building" and "make bootable media", and I like the 
suggestion to support both. One option would be that we keep the "make cdrom" target as is, but add 
dependencies, and then have a "release" target that actually the chroot setup. Another would be to keep the 
Makefile as-is, but to add a shell script that does the version control checkout, building, chroot setup, etc., etc. 
Would you have a preference there?
-Nathan

I've been using the existing /usr/src/release/Makefile for 10 years, so it's 
pretty ingrained in me; I'm reluctant to embrace change =-)  That being said, 
yeah, I can see how there can be some improved modularization between obtaining 
the src tree, setting up the chroot, generating object bits, and packaging 
those bits onto release media.  Those functional splits already exist within 
the Makefile, but probably aren't too clear unless you're very familiar with 
all of the sub-targets and control variables.  If you wanted to clean this up 
and provide some clearer modularization, I think it could be a good thing.


With that (qualified :P) support, I'll mock up something and run it by 
you in the next few days.

-Nathan
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r219256 - head/include

2011-03-03 Thread Jilles Tjoelker
Author: jilles
Date: Thu Mar  3 22:34:13 2011
New Revision: 219256
URL: http://svn.freebsd.org/changeset/base/219256

Log:
  Fix some _POSIX minimum/maximum values in limits.h:
  * Some values changed in POSIX.1-2001; provide the former value if a program
requests compliance to an earlier version of POSIX. [1]
  * Add missing _POSIX_CLOCKRES_MIN constant. This is a maximum value but
otherwise works the same as the minimum values.
  
  PR:   standards/104743
  Submitted by: bde [1] (not exact #ifdefs, but the values)
  MFC after:2 weeks

Modified:
  head/include/limits.h

Modified: head/include/limits.h
==
--- head/include/limits.h   Thu Mar  3 22:09:10 2011(r219255)
+++ head/include/limits.h   Thu Mar  3 22:34:13 2011(r219256)
@@ -37,18 +37,27 @@
 
 #if __POSIX_VISIBLE
 #define_POSIX_ARG_MAX  4096
-#define_POSIX_CHILD_MAX25
 #define_POSIX_LINK_MAX 8
 #define_POSIX_MAX_CANON255
 #define_POSIX_MAX_INPUT255
 #define_POSIX_NAME_MAX 14
-#define_POSIX_NGROUPS_MAX  8
-#define_POSIX_OPEN_MAX 20
-#define_POSIX_PATH_MAX 256
 #define_POSIX_PIPE_BUF 512
 #define_POSIX_SSIZE_MAX32767
 #define_POSIX_STREAM_MAX   8
+
+#if __POSIX_VISIBLE >= 200112
+#define_POSIX_CHILD_MAX25
+#define_POSIX_NGROUPS_MAX  8
+#define_POSIX_OPEN_MAX 20
+#define_POSIX_PATH_MAX 256
 #define_POSIX_TZNAME_MAX   6
+#else
+#define_POSIX_CHILD_MAX6
+#define_POSIX_NGROUPS_MAX  0
+#define_POSIX_OPEN_MAX 16
+#define_POSIX_PATH_MAX 255
+#define_POSIX_TZNAME_MAX   3
+#endif
 
 #defineBC_BASE_MAX99   /* max ibase/obase values in 
bc(1) */
 #defineBC_DIM_MAX   2048   /* max array elements in bc(1) 
*/
@@ -80,6 +89,8 @@
 #define_POSIX_SEM_VALUE_MAX32767
 #define_POSIX_SIGQUEUE_MAX 32
 #define_POSIX_TIMER_MAX32
+
+#define_POSIX_CLOCKRES_MIN 2000
 #endif
 
 #if __POSIX_VISIBLE >= 199506
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"


svn commit: r219257 - in head: share/man/man4 sys/dev/usb sys/dev/usb/wlan

2011-03-03 Thread Daichi GOTO
Author: daichi
Date: Fri Mar  4 07:01:45 2011
New Revision: 219257
URL: http://svn.freebsd.org/changeset/base/219257

Log:
  Add the Buffalo (Melco Inc.) WLI-UC-G301N
  
  PR:   usb/155229
  Submitted by: Yoshiaki UCHIKAWA
  MFC after:1 week

Modified:
  head/share/man/man4/run.4
  head/sys/dev/usb/usbdevs
  head/sys/dev/usb/wlan/if_run.c

Modified: head/share/man/man4/run.4
==
--- head/share/man/man4/run.4   Thu Mar  3 22:34:13 2011(r219256)
+++ head/share/man/man4/run.4   Fri Mar  4 07:01:45 2011(r219257)
@@ -120,6 +120,7 @@ driver supports the following wireless a
 .It Belkin F6D4050 ver 1
 .It Buffalo WLI-UC-AG300N
 .It Buffalo WLI-UC-G300N
+.It Buffalo WLI-UC-G301N
 .It Buffalo WLI-UC-GN
 .It Corega CG-WLUSB2GNL
 .It Corega CG-WLUSB2GNR

Modified: head/sys/dev/usb/usbdevs
==
--- head/sys/dev/usb/usbdevsThu Mar  3 22:34:13 2011(r219256)
+++ head/sys/dev/usb/usbdevsFri Mar  4 07:01:45 2011(r219257)
@@ -2157,6 +2157,7 @@ product MELCO WLIUCG  0x0137  WLI-UC-G
 product MELCO RT2870_1 0x0148  RT2870
 product MELCO RT2870_2 0x0150  RT2870
 product MELCO WLIUCGN  0x015d  WLI-UC-GN
+product MELCO WLIUCG301N   0x016f  WLI-UC-G301N
 
 /* Merlin products */
 product MERLIN V620 0x1110  Merlin V620

Modified: head/sys/dev/usb/wlan/if_run.c
==
--- head/sys/dev/usb/wlan/if_run.c  Thu Mar  3 22:34:13 2011
(r219256)
+++ head/sys/dev/usb/wlan/if_run.c  Fri Mar  4 07:01:45 2011
(r219257)
@@ -210,6 +210,7 @@ static const struct usb_device_id run_de
 RUN_DEV(MELCO, RT2870_2),
 RUN_DEV(MELCO, WLIUCAG300N),
 RUN_DEV(MELCO, WLIUCG300N),
+RUN_DEV(MELCO, WLIUCG301N),
 RUN_DEV(MELCO, WLIUCGN),
 RUN_DEV(MOTOROLA4, RT2770),
 RUN_DEV(MOTOROLA4, RT3070),
___
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"