svn commit: r257011 - in projects/vps: contrib/llvm/tools/clang/lib/Headers lib/libfetch sys/cam/scsi sys/cddl/contrib/opensolaris/uts/common/fs/zfs sys/dev/usb/wlan usr.bin/fetch usr.sbin/watchdogd
Will Andrews
will at FreeBSD.org
Wed Oct 23 19:12:04 UTC 2013
Author: will
Date: Wed Oct 23 19:12:02 2013
New Revision: 257011
URL: http://svnweb.freebsd.org/changeset/base/257011
Log:
Sync with svn.7he.at/vps/trunk r203.
Merge changes 253795:253808 from svn.freebsd.org/base/head/. to .
No merge conflicts.
r203 | klaus | 2013-08-01 01:09:07 -0600 (Thu, 01 Aug 2013) | 3 lines
Update from FreeBSD r253795 to r253808.
Submitted by: Klaus P. Ohrhallinger <k at 7he.at>
Modified:
projects/vps/contrib/llvm/tools/clang/lib/Headers/cpuid.h
projects/vps/lib/libfetch/fetch.3
projects/vps/lib/libfetch/http.c
projects/vps/sys/cam/scsi/scsi_da.c
projects/vps/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
projects/vps/sys/dev/usb/wlan/if_rsu.c
projects/vps/usr.bin/fetch/fetch.1
projects/vps/usr.sbin/watchdogd/watchdogd.c
Directory Properties:
projects/vps/ (props changed)
projects/vps/contrib/llvm/ (props changed)
projects/vps/contrib/llvm/tools/clang/ (props changed)
projects/vps/sys/ (props changed)
projects/vps/sys/cddl/contrib/opensolaris/ (props changed)
Modified: projects/vps/contrib/llvm/tools/clang/lib/Headers/cpuid.h
==============================================================================
--- projects/vps/contrib/llvm/tools/clang/lib/Headers/cpuid.h Wed Oct 23 19:06:53 2013 (r257010)
+++ projects/vps/contrib/llvm/tools/clang/lib/Headers/cpuid.h Wed Oct 23 19:12:02 2013 (r257011)
@@ -25,10 +25,132 @@
#error this header is for x86 only
#endif
+/* Features in %ecx for level 1 */
+#define bit_SSE3 0x00000001
+#define bit_PCLMULQDQ 0x00000002
+#define bit_DTES64 0x00000004
+#define bit_MONITOR 0x00000008
+#define bit_DSCPL 0x00000010
+#define bit_VMX 0x00000020
+#define bit_SMX 0x00000040
+#define bit_EIST 0x00000080
+#define bit_TM2 0x00000100
+#define bit_SSSE3 0x00000200
+#define bit_CNXTID 0x00000400
+#define bit_FMA 0x00001000
+#define bit_CMPXCHG16B 0x00002000
+#define bit_xTPR 0x00004000
+#define bit_PDCM 0x00008000
+#define bit_PCID 0x00020000
+#define bit_DCA 0x00040000
+#define bit_SSE41 0x00080000
+#define bit_SSE42 0x00100000
+#define bit_x2APIC 0x00200000
+#define bit_MOVBE 0x00400000
+#define bit_POPCNT 0x00800000
+#define bit_TSCDeadline 0x01000000
+#define bit_AESNI 0x02000000
+#define bit_XSAVE 0x04000000
+#define bit_OSXSAVE 0x08000000
+#define bit_AVX 0x10000000
+#define bit_RDRAND 0x40000000
+
+/* Features in %edx for level 1 */
+#define bit_FPU 0x00000001
+#define bit_VME 0x00000002
+#define bit_DE 0x00000004
+#define bit_PSE 0x00000008
+#define bit_TSC 0x00000010
+#define bit_MSR 0x00000020
+#define bit_PAE 0x00000040
+#define bit_MCE 0x00000080
+#define bit_CX8 0x00000100
+#define bit_APIC 0x00000200
+#define bit_SEP 0x00000800
+#define bit_MTRR 0x00001000
+#define bit_PGE 0x00002000
+#define bit_MCA 0x00004000
+#define bit_CMOV 0x00008000
+#define bit_PAT 0x00010000
+#define bit_PSE36 0x00020000
+#define bit_PSN 0x00040000
+#define bit_CLFSH 0x00080000
+#define bit_DS 0x00200000
+#define bit_ACPI 0x00400000
+#define bit_MMX 0x00800000
+#define bit_FXSR 0x01000000
+#define bit_SSE 0x02000000
+#define bit_SSE2 0x04000000
+#define bit_SS 0x08000000
+#define bit_HTT 0x10000000
+#define bit_TM 0x20000000
+#define bit_PBE 0x80000000
+
+/* Features in %ebx for level 7 sub-leaf 0 */
+#define bit_FSGSBASE 0x00000001
+#define bit_SMEP 0x00000080
+#define bit_ENH_MOVSB 0x00000200
+
+/* PIC on i386 uses %ebx, so preserve it. */
+#if __i386__
+#define __cpuid(__level, __eax, __ebx, __ecx, __edx) \
+ __asm(" pushl %%ebx\n" \
+ " cpuid\n" \
+ " mov %%ebx,%1\n" \
+ " popl %%ebx" \
+ : "=a"(__eax), "=r" (__ebx), "=c"(__ecx), "=d"(__edx) \
+ : "0"(__level))
+
+#define __cpuid_count(__level, __count, __eax, __ebx, __ecx, __edx) \
+ __asm(" pushl %%ebx\n" \
+ " cpuid\n" \
+ " mov %%ebx,%1\n" \
+ " popl %%ebx" \
+ : "=a"(__eax), "=r" (__ebx), "=c"(__ecx), "=d"(__edx) \
+ : "0"(__level), "2"(__count))
+#else
+#define __cpuid(__level, __eax, __ebx, __ecx, __edx) \
+ __asm("cpuid" : "=a"(__eax), "=b" (__ebx), "=c"(__ecx), "=d"(__edx) \
+ : "0"(__level))
+
+#define __cpuid_count(__level, __count, __eax, __ebx, __ecx, __edx) \
+ __asm("cpuid" : "=a"(__eax), "=b" (__ebx), "=c"(__ecx), "=d"(__edx) \
+ : "0"(__level), "2"(__count))
+#endif
+
static __inline int __get_cpuid (unsigned int __level, unsigned int *__eax,
unsigned int *__ebx, unsigned int *__ecx,
unsigned int *__edx) {
- __asm("cpuid" : "=a"(*__eax), "=b" (*__ebx), "=c"(*__ecx), "=d"(*__edx)
- : "0"(__level));
+ __cpuid(__level, *__eax, *__ebx, *__ecx, *__edx);
return 1;
}
+
+static __inline int __get_cpuid_max (unsigned int __level, unsigned int *__sig)
+{
+ unsigned int __eax, __ebx, __ecx, __edx;
+#if __i386__
+ int __cpuid_supported;
+
+ __asm(" pushfl\n"
+ " popl %%eax\n"
+ " movl %%eax,%%ecx\n"
+ " xorl $0x00200000,%%eax\n"
+ " pushl %%eax\n"
+ " popfl\n"
+ " pushfl\n"
+ " popl %%eax\n"
+ " movl $0,%0\n"
+ " cmpl %%eax,%%ecx\n"
+ " je 1f\n"
+ " movl $1,%0\n"
+ "1:"
+ : "=r" (__cpuid_supported) : : "eax", "ecx");
+ if (!__cpuid_supported)
+ return 0;
+#endif
+
+ __cpuid(__level, __eax, __ebx, __ecx, __edx);
+ if (__sig)
+ *__sig = __ebx;
+ return __eax;
+}
Modified: projects/vps/lib/libfetch/fetch.3
==============================================================================
--- projects/vps/lib/libfetch/fetch.3 Wed Oct 23 19:06:53 2013 (r257010)
+++ projects/vps/lib/libfetch/fetch.3 Wed Oct 23 19:12:02 2013 (r257011)
@@ -1,5 +1,5 @@
.\"-
-.\" Copyright (c) 1998-2011 Dag-Erling Smørgrav
+.\" Copyright (c) 1998-2013 Dag-Erling Smørgrav
.\" Copyright (c) 2013 Michael Gmelin <freebsd at grem.de>
.\" All rights reserved.
.\"
@@ -26,7 +26,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd January 25, 2013
+.Dd July 30, 2013
.Dt FETCH 3
.Os
.Sh NAME
@@ -571,6 +571,15 @@ variable is set.
Same as
.Ev FTP_PROXY ,
for compatibility.
+.It Ev HTTP_ACCEPT
+Specifies the value of the
+.Va Accept
+header for HTTP requests.
+If empty, no
+.Va Accept
+header is sent.
+The default is
+.Dq */* .
.It Ev HTTP_AUTH
Specifies HTTP authorization parameters as a colon-separated list of
items.
Modified: projects/vps/lib/libfetch/http.c
==============================================================================
--- projects/vps/lib/libfetch/http.c Wed Oct 23 19:06:53 2013 (r257010)
+++ projects/vps/lib/libfetch/http.c Wed Oct 23 19:12:02 2013 (r257011)
@@ -1,5 +1,5 @@
/*-
- * Copyright (c) 2000-2011 Dag-Erling Smørgrav
+ * Copyright (c) 2000-2013 Dag-Erling Smørgrav
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -1664,6 +1664,12 @@ http_request(struct url *URL, const char
}
/* other headers */
+ if ((p = getenv("HTTP_ACCEPT")) != NULL) {
+ if (*p != '\0')
+ http_cmd(conn, "Accept: %s", p);
+ } else {
+ http_cmd(conn, "Accept: */*");
+ }
if ((p = getenv("HTTP_REFERER")) != NULL && *p != '\0') {
if (strcasecmp(p, "auto") == 0)
http_cmd(conn, "Referer: %s://%s%s",
Modified: projects/vps/sys/cam/scsi/scsi_da.c
==============================================================================
--- projects/vps/sys/cam/scsi/scsi_da.c Wed Oct 23 19:06:53 2013 (r257010)
+++ projects/vps/sys/cam/scsi/scsi_da.c Wed Oct 23 19:12:02 2013 (r257011)
@@ -98,7 +98,8 @@ typedef enum {
DA_Q_NO_SYNC_CACHE = 0x01,
DA_Q_NO_6_BYTE = 0x02,
DA_Q_NO_PREVENT = 0x04,
- DA_Q_4K = 0x08
+ DA_Q_4K = 0x08,
+ DA_Q_NO_RC16 = 0x10
} da_quirks;
#define DA_Q_BIT_STRING \
@@ -106,7 +107,8 @@ typedef enum {
"\001NO_SYNC_CACHE" \
"\002NO_6_BYTE" \
"\003NO_PREVENT" \
- "\0044K"
+ "\0044K" \
+ "\005NO_RC16"
typedef enum {
DA_CCB_PROBE_RC = 0x01,
@@ -680,6 +682,11 @@ static struct da_quirk_entry da_quirk_ta
{T_DIRECT, SIP_MEDIA_REMOVABLE, "Kingston", "DataTraveler G3",
"1.00"}, /*quirks*/ DA_Q_NO_PREVENT
},
+ {
+ /* At least several Transcent USB sticks lie on RC16. */
+ {T_DIRECT, SIP_MEDIA_REMOVABLE, "JetFlash", "Transcend*",
+ "*"}, /*quirks*/ DA_Q_NO_RC16
+ },
/* ATA/SATA devices over SAS/USB/... */
{
/* Hitachi Advanced Format (4k) drives */
@@ -2075,7 +2082,8 @@ daregister(struct cam_periph *periph, vo
softc->minimum_cmd_size = 16;
/* Predict whether device may support READ CAPACITY(16). */
- if (SID_ANSI_REV(&cgd->inq_data) >= SCSI_REV_SPC3) {
+ if (SID_ANSI_REV(&cgd->inq_data) >= SCSI_REV_SPC3 &&
+ (softc->quirks & DA_Q_NO_RC16) == 0) {
softc->flags |= DA_FLAG_CAN_RC16;
softc->state = DA_STATE_PROBE_RC16;
}
Modified: projects/vps/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c
==============================================================================
--- projects/vps/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c Wed Oct 23 19:06:53 2013 (r257010)
+++ projects/vps/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c Wed Oct 23 19:12:02 2013 (r257011)
@@ -5495,10 +5495,10 @@ zfs_ioctl_init(void)
zfs_secpolicy_read, B_FALSE, POOL_CHECK_NONE);
zfs_ioctl_register_pool(ZFS_IOC_ERROR_LOG, zfs_ioc_error_log,
- zfs_secpolicy_inject, B_FALSE, POOL_CHECK_SUSPENDED);
+ zfs_secpolicy_inject, B_FALSE, POOL_CHECK_NONE);
zfs_ioctl_register_pool(ZFS_IOC_DSOBJ_TO_DSNAME,
zfs_ioc_dsobj_to_dsname,
- zfs_secpolicy_diff, B_FALSE, POOL_CHECK_SUSPENDED);
+ zfs_secpolicy_diff, B_FALSE, POOL_CHECK_NONE);
zfs_ioctl_register_pool(ZFS_IOC_POOL_GET_HISTORY,
zfs_ioc_pool_get_history,
zfs_secpolicy_config, B_FALSE, POOL_CHECK_SUSPENDED);
@@ -5507,7 +5507,7 @@ zfs_ioctl_init(void)
zfs_secpolicy_config, B_TRUE, POOL_CHECK_NONE);
zfs_ioctl_register_pool(ZFS_IOC_CLEAR, zfs_ioc_clear,
- zfs_secpolicy_config, B_TRUE, POOL_CHECK_SUSPENDED);
+ zfs_secpolicy_config, B_TRUE, POOL_CHECK_NONE);
zfs_ioctl_register_pool(ZFS_IOC_POOL_REOPEN, zfs_ioc_pool_reopen,
zfs_secpolicy_config, B_TRUE, POOL_CHECK_SUSPENDED);
Modified: projects/vps/sys/dev/usb/wlan/if_rsu.c
==============================================================================
--- projects/vps/sys/dev/usb/wlan/if_rsu.c Wed Oct 23 19:06:53 2013 (r257010)
+++ projects/vps/sys/dev/usb/wlan/if_rsu.c Wed Oct 23 19:12:02 2013 (r257011)
@@ -2077,7 +2077,7 @@ rsu_power_off(struct rsu_softc *sc)
}
static int
-rsu_fw_loadsection(struct rsu_softc *sc, uint8_t *buf, int len)
+rsu_fw_loadsection(struct rsu_softc *sc, const uint8_t *buf, int len)
{
struct rsu_data *data;
struct r92s_tx_desc *txd;
@@ -2111,9 +2111,9 @@ rsu_fw_loadsection(struct rsu_softc *sc,
static int
rsu_load_firmware(struct rsu_softc *sc)
{
- struct r92s_fw_hdr *hdr;
+ const struct r92s_fw_hdr *hdr;
struct r92s_fw_priv *dmem;
- uint8_t *imem, *emem;
+ const uint8_t *imem, *emem;
int imemsz, ememsz;
const struct firmware *fw;
size_t size;
@@ -2136,7 +2136,7 @@ rsu_load_firmware(struct rsu_softc *sc)
error = EINVAL;
goto fail;
}
- hdr = (struct r92s_fw_hdr *)fw->data;
+ hdr = (const struct r92s_fw_hdr *)fw->data;
if (hdr->signature != htole16(0x8712) &&
hdr->signature != htole16(0x8192)) {
device_printf(sc->sc_dev,
@@ -2163,7 +2163,7 @@ rsu_load_firmware(struct rsu_softc *sc)
error = EINVAL;
goto fail;
}
- imem = (uint8_t *)&hdr[1];
+ imem = (const uint8_t *)&hdr[1];
emem = imem + imemsz;
/* Load IMEM section. */
@@ -2238,7 +2238,7 @@ rsu_load_firmware(struct rsu_softc *sc)
}
/* Update DMEM section before loading. */
- dmem = &hdr->priv;
+ dmem = __DECONST(struct r92s_fw_priv *, &hdr->priv);
memset(dmem, 0, sizeof(*dmem));
dmem->hci_sel = R92S_HCI_SEL_USB | R92S_HCI_SEL_8172;
dmem->nendpoints = sc->npipes;
Modified: projects/vps/usr.bin/fetch/fetch.1
==============================================================================
--- projects/vps/usr.bin/fetch/fetch.1 Wed Oct 23 19:06:53 2013 (r257010)
+++ projects/vps/usr.bin/fetch/fetch.1 Wed Oct 23 19:12:02 2013 (r257011)
@@ -1,5 +1,6 @@
.\"-
-.\" Copyright (c) 2000-2011 Dag-Erling Smørgrav
+.\" Copyright (c) 2000-2013 Dag-Erling Smørgrav
+.\" Copyright (c) 2013 Michael Gmelin <freebsd at grem.de>
.\" All rights reserved.
.\" Portions Copyright (c) 1999 Massachusetts Institute of Technology; used
.\" by permission.
@@ -29,7 +30,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd September 27, 2011
+.Dd July 30, 2013
.Dt FETCH 1
.Os
.Sh NAME
@@ -339,6 +340,7 @@ for a description of additional environm
.Ev FTP_PASSWORD ,
.Ev FTP_PROXY ,
.Ev ftp_proxy ,
+.Ev HTTP_ACCEPT ,
.Ev HTTP_AUTH ,
.Ev HTTP_PROXY ,
.Ev http_proxy ,
Modified: projects/vps/usr.sbin/watchdogd/watchdogd.c
==============================================================================
--- projects/vps/usr.sbin/watchdogd/watchdogd.c Wed Oct 23 19:06:53 2013 (r257010)
+++ projects/vps/usr.sbin/watchdogd/watchdogd.c Wed Oct 23 19:12:02 2013 (r257011)
@@ -774,7 +774,7 @@ parseargs(int argc, char *argv[])
struct timespec ts;
pow2ns_to_ts(timeout, &ts);
- if (pretimeout >= ts.tv_sec) {
+ if (pretimeout >= (uintmax_t)ts.tv_sec) {
errx(EX_USAGE,
"pretimeout (%d) >= timeout (%d -> %ld)\n"
"see manual section TIMEOUT RESOLUTION",
More information about the svn-src-projects
mailing list