From owner-freebsd-snapshots@FreeBSD.ORG Tue Aug 27 04:31:08 2013 Return-Path: Delivered-To: freebsd-snapshots@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id AD07DDB3; Tue, 27 Aug 2013 04:31:08 +0000 (UTC) (envelope-from gjb@FreeBSD.org) Received: from mail0.glenbarber.us (mail0.glenbarber.us [208.86.227.67]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4B13D2919; Tue, 27 Aug 2013 04:31:08 +0000 (UTC) Received: from glenbarber.us (unknown [IPv6:2001:470:8:1205:3119:eb32:14c4:b83a]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by mail0.glenbarber.us (Postfix) with ESMTPSA id 274CC2987; Tue, 27 Aug 2013 04:31:06 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.8.3 mail0.glenbarber.us 274CC2987 Authentication-Results: mail0.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Tue, 27 Aug 2013 00:31:04 -0400 From: Glen Barber To: freebsd-snapshots@FreeBSD.org Subject: New FreeBSD snapshots and virtual machine disk images (20130825 r254890) Message-ID: <20130827043104.GK49310@glenbarber.us> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="e8/wErwm0bqugfcz" Content-Disposition: inline X-Operating-System: FreeBSD 10.0-CURRENT amd64 User-Agent: Mutt/1.5.21 (2010-09-15) X-BeenThere: freebsd-snapshots@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: FreeBSD Development Snapshot Announcements List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 27 Aug 2013 04:31:08 -0000 --e8/wErwm0bqugfcz Content-Type: multipart/mixed; boundary="GeONROBiaq1zPAtT" Content-Disposition: inline --GeONROBiaq1zPAtT Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable New FreeBSD development branch installation ISOs and virtual machine disk images have been uploaded to the FTP mirrors. Subversion logs since the last set of snapshots attached to this email. As with any development branch, the installation snapshots are not intended for use on production systems. We do, however, encourage testing on non-production systems as much as possible. Important note: non-x86 snapshots are generated in a cross-build environment, not natively built on their respective architectures. Checksums for the installation ISOs and the VM disk images follow at the end of this email. =3D=3D=3D Installation ISOs =3D=3D=3D bootonly.iso, disc1.iso, and memstick.img images are available for: o 10.0-CURRENT amd64 o 10.0-CURRENT i386 o 10.0-CURRENT ia64 o 10.0-CURRENT powerpc o 10.0-CURRENT powepc64 o 10.0-CURRENT sparc64 Snapshots may be downloaded from the corresponding architecture directory from: ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/ISO-IMAGES/ Please be patient if your local FTP mirror has not yet caught up with the changes. Problems, bug reports, or regression reports should be reported through the GNATS PR system or the appropriate mailing list, such as -current@ or -stable@ . =3D=3D=3D Virtual Machine Disk Images =3D=3D=3D =20 VM disk images are available for the following FreeBSD branches for the amd64 and i386 architectures: o 10.0-CURRENT amd64 o 10.0-CURRENT i386 Disk images may be downloaded from the following URL (or any of the FreeBSD FTP mirrors): ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/VM-IMAGES/Latest/ Images are available in the following disk image formats: - QCOW2 - VMDK The partition layout is: - 512k - freebsd-boot GPT partition type (bootfs GPT label) - 1GB - freebsd-swap GPT partition type (swapfs GPT label) - ~8GB - freebsd-ufs GPT partition type (rootfs UFS label) Checksums for the current set of snapshots and images: =3D=3D=3D Installation ISOs =3D=3D=3D o 10.0-CURRENT amd64: SHA256 (FreeBSD-10.0-CURRENT-amd64-20130825-r254890-bootonly.iso) =3D fff0c= e325bff318950b7bd232bb34b7b82dee9d38d049e5d13f9271a5bd6568b SHA256 (FreeBSD-10.0-CURRENT-amd64-20130825-r254890-disc1.iso) =3D 392bd746= 3a518902c65ea8706783a487c8c89df2795c40c9680c21b5da4b3c58 SHA256 (FreeBSD-10.0-CURRENT-amd64-20130825-r254890-memstick.img) =3D 1033c= c28bb0bd43900e0fdec1d134a09e010786c23028afe2225a86dbc969822 MD5 (FreeBSD-10.0-CURRENT-amd64-20130825-r254890-bootonly.iso) =3D cd0b03cc= 8973afed271b53cbf85fe67e MD5 (FreeBSD-10.0-CURRENT-amd64-20130825-r254890-disc1.iso) =3D 6ce38a42038= 73231867fce513690d68f MD5 (FreeBSD-10.0-CURRENT-amd64-20130825-r254890-memstick.img) =3D a9cc13ac= 0e186e3959cad0b0c8509fd2 o 10.0-CURRENT i386: SHA256 (FreeBSD-10.0-CURRENT-i386-20130825-r254890-bootonly.iso) =3D 059034= 878a9458a68754b5a55a87db827a2f5565b523534ec664f1f848dd2a55 SHA256 (FreeBSD-10.0-CURRENT-i386-20130825-r254890-disc1.iso) =3D c8eb84379= d9b86aa1b36d2695c1d8d783f97eda0dabb9406854dad643b1dcc4e SHA256 (FreeBSD-10.0-CURRENT-i386-20130825-r254890-memstick.img) =3D 1b0a05= e452be7f27b58f14bd0b5a0a9f5d41f5299c1cffe6d049fa73cfed6985 MD5 (FreeBSD-10.0-CURRENT-i386-20130825-r254890-bootonly.iso) =3D bf7dd6e21= 3304bb1ef5e5ea0c018e24e MD5 (FreeBSD-10.0-CURRENT-i386-20130825-r254890-disc1.iso) =3D cf8aaf2dc915= 7701e1216d13fbc16ce7 MD5 (FreeBSD-10.0-CURRENT-i386-20130825-r254890-memstick.img) =3D 0e8991a57= 8ce6e57cde71e58a8c01389 o 10.0-CURRENT ia64: SHA256 (FreeBSD-10.0-CURRENT-ia64-20130825-r254890-bootonly.iso) =3D 962463= 5dbda107a9b43800cd61cc4a6f863879ca049a83424270c31bc940859f SHA256 (FreeBSD-10.0-CURRENT-ia64-20130825-r254890-disc1.iso) =3D df0ecde9c= 78a6f4836f363809699e729e66c83942f43ec993086c2c7d0e24b59 SHA256 (FreeBSD-10.0-CURRENT-ia64-20130825-r254890-memstick.img) =3D 366670= efc5f4c7d05b2efa4685a56c7616fd8efaef32ac8e53d54ec58e44c410 MD5 (FreeBSD-10.0-CURRENT-ia64-20130825-r254890-bootonly.iso) =3D 39a6f5671= 6957ffd1224be38978503b3 MD5 (FreeBSD-10.0-CURRENT-ia64-20130825-r254890-disc1.iso) =3D f16f485b2818= 9af142954143a050f61b MD5 (FreeBSD-10.0-CURRENT-ia64-20130825-r254890-memstick.img) =3D 955227296= e84026fd242785c49569f01 o 10.0-CURRENT powerpc: SHA256 (FreeBSD-10.0-CURRENT-powerpc-20130825-r254890-bootonly.iso) =3D aa6= 45ec7bd0a56142b725ef6eb1773e22600472585859c7bf1ac171bdb6c3f6a SHA256 (FreeBSD-10.0-CURRENT-powerpc-20130825-r254890-disc1.iso) =3D 94ce24= ede1f492353049fe76838a7c19d22613c98a75a91e69b2783ebc1f1af8 SHA256 (FreeBSD-10.0-CURRENT-powerpc-20130825-r254890-memstick.img) =3D 662= 250ef80e49b43979afaa9fc8933f004a4e684ca95ae9c12c5495be207c98b MD5 (FreeBSD-10.0-CURRENT-powerpc-20130825-r254890-bootonly.iso) =3D cbc126= 1003089fcca723260fc99305ab MD5 (FreeBSD-10.0-CURRENT-powerpc-20130825-r254890-disc1.iso) =3D 75b49db7e= c9c9fc185d4f618f6bce20a MD5 (FreeBSD-10.0-CURRENT-powerpc-20130825-r254890-memstick.img) =3D 8134ea= a62cfd1d1c5647911126a4b06f o 10.0-CURRENT powerpc64: SHA256 (FreeBSD-10.0-CURRENT-powerpc64-20130825-r254890-bootonly.iso) =3D 4= afa833d7c84499d62e598ee9e34be3b3b4ed0341b472a68a8b35d849e663148 SHA256 (FreeBSD-10.0-CURRENT-powerpc64-20130825-r254890-disc1.iso) =3D bdb4= 9dd7a9c39729279bca830708c4871d5d85f8402d43dcaeedc8c54ca0935e SHA256 (FreeBSD-10.0-CURRENT-powerpc64-20130825-r254890-memstick.img) =3D c= dcd5ac91aa1ef0680e3ef5f507231c8741e750fa26912163ffc33cb0393dfff MD5 (FreeBSD-10.0-CURRENT-powerpc64-20130825-r254890-bootonly.iso) =3D e90c= ea3e81575d2f4dc098007741aa2d MD5 (FreeBSD-10.0-CURRENT-powerpc64-20130825-r254890-disc1.iso) =3D 05a8dfb= 36bccbfd50dde3374b45bbce7 MD5 (FreeBSD-10.0-CURRENT-powerpc64-20130825-r254890-memstick.img) =3D 14eb= 6ae1a53cf3a0458696c3bbc8da90 o 10.0-CURRENT sparc64: SHA256 (FreeBSD-10.0-CURRENT-sparc64-20130825-r254890-bootonly.iso) =3D 0be= e9f7b6c885eec880c8c7d1a673ff93d0579d952551488cce9d9bf92a1c406 SHA256 (FreeBSD-10.0-CURRENT-sparc64-20130825-r254890-disc1.iso) =3D 97f8ea= 79ba1b97f28d51ddab9025b0ff39545116029ecb94e01a5208548d6ddc MD5 (FreeBSD-10.0-CURRENT-sparc64-20130825-r254890-bootonly.iso) =3D 5a6d8c= ba2966b1d13af8ff5be80e279f MD5 (FreeBSD-10.0-CURRENT-sparc64-20130825-r254890-disc1.iso) =3D ae81c29ee= e87c38997cda7409f1f23c5 =3D=3D=3D Virtual Machine Disk Images =3D=3D=3D o 10.0-CURRENT amd64: SHA256 (FreeBSD-10.0-CURRENT-amd64-20130825-r254890.qcow2.xz) =3D 4c0a8cc3a= e8fb1dbd795acd4c9a6d7acf355c4d57839aed78b8f0a263a4326ee SHA256 (FreeBSD-10.0-CURRENT-amd64-20130825-r254890.vmdk.xz) =3D a76d03aea6= 33fbda7cba9bf8e82e929c3718426cf92275074a59cce5a85f6871 MD5 (FreeBSD-10.0-CURRENT-amd64-20130825-r254890.qcow2.xz) =3D 80ffcf0b32e7= 08ef7ed669455fceb6f3 MD5 (FreeBSD-10.0-CURRENT-amd64-20130825-r254890.vmdk.xz) =3D ab878d0c9735a= d51cecd68898bb9a937 o 10.0-CURRENT i386: SHA256 (FreeBSD-10.0-CURRENT-i386-20130825-r254890.qcow2.xz) =3D ef74149dde= 6f21ff5a7871f959b5b9aa0ade609df71f9e04ef4f89d73394d807 SHA256 (FreeBSD-10.0-CURRENT-i386-20130825-r254890.vmdk.xz) =3D f0f5a6998af= 35c0f1e6aa8a0be376e898ac3bffb592238e62e9929521da62377 MD5 (FreeBSD-10.0-CURRENT-i386-20130825-r254890.qcow2.xz) =3D c6b7c11684536= 19a74b149c0fc48d3c2 MD5 (FreeBSD-10.0-CURRENT-i386-20130825-r254890.vmdk.xz) =3D 107fbeb5629b89= b6eed2499855b8d48d Regards, Glen --GeONROBiaq1zPAtT Content-Type: text/plain; charset=us-ascii Content-Disposition: attachment; filename="changelog-head-r254497-r254890.txt" Content-Transfer-Encoding: quoted-printable ------------------------------------------------------------------------ r254497 | tijl | 2013-08-18 19:37:35 +0000 (Sun, 18 Aug 2013) | 3 lines Change the return type of the fallback implementation of the atomic_compare_exchange_* macros in stdatomic.h to _Bool. ------------------------------------------------------------------------ r254498 | pjd | 2013-08-18 20:06:35 +0000 (Sun, 18 Aug 2013) | 2 lines Remove redundant space. ------------------------------------------------------------------------ r254499 | pjd | 2013-08-18 20:11:34 +0000 (Sun, 18 Aug 2013) | 6 lines Implement fdclosedir(3) function, which is equivalent to the closedir(3) function, but returns directory file descriptor instead of closing it. Submitted by: Mariusz Zaborski Sponsored by: Google Summer of Code 2013 ------------------------------------------------------------------------ r254500 | adrian | 2013-08-18 20:40:13 +0000 (Sun, 18 Aug 2013) | 4 lines Return the correct status if ieee80211_ff_check() consumes the mbuf. I broke this when converting the net80211 TX path to use if_transmit. ------------------------------------------------------------------------ r254501 | kib | 2013-08-18 21:36:22 +0000 (Sun, 18 Aug 2013) | 18 lines When code from r254064 in pmap_ts_referenced() drops pv lock and blocks on a pmap lock, pmap_release() might proceed in parallel and destroy the pmap mutex, since unlocked pv lock allows to remove pv entry owned by the pmap. For now, gate the pmap_release() on write-locked pvh_global_lock. Since pmap_ts_release() does not unlock the global lock, pmap_release() would not destroy pmap mutex until the pmap_ts_referenced() finished. We cannot enter pmap_ts_referenced() and encounter a pv entry for the destroyed pmap if pmap_release() passed the global lock gate, since pmap_remove_pages() would finish earlier. Reported by: jeff, pho Reviewed by: alc Tested by: pho Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254506 | adrian | 2013-08-18 23:40:30 +0000 (Sun, 18 Aug 2013) | 5 lines Don't return ENOTSUPP here - the net80211 pluggable ioctl API will treat this as the final item in the linker set and not try others. This stopped the fast frames IOCTLs from being called. ------------------------------------------------------------------------ r254507 | ian | 2013-08-19 01:29:13 +0000 (Mon, 19 Aug 2013) | 13 lines Allow a hardware driver to pass clock frequencies into the sdhci driver. The sdhci spec says that if the base or timeout clock frequency in the capabilities register is zero, the driver must obtain the frequency "from another source." This change defines that other source to be the low-level hardware driver, which can pre-set the frequencies in slot.max_clk and slot.timeout_clk before calling sdhci_init_slot(). This helps with a growing number of SoCs that have sdhci base clock frequencies that either won't fit into the range allowed by the number of bits available in the capabilities register, or the frequency is runtime- configurable. ------------------------------------------------------------------------ r254508 | peter | 2013-08-19 04:56:03 +0000 (Mon, 19 Aug 2013) | 4 lines Add the optional ability to run as a different user. Obtained from: Antique freebsd.org cluster archive images ------------------------------------------------------------------------ r254509 | jhibbits | 2013-08-19 05:10:46 +0000 (Mon, 19 Aug 2013) | 2 lines Fix some ppc64 dtrace bugs, and enable systrace_freebsd32 for ppc64. ------------------------------------------------------------------------ r254510 | peter | 2013-08-19 05:12:38 +0000 (Mon, 19 Aug 2013) | 2 lines Revert r254508. ------------------------------------------------------------------------ r254511 | peter | 2013-08-19 05:37:49 +0000 (Mon, 19 Aug 2013) | 3 lines Pass pidfile to bsnmpd if it's been changed (parts cut/pasted from rc.d/rarpd and rc.d/wpa_supplicant) ------------------------------------------------------------------------ r254512 | rpaulo | 2013-08-19 05:48:42 +0000 (Mon, 19 Aug 2013) | 2 lines Style changes and typos fixed. ------------------------------------------------------------------------ r254514 | andrew | 2013-08-19 08:28:35 +0000 (Mon, 19 Aug 2013) | 2 lines Enable VFP on the Arndale Board. ------------------------------------------------------------------------ r254516 | andre | 2013-08-19 10:20:20 +0000 (Mon, 19 Aug 2013) | 3 lines Remove unused and incomplete support for delayed fragment checksums =66rom bce(4), bxe(4), mge(4) and ti(4) drivers. ------------------------------------------------------------------------ r254517 | andre | 2013-08-19 10:30:15 +0000 (Mon, 19 Aug 2013) | 4 lines Remove unused M_FRAG, M_FIRSTFRAG and M_LASTFRAG tagging from ip_fragment(). There wasn't any real driver (and hardware) support for it. Modern hardware does full fragmentation/segmentation offload instead. ------------------------------------------------------------------------ r254518 | andre | 2013-08-19 10:34:10 +0000 (Mon, 19 Aug 2013) | 6 lines Move ip_reassemble()'s use of the global M_FRAG mbuf flag to a protocol lay= er specific flag instead. The flag is only relevant while the packet stays in the IP reassembly queue. Discussed with: trociny, glebius ------------------------------------------------------------------------ r254519 | andre | 2013-08-19 11:08:36 +0000 (Mon, 19 Aug 2013) | 9 lines Move the global M_SKIP_FIREWALL mbuf flags to a protocol layer specific flag instead. The flag is only used within the IP and IPv6 layer 3 protocols. Because some firewall packages treat IPv4 and IPv6 packets the same the flag should have the same value for both. Discussed with: trociny, glebius ------------------------------------------------------------------------ r254520 | andre | 2013-08-19 11:16:53 +0000 (Mon, 19 Aug 2013) | 9 lines Remove the unused M_NOFREE mbuf flag. It didn't have any in-tree users for a very long time, if ever. Should such a functionality ever be needed again the appropriate and much better way to do it is through a custom EXT_SOMETHING external mbuf type together with a dedicated *ext_free function. Discussed with: trociny, glebius ------------------------------------------------------------------------ r254521 | andre | 2013-08-19 12:30:18 +0000 (Mon, 19 Aug 2013) | 6 lines Move the SCTP specific definition of M_NOTIFICATION onto a protocol specific mbuf flag from sys/mbuf.h to netinet/sctp_os_bsd.h. It is only relevant within SCTP. Discussed with: tuexen ------------------------------------------------------------------------ r254522 | theraven | 2013-08-19 12:37:13 +0000 (Mon, 19 Aug 2013) | 5 lines Add support for parameterised device tree sources to the device tree compil= er. Reviewed by: brooks Sponsored by: DARPA, AFRL ------------------------------------------------------------------------ r254523 | andre | 2013-08-19 13:27:32 +0000 (Mon, 19 Aug 2013) | 7 lines Add m_clrprotoflags() to clear protocol specific mbuf flags at up and downwards layer crossings. Consistently use it within IP, IPv6 and ethernet protocols. Discussed with: trociny, glebius ------------------------------------------------------------------------ r254524 | andre | 2013-08-19 13:56:14 +0000 (Mon, 19 Aug 2013) | 4 lines Add four additional M_PROTOFLAGS[9-12] for protocol specific use. Discussed with: trociny, glebius, adrian ------------------------------------------------------------------------ r254525 | gjb | 2013-08-19 14:04:35 +0000 (Mon, 19 Aug 2013) | 4 lines Add entry for packages-9.2-release directory. Approved by: re (implicit) ------------------------------------------------------------------------ r254526 | andre | 2013-08-19 14:07:31 +0000 (Mon, 19 Aug 2013) | 7 lines Migrate the net80211 protocol specific use of M_FRAG, M_FIRSTFRAG and M_LASTFRAG flags to protocol specific flags. Remove the now unused M_FRAG, M_FIRSTFRAG and M_LASTFRAG mbuf flags. Discussed with: trociny, glebius, adrian ------------------------------------------------------------------------ r254527 | andre | 2013-08-19 14:25:11 +0000 (Mon, 19 Aug 2013) | 13 lines Reorder the mbuf defines to make more sense and group related flags together. Add M_FLAG_PRINTF for use with printf(9) %b indentifier. Use the generic mbuf flags print names in the net80211 code and adjust the protocol specific bits for their new positions. Change SCTP M_PROTO mapping from 5 to 1 to fit within the 16bit field they use internally to store some additional information. Discussed with: trociny, glebius ------------------------------------------------------------------------ r254531 | raj | 2013-08-19 14:56:17 +0000 (Mon, 19 Aug 2013) | 17 lines Simplify pv_entry removal or ARMv6/v7: - PGA_WRITEABLE indicates that there *might be* a writable mapping for the particular page, so to avoid frequent sweeping of the pv_entries whenever pmap_nuke_pv(), pmap_modify_pv(), etc. is called, it is sufficient to clear that flag if there are no managed mappings for that page anymore (notice that only pmap_enter is authorized to set this flag). - Avoid redundant checking for PVF_WIRED flag when this flag cannot be set anyway. - Clear PGA_WRITEABLE only once for each vm_page instead of multiple, redundant clearing it in loop when there are no writeable mappings to that page anymore. Submitted by: Zbigniew Bodek Reviewed by: gber Sponsored by: The FreeBSD Foundation, Semihalf ------------------------------------------------------------------------ r254532 | raj | 2013-08-19 15:12:36 +0000 (Mon, 19 Aug 2013) | 15 lines Clear all L2 PTE protection bits before their configuration. Revise L2_S_PROT_MASK to include all of the protection bits. Notice that clearing these bits does not always take away the corresponding permissions (for example, permission is granted when the bit is cleared). The bits are cleared but are to be set or left cleared accordingly in pmap_set_prot(), pmap_enter_locked(), etc. Clear L2_XN along with L2_S_PROT_MASK in pmap_set_prot() so that all permissions related bits are cleared before actual configuration. Submitted by: Zbigniew Bodek Reviewed by: gber Sponsored by: The FreeBSD Foundation, Semihalf ------------------------------------------------------------------------ r254533 | raj | 2013-08-19 15:36:23 +0000 (Mon, 19 Aug 2013) | 13 lines Fix ARMv6/v7 mapping's wired status. Last input argument in pmap_modify_pv() should be a mask of flags to be set. In pmap_change_wiring() however, the straight wired status was used, which does not represent valid flags (and is of type boolean). This commit fixes the issue so that wired flag is passed to pmap_modify_pv() properly. Submitted by: Zbigniew Bodek Reviewed by: gber Sponsored by: The FreeBSD Foundation, Semihalf ------------------------------------------------------------------------ r254534 | ian | 2013-08-19 15:51:30 +0000 (Mon, 19 Aug 2013) | 5 lines Allow UART_POLL_FREQ to be set as a kernel option as well as via tunable (the code was already set up for this, just needs to be in conf/options). Also, if reporting that polling is being used, report the frequency too. ------------------------------------------------------------------------ r254535 | raj | 2013-08-19 15:58:39 +0000 (Mon, 19 Aug 2013) | 13 lines Simplify and clean up pmap_clearbit() There is no need for calling vm_page_dirty() when clearing "modified" flag = as it is already set for that page in pmap_fault_fixup() or pmap_enter() thanks to "modified" bit emulation. Also, there is no need for checking PTE "referenced" or "writeable" flags. = If there is a request to clear a particular flag we should just do it. Submitted by: Zbigniew Bodek Reviewed by: gber Sponsored by: The FreeBSD Foundation, Semihalf ------------------------------------------------------------------------ r254536 | raj | 2013-08-19 16:16:49 +0000 (Mon, 19 Aug 2013) | 7 lines Do not use pv_kva on ARMv6/v7 and save some space on each vm_page. It's on= ly relevant for older ARM variants (with virtual cache). Submitted by: Zbigniew Bodek Reviewed by: gber Sponsored by: The FreeBSD Foundation, Semihalf ------------------------------------------------------------------------ r254537 | andre | 2013-08-19 16:47:06 +0000 (Mon, 19 Aug 2013) | 3 lines Bump __FreeBSD_version to 1000046 after the addition of M_PROTO[9-12] and removal of M_NOFREE|M_FRAG|M_FIRSTFRAG|M_LASTFRAG mbuf flags. ------------------------------------------------------------------------ r254538 | jhb | 2013-08-19 17:09:14 +0000 (Mon, 19 Aug 2013) | 6 lines Remove incorrect 'const' qualifier from pointers to dynamic string buffers I added in the previous commit. Pointy hat to: jhb MFC after: 1 month ------------------------------------------------------------------------ r254539 | andrew | 2013-08-19 17:44:19 +0000 (Mon, 19 Aug 2013) | 2 lines Subversion requires atomic functions we only support on arm with clang. ------------------------------------------------------------------------ r254542 | andrew | 2013-08-19 22:25:36 +0000 (Mon, 19 Aug 2013) | 2 lines Enable VFP on the Zedboard. ------------------------------------------------------------------------ r254543 | jeff | 2013-08-19 23:02:39 +0000 (Mon, 19 Aug 2013) | 10 lines - Use an arbitrary but reasonably large import size for kva on architectur= es that don't support superpages. This keeps the number of spans and inter= nal fragmentation lower. - When the user asks for alignment from vmem_xalloc adjust the imported si= ze by 2*align to be certain we can satisfy the allocation. This comes at the expense of potential failures when the backend can't supply enough memory but could supply the requested size and alignment. Sponsored by: EMC / Isilon Storage Division ------------------------------------------------------------------------ r254544 | jeff | 2013-08-19 23:54:24 +0000 (Mon, 19 Aug 2013) | 10 lines - Increase the active lru refresh interval to 10 minutes. This has been shown to negatively impact some workloads and the goal is only to eliminate worst case behaviors for very long periods of paging inactivity. Eventually we should determine a more complex scaling factor for this feature. - Rate limit low memory callback handlers to limit thrashing. Set the default to 10 seconds. Sponsored by: EMC / Isilon Storage Division ------------------------------------------------------------------------ r254547 | neel | 2013-08-20 02:09:26 +0000 (Tue, 20 Aug 2013) | 13 lines Fix breakage caused by r254466 in minidumpsys(). r254466 increased the KVA from 512GB to 2TB which requires 4 PDP pages as opposed to a single one before the change. This broke minidumpsys() since it assumed that the entire KVA could be addressed via a single PDP page. Fix this by obtaining the address of the PDP page from the PML4 entry associated with the KVA being dumped. Reported by: pho Submitted by: kib Pointy hat to: neel ------------------------------------------------------------------------ r254548 | neel | 2013-08-20 06:20:05 +0000 (Tue, 20 Aug 2013) | 4 lines Extract the location of the remapping hardware units from the ACPI DMAR tab= le. Submitted by: Gopakumar T (gopakumar_thekkedath@yahoo.co.in) ------------------------------------------------------------------------ r254549 | neel | 2013-08-20 06:46:40 +0000 (Tue, 20 Aug 2013) | 6 lines Do not create superpage mappings in the iommu. This is a workaround to hide the fact that we do not have any code to demote a superpage mapping before we unmap a single page that is part of the superpage. ------------------------------------------------------------------------ r254553 | des | 2013-08-20 07:19:58 +0000 (Tue, 20 Aug 2013) | 4 lines Fix the zeroing loop. I must have been drunk when I wrote this... MFC after: 3 days ------------------------------------------------------------------------ r254558 | pho | 2013-08-20 11:06:56 +0000 (Tue, 20 Aug 2013) | 5 lines Added sysctl to turn off calls to vmem_check(). Sponsored by: EMC / Isilon storage division Discussed with: jeff ------------------------------------------------------------------------ r254559 | ian | 2013-08-20 12:33:35 +0000 (Tue, 20 Aug 2013) | 13 lines Make the standard sdhci(4) driver work for the TI OMAP family SoCs. The MMCHS hardware is pretty much a standard SDHCI v2.0 controller with a couple quirks, which are now supported by sdhci(4) as of r254507. This should work for all TI SoCs that use the MMCHS hardware, but it has only been tested on AM335x right now, so this enables it on those platforms but leaves the existing ti_mmchs driver in place for other OMAP variants until they can be tested. This initial incarnation lacks DMA support (coming soon). Even without it this improves performance pretty noticibly over the ti_mmchs driver, primarily because it now does multiblock IO. ------------------------------------------------------------------------ r254569 | bz | 2013-08-20 14:35:17 +0000 (Tue, 20 Aug 2013) | 4 lines After r241616 properly export ifi_baudrate_pf in the 32bit compat case. MFC after: 3 days ------------------------------------------------------------------------ r254570 | bz | 2013-08-20 14:37:06 +0000 (Tue, 20 Aug 2013) | 6 lines Catch up with various changes to if_data and make this compile again on HEAD. Seems to be one of the the only tools giving us access to ifi_baudrate and ifi_baudrate_pf values. MFC after: 3 days ------------------------------------------------------------------------ r254571 | bz | 2013-08-20 14:59:31 +0000 (Tue, 20 Aug 2013) | 5 lines Correct a typo in the event mask mnemonic. Reviewed by: gnn MFC after: 3 days ------------------------------------------------------------------------ r254572 | hselasky | 2013-08-20 16:21:05 +0000 (Tue, 20 Aug 2013) | 7 lines Force keyboards which don't have the required HID fields to use the USB BOOT protocol for now. PR: usb/181425 Submitted by: Andrey Zholos MFC after: 4 weeks ------------------------------------------------------------------------ r254576 | jhb | 2013-08-20 18:08:06 +0000 (Tue, 20 Aug 2013) | 7 lines Stop an ipoib interface before detaching it. PR: kern/181225 Submitted by: Shahar Klein Obtained from: Mellanox MFC after: 1 week ------------------------------------------------------------------------ r254577 | np | 2013-08-20 18:22:04 +0000 (Tue, 20 Aug 2013) | 5 lines Display P/N information in the description. Submitted by: gnn MFC after: 3 days ------------------------------------------------------------------------ r254580 | andrew | 2013-08-20 20:40:20 +0000 (Tue, 20 Aug 2013) | 2 lines Enable VFP on ARMADA XP. ------------------------------------------------------------------------ r254581 | dim | 2013-08-20 20:46:29 +0000 (Tue, 20 Aug 2013) | 9 lines Pull in r188716 from upstream clang trunk: PR16727: don't try to evaluate a potentially value-dependent expression when checking for missing parens in &&/|| expressions. This fixes an assertion encountered when building the lang/sdcc port. Reported by: kwm ------------------------------------------------------------------------ r254582 | dim | 2013-08-20 20:51:32 +0000 (Tue, 20 Aug 2013) | 17 lines Pull in r182983 from upstream clang trunk: Fix handling of braced-init-list as reference initializer within aggregate initialization. Previously we would incorrectly require an extra set of braces around such initializers. Pull in r188718 from upstream clang trunk: Handle init lists and _Atomic fields. Fixes PR16931. These fixes are needed for the atomic_flag type to work correctly in our stdatomic.h. Requested by: theraven ------------------------------------------------------------------------ r254585 | delphij | 2013-08-20 22:31:13 +0000 (Tue, 20 Aug 2013) | 5 lines MFV r254220: Illumos ZFS issues: 4039 zfs_rename()/zfs_link() needs stronger test for XDEV ------------------------------------------------------------------------ r254587 | delphij | 2013-08-21 00:04:31 +0000 (Wed, 21 Aug 2013) | 5 lines MFV r254421: Illumos ZFS issues: 3996 want a libzfs_core API to rollback to latest snapshot ------------------------------------------------------------------------ r254589 | ian | 2013-08-21 04:05:06 +0000 (Wed, 21 Aug 2013) | 3 lines Check for generic ns16550 after all other types. A device may be compatible with 16550 but also have a more specific/capable driver earlier in the list. ------------------------------------------------------------------------ r254590 | ian | 2013-08-21 04:08:58 +0000 (Wed, 21 Aug 2013) | 5 lines Use an if/else sequence rather than unrelated if statements, so that a device compatible with multiple drivers matches the more specific driver first and doesn't overwrite it later with the more generic. Move the generic ns16550 to the end of the list. ------------------------------------------------------------------------ r254591 | gibbs | 2013-08-21 04:10:24 +0000 (Wed, 21 Aug 2013) | 172 lines Enhance the ZFS vdev layer to maintain both a logical and a physical minimum allocation size for devices. Use this information to automatically increase ZFS's minimum allocation size for new top-level vdevs to a value that more closely matches the optimum device allocation size. Use GEOM's stripesize attribute, if set, as the physical sector size of the GEOM. Calculate the minimum blocksize of each metaslab class. Use the calculated value instead of SPA_MINBLOCKSIZE (512b) when determining the likelyhood of compression yeilding a reduction in physical space usage. Report devices with sub-optimal block size configuration in "zpool status". Also properly fail attempts to attach devices with a logical block size greater than 8kB, since this will cause corruption to ZFS's label area. Sponsored by: Spectra Logic Corporaion MFC after: 2 weeks Background =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Many modern devices use physical allocation units that are much larger than the minimum logical allocation size accessible by external commands. Two prevalent examples of this are 512e disk drives (512b logical sector, 4K physical sector) and flash devices (512b logical sector, 4K or larger allocation block size, and 128k or larger erase block size). Operations that modify less than the physical sector size result in a costly read-modify-write or garbage collection sequence on these devices. Simply exporting the true physical sector of the device to ZFS would yield optimal performance, but has two serious drawbacks: 1) Existing pools created with devices that have different logical and physical block sizes, but were configured to use the logical block size (e.g. because the OS version used for pool construction reported the logical block size instead of the physical block size) will suddenly find that the vdev allocation size has increased. This can be easily tolerated for active members of the array, but ZFS would prevent replacement of a vdev with another identical device because it now appears that the smaller allocation size required by the pool is not supported by the new device. 2) The device's physical block size may be too large to be supported by ZFS. The optimal allocation size for the vdev may be quite large. For example, a RAID controller may export a vdev that requires read-modify-write cycles unless accessed using 64k aligned/sized requests. ZFS currently has an 8k minimum block size limit. Reporting both the logical and physical allocation sizes for vdevs solves these problems. A device may be used so long as the logical block size is compatible with the configuration. By comparing the logical and physical block sizes, new configurations can be optimized and administrators can be notified of any existing pools that are sub-optimal. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa.h: Add the SPA_ASHIFT constant. ZFS currently has a hard upper limit of 13 (8k) for ashift and this constant is used to both document and enforce this limit. sys/cddl/contrib/opensolaris/uts/common/sys/fs/zfs.h: Add the VDEV_AUX_ASHIFT_TOO_BIG error code. Add fields for exporting the configured, logical, and physical ashift to the vdev_stat_t structure. Add VDEV_STAT_VALID() macro which can be used to verify the presence of required vdev_stat_t fields in nvlist data. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c: Provide a SYSCTL_PROC handler for "max_auto_ashift". Since the limit is only referenced long after boot when a create operation occurs, there's no compelling need for it to be a boot time configurable tunable. This also allows the validation code for the max_auto_ashift value to be contained within the sysctl handler. Populate the new fields in the vdev_stat_t structure. Fail vdev opens if the vdev reports an ashift larger than SPA_MAXASHIFT. Propogate vdev_logical_ashift and vdev_physical_ashift between child and parent vdevs as is done for vdev_ashift. In vdev_open(), restore code that fails opens for devices where vdev_ashift grows. This can only happen now if the device's logical ashift grows, which means it really isn't safe to use the device. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_file.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_geom.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_mirror.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_missing.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_raidz.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev_root.c: Update the vdev_open() API so that both logical (what was just ashift before) and physical ashift are reported. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/vdev_impl.h: Add two new fields, vdev_physical_ashift and vdev_logical_ashift, to vdev_t. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_config.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c: Add vdev_ashift_optimize(). Call it anytime a new top-level vdev is allocated. cddl/contrib/opensolaris/cmd/zpool/zpool_main.c: Add text for the VDEV_AUX_ASHIFT_TOO_BIG error. For each sub-optimally configured leaf vdev, report configured and native block sizes. cddl/contrib/opensolaris/cmd/zpool/zpool_main.c: cddl/contrib/opensolaris/lib/libzfs/common/libzfs.h: cddl/contrib/opensolaris/lib/libzfs/common/libzfs_status.c: Introduce a new zpool status: ZPOOL_STATUS_NON_NATIVE_ASHIFT. This status is reported on healthy pools containing vdevs configured to use a block size smaller than their reported physical block size. cddl/contrib/opensolaris/lib/libzfs/common/libzfs_status.c: Update find_vdev_problem() and supporting functions to provide the full vdev_stat_t structure to problem checking routines, and to allow decent into replacing vdevs. Add a vdev_non_native_ashift() validator which is used on the full vdev tree to check for ZPOOL_STATUS_NON_NATIVE_ASHIFT. cddl/contrib/opensolaris/lib/libzpool/common/kernel.c: cddl/contrib/opensolaris/lib/libzpool/common/sys/zfs_context.h: Enhance sysctl userland stubs now that a SYSCTL_PROC handler is used in vdev.c. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/metaslab_impl.h: When the group membership of a metaslab class changes (i.e. when a vdev is added or removed from a pool), walk the group list to determine the smallest block size currently available and record this in the metaslab class. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/metaslab.h: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/metaslab.c: Add the metaslab_class_get_minblocksize() accessor. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_compress.h: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c: In zio_compress_data(), take the minimum blocksize as an input parameter instead of assuming SPA_MINBLOCKSIZE. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c: In l2arc_compress_buf(), pass SPA_MINBLOCKSIZE as the minimum blocksize of the device. The l2arc code performs has it's own code for deciding if compression is worth while, so this effectively disables zio_compress_data() from second guessing the original decision. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c: In zio_write_bp_init(), use the minimum blocksize of the normal metaslab class when compressing data. ------------------------------------------------------------------------ r254592 | ian | 2013-08-21 04:20:17 +0000 (Wed, 21 Aug 2013) | 2 lines Define the uart clocks so that they can be en/disabled at runtime. ------------------------------------------------------------------------ r254593 | ian | 2013-08-21 04:49:58 +0000 (Wed, 21 Aug 2013) | 4 lines Make the noop clock successfully do nothing, because doing nothing and returning an error status (which the NULL method pointers caused) isn't nearly as useful. ------------------------------------------------------------------------ r254595 | trasz | 2013-08-21 07:45:47 +0000 (Wed, 21 Aug 2013) | 2 lines Fix the (unused for now) SCSI_PROTO_iSCSI define to match style(9). ------------------------------------------------------------------------ r254596 | uqs | 2013-08-21 08:01:52 +0000 (Wed, 21 Aug 2013) | 2 lines Fix 'make depend'. ------------------------------------------------------------------------ r254597 | ian | 2013-08-21 14:26:15 +0000 (Wed, 21 Aug 2013) | 5 lines Make the uart ns8250 high-level interface public rather than static. This makes it easier to implement new drivers which are "mostly ns8250" but with some small difference such as needing to enable clocks or poke a non-standard register at probe or attach time. ------------------------------------------------------------------------ r254598 | ian | 2013-08-21 14:33:02 +0000 (Wed, 21 Aug 2013) | 9 lines Add support for uarts other than the serial console in TI OMAP SoCs. The TI uart hardware is ns16550-compatible, except that before it can be used the clocks and power have to be enabled and a non-standard mode control register has to be set to put the device in uart mode (as opposed to irDa or other serial protocols). This adds the extra code in an extension to the standard ns8250 probe routine, and the rest of the driver is just the standard ns8250 code. ------------------------------------------------------------------------ r254599 | alc | 2013-08-21 15:31:43 +0000 (Wed, 21 Aug 2013) | 6 lines Addendum to r254141: Allow recursion on the free pages queues lock in vm_page_alloc_freelist(). Reported and tested by: sbruno Sponsored by: EMC / Isilon Storage Division ------------------------------------------------------------------------ r254600 | pluknet | 2013-08-21 16:46:06 +0000 (Wed, 21 Aug 2013) | 5 lines Check strtoumax(3) for ERANGE in case of non-prefixed string. OK'd by: silence on current@ MFC after: 1 week ------------------------------------------------------------------------ r254601 | kib | 2013-08-21 17:23:24 +0000 (Wed, 21 Aug 2013) | 7 lines Extract the general-purpose code from tmpfs to perform uiomove from the page queue of some vm object. Discussed with: alc Tested by: pho Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254602 | kib | 2013-08-21 17:36:01 +0000 (Wed, 21 Aug 2013) | 5 lines Make the seek a method of the struct fileops. Tested by: pho Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254603 | kib | 2013-08-21 17:45:00 +0000 (Wed, 21 Aug 2013) | 12 lines Implement read(2)/write(2) and neccessary lseek(2) for posix shmfd. Add MAC framework entries for posix shm read and write. Do not allow implicit extension of the underlying memory segment past the limit set by ftruncate(2) by either of the syscalls. Read and write returns short i/o, lseek(2) fails with EINVAL when resulting offset does not fit into the limit. Discussed with: alc Tested by: pho Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254604 | kib | 2013-08-21 17:47:11 +0000 (Wed, 21 Aug 2013) | 5 lines Add simple test for the read/write/lseek on posix shm filedescriptor. Tested by: pho Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254605 | andre | 2013-08-21 18:12:04 +0000 (Wed, 21 Aug 2013) | 4 lines Revert r254520 and resurrect the M_NOFREE mbuf flag and functionality. Requested by: np, grehan ------------------------------------------------------------------------ r254608 | gibbs | 2013-08-21 19:40:43 +0000 (Wed, 21 Aug 2013) | 23 lines Add kstat entries for ZFS compression statistics. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/zio_compress.h: sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio_compress.c: Add module lifetime functions to allocate and teardown state data. Report: - Compression attempts. - Buffers found to be empty. - Compression calls that are skipped because the data length is already less than or equal to the minimum block length. - Compression attempts that fail to yield a 12.5% compression ratio. sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dmu.c: Add calls to the zio_compress.c module's init and fini functions. Sponosred by: Spectra Logic Corporation MFC after: 2 weeks ------------------------------------------------------------------------ r254610 | jkim | 2013-08-21 20:43:50 +0000 (Wed, 21 Aug 2013) | 2 lines Use consistent style. No functional change. ------------------------------------------------------------------------ r254611 | jkim | 2013-08-21 20:49:46 +0000 (Wed, 21 Aug 2013) | 2 lines Remove bogus labels. No functional change. ------------------------------------------------------------------------ r254612 | jkim | 2013-08-21 21:14:16 +0000 (Wed, 21 Aug 2013) | 5 lines Use '+' modifier for a memory operand that is both an input and an output. It was actually done in r86301 but reverted in r150182 because GCC 3.x was not able to handle it for a memory operand. Apparently, this problem was fixed in GCC 4.1+ and several contrib sources already rely on this feature. ------------------------------------------------------------------------ r254614 | jkim | 2013-08-21 21:30:06 +0000 (Wed, 21 Aug 2013) | 3 lines - Remove the "a" constraint from main output operand for atomic_cmpset(). - Use "+" modifier for the "expect" because it is also an output (unused). ------------------------------------------------------------------------ r254615 | ken | 2013-08-21 21:30:56 +0000 (Wed, 21 Aug 2013) | 32 lines Fix mps(4) driver breakage that came in in change 253550 that manifested itself in out of chain frame conditions. When the driver ran out of chain frames, the request in question would get completed early, and go through mpssas_scsiio_complete(). In mpssas_scsiio_complete(), the negation of the CAM status values (CAM_STATUS_MASK | CAM_SIM_QUEUED) was ORed in instead of being ANDed in. This resulted in a bogus CAM CCB status value. This didn't show up in the non-error case, because the status was reset to something valid (e.g. CAM_REQ_CMP) later on in the function. But in the error case, such as when the driver ran out of chain frames, the CAM_REQUEUE_REQ status was ORed in to the bogus status value. This led to the CAM transport layer repeatedly releasing the SIM queue, because it though that the CAM_RELEASE_SIMQ flag had been set. The symptom was messages like this on the console when INVARIANTS were enabled: xpt_release_simq: requested 1 > present 0 xpt_release_simq: requested 1 > present 0 xpt_release_simq: requested 1 > present 0 mps_sas.c: In mpssas_scsiio_complete(), use &=3D to take status bits out. |=3D adds them in. In the error case in mpssas_scsiio_complete(), set the status to CAM_REQUEUE_REQ, don't OR it in. MFC after: 3 days Sponsored by: Spectra Logic ------------------------------------------------------------------------ r254616 | adrian | 2013-08-21 21:47:56 +0000 (Wed, 21 Aug 2013) | 17 lines Change the name of this particular event to reflect the name used in Linux and Intel examples. Sourced: * https://github.com/andikleen/pmu-tools/blob/master/snb-client.csv * http://software.intel.com/en-us/comment/1747932#comment-1747932 Note: * It's not currently in the Intel SDM; I need to chase down what's going on. Tested: * Sandy Bridge ------------------------------------------------------------------------ r254617 | jkim | 2013-08-21 22:03:06 +0000 (Wed, 21 Aug 2013) | 4 lines Implement atomic_swap() and atomic_testandset(). Reviewed by: arch, bde, jilles, kib ------------------------------------------------------------------------ r254618 | jkim | 2013-08-21 22:05:58 +0000 (Wed, 21 Aug 2013) | 2 lines Remove empty lines before return statements for style consistency. ------------------------------------------------------------------------ r254619 | jkim | 2013-08-21 22:27:42 +0000 (Wed, 21 Aug 2013) | 6 lines Reimplement atomic_load_acq_64() and atomic_store_rel_64() for i386. These functions are now real functions rather than function pointers. Supposedly, it is faster for modern processors. Suggested by: bde ------------------------------------------------------------------------ r254620 | jkim | 2013-08-21 22:30:11 +0000 (Wed, 21 Aug 2013) | 2 lines Implement atomic_cmpset_64() and atomic_swap_64() for i386. ------------------------------------------------------------------------ r254621 | pluknet | 2013-08-21 22:37:15 +0000 (Wed, 21 Aug 2013) | 7 lines Reset errno before strtoumax() call to properly detect ERANGE. Restore saved errno if strtoumax() call is successful. Reported by: ache Reviewed by: jilles MFC after: 1 week ------------------------------------------------------------------------ r254622 | jeff | 2013-08-21 22:39:19 +0000 (Wed, 21 Aug 2013) | 7 lines - Eliminate the vm object lock from the active queue scan. It is not necessary since we do not free or cache the page from active anymore. Document the one possible race that is harmless. Sponsored by: EMC / Isilon Storage Division Discussed with: alc ------------------------------------------------------------------------ r254623 | jkim | 2013-08-21 22:40:29 +0000 (Wed, 21 Aug 2013) | 5 lines Reimplement atomic operations on PDEs and PTEs in pmap.h. This change significantly reduces duplicate code and make it easier to read. Reviewed by: alc, bde ------------------------------------------------------------------------ r254624 | obrien | 2013-08-21 22:43:29 +0000 (Wed, 21 Aug 2013) | 8 lines The PADLOCK_RNG and RDRAND_RNG kernel options are now devices. Thus "device padlock_rng" and "device rdrand_rng" should be used instead of "options PADLOCK_RNG" & "options RDRAND_RNG". Requested by: so@ (des) Submitted by: obrien, arthurmesh@gmail.com Obtained from: Juniper Networks ------------------------------------------------------------------------ r254627 | ken | 2013-08-21 23:04:48 +0000 (Wed, 21 Aug 2013) | 188 lines Expand the use of stat(2) flags to allow storing some Windows/DOS and CIFS file attributes as BSD stat(2) flags. This work is intended to be compatible with ZFS, the Solaris CIFS server's interaction with ZFS, somewhat compatible with MacOS X, and of course compatible with Windows. The Windows attributes that are implemented were chosen based on the attributes that ZFS already supports. The summary of the flags is as follows: UF_SYSTEM: Command line name: "system" or "usystem" ZFS name: XAT_SYSTEM, ZFS_SYSTEM Windows: FILE_ATTRIBUTE_SYSTEM This flag means that the file is used by the operating system. FreeBSD does not enforce any special handling when this flag is set. UF_SPARSE: Command line name: "sparse" or "usparse" ZFS name: XAT_SPARSE, ZFS_SPARSE Windows: FILE_ATTRIBUTE_SPARSE_FILE This flag means that the file is sparse. Although ZFS may modify this in some situations, there is not generally any special handling for this flag. UF_OFFLINE: Command line name: "offline" or "uoffline" ZFS name: XAT_OFFLINE, ZFS_OFFLINE Windows: FILE_ATTRIBUTE_OFFLINE This flag means that the file has been moved to offline storage. FreeBSD does not have any special handling for this flag. UF_REPARSE: Command line name: "reparse" or "ureparse" ZFS name: XAT_REPARSE, ZFS_REPARSE Windows: FILE_ATTRIBUTE_REPARSE_POINT This flag means that the file is a Windows reparse point. ZFS has special handling code for reparse points, but we don't currently have the other supporting infrastructure for them. UF_HIDDEN: Command line name: "hidden" or "uhidden" ZFS name: XAT_HIDDEN, ZFS_HIDDEN Windows: FILE_ATTRIBUTE_HIDDEN This flag means that the file may be excluded from a directory listing if the application honors it. FreeBSD has no special handling for this flag. The name and bit definition for UF_HIDDEN are identical to the definition in MacOS X. UF_READONLY: Command line name: "urdonly", "rdonly", "readonly" ZFS name: XAT_READONLY, ZFS_READONLY Windows: FILE_ATTRIBUTE_READONLY This flag means that the file may not written or appended, but its attributes may be changed. ZFS currently enforces this flag, but Illumos developers have discussed disabling enforcement. The behavior of this flag is different than MacOS X. MacOS X uses UF_IMMUTABLE to represent the DOS readonly permission, but that flag has a stronger meaning than the semantics of DOS readonly permissions. UF_ARCHIVE: Command line name: "uarch", "uarchive" ZFS_NAME: XAT_ARCHIVE, ZFS_ARCHIVE Windows name: FILE_ATTRIBUTE_ARCHIVE The UF_ARCHIVED flag means that the file has changed and needs to be archived. The meaning is same as the Windows FILE_ATTRIBUTE_ARCHIVE attribute, and the ZFS XAT_ARCHIVE and ZFS_ARCHIVE attribute. msdosfs and ZFS have special handling for this flag. i.e. they will set it when the file changes. sys/param.h: Bump __FreeBSD_version to 1000047 for the addition of new stat(2) flags. chflags.1: Document the new command line flag names (e.g. "system", "hidden") available to the user. ls.1: Reference chflags(1) for a list of file flags and their meanings. strtofflags.c: Implement the mapping between the new command line flag names and new stat(2) flags. chflags.2: Document all of the new stat(2) flags, and explain the intended behavior in a little more detail. Explain how they map to Windows file attributes. Different filesystems behave differently with respect to flags, so warn the application developer to take care when using them. zfs_vnops.c: Add support for getting and setting the UF_ARCHIVE, UF_READONLY, UF_SYSTEM, UF_HIDDEN, UF_REPARSE, UF_OFFLINE, and UF_SPARSE flags. All of these flags are implemented using attributes that ZFS already supports, so the on-disk format has not changed. ZFS currently doesn't allow setting the UF_REPARSE flag, and we don't really have the other infrastructure to support reparse points. msdosfs_denode.c, msdosfs_vnops.c: Add support for getting and setting UF_HIDDEN, UF_SYSTEM and UF_READONLY in MSDOSFS. It supported SF_ARCHIVED, but this has been changed to be UF_ARCHIVE, which has the same semantics as the DOS archive attribute instead of inverse semantics like SF_ARCHIVED. After discussion with Bruce Evans, change several things in the msdosfs behavior: Use UF_READONLY to indicate whether a file is writeable instead of file permissions, but don't actually enforce it. Refuse to change attributes on the root directory, because it is special in FAT filesystems, but allow most other attribute changes on directories. Don't set the archive attribute on a directory when its modification time is updated. Windows and DOS don't set the archive attribute in that scenario, so we are now bug-for-bug compatible. smbfs_node.c, smbfs_vnops.c: Add support for UF_HIDDEN, UF_SYSTEM, UF_READONLY and UF_ARCHIVE in SMBFS. This is similar to changes that Apple has made in their version of SMBFS (as of smb-583.8, posted on opensource.apple.com), but not quite the same. We map SMB_FA_READONLY to UF_READONLY, because UF_READONLY is intended to match the semantics of the DOS readonly flag. The MacOS X code maps both UF_IMMUTABLE and SF_IMMUTABLE to SMB_FA_READONLY, but the immutable flags have stronger meaning than the DOS readonly bit. stat.h: Add definitions for UF_SYSTEM, UF_SPARSE, UF_OFFLINE, UF_REPARSE, UF_ARCHIVE, UF_READONLY and UF_HIDDEN. The definition of UF_HIDDEN is the same as the MacOS X definition. Add commented-out definitions of UF_COMPRESSED and UF_TRACKED. They are defined in MacOS X (as of 10.8.2), but we do not implement them (yet). ufs_vnops.c: Add support for getting and setting UF_ARCHIVE, UF_HIDDEN, UF_OFFLINE, UF_READONLY, UF_REPARSE, UF_SPARSE, and UF_SYSTEM in UFS. Alphabetize the flags that are supported. These new flags are only stored, UFS does not take any action if the flag is set. Sponsored by: Spectra Logic Reviewed by: bde (earlier version) ------------------------------------------------------------------------ r254629 | delphij | 2013-08-22 00:51:37 +0000 (Thu, 22 Aug 2013) | 7 lines Fix an integer overflow in computing the size of a temporary buffer can result in a buffer which is too small for the requested operation. Security: CVE-2013-3077 Security: FreeBSD-SA-13:09.ip_multicast ------------------------------------------------------------------------ r254634 | jhibbits | 2013-08-22 02:54:20 +0000 (Thu, 22 Aug 2013) | 3 lines Make dtrace_copy() actually work on PowerPC. Although unused currently, it may be used in the future by dtrace. ------------------------------------------------------------------------ r254639 | jhibbits | 2013-08-22 05:07:50 +0000 (Thu, 22 Aug 2013) | 2 lines Enable DTrace hooks in ppc64. ------------------------------------------------------------------------ r254640 | adrian | 2013-08-22 05:53:47 +0000 (Thu, 22 Aug 2013) | 3 lines Add in some backwards compatability hacks to make -HEAD net80211 compile on -9. ------------------------------------------------------------------------ r254649 | kib | 2013-08-22 07:39:53 +0000 (Thu, 22 Aug 2013) | 7 lines Remove the deprecated VM_ALLOC_RETRY flag for the vm_page_grab(9). The flag was mandatory since r209792, where vm_page_grab(9) was changed to only support the alloc retry semantic. Suggested and reviewed by: alc Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254650 | des | 2013-08-22 07:43:36 +0000 (Thu, 22 Aug 2013) | 8 lines Even though it doesn't really make sense in the context of a CONNECT request, RFC 2616 14.23 mandates the presence of the Host: header in all HTTP 1.1 requests. PR: kern/181445 Submitted by: Kimo MFC after: 3 days ------------------------------------------------------------------------ r254651 | erwin | 2013-08-22 08:15:03 +0000 (Thu, 22 Aug 2013) | 23 lines Update Bind to 9.9.3-P2 Notable new features: * Elliptic Curve Digital Signature Algorithm keys and signatures in DNSSEC are now supported per RFC 6605. [RT #21918] * Introduces a new tool "dnssec-verify" that validates a signed zone, checking for the correctness of signatures and NSEC/NSEC3 chains. [RT #23673] * BIND now recognizes the TLSA resource record type, created to support IETF DANE (DNS-based Authentication of Named Entities) [RT #28989] * The new "inline-signing" option, in combination with the "auto-dnssec" option that was introduced in BIND 9.7, allows named to sign zones completely transparently. Approved by: delphij (mentor) MFC after: 3 days Sponsored by: DK Hostmaster A/S ------------------------------------------------------------------------ r254654 | ae | 2013-08-22 12:49:28 +0000 (Thu, 22 Aug 2013) | 4 lines Really disconnect pkg_install from the build. Reported by: Mikhail Timofeyev ------------------------------------------------------------------------ r254657 | trasz | 2013-08-22 14:02:34 +0000 (Thu, 22 Aug 2013) | 8 lines Move the old iSCSI initiator source to a more appropriate place (sys/dev/iscsi_initiator/ instead of sys/dev/iscsi/initiator/), to make room for the new one. This is also more logical location (kernel module being named iscsi_initiator.ko, for example). There is no ongoing work on this I know of, so it shouldn't make life harder for anyone. There are no functional changes, apart from "svn mv" and adjusting paths. ------------------------------------------------------------------------ r254658 | joel | 2013-08-22 16:00:09 +0000 (Thu, 22 Aug 2013) | 2 lines Minor mdoc nit. ------------------------------------------------------------------------ r254659 | joel | 2013-08-22 16:01:20 +0000 (Thu, 22 Aug 2013) | 2 lines Remove EOL whitespace. ------------------------------------------------------------------------ r254660 | joel | 2013-08-22 16:02:20 +0000 (Thu, 22 Aug 2013) | 2 lines Remove EOL whitespace. ------------------------------------------------------------------------ r254663 | jkim | 2013-08-22 16:39:59 +0000 (Thu, 22 Aug 2013) | 6 lines MFi386: r254619 Reimplement atomic_load_acq_64() and atomic_store_rel_64() for i386. Noticed by: tinderbox ------------------------------------------------------------------------ r254666 | kib | 2013-08-22 18:05:31 +0000 (Thu, 22 Aug 2013) | 9 lines Use the generation count of the pv list to work around LOR between pmap lock and pv list lock, and use the shared locking on pvh_global_lock in pmap_remove_write(), same as it was done for pmap_ts_referenced(). Noted and reviewed by: alc (previous version) Tested by: pho Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254667 | kib | 2013-08-22 18:12:24 +0000 (Thu, 22 Aug 2013) | 10 lines Revert r254501. Instead, reuse the type stability of the struct pmap which is the part of struct vmspace, allocated from UMA_ZONE_NOFREE zone. Initialize the pmap lock in the vmspace zone init function, and remove pmap lock initialization and destruction from pmap_pinit() and pmap_release(). Suggested and reviewed by: alc (previous version) Tested by: pho Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254668 | kib | 2013-08-22 18:26:45 +0000 (Thu, 22 Aug 2013) | 12 lines Both cluster_rbuild() and cluster_wbuild() sometimes set the pages shared busy without first draining the hard busy state. Previously it went unnoticed since VPO_BUSY and m->busy fields were distinct, and vm_page_io_start() did not verified that the passed page has VPO_BUSY flag cleared, but such page state is wrong. New implementation is more strict and catched this case. Drain the busy state as needed, before calling vm_page_sbusy(). Tested by: pho, jkim Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254670 | tuexen | 2013-08-22 19:28:13 +0000 (Thu, 22 Aug 2013) | 8 lines Make also the features of the association 64-bit. When exporting to xinpcb, just export the lower 32-bit. Using there also 64-bits will break the ABI and will be committed separetly. MFC after: 2 weeks X-MFC with: 254248 ------------------------------------------------------------------------ r254671 | gibbs | 2013-08-22 20:07:06 +0000 (Thu, 22 Aug 2013) | 7 lines Rename definition of HYPERVISOR_VIRT_START to avoid conflict with upstream Xen definition found in xen/interface/arch-x86/xen-x86_32.h. Submitted by: Roger Pau Monn?\195?\169 Reviewed by: gibbs MFC after: 2 weeks ------------------------------------------------------------------------ r254672 | tuexen | 2013-08-22 20:29:57 +0000 (Thu, 22 Aug 2013) | 5 lines Export the inpcb features as a 64-bit entity. Bump __FreeBSD_version to 1000048 since the modified structure is user visible and used by netstat, for example. ------------------------------------------------------------------------ r254673 | kib | 2013-08-22 22:01:56 +0000 (Thu, 22 Aug 2013) | 5 lines Update the manual page for vm_page_grab(9). Reviewed and edited by: alc Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254684 | des | 2013-08-23 10:57:05 +0000 (Fri, 23 Aug 2013) | 8 lines Set the back pointer from the prefix to the interface before adding the prefix to the interface's prefix list. This shouldn't make a difference, since rtadvd(8) is single-threaded, but I've seen it crash in delete_prefix() with pfx_rainfo =3D=3D NULL, and this is the only place where a prefix can be added to the list with a NULL pfx_rainfo. MFC after: 3 days ------------------------------------------------------------------------ r254686 | emaste | 2013-08-23 12:28:10 +0000 (Fri, 23 Aug 2013) | 2 lines Import NetBSD libexecinfo 20130822 to contrib ------------------------------------------------------------------------ r254687 | emaste | 2013-08-23 12:35:48 +0000 (Fri, 23 Aug 2013) | 2 lines Remove accidental import of libexecinfo at wrong directory level ------------------------------------------------------------------------ r254688 | emaste | 2013-08-23 12:38:51 +0000 (Fri, 23 Aug 2013) | 2 lines Import NetBSD libexecinfo 20130822 to contrib ------------------------------------------------------------------------ r254689 | emaste | 2013-08-23 12:42:13 +0000 (Fri, 23 Aug 2013) | 2 lines FreeBSD compatibility for libexecinfo ------------------------------------------------------------------------ r254690 | sbruno | 2013-08-23 13:14:18 +0000 (Fri, 23 Aug 2013) | 12 lines Some vendors store the mac addresses of arge(4) as a literal sring in the form xx:xx:xx:xx:xx:xx complete with ":" characters taking of 18 bytes instead of 6 integers. Expose a "readascii" tuneable to handle this case. Remove restriction on eepromac assignement for the first dev instance only. Add eepromac address for DIR-825 to hints file. Add readascii hint for DIR-825 Reviewed by: adrian@ ------------------------------------------------------------------------ r254698 | emaste | 2013-08-23 13:47:18 +0000 (Fri, 23 Aug 2013) | 4 lines Update libexecinfo man page for FreeBSD Sponsored by: DARPA, AFRL ------------------------------------------------------------------------ r254699 | jhb | 2013-08-23 13:47:41 +0000 (Fri, 23 Aug 2013) | 7 lines Use tvtohz() to convert a socket buffer timeout to a tick value rather than using a home-rolled version. The home-rolled version could result in shorter-than-requested sleeps. Reported by: Vitja Makarov MFC after: 2 weeks ------------------------------------------------------------------------ r254700 | jilles | 2013-08-23 13:59:47 +0000 (Fri, 23 Aug 2013) | 2 lines libc: Make various internal file descriptors from fopen() close-on-exec. ------------------------------------------------------------------------ r254703 | davide | 2013-08-23 14:12:39 +0000 (Fri, 23 Aug 2013) | 8 lines Introduce callout_init_rm() so that callouts can be used in conjunction with rmlocks. This works only with non-sleepable rm because handlers run in SWI context. While here, document the new KPI in the timeout(9) manpage. Requested by: adrian, scottl Reviewed by: mav, remko(manpage) ------------------------------------------------------------------------ r254706 | jilles | 2013-08-23 14:23:54 +0000 (Fri, 23 Aug 2013) | 2 lines libc: Access some unexported variables more efficiently (related to stdio). ------------------------------------------------------------------------ r254709 | emaste | 2013-08-23 14:31:05 +0000 (Fri, 23 Aug 2013) | 4 lines Add libexecinfo Makefile Sponsored by: DARPA, AFRL ------------------------------------------------------------------------ r254710 | davide | 2013-08-23 14:33:56 +0000 (Fri, 23 Aug 2013) | 5 lines - Bump date. - Small mdoc fix. Submitted by: pluknet ------------------------------------------------------------------------ r254711 | avg | 2013-08-23 14:40:09 +0000 (Fri, 23 Aug 2013) | 8 lines zfs: inline and remove zfs_vnode_lock It didn't serve any useful purpose, but obscured file and line information useful for debugging. MFC after: 5 days X-MFC with: r254445 ------------------------------------------------------------------------ r254712 | davide | 2013-08-23 14:40:17 +0000 (Fri, 23 Aug 2013) | 4 lines Fix the build and fix style. Pointy-hat to: davide ------------------------------------------------------------------------ r254713 | avg | 2013-08-23 14:41:27 +0000 (Fri, 23 Aug 2013) | 5 lines fbt: drop a local write-only variable Discovered with: gcc46 MFC after: 4 days ------------------------------------------------------------------------ r254714 | avg | 2013-08-23 14:43:32 +0000 (Fri, 23 Aug 2013) | 8 lines zfs: do not reject any operations on a pool just because it's a boot pool Unlike the upstream FreeBSD supports booting to all kinds of pools. Requested by: many Tested by: sbruno MFC after: 12 days ------------------------------------------------------------------------ r254715 | kib | 2013-08-23 14:50:03 +0000 (Fri, 23 Aug 2013) | 12 lines Since the 253927, which removed the soft busy call for the sf page, it does not make sense to wait for the soft busy state of the page to drain. The vm object lock is dropped immediately after, so the result of the wait is invalidated. It might make sense to not wait for the hard busy state as well, esp. for the fully valid page, but this is postponed for now. Reviewed by: alc Tested by: pho Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254716 | ian | 2013-08-23 15:07:54 +0000 (Fri, 23 Aug 2013) | 5 lines Don't give up so easily on failure of CMD55 to put the card into app-cmd mode. We don't know why it failed, so we can't know that a retry will also fail (the low-level driver might have reset the controller state machine or something similar that would allow a retry to work). ------------------------------------------------------------------------ r254717 | jkim | 2013-08-23 16:54:38 +0000 (Fri, 23 Aug 2013) | 2 lines Fix a whitespace. ------------------------------------------------------------------------ r254719 | alc | 2013-08-23 17:27:12 +0000 (Fri, 23 Aug 2013) | 9 lines Addendum to r254141: The call to vm_radix_insert() in vm_page_cache() can reclaim the last preexisting cached page in the object, resulting in a call to vdrop(). Detect this scenario so that the vnode's hold count is correctly maintained. Otherwise, we panic. Reported by: scottl Tested by: pho Discussed with: attilio, jeff, kib ------------------------------------------------------------------------ r254727 | np | 2013-08-23 18:03:18 +0000 (Fri, 23 Aug 2013) | 6 lines There is no need to hold the freelist lock around alloc/free of software descriptors. This also silences WITNESS warnings when the software descriptors are allocated with M_WAITOK. MFC after: 1 week ------------------------------------------------------------------------ r254729 | emaste | 2013-08-23 18:06:42 +0000 (Fri, 23 Aug 2013) | 2 lines Merge lldb r188801 to contrib/llvm/tools/lldb/ ------------------------------------------------------------------------ r254731 | np | 2013-08-23 18:45:39 +0000 (Fri, 23 Aug 2013) | 2 lines Whitespace cleanup. ------------------------------------------------------------------------ r254733 | jkim | 2013-08-23 18:52:36 +0000 (Fri, 23 Aug 2013) | 2 lines Set the hint for physical address of RSDP in hexadecimal as before r223262. ------------------------------------------------------------------------ r254734 | np | 2013-08-23 18:54:27 +0000 (Fri, 23 Aug 2013) | 4 lines Fix implementation of sock_getname. MFC after: 1 week ------------------------------------------------------------------------ r254735 | np | 2013-08-23 19:12:29 +0000 (Fri, 23 Aug 2013) | 7 lines Assorted fixes to krping. Disconnect the rest of sys/contrib/rdma from the build while here. sys/ofed has more recent RDMA code and should be used instead. We should probably move krping out of sys/contrib/rdma and get rid of the rest of it. Obtained from: Chelsio ------------------------------------------------------------------------ r254737 | andreast | 2013-08-23 20:39:41 +0000 (Fri, 23 Aug 2013) | 4 lines Return EIO iso -1, the kiic_transfer has an signed return. Submitted by: Luiz Otavio O Souza ------------------------------------------------------------------------ r254738 | bryanv | 2013-08-23 20:47:16 +0000 (Fri, 23 Aug 2013) | 2 lines Add vmx(4), a VMware VMXNET3 ethernet driver ported from OpenBSD ------------------------------------------------------------------------ r254739 | bryanv | 2013-08-23 20:56:17 +0000 (Fri, 23 Aug 2013) | 4 lines Remove duplicate copy of the man page Pointed out by: jmallett ------------------------------------------------------------------------ r254741 | delphij | 2013-08-23 22:52:20 +0000 (Fri, 23 Aug 2013) | 2 lines Allow tmpfs be mounted inside jail. ------------------------------------------------------------------------ r254742 | markj | 2013-08-23 22:55:52 +0000 (Fri, 23 Aug 2013) | 8 lines Hold mfi_io_lock across calls to xpt_rescan() and xpt_alloc_ccb_nowait(). xpt_rescan() expects the SIM lock to be held, and we trip a mtx_assert if the driver initiates multiple rescans in quick succession. Reported by: sbruno Tested by: sbruno MFC after: 1 week ------------------------------------------------------------------------ r254743 | asomers | 2013-08-23 23:12:16 +0000 (Fri, 23 Aug 2013) | 9 lines Correctly remove an interface's ipv4 address when the user calls "/etc/rc.d/netif stop XXX". The old globbing pattern failed to account for= the possibility of a tab occuring before "inet". Reviewed by: will Approved by: ken (mentor, implicit) MFC after: Never (bug affects head only) Sponsored by: Spectra Logic ------------------------------------------------------------------------ r254744 | delphij | 2013-08-23 23:21:24 +0000 (Fri, 23 Aug 2013) | 8 lines MFV r254422: Illumos DTrace issues: 3089 want ::typedef 3094 libctf should support removing a dynamic type 3095 libctf does not validate arrays correctly 3096 libctf does not validate function types correctly ------------------------------------------------------------------------ r254745 | jkim | 2013-08-23 23:25:58 +0000 (Fri, 23 Aug 2013) | 2 lines Merge ACPICA 20130823. ------------------------------------------------------------------------ r254752 | delphij | 2013-08-23 23:58:56 +0000 (Fri, 23 Aug 2013) | 10 lines MFV r254746: To quote original Illumos ticket: libctf thinks that any ELF file containing more than 65536 sections is corrupt, because it doesn't understand the SHN_XINDEX magic. Illumos DTrace issues: 4005 libctf can't deal with extended sections ------------------------------------------------------------------------ r254753 | delphij | 2013-08-24 00:19:26 +0000 (Sat, 24 Aug 2013) | 9 lines MFV r254747: Fix a panic from dbuf_free_range() from dmu_free_object() while doing zfs receive. This is a regression from FreeBSD r253821. Illumos ZFS issues: 4047 panic from dbuf_free_range() from dmu_free_object() while doing zfs receive ------------------------------------------------------------------------ r254755 | delphij | 2013-08-24 00:29:34 +0000 (Sat, 24 Aug 2013) | 7 lines MFV r254748: Fix memory leak in libzfs's iter_dependents_cb(). Illumos ZFS issues: 4061 libzfs: memory leak in iter_dependents_cb() ------------------------------------------------------------------------ r254756 | alfred | 2013-08-24 00:30:32 +0000 (Sat, 24 Aug 2013) | 5 lines Grow some spares in struct vfsops. This should hopefully prevent ABI breakage on adding new vfsops in 10.x. ------------------------------------------------------------------------ r254757 | delphij | 2013-08-24 00:42:37 +0000 (Sat, 24 Aug 2013) | 11 lines MFV r254749: Don't hold dd_lock for long by breaking it when not doing dsl_dir accounting. It is not necessary to hold the lock while manipulating the parent's accounting, because there is no interface for userland to see a consistent picture of both parent and child at the same time anyway. Illumos ZFS issues: 4046 dsl_dataset_t ds_dir->dd_lock is highly contended ------------------------------------------------------------------------ r254758 | delphij | 2013-08-24 00:54:47 +0000 (Sat, 24 Aug 2013) | 10 lines MFV r254751: Don't treat the parameter as a number (pool GUID) when there is error converting it from string, instead, treat it as the pool name. Illumos ZFS issues: 1765 assert triggered in libzfs_import.c trying to import pool name beginning with a number ------------------------------------------------------------------------ r254759 | trasz | 2013-08-24 01:50:31 +0000 (Sat, 24 Aug 2013) | 5 lines CTL changes required for iSCSI target, most notably LUN remapping and a mechanism to allow CTL frontends for retrieving LUN options. Reviewed by: ken (earlier version) ------------------------------------------------------------------------ r254760 | ken | 2013-08-24 04:52:22 +0000 (Sat, 24 Aug 2013) | 92 lines Add support to physio(9) for devices that don't want I/O split and configure sa(4) to request no I/O splitting by default. For tape devices, the user needs to be able to clearly understand what blocksize is actually being used when writing to a tape device. The previous behavior of physio(9) was that it would split up any I/O that was too large for the device, or too large to fit into MAXPHYS. This means that if, for instance, the user wrote a 1MB block to a tape device, and MAXPHYS was 128KB, the 1MB write would be split into 8 128K chunks. This would be done without informing the user. This has suboptimal effects, especially when trying to communicate status to the user. In the event of an error writing to a tape (e.g. physical end of tape) in the middle of a 1MB block that has been split into 8 pieces, the user could have the first two 128K pieces written successfully, the third returned with an error, and the last 5 returned with 0 bytes written. If the user is using a standard write(2) system call, all he will see is the ENOSPC error. He won't have a clue how much actually got written. (With a writev(2) system call, he should be able to determine how much got written in addition to the error.) The solution is to prevent physio(9) from splitting the I/O. The new cdev flag, SI_NOSPLIT, tells physio that the driver does not want I/O to be split beforehand. Although the sa(4) driver now enables SI_NOSPLIT by default, that can be disabled by two loader tunables for now. It will not be configurable starting in FreeBSD 11.0. kern.cam.sa.allow_io_split allows the user to configure I/O splitting for all sa(4) driver instances. kern.cam.sa.%d.allow_io_split allows the user to configure I/O splitting for a specific sa(4) instance. There are also now three sa(4) driver sysctl variables that let the users see some sa(4) driver values. kern.cam.sa.%d.allow_io_split shows whether I/O splitting is turned on. kern.cam.sa.%d.maxio shows the maximum I/O size allowed by kernel configuration parameters (e.g. MAXPHYS, DFLTPHYS) and the capabilities of the controller. kern.cam.sa.%d.cpi_maxio shows the maximum I/O size supported by the controller. Note that a better long term solution would be to implement support for chaining buffers, so that that MAXPHYS is no longer a limiting factor for I/O size to tape and disk devices. At that point, the controller and the tape drive would become the limiting factors. sys/conf.h: Add a new cdev flag, SI_NOSPLIT, that allows a driver to tell physio not to split up I/O. sys/param.h: Bump __FreeBSD_version to 1000049 for the addition of the SI_NOSPLIT cdev flag. kern_physio.c: If the SI_NOSPLIT flag is set on the cdev, return any I/O that is larger than si_iosize_max or MAXPHYS, has more than one segment, or would have to be split because of misalignment with EFBIG. (File too large). In the event of an error, print a console message to give the user a clue about what happened. scsi_sa.c: Set the SI_NOSPLIT cdev flag on the devices created for the sa(4) driver by default. Add tunables to control whether we allow I/O splitting in physio(9). Explain in the comments that allowing I/O splitting will be deprecated for the sa(4) driver in FreeBSD 11.0. Add sysctl variables to display the maximum I/O size we can do (which could be further limited by read block limits) and the maximum I/O size that the controller can do. Limit our maximum I/O size (recorded in the cdev's si_iosize_max) by MAXPHYS. This isn't strictly necessary, because physio(9) will limit it to MAXPHYS, but it will provide some clarity for the application. Record the controller's maximum I/O size reported in the Path Inquiry CCB. sa.4: Document the block size behavior, and explain that the option of allowing physio(9) to split the I/O will disappear in FreeBSD 11.0. Sponsored by: Spectra Logic ------------------------------------------------------------------------ r254766 | mav | 2013-08-24 09:42:14 +0000 (Sat, 24 Aug 2013) | 4 lines Add new attribute lunname to report only textual LUN-specific device IDs. While lunid attribute prefers to report numeric ones, having both may be useful in some situations. ------------------------------------------------------------------------ r254767 | jilles | 2013-08-24 09:57:32 +0000 (Sat, 24 Aug 2013) | 13 lines sh: Do not prematurely discard stopped jobs in a wait builtin. If a job is specified to 'wait', wait for it to complete. Formerly, in interactive mode, the job was deleted if it stopped. If no jobs are specified in interactive mode, 'wait' still waits for all jo= bs to complete or stop. In non-interactive mode, WUNTRACED is not passed to wait3() so stopped jobs are not detected. PR: bin/181435 ------------------------------------------------------------------------ r254768 | emaste | 2013-08-24 10:06:51 +0000 (Sat, 24 Aug 2013) | 27 lines Revert lldb changes due to post-3.3 clang and llvm API changes Revisions: svn git 183929 99447a6 183862 15c1774 source/Host/common/FileSpec.cpp 184954 007e7bc 184948 4dc3761 source/Expression/ClangExpressionParser.cpp 182099 b31044e 181387 779e6ac include/lldb/Expression/IRExecutionUnit.h source/Expression/IRExecutionUnit.cpp 184177 0b2934b 182650 f2dcf35 181703 7bef4e2 source/Plugins/Disassembler/llvm/DisassemblerLLVMC.cpp 182683 0d91b80 source/Plugins/Instruction/ARM/EmulateInstructionARM.cpp Sponsored by: DARPA, AFRL ------------------------------------------------------------------------ r254769 | andre | 2013-08-24 10:13:59 +0000 (Sat, 24 Aug 2013) | 5 lines Introduce typedef for pfil hook callback function and replace all spelled out occurrences with it. Reviewed by: eri ------------------------------------------------------------------------ r254770 | andre | 2013-08-24 10:30:20 +0000 (Sat, 24 Aug 2013) | 2 lines Convert one instance of pfil hook callback missed in r254769. ------------------------------------------------------------------------ r254771 | andre | 2013-08-24 10:36:33 +0000 (Sat, 24 Aug 2013) | 6 lines Internalize pfil_hook_get(). There are no outside consumers of this API, it is only safe for internal use and even the pfil(9) man page says so in the BUGS section. Reviewed by: eri ------------------------------------------------------------------------ r254772 | andre | 2013-08-24 10:38:02 +0000 (Sat, 24 Aug 2013) | 3 lines pfil_hook_get() has been internalized in r254771 and is no longer part of the API. It wasn't safe for external use in any case. ------------------------------------------------------------------------ r254773 | andre | 2013-08-24 11:17:25 +0000 (Sat, 24 Aug 2013) | 11 lines Resolve the confusion between the head_list and the hook list. The linked list of pfil hooks is changed to "chain" and this term is applied consistently. The head_list remains with "list" term. Add KASSERT to vnet_pfil_uninit(). Update and extend comments. Reviewed by: eri (previous version) ------------------------------------------------------------------------ r254774 | andre | 2013-08-24 11:24:15 +0000 (Sat, 24 Aug 2013) | 3 lines ename PFIL_LIST_[UN]LOCK() to PFIL_HEADLIST_[UN]LOCK() to avoid confusion with the pfil_head chain locking macros. ------------------------------------------------------------------------ r254775 | andre | 2013-08-24 11:57:02 +0000 (Sat, 24 Aug 2013) | 2 lines Adjust for the pfil_func_t typedef added in r254769. ------------------------------------------------------------------------ r254776 | trociny | 2013-08-24 11:59:51 +0000 (Sat, 24 Aug 2013) | 20 lines Make ipfw nat init/unint work correctly for VIMAGE: * Do per vnet instance cleanup (previously it was only for vnet0 on module unload, and led to libalias leaks and possible panics due to stale pointer dereferences). * Instead of protecting ipfw hooks registering/deregistering by only vnet0 lock (which does not prevent pointers access from another vnets), introduce per vnet ipfw_nat_loaded variable. The variable is set after hooks are registered and unset before they are deregistered. * Devirtualize ifaddr_event_tag as we run only one event handler for all vnets. * It is supposed that ifaddr_change event handler is called in the interface vnet context, so add an assertion. Reviewed by: zec MFC after: 2 weeks ------------------------------------------------------------------------ r254777 | andre | 2013-08-24 12:03:24 +0000 (Sat, 24 Aug 2013) | 2 lines Whitespace, style cleanups, and improved comments. ------------------------------------------------------------------------ r254779 | andre | 2013-08-24 12:24:58 +0000 (Sat, 24 Aug 2013) | 3 lines Avoid code duplication for mbuf initialization and use m_init() instead in mb_ctor_mbuf() and mb_ctor_pack(). ------------------------------------------------------------------------ r254780 | andre | 2013-08-24 13:15:42 +0000 (Sat, 24 Aug 2013) | 20 lines dd a 24 bits wide ext_flags field to m_ext by reducing ext_type to 8 bits. ext_type is an enumerator and the number of types we have is a mere dozen. A couple of ext_types are renumbered to fit within 8 bits. EXT_VENDOR[1-4] and EXT_EXP[1-4] types for vendor-internal and experimental local mapping. The ext_flags field is currently unused but has a couple of flags already defined for future use. Again vendor and experimental flags are provided for local mapping. EXT_FLAG_BITS is provided for the printf(9) %b identifier. Initialize and copy ext_flags in the relevant mbuf functions. Improve alignment and packing of struct m_ext on 32 and 64 archs by carefully sorting the fields. ------------------------------------------------------------------------ r254781 | mav | 2013-08-24 13:34:36 +0000 (Sat, 24 Aug 2013) | 11 lines Make dummynet use new direct callout(9) execution mechanism. Since the only thing done by the dummynet handler is taskqueue_enqueue() call, it doesn't need extra switch to the clock SWI context. On idle system this change in half reduces number of active CPU cycles and wakes up only one CPU from sleep instead of two. I was going to make this change much earlier as part of calloutng project, but waited for better solution with skipping idle ticks to be implemented. Unfortunately with 10.0 release coming it is better get at least this. ------------------------------------------------------------------------ r254787 | mav | 2013-08-24 14:41:49 +0000 (Sat, 24 Aug 2013) | 5 lines MFprojects/camlock r254460: Remove locking from taskqueue_member(). The list of threads is static during the taskqueue life cycle, so there is no need to protect it, taking quite congested lock several more times for each ZFS I/O. ------------------------------------------------------------------------ r254790 | emaste | 2013-08-24 15:33:17 +0000 (Sat, 24 Aug 2013) | 12 lines Import llvm r187614 (git 44c8e34), for lldb's use: Author: Daniel Malea Date: Thu Aug 1 21:18:16 2013 +0000 Fixed the Intel-syntax X86 disassembler to respect the (existing) option for hexadecimal immediates, to match AT&T syntax. This also brings a new option for C-vs-MASM-style hex. Patch by Richard Mitton Reviewed: http://llvm-reviews.chandlerc.com/D1243 ------------------------------------------------------------------------ r254791 | uqs | 2013-08-24 15:41:36 +0000 (Sat, 24 Aug 2013) | 2 lines Include bsd.own.mk before trying to check MK_* values. ------------------------------------------------------------------------ r254792 | dumbbell | 2013-08-24 15:47:15 +0000 (Sat, 24 Aug 2013) | 2 lines drm: Call drm_global_init() & drm_global_release() at module load/unload ------------------------------------------------------------------------ r254793 | emaste | 2013-08-24 16:09:52 +0000 (Sat, 24 Aug 2013) | 9 lines Revert lldb change for Attribute::NoBuiltin NoBuiltin was introduced after clang/llvm 3.3 and thus does not exist in FreeBSD. Thus special handling for the attribute is not needed in lldb. This reverts lldb r186990 (git eebd175) Sponsored by: DARPA, AFRL ------------------------------------------------------------------------ r254794 | dumbbell | 2013-08-24 16:14:20 +0000 (Sat, 24 Aug 2013) | 4 lines drm: Import drm_buffer.[ch] from Linux 3.8-rc3 This will be used by the Radeon KMS driver. ------------------------------------------------------------------------ r254796 | dumbbell | 2013-08-24 16:41:14 +0000 (Sat, 24 Aug 2013) | 36 lines drm/i915: Import Linux commit 71244653a8fb0f46bc12ae421f1d5f72af6a75da Author: Daniel Vetter Date: Mon Jun 4 18:39:20 2012 +0200 drm/i915: adjusted_mode->clock in the dp mode_fixup ... instead of changing mode->clock, which we should leave as-is. After the previous patch we only touch that if it's a panel, and then adjusted mode->clock equals adjusted_mode->clock. Outside of intel_dp.c we only use ajusted_mode->clock in the mode_set functions. Within intel_dp.c we only use it to calculate the dp dithering and link bw parameters, so that's the only thing we need to fix up. As a temporary ugliness (until the cleanup in the next patch) we pass the adjusted_mode into dp_dither for both parameters (because that one still looks at mode->clock). Note that we do overwrite adjusted_mode->clock with the selected dp link clock, but that only happens after we've calculated everything we need based on the dotclock of the adjusted output configuration. Outside of intel_dp.c only intel_display.c uses adjusted_mode->clock, and that stays the same after this patch (still equals the selected dp link clock). intel_display.c also needs the actual dotclock (as target_clock), but that has been fixed up in the previous patch. v2: Adjust the debug message to also use adjusted_mode->clock. Reviewed-by: Chris Wilson Reviewed-by: Jesse Barnes Signed-off-by: Daniel Vetter ------------------------------------------------------------------------ r254797 | dumbbell | 2013-08-24 16:50:47 +0000 (Sat, 24 Aug 2013) | 4 lines drm: Const'ify the 1st "drm_display_mode" passed to "mode_fixup" callbacks This will be needed by the Radeon KMS driver. ------------------------------------------------------------------------ r254798 | dumbbell | 2013-08-24 16:55:53 +0000 (Sat, 24 Aug 2013) | 2 lines drm: Fix leak of connector->edid_blob_ptr ------------------------------------------------------------------------ r254799 | andre | 2013-08-24 16:57:44 +0000 (Sat, 24 Aug 2013) | 11 lines Add an mbuf pointer parameter to (*ext_free) to give the external free function access to the mbuf the external memory was attached to. Mechanically adjust all users to include the mbuf parameter. This fixes a long standing annoyance for external free functions. Before one had to sacrifice one of the argument pointers for this. Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254800 | andre | 2013-08-24 17:14:14 +0000 (Sat, 24 Aug 2013) | 4 lines Remove unnecessary setup of the m->pkthdr.header pointer. Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254802 | ken | 2013-08-24 19:02:36 +0000 (Sat, 24 Aug 2013) | 5 lines Fix a printf format warning on 32-bit mips and powerpc. Reported by: bde, gjb Pointy hat to: ken ------------------------------------------------------------------------ r254803 | andre | 2013-08-24 19:38:36 +0000 (Sat, 24 Aug 2013) | 4 lines Change local variable tso_segsz to tsosegsz to avoid mbuf.h macro conflicts. Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254804 | andre | 2013-08-24 19:51:18 +0000 (Sat, 24 Aug 2013) | 45 lines Restructure the mbuf pkthdr to make it fit for upcoming capabilities and features. The changes in particular are: o Remove rarely used "header" pointer and replace it with a 64bit protocol/ layer specific union PH_loc for local use. Protocols can flexibly overlay their own 8 to 64 bit fields to store information while the packet is worked on. o Mechanically convert IP reassembly, IGMP/MLD and ATM to use pkthdr.PH_loc instead of pkthdr.header. o Extend csum_flags to 64bits to allow for additional future offload information to be carried (e.g. iSCSI, IPsec offload, and others). o Move the RSS hash type enumerator from abusing m_flags to its own 8bit rsstype field. Adjust accessor macros. o Add cosqos field to store Class of Service / Quality of Service informati= on with the packet. It is not yet supported in any drivers but allows us to get on par with Cisco/Juniper in routing applications (plus MPLS QoS) with a modernized ALTQ. o Add four 8 bit fields l[2-5]hlen to store the relative header offsets from the start of the packet. This is important for various offload capabilities and to relieve the drivers from having to parse the packet and protocol headers to find out location of checksums and other information. Header parsing in drivers is a lot of copy-paste and unhandled corner cases which we want to avoid. o Add another flexible 64bit union to map various additional persistent packet information, like ether_vtag, tso_segsz and csum fields. Depending on the csum_flags settings some fields may have different usage making it very flexible and adaptable to future capabilities. o Restructure the CSUM flags to better signify their outbound (down the stack) and inbound (up the stack) use. The CSUM flags used to be a bit chaotic and rather poorly documented leading to incorrect use in many places. Bring clarity into their use through better naming. Compatibility mappings are provided to preserve the API. The drivers can be corrected one by one and MFC'd without issue. o The size of pkthdr stays the same at 48/56bytes (32/64bit architectures). Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254805 | andre | 2013-08-24 19:58:36 +0000 (Sat, 24 Aug 2013) | 4 lines Add mtodo(m, o) macro taking an additional offset into the mbuf data sectio= n. Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254806 | jilles | 2013-08-24 20:06:00 +0000 (Sat, 24 Aug 2013) | 10 lines sh: Reject ++ and -- in arithmetic. POSIX does not require ++ and -- in arithmetic. It is probably more useful to reject them than to treat ++x and --x as x silently. Note that the behaviour of increment and decrement can be obtained via (x+=3D1), ((x+=3D1)-1), (x-=3D1) and ((x-=3D1)+1). PR: bin/176444 ------------------------------------------------------------------------ r254807 | andre | 2013-08-24 20:26:41 +0000 (Sat, 24 Aug 2013) | 18 lines Compact m_hdr by packing the type and flags fields into one uint32_t. The mbuf type is an enumerator with only a handful of types in use and thus reduced from int to 8bits allowing for 255 types to be specified. Only 5 types have been in use for a long time. The flags field gets the remaining 24 bits with 12 bits for global persistent flags and 12 bits for protocol/layer specific overlays. Some of the global flags/functionality can be moved to the csum_flags or ext_flags bits in the future. MT_VENDOR[1-4] and MT_EXP[1-4] types for vendor-internal and experimental local mapping are added. The size of m_hdr shrinks from 24/40 to 20/32bytes (32/64bit architectures). Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254808 | markj | 2013-08-24 21:00:39 +0000 (Sat, 24 Aug 2013) | 2 lines Remove some code that has been commented out since it was added in 2000. ------------------------------------------------------------------------ r254809 | joerg | 2013-08-24 21:04:54 +0000 (Sat, 24 Aug 2013) | 13 lines Do not use "Enable Implied Seek" on enhanced floppy controllers. This breaks the "2step" feature of the driver, e.g. in order to read 360 KiB media on a 1200 KiB drive. As the only potential advantage of implied (vs. explicit) seeks is to minimize the software effort, yet our driver always contained the logic needed for explicit seeks, simply dropping implied seeks is the best solution without introducing risks for new bugs. There is no performance penalty, reading a 1440 KiB medium takes exactly the same time with both, implied or explicit seeks. MFC after: 1 week ------------------------------------------------------------------------ r254810 | markj | 2013-08-24 21:07:04 +0000 (Sat, 24 Aug 2013) | 6 lines Remove the kld lock macros and just use the sx(9) API. Add locking in linker_init_kernel_modules() and linker_preload() in order to remove most of the checks for !cold before asserting that the kld lock is held. These routines are invoked by SYSINIT(9), so there's no harm in them taking the kld lock. ------------------------------------------------------------------------ r254811 | markj | 2013-08-24 21:08:55 +0000 (Sat, 24 Aug 2013) | 6 lines Set things up so that linker_file_lookup_set() is always called with the linker lock held. This makes it possible to call it from a kld event handler with the shared lock held. Reviewed by: jhb ------------------------------------------------------------------------ r254812 | andre | 2013-08-24 21:09:57 +0000 (Sat, 24 Aug 2013) | 7 lines Remove unused m_free_fast(). The difference to m_free() is only 2 predictable branches nowadays. However as a pre-condition the caller had to ensure that the mbuf pkthdr did not have any mtags attached to it, costing some potential branches again. Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254813 | markj | 2013-08-24 21:13:38 +0000 (Sat, 24 Aug 2013) | 13 lines Rename the kld_unload event handler to kld_unload_try, and add a new kld_unload event handler which gets invoked after a linker file has been successfully unloaded. The kld_unload and kld_load event handlers are now invoked with the shared linker lock held, while kld_unload_try is invoked with the lock exclusively held. Convert hwpmc(4) to use these event handlers instead of having kern_kldload() and kern_kldunload() invoke hwpmc(4) hooks whenever files are loaded or unloaded. This has no functional effect, but simplifes the linker code somewhat. Reviewed by: jhb ------------------------------------------------------------------------ r254814 | andre | 2013-08-24 21:25:53 +0000 (Sat, 24 Aug 2013) | 6 lines After r254779 "error" must always be present in mb_ctor_pack(), not only when MAC is defined. Reported by: gjb / tinderbox Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254815 | andre | 2013-08-24 21:30:35 +0000 (Sat, 24 Aug 2013) | 4 lines Fix BUGS section after botched modify in r254772. Reported by: bjk ------------------------------------------------------------------------ r254817 | dumbbell | 2013-08-24 23:38:57 +0000 (Sat, 24 Aug 2013) | 4 lines drm: Import drm_dp_helper.c from Linux 3.8-rc3 While here, update drm_dp_helper.h to better match Linux one. ------------------------------------------------------------------------ r254818 | dumbbell | 2013-08-24 23:47:31 +0000 (Sat, 24 Aug 2013) | 6 lines drm: Move definition of EREMOTEIO to drmP.h It will be used by both i915 and radeon drivers. Add ERESTARTSYS definition at the same time. ------------------------------------------------------------------------ r254819 | dumbbell | 2013-08-24 23:54:06 +0000 (Sat, 24 Aug 2013) | 9 lines drm: Don't delete already deleted iicbus child from drm_iic_dp_aux The iic_dp_aux_detach callback is therefore useless: it's replaced by bus_generic_detach. This fixes a "General protection fault" panic during second (incorrect) deletion of the child. Tested by: kwm@ Reviewed by: ray@ ------------------------------------------------------------------------ r254820 | dumbbell | 2013-08-25 00:13:53 +0000 (Sun, 25 Aug 2013) | 5 lines drm: Use driver-provided "use_msi" callback to determine if MSI is blacklis= ted For now, keep the static array for i915. But eventually, it should be moved to a callback in the driver itself. ------------------------------------------------------------------------ r254821 | dumbbell | 2013-08-25 00:22:34 +0000 (Sun, 25 Aug 2013) | 4 lines drm: Fix cleanup if device initialization fails This plugs some memory leaks. ------------------------------------------------------------------------ r254822 | dumbbell | 2013-08-25 00:34:44 +0000 (Sun, 25 Aug 2013) | 5 lines drm: In drm_mmap_single, try ttm_bo_mmap_single() before drm_gem_mmap_singl= e() In drivers such as the Radeon driver, the DRIVER_GEM features flag is set but TTM is used to mmap buffer object. ------------------------------------------------------------------------ r254823 | alfred | 2013-08-25 01:55:14 +0000 (Sun, 25 Aug 2013) | 5 lines Remove the #ifdef OFED from the 20 byte mac in struct llentry. With this change it is now possible to build the entire infiniband stack as modules and load it dynamically including IP over IB. ------------------------------------------------------------------------ r254824 | adrian | 2013-08-25 02:07:28 +0000 (Sun, 25 Aug 2013) | 17 lines Update the MEM_UOP_RETIRED PMC operation for sandy bridge and sandy bridge Xeon. Summary: These are PEBS events but they're also available as normal counter/sample events. The source table (Table 19-2) lists the base versions (LOAD, STLB_MISS, SPLIT, ALL) but it says they must be qualified with other values. This particular commit fleshes out those umask values. Source: * Linux; SDM June 2013, Volume 3B, Table 19-2 and 18-21. Tested: * Sandy Bridge (non-Xeon) ------------------------------------------------------------------------ r254825 | joel | 2013-08-25 06:58:51 +0000 (Sun, 25 Aug 2013) | 2 lines mdoc fixes. ------------------------------------------------------------------------ r254826 | joel | 2013-08-25 06:59:30 +0000 (Sun, 25 Aug 2013) | 2 lines Remove EOL whitespace. ------------------------------------------------------------------------ r254827 | jlh | 2013-08-25 07:46:18 +0000 (Sun, 25 Aug 2013) | 2 lines Move daily_status_security_noamd next to 200.chkmounts's variables. ------------------------------------------------------------------------ r254828 | hselasky | 2013-08-25 08:42:50 +0000 (Sun, 25 Aug 2013) | 5 lines Bugfix: The endpoint profile should only be checked in device mode when allocating USB transfers and not in host mode. Reported by: George Mitchell ------------------------------------------------------------------------ r254829 | jlh | 2013-08-25 08:56:09 +0000 (Sun, 25 Aug 2013) | 4 lines Export a PERIODIC environment variable from periodic(8). This will allow periodic security scripts to know if they have been called in a daily or a weekly context. ------------------------------------------------------------------------ r254830 | andre | 2013-08-25 09:40:15 +0000 (Sun, 25 Aug 2013) | 4 lines Adjust socow_iodone() after r254799. Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254831 | andre | 2013-08-25 09:41:37 +0000 (Sun, 25 Aug 2013) | 4 lines Remove unnecessary setup of the m->pkthdr.header pointer. Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254832 | andre | 2013-08-25 09:45:26 +0000 (Sun, 25 Aug 2013) | 5 lines Change m->pkthdr.header to m->pkthdr.PH_loc.ptr after r254804 to transiently store pointers to packet headers. Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254833 | dumbbell | 2013-08-25 09:46:03 +0000 (Sun, 25 Aug 2013) | 23 lines drm: Import Linux commit cd004b3f4cd4169815c82bf9e424fda06978898a Author: Shirish S Date: Thu Aug 30 07:04:06 2012 +0000 drm: edid: add support for E-DDC The current logic for probing ddc is limited to 2 blocks (256 bytes), this patch adds support for the 4 block (512) data. To do this, a single 8-bit segment index is passed to the display via the I2C address 30h. Data from the selected segment is then immediately read via the regular DDC2 address using a repeated I2C 'START' signal. Signed-off-by: Shirish S Reviewed-by: Jean Delvare Reviewed-by: Daniel Vetter Reviewed-by: Ville Syrjala Signed-off-by: Dave Airlie ------------------------------------------------------------------------ r254834 | andre | 2013-08-25 09:49:00 +0000 (Sun, 25 Aug 2013) | 5 lines For now limit printf(9) %x of the 64bit pkthdr.csum_flags field to 32bits. The upper 32bits are not occupied for now. Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254835 | dumbbell | 2013-08-25 09:53:00 +0000 (Sun, 25 Aug 2013) | 2 lines drm: Fix typo in KASSERT message: s/Dandling/Dangling/ ------------------------------------------------------------------------ r254836 | dumbbell | 2013-08-25 09:58:31 +0000 (Sun, 25 Aug 2013) | 4 lines drm: Support gem_open_object() and gem_close_object() callbacks =2E.. in struct drm_driver_info. ------------------------------------------------------------------------ r254837 | dumbbell | 2013-08-25 10:01:59 +0000 (Sun, 25 Aug 2013) | 4 lines drm: Call "gem_close_object" driver callback from drm_gem_object_release_ha= ndle() This fixes leakage of "bo_va" for Cayman and following card generations. ------------------------------------------------------------------------ r254838 | dumbbell | 2013-08-25 10:04:10 +0000 (Sun, 25 Aug 2013) | 4 lines drm: In drm_gem_name_create(), verify argument before acquiring lock Submitted by: J.R. Oldroyd ------------------------------------------------------------------------ r254840 | dumbbell | 2013-08-25 10:13:23 +0000 (Sun, 25 Aug 2013) | 2 lines drm: Use DRM_IF_MAJOR & DRM_IF_MINOR from drm_core.h ------------------------------------------------------------------------ r254841 | dumbbell | 2013-08-25 10:28:02 +0000 (Sun, 25 Aug 2013) | 2 lines drm: Import list_for_each_entry_safe_from() macro ------------------------------------------------------------------------ r254842 | andre | 2013-08-25 10:57:09 +0000 (Sun, 25 Aug 2013) | 7 lines Give (*ext_free) an int return value allowing for very sophisticated external mbuf buffer management capabilities in the future. For now only EXT_FREE_OK is defined with current legacy behavior. Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254843 | jilles | 2013-08-25 10:57:48 +0000 (Sun, 25 Aug 2013) | 10 lines sh: Disallow empty simple commands. As per POSIX, a simple command must have at least one redirection, assignment word or command word. These occured in rare cases such as eval "f()" . The extension of allowing no commands inside { }, if, while, for, etc. remains. ------------------------------------------------------------------------ r254844 | andre | 2013-08-25 11:01:18 +0000 (Sun, 25 Aug 2013) | 5 lines Bump FreeBSD_version after the struct mbuf changes in r254780, r254799, r254804, r254807, and r254842. Sponsored by: The FreeBSD Foundation ------------------------------------------------------------------------ r254845 | andrew | 2013-08-25 11:21:03 +0000 (Sun, 25 Aug 2013) | 3 lines Add the unwind information to irq_entry so we can pass through it when unwinding the stack. ------------------------------------------------------------------------ r254847 | andrew | 2013-08-25 11:23:38 +0000 (Sun, 25 Aug 2013) | 3 lines Add the frame information to cpu_switch to allow us to unwind out of it, for example when dumping threads in the kernel debugger. ------------------------------------------------------------------------ r254848 | dumbbell | 2013-08-25 11:34:37 +0000 (Sun, 25 Aug 2013) | 5 lines drm: Import drm_pcie_get_speed_cap_mask() in drm_pci.c This comes with several PCI_VENDOR_ID_* defines which should go in a more central place. ------------------------------------------------------------------------ r254849 | jilles | 2013-08-25 11:42:53 +0000 (Sun, 25 Aug 2013) | 5 lines sh: Recognize "--" as end of options in alias builtin. Aliases starting with "-" (which are non-POSIX) will need to be preceded by an alias not starting with "-" or the newly added "--". ------------------------------------------------------------------------ r254850 | adrian | 2013-08-25 12:02:20 +0000 (Sun, 25 Aug 2013) | 4 lines Fix a >80 character long line, introduced in my previous commit. Noticed by: hiren ------------------------------------------------------------------------ r254851 | emaste | 2013-08-25 12:07:34 +0000 (Sun, 25 Aug 2013) | 9 lines Disable lldb target support not (currently) of interest - Remote iOS debugging - OS X symbol provider, core files - PECOFF object files - Linux platform support Sponsored by: DARPA, AFRL ------------------------------------------------------------------------ r254852 | dumbbell | 2013-08-25 12:20:57 +0000 (Sun, 25 Aug 2013) | 14 lines drm: Update drm_pciids.h based on Linux 3.8 This header can be easily updated using the new "gen-drm_pciids" script, available in tools/tools/drm. The script uses the Linux' drm_pciids.h header for new IDs, the FreeBSD's one because we add the name of the device to each IDs, and the PCI IDs database (misc/pciids port) to fill this name automatically for new IDS. To call the script: tools/tools/drm/gen-drm_pciids \ /path/to/linux/drm_pciids.h \ /path/to/freebsd/drm_pciids.h \ /path/to/pciids/pci.ids ------------------------------------------------------------------------ r254853 | dumbbell | 2013-08-25 12:27:15 +0000 (Sun, 25 Aug 2013) | 2 lines drm: Import drm_fixed.h from Linux 3.8 ------------------------------------------------------------------------ r254854 | tuexen | 2013-08-25 12:44:03 +0000 (Sun, 25 Aug 2013) | 2 lines Provide human readable debug output. ------------------------------------------------------------------------ r254855 | adrian | 2013-08-25 12:58:34 +0000 (Sun, 25 Aug 2013) | 14 lines Update the mis-predicted branch PMC names (for sandy bridge) to not clash. The SDM (June 2013) tables on these are rather confusing. Yes, they assign the same name (BR_MISP_RETIRED.ALL_BRANCHES) to two codes (C5H/00H and C5H/04H.) The latter however is the PEBS version. So, to make it easier to see the difference - and yes, we can use both without having to actually enable the PEBS specific bits! - just rename the PEBS one to _PS so there's no clashing. Tested: * Sandy bridge ------------------------------------------------------------------------ r254857 | andre | 2013-08-25 13:30:37 +0000 (Sun, 25 Aug 2013) | 4 lines Fix CSUM compatibility mapping. SCTP is a layer 4 protocol. Submitted by: tuexen ------------------------------------------------------------------------ r254858 | dumbbell | 2013-08-25 14:27:14 +0000 (Sun, 25 Aug 2013) | 6 lines drm: Add missing bits to drmP.h, required by the Radeon driver Some of the FreeBSD-specific definitions are moved to drm_os_freebsd.h. But there's still work to do to clean it up and reduce the diff with Linux' drmP.h. ------------------------------------------------------------------------ r254860 | dumbbell | 2013-08-25 14:33:49 +0000 (Sun, 25 Aug 2013) | 4 lines drm: Update drm_atomic.h, now that projects/atomic64 is in HEAD Submitted by: jkim@ ------------------------------------------------------------------------ r254861 | dumbbell | 2013-08-25 14:39:51 +0000 (Sun, 25 Aug 2013) | 15 lines drm/ttm: Import Linux commit 63d0a4195560362e2e00a3ad38fc331d34e1da9b Author: Maarten Lankhorst Date: Tue Jan 15 14:56:37 2013 +0100 drm/ttm: remove lru_lock around ttm_bo_reserve There should no longer be assumptions that reserve will always succeed with the lru lock held, so we can safely break the whole atomic reserve/lru thing. As a bonus this fixes most lockdep annotations for reservations. Signed-off-by: Maarten Lankhorst Reviewed-by: Jerome Glisse ------------------------------------------------------------------------ r254862 | dumbbell | 2013-08-25 14:41:22 +0000 (Sun, 25 Aug 2013) | 14 lines drm/ttm: Import Linux commit 7a1863084c9d90ce4b67d645bf9b0f1612e68f62 Author: Maarten Lankhorst Date: Tue Jan 15 14:56:48 2013 +0100 drm/ttm: cleanup ttm_eu_reserve_buffers handling With the lru lock no longer required for protecting reservations we can just do a ttm_bo_reserve_nolru on -EBUSY, and handle all errors in a single path. Signed-off-by: Maarten Lankhorst Reviewed-by: Jerome Glisse ------------------------------------------------------------------------ r254863 | dumbbell | 2013-08-25 14:47:22 +0000 (Sun, 25 Aug 2013) | 17 lines drm/ttm: Import Linux commit 5e45d7dfd74100d622f9cdc70bfd1f9fae1671de Author: Maarten Lankhorst Date: Tue Jan 15 14:57:05 2013 +0100 drm/ttm: add ttm_bo_reserve_slowpath Instead of dropping everything, waiting for the bo to be unreserved and trying over, a better strategy would be to do a blocking wait. This can be mapped a lot better to a mutex_lock-like call. Signed-off-by: Maarten Lankhorst Reviewed-by: Jerome Glisse Approved by: kib@ ------------------------------------------------------------------------ r254864 | dumbbell | 2013-08-25 14:52:20 +0000 (Sun, 25 Aug 2013) | 23 lines drm/ttm: Import Linux commit f2d476a110bc24fde008698ae9018c99e803e25c Author: Maarten Lankhorst Date: Tue Jan 15 14:57:10 2013 +0100 drm/ttm: use ttm_bo_reserve_slowpath_nolru in ttm_eu_reserve_buffers, v2 This requires re-use of the seqno, which increases fairness slightly. Instead of spinning with a new seqno every time we keep the current one, but still drop all other reservations we hold. Only when we succeed, we try to get back our other reservations again. This should increase fairness slightly as well. Changes since v1: - Increase val_seq before calling ttm_bo_reserve_slowpath_nolru and retrying to take all entries to prevent a race. Signed-off-by: Maarten Lankhorst Reviewed-by: Jerome Glisse Approved by: kib@ ------------------------------------------------------------------------ r254865 | dumbbell | 2013-08-25 14:53:39 +0000 (Sun, 25 Aug 2013) | 15 lines drm/ttm: Import Linux commit cc4c0c4de3c775be22072ec3251f2e581b63d9a0 Author: Maarten Lankhorst Date: Tue Jan 15 14:57:28 2013 +0100 drm/ttm: unexport ttm_bo_wait_unreserved All legitimate users of this function outside ttm_bo.c are gone, now it's only an implementation detail. Signed-off-by: Maarten Lankhorst Reviewed-by: Jerome Glisse Approved by: kib@ ------------------------------------------------------------------------ r254866 | dumbbell | 2013-08-25 14:55:08 +0000 (Sun, 25 Aug 2013) | 21 lines drm/ttm: Import Linux commit 630541863b29f88c7ab34e647758344e4cd1eafd Author: Dave Airlie Date: Wed Jan 16 14:25:44 2013 +1000 ttm: don't destroy old mm_node on memcpy failure When we are using memcpy to move objects around, and we fail to memcpy due to lack of memory to populate or failure to finish the copy, we don= 't want to destroy the mm_node that has been copied into old_copy. While working on a new kms driver that uses memcpy, if I overallocated = bo's up to the memory limits, and eviction failed, then machine would oops s= oon after due to having an active bo with an already freed drm_mm embedded = in it, freeing it a second time didn't end well. Reviewed-by: Jerome Glisse Signed-off-by: Dave Airlie Approved by: kib@ ------------------------------------------------------------------------ r254867 | dumbbell | 2013-08-25 14:56:14 +0000 (Sun, 25 Aug 2013) | 17 lines drm/ttm: Import Linux commit 014b34409fb2015f63663b6cafdf557fdf289628 Author: Dave Airlie Date: Wed Jan 16 15:58:34 2013 +1000 ttm: on move memory failure don't leave a node dangling if we have a move notify callback, when moving fails, we call move noti= fy the opposite way around, however this ends up with *mem containing the = mm_node from the bo, which means we double free it. This is a follow on to the = previous fix. Reviewed-by: Jerome Glisse Signed-off-by: Dave Airlie Approved by: kib@ ------------------------------------------------------------------------ r254868 | dumbbell | 2013-08-25 14:58:44 +0000 (Sun, 25 Aug 2013) | 35 lines drm/ttm: Import Linux commit ff7c60c580d9722f820d85c9c58ca55ecc1ee7c4 Author: Daniel Vetter Date: Mon Jan 14 15:08:14 2013 +0100 drm/ttm: fix fence locking in ttm_buffer_object_transfer, 2nd try This fixes up commit e8e89622ed361c46bf90ba4828e685a8b603f7e5 Author: Daniel Vetter Date: Tue Dec 18 22:25:11 2012 +0100 drm/ttm: fix fence locking in ttm_buffer_object_transfer which leaves behind a might_sleep in atomic context, since the fence_lock spinlock is held over a kmalloc(GFP_KERNEL) call. The fix is to revert the above commit and only take the lock where we need it, around the call to ->sync_obj_ref. v2: Fixup things noticed by Maarten Lankhorst: - Brown paper bag locking bug. - No need for kzalloc if we clear the entire thing on the next line. - check for bo->sync_obj (totally unlikely race, but still someone else could have snuck in) and clear fbo->sync_obj if it's cleared already. Reported-by: Dave Airlie Cc: Jerome Glisse Cc: Maarten Lankhorst Signed-off-by: Daniel Vetter Signed-off-by: Dave Airlie Approved by: kib@ ------------------------------------------------------------------------ r254870 | dumbbell | 2013-08-25 15:00:48 +0000 (Sun, 25 Aug 2013) | 8 lines drm/ttm: Make ttm_bo_wait() call uninterruptible in page fault handler This fixes a crash where a SIGLALRM, heavily used by X.Org, would interrupt the wait, causing the page fault to fail and the "Xorg" process to receive a SIGSEGV. Approved by: kib@ ------------------------------------------------------------------------ r254871 | dumbbell | 2013-08-25 15:01:35 +0000 (Sun, 25 Aug 2013) | 2 lines drm/ttm: Fix style errors ------------------------------------------------------------------------ r254873 | dumbbell | 2013-08-25 15:05:22 +0000 (Sun, 25 Aug 2013) | 5 lines drm/ttm: When removing a range of pages from a pool, remove all of them Submitted by: Mark Kettenis and Jonathan Gray from OpenBSD Approved by: kib@ ------------------------------------------------------------------------ r254874 | dumbbell | 2013-08-25 15:06:48 +0000 (Sun, 25 Aug 2013) | 4 lines drm/ttm: Improve comment in ttm_bo_vm_ctor() about lack of ref acquisition Approved by: kib@ ------------------------------------------------------------------------ r254875 | dumbbell | 2013-08-25 15:12:26 +0000 (Sun, 25 Aug 2013) | 4 lines ttm: "to_page->valid =3D VM_PAGE_BITS_ALL" before vm_page_dirty(to_page) Approved by; kib@ ------------------------------------------------------------------------ r254876 | dumbbell | 2013-08-25 15:15:55 +0000 (Sun, 25 Aug 2013) | 15 lines drm/ttm: Fix unmap of buffer object Add a new ttm_bo_release_mmap() function to unmap pages in a vm_object_t. Pages are freed when the buffer object is later released. This function is called in ttm_bo_unmap_virtual_locked(), replacing Linux' unmap_mapping_range(). In particular this is called when a buffer object is about to be moved, so that its mapping is invalidated. However, we don't use this function in ttm_bo_vm_dtor(), because the vm_object_t is already marked as OBJ_DEAD and the pages will be unmapped. Approved by: kib@ ------------------------------------------------------------------------ r254877 | dumbbell | 2013-08-25 15:26:45 +0000 (Sun, 25 Aug 2013) | 2 lines drm/ttm: Fix style in ttm_bo_release_mmap() ------------------------------------------------------------------------ r254878 | dumbbell | 2013-08-25 15:29:23 +0000 (Sun, 25 Aug 2013) | 7 lines drm/ttm: Fix a reversed condition and add missing locks This allows to run OpenGL applications on at least two test machines with the Radeon driver. Approved by: kib@ ------------------------------------------------------------------------ r254879 | dumbbell | 2013-08-25 15:33:17 +0000 (Sun, 25 Aug 2013) | 2 lines drm/ttm: Remove unused VM_ALLOC_DMA32 define ------------------------------------------------------------------------ r254880 | dumbbell | 2013-08-25 15:38:16 +0000 (Sun, 25 Aug 2013) | 4 lines drm: Use the new drm_atomic.h, following the merge of projects/atomic64 Submitted by: jkim@ ------------------------------------------------------------------------ r254882 | dumbbell | 2013-08-25 18:09:11 +0000 (Sun, 25 Aug 2013) | 14 lines vga_pci: Add API to map the Video BIOS Here are two new functions to map and unmap the Video BIOS: void * vga_pci_map_bios(device_t dev, size_t *size); void vga_pci_unmap_bios(device_t dev, void *bios); The BIOS is either taken from the shadow copy made by the System BIOS at boot time if the given device was used for the default display (i386, amd64 and ia64 only), or from the PCI expansion ROM. Additionally, one can determine if a given device was the default display at boot time using the following new function: void vga_pci_unmap_bios(device_t dev, void *bios); ------------------------------------------------------------------------ r254883 | dumbbell | 2013-08-25 18:23:15 +0000 (Sun, 25 Aug 2013) | 2 lines vga_pci: Remove left-over debugging printf()'s ------------------------------------------------------------------------ r254885 | dumbbell | 2013-08-25 19:37:15 +0000 (Sun, 25 Aug 2013) | 41 lines drm/radeon: Import the Radeon KMS driver This driver is based on Linux 3.8 and a previous effort by kan@. More informations about this project can be found on the FreeBSD wiki: https://wiki.freebsd.org/AMD_GPU The driver is split into: sys/dev/drm2: The driver sources. sys/modules/drm2/radeonkmw: The driver main kernel module's Makefile. sys/modules/drm2/radeonkmsfw: All firmware kernel module Makefiles. There's one directory and one Makefile for each firmware. sys/contrib/dev/drm2/radeonkmsfw: All firmware binary sources. tools/tools/drm/radeon Tools to update firmwares or regenerate some headers. Merging the driver to FreeBSD 9.x may be possible but not a priority for now. Help from: kib@, kan@ Tested by: avg@, kwm@, ray@, Alexander Yerenkow , Anders Bolt-Evensen , Denis Djubajlo , J.R. Oldroyd , Mika?\195?\171l Urankar , Pierre-Emmanuel P?\195?\169dron , Sam Fourman Jr. , Wade , (probably other I forgot...) HW donations: kyzh, Yakaz ------------------------------------------------------------------------ r254887 | dumbbell | 2013-08-25 20:01:21 +0000 (Sun, 25 Aug 2013) | 2 lines Bump __FreeBSD_version to 1000051 after Radeon KMS driver import ------------------------------------------------------------------------ r254888 | jilles | 2013-08-25 21:52:04 +0000 (Sun, 25 Aug 2013) | 9 lines Fix fcntl F_GETFL F_SETFL for files opened execute-only (O_EXEC). The FFLAGS and OFLAGS now work correctly also for files opened with O_EXEC. Except possibly fuse, the other users pass values without O_EXEC set. fuse appears to assume O_EXEC is handled correctly. Although F_SETFL may not be commonly used for execute-only file descriptors, F_GETFL may be useful to find the access mode. ------------------------------------------------------------------------ r254889 | markj | 2013-08-25 21:54:41 +0000 (Sun, 25 Aug 2013) | 8 lines Implement the ip, tcp, and udp DTrace providers. The probe definitions use dynamic translation so that their arguments match the definitions for these providers in Solaris and illumos. Thus, existing scripts for these providers should work unmodified on FreeBSD. Tested by: gnn, hiren MFC after: 1 month --GeONROBiaq1zPAtT-- --e8/wErwm0bqugfcz Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.21 (FreeBSD) iQEcBAEBCAAGBQJSHCuIAAoJEFJPDDeguUajmusH/A995/KQmDc1vcNuOhDUXgZj xdEkz1v1st2y6V7T4DH+YREDjtfCPEugwT7NVz2y8+EYGP2vk+L9R5PI1kyzxomj eDaDUWdyiiWgGY9ZOu8tf8hNIetcq9h48h7Z89EWy6lIOII1bkS98kv61YjjuBzS LjAlY3uH1W5qzAvTBb2BM8TxewYJoofQ2NzBmW+mnAq5c7hvhiI+2Ikui4krNXTT NRSjjmlPnri07yLlia2p4ShJrywHMGIugntIizOXjezjEnx++rpc0mwSSl5S8V6q 1bveEObD+HzmPfW+Xe3CUqkzvnAjGpXsZ9u39bFYmOQFoQnAnNf54AMGOAjviF0= =dq7F -----END PGP SIGNATURE----- --e8/wErwm0bqugfcz--