Ħ]272192 146 515 636 286 841 132 279 436 175 127 586 239 482 265 242 248 304 195 671 215 354 458 288 365 466 291 399 161 140 140 208 126 534 144 138 138 206 300 106 838 132 143 1923 1444 109 200 423 144 855 125 124 180 151 203 116 169 189 142 111 120 132 164 136 292 172 161 301 142 141 391 337 178 280 491 1060 157 216 285 256 1918 169 225 741 449 255 232 259 1274 230 367 257 762 709 477 471 117 114 484 226 365 152 1575 143 323 158 177 105 306 208 166 169 299 149 936 290 150 275 403 308 1802 404 365 584 308 310 167 859 705 585 485 1946 506 294 279 405 203 309 297 262 277 535 425 271 246 705 248 409 K 10 svn:author V 6 dteske K 8 svn:date V 27 2014-09-26T23:01:27.372240Z K 7 svn:log V 419 MFC revisions 262864-262865, 263114, 267970: r262864: Stop pw(8) from segfaulting when given certain input (julian) r262865: Part 2 of bug 187310 (julian) r263114: Fix pw(8) edge-case deletion of group "username" on userdel r267970: Fix infinite-loop during deletion of users from groups PR: 187310, 169471, 191427 Submitted by: Voradesh Yenbut, Alexander Pyhalov, Kim Shrier Obtained from: bug Approved by: re (gjb) END K 10 svn:author V 6 grehan K 8 svn:date V 27 2014-09-27T01:15:24.595897Z K 7 svn:log V 540 Allow the PIC's IMR register to be read before ICW initialisation. As of git submit e179f6914152eca9, the Linux kernel does a simple probe of the PIC by writing a pattern to the IMR and then reading it back, prior to the init sequence of ICW words. The bhyve PIC emulation wasn't allowing the IMR to be read until the ICW sequence was complete. This limitation isn't required so relax the test. With this change, Linux kernels 3.15-rc2 and later won't hang on boot when calibrating the local APIC. Reviewed by: tychon MFC after: 3 days END K 10 svn:author V 6 dteske K 8 svn:date V 27 2014-09-27T01:50:03.657648Z K 7 svn:log V 190 MFC revisions 271553, 271567: r271553: Rename choices in partitioning method dialog (nwhitehorn) r271567: ZFS support isn't actually experimental anymore (nwhitehorn) Approved by: re (gjb) END K 10 svn:author V 4 neel K 8 svn:date V 27 2014-09-27T02:04:58.151487Z K 7 svn:log V 747 Simplify register state save and restore across a VMRUN: - Host registers are now stored on the stack instead of a per-cpu host context. - Host %FS and %GS selectors are not saved and restored across VMRUN. - Restoring the %FS/%GS selectors was futile anyways since that only updates the low 32 bits of base address in the hidden descriptor state. - GS.base is properly updated via the MSR_GSBASE on return from svm_launch(). - FS.base is not used while inside the kernel so it can be safely ignored. - Add function prologue/epilogue so svm_launch() can be traced with Dtrace's FBT entry/exit probes. They also serve to save/restore the host %rbp across VMRUN. Reviewed by: grehan Discussed with: Anish Gupta (akgupt3@gmail.com) END K 10 svn:author V 5 kevlo K 8 svn:date V 27 2014-09-27T02:15:45.415229Z K 7 svn:log V 38 Remove a bogus AIC. Reviewed by: imp END K 10 svn:author V 4 neel K 8 svn:date V 27 2014-09-27T03:43:49.610106Z K 7 svn:log V 185 After r271635 mmap(2) requires either MAP_PRIVATE or MAP_SHARED for non-anonymous mappings. This gets 'bhyvectl --get-all' working again. Reported by: Anish Gupta (akgupt3@gmail.com) END K 10 svn:author V 6 marcel K 8 svn:date V 27 2014-09-27T04:53:51.012758Z K 7 svn:log V 340 Add 3 long options for getting information about mkimg itself: --version print the version of mkimg and also whether it's 64- or 32-bit. --formats list the supported output formats separated by space. --schemes list the supported partitioning schemes separated by space. Inspired by a patch from: gjb@ MFC after: 1 week Relnotes: yes END K 10 svn:author V 6 adrian K 8 svn:date V 27 2014-09-27T05:14:02.190568Z K 7 svn:log V 80 Remove an un-needed bit of pre-processor work - it all lives inside #ifdef RSS. END K 10 svn:author V 2 np K 8 svn:date V 27 2014-09-27T05:50:31.058832Z K 7 svn:log V 36 cxgbe(4): implement if_get_counter. END K 10 svn:author V 8 melifaro K 8 svn:date V 27 2014-09-27T07:04:12.593553Z K 7 svn:log V 488 * Split tcp_signature_compute() into 2 pieces: - tcp_get_sav() - SADB key lookup - tcp_signature_do_compute() - actual computation * Fix TCP signature case for listening socket: do not assume EVERY connection coming to socket with TCP_SIGNATURE set to be md5 signed regardless of SADB key existance for particular address. This fixes the case for routing software having _some_ BGP sessions secured by md5. * Simplify TCP_SIGNATURE handling in tcp_input() MFC after: 2 weeks END K 10 svn:author V 3 kib K 8 svn:date V 27 2014-09-27T07:54:27.489664Z K 7 svn:log V 146 MFC r272036: Avoid calling vm_map_pmap_enter() for the MADV_WILLNEED on the wired entry, the pages must be already mapped. Approved by: re (gjb) END K 10 svn:author V 3 mav K 8 svn:date V 27 2014-09-27T08:14:15.272550Z K 7 svn:log V 389 MFC r272040: When reporting some major UNIT ATTENTION condition, like POWER ON OCCURRED or I_T NEXUS LOSS, clear all minor UAs for the LUN, redundant in this case. All SAM specifications tell that target MAY do it, but libiscsi initiator seems require it to be done, terminating connection with error if some more UAs happen to be reported during iSCSI connection. Approved by: re (gjb) END K 10 svn:author V 3 mav K 8 svn:date V 27 2014-09-27T08:33:50.224545Z K 7 svn:log V 172 MFC r272059: Remake Linux' SOUND_MIXER_INFO IOCTL as a wrapper around new FreeBSD's one. Submitted by: Dmitry Luhtionov Approved by: re (kib) END K 10 svn:author V 3 mav K 8 svn:date V 27 2014-09-27T08:35:23.921423Z K 7 svn:log V 149 MFC r272059: Remake Linux' SOUND_MIXER_INFO IOCTL as a wrapper around new FreeBSD's one. Submitted by: Dmitry Luhtionov END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2014-09-27T08:59:43.093496Z K 7 svn:log V 152 Add kernel support for the TP-LINK MR3020 Atheros MIPS 24k router. AR9331 based system. Phabric: https://reviews.freebsd.org/D780 Reviewed by: adrian END K 10 svn:author V 8 cperciva K 8 svn:date V 27 2014-09-27T09:00:38.566043Z K 7 svn:log V 206 Switch primes(6) from using unsigned long to using uint64_t. This fixes 'limited range of type' warnings about comparisons on 32-bit systems, and allows 32-bit systems to compute the full range of primes. END K 10 svn:author V 7 delphij K 8 svn:date V 27 2014-09-27T09:39:19.697461Z K 7 svn:log V 99 Revert r272189, the committed version was an old version and breaks build. Pointy hat to: delphij END K 10 svn:author V 6 andrew K 8 svn:date V 27 2014-09-27T09:57:34.102735Z K 7 svn:log V 575 Add machine/sysreg.h to simplify accessing the system control coprocessor registers and use it in the ARMv7 CPU functions. The sysreg.h file has been checked by hand, however it may contain errors with the comments on when a register was first introduced. The ARMv7 cpu functions have been checked by compiling both the previous and this version and comparing the md5 of the object files. Submitted by: Svatopluk Kraus Submitted by: Michal Meloun Reviewed by: ian, rpaulo Differential Revision: https://reviews.freebsd.org/D795 END K 10 svn:author V 6 sbruno K 8 svn:date V 27 2014-09-27T10:57:34.219013Z K 7 svn:log V 119 Update factor for changes to types in primes, which is a dependency. Fixes build-fail on mips32 introduced at 272207. END K 10 svn:author V 8 melifaro K 8 svn:date V 27 2014-09-27T13:57:48.115905Z K 7 svn:log V 256 Use underlying ports counters to get lagg statistics instead of per-packet accounting. This introduce user-visible changes like aggregating error counters. Reviewed by: asomers (prev.version), glebius CR: D781 MFC after: 2 weeks Sponsored by: Yandex LLC END K 10 svn:author V 3 gjb K 8 svn:date V 27 2014-09-27T14:24:43.424642Z K 7 svn:log V 365 Check if mkimg(1) reports back a version which can be used to determine which disk formats can be created. If the version is not empty, use create_vmimage_mkimg() to create the qcow2 format. While here, use mkimg(1) instead of qemu-img to create the raw disk format. Many thanks to marcel@ for adding VHD and QCOW2 formats. Sponsored by: The FreeBSD Foundation END K 10 svn:author V 5 kevlo K 8 svn:date V 27 2014-09-27T14:39:00.465612Z K 7 svn:log V 193 Fix the definitioin of AT91SAM9G45_IRQ_PIOE and rename it to AT91SAM9G45_IRQ_PIODE. According to the data sheet, both PIOD and PIOE use the same IRQ. While here remove duplicate definitions. END K 10 svn:author V 3 kan K 8 svn:date V 27 2014-09-27T16:50:21.404181Z K 7 svn:log V 272 Remove obsolete compatibility glue and improve firewire code readability. Commit my version of style(9) pass over the firewire code. Now that other people have started changing the code carrying this is as a local patch is not longer a viable option. MFC after: 1 month END K 10 svn:author V 3 kan K 8 svn:date V 27 2014-09-27T16:50:24.600313Z K 7 svn:log V 373 Do not pass whole descriptor block size as align to fwdma_malloc_multiseg Do not pass wrong alignment value to fwdma_malloc_multiseg and ultimately to contigalloc. In addition to being wrong, this causes insta-panic in certain cases due to safety assertion - the alignment is required to be the power of two and the value we calculate here seldom is. MFC after: 1 month END K 10 svn:author V 2 bz K 8 svn:date V 27 2014-09-27T17:11:51.297154Z K 7 svn:log V 199 Disable the makeoption with MFS_IMAGE= set as we don't ship that file and it thus breaks the default build. You can still use various other ways (tools) to embedd the image after the kernel build. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2014-09-27T17:58:03.735275Z K 7 svn:log V 303 Update the usage message and the man page to account for the new long options. Bump the version number to 20140927. While here, use explicit fputc() calls to skip a line in the output. This to avoid having to hunt for extra '\n' characters in the printf format strings. MFC after: 1 week Relnotes: yes END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2014-09-27T18:08:39.717072Z K 7 svn:log V 64 MFC r271874: Add new USB IDs. PR: 193775 Approved by: re, gjb END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2014-09-27T18:10:52.253772Z K 7 svn:log V 43 MFC r271874: Add new USB IDs. PR: 193775 END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2014-09-27T18:12:05.653006Z K 7 svn:log V 43 MFC r271874: Add new USB IDs. PR: 193775 END K 10 svn:author V 3 smh K 8 svn:date V 27 2014-09-27T18:20:45.228297Z K 7 svn:log V 115 MFC r272071: Fix ticks wrap issue of lowmem test in vm_pageout_scan Approved by: re (kib) Sponsored by: Multiplay END K 10 svn:author V 2 np K 8 svn:date V 27 2014-09-27T18:35:16.824890Z K 7 svn:log V 35 cxgb(4): implement if_get_counter. END K 10 svn:author V 3 smh K 8 svn:date V 27 2014-09-27T19:14:22.100200Z K 7 svn:log V 441 Use a local STAILQ for unlocked done CCB processing in ahci direct mode Previously it was possible for issues e.g. use after free, to result from processing the done queue while not holding the channel lock. While this should never happen in practice, unexpected code flows which result in two threads processing from the same queue may be possible. We now use a local STAILQ to prevent this ever being an issue. Sponsored by: Multiplay END K 10 svn:author V 3 mav K 8 svn:date V 27 2014-09-27T20:08:34.911254Z K 7 svn:log V 52 Fix page length reported for Block Limits VPD page. END K 10 svn:author V 7 glebius K 8 svn:date V 27 2014-09-27T20:39:24.546372Z K 7 svn:log V 42 Mechanically convert to if_inc_counter(). END K 10 svn:author V 7 glebius K 8 svn:date V 27 2014-09-27T20:43:01.947613Z K 7 svn:log V 42 Mechanically convert to if_inc_counter(). END K 10 svn:author V 7 glebius K 8 svn:date V 27 2014-09-27T20:54:57.898756Z K 7 svn:log V 109 Convert driver to if_get_counter method. Submitted by: rstone Reviewed by: Eric Joyner END K 10 svn:author V 3 gjb K 8 svn:date V 27 2014-09-27T21:13:21.887889Z K 7 svn:log V 207 Copy head@r272227 to projects/release-vmimage. This project branch will be used to add support for building virtual machine disk images as part of the release process. Sponsored by: The FreeBSD Foundation END K 10 svn:author V 4 neel K 8 svn:date V 27 2014-09-27T22:15:50.824544Z K 7 svn:log V 13 IFC @r272185 END K 10 svn:author V 6 dteske K 8 svn:date V 27 2014-09-27T23:57:21.996337Z K 7 svn:log V 742 MFC revisions 268999, 269027, 269351-269352, 269354, 269460, 270283, 270505, 270954, and 270989: r268999: Add new bsdconfig example scripts; remove obsolete ones r269027: Update bsdconfig dot module; fixes and enhancements r269351: Add setvar() for non-FreeBSD platforms using bash as /bin/sh r269352: Fix syntax error when run under bash r269354: Update setvar() function introduced in r269351 r269460: Update f_xdialog_info() in bsdconfig's dialog.subr include r270283: Add `-A' flag to pkg-install(8) when installing dependencies r270505: Optimize f_which() to be slightly faster still (common.subr) r270954: Update f_dialog_init() for safer getopts usage (dialog.subr) r270989: Fix for previously mentioned r270954 Approved by: re (gjb) END K 10 svn:author V 6 marcel K 8 svn:date V 27 2014-09-28T00:20:08.275798Z K 7 svn:log V 37 Sync with ^head/usr.bin/mkimg@272217 END K 10 svn:author V 6 marcel K 8 svn:date V 27 2014-09-28T00:24:01.627656Z K 7 svn:log V 48 Work around broken make infrastructure. Sigh... END K 10 svn:author V 6 marcel K 8 svn:date V 27 2014-09-28T00:43:04.307074Z K 7 svn:log V 1826 Start performance optimizations: Output formats typically need to know whether a sequence of blocks has data or not. They use this to determine whether to allocate disk space for them or not. The image_data() function provides that functionality, but is implemented by reading the amount of blocks from the temporary file and comparing that with zeroes. The QCOW format needs to go over the image 3 times and every time we read from the temporary file. We can speed this up by building a "chunk" list in memory while we read the partition data. Each chunk is a sequence of blocks that is either defined as a gap (i.e. all zeroes) or defined as containing data. For each chunk we keep track of the file and the offset in that file where the chunk's data comes from. This allows us handle regular files and in particular sparse files more optimally. For sparse files we can trivially build a chunk for each of the holes in the parse file by using SEEK_HOLE and SEEK_DATA. The data regions still need to be read to handle zeroe blocks for block sizes smaller that the underlying file system's block size. However, we don't have to copy the data into a temporary file anymore. For anything but regular files, we still use the temporary file. We call it a swap file now. With that all data can be mapped and unmapped as we need to access it. This commit implements the creation of the chunk list and the swap file usage for non-regular files (i.e. streams). Mappable files are now handled like streams, so that needs some work. The big part that is missing is the use of the chunk list for determining whether a sequence of blocks has data and all the handling of writing the image data to the output file. As such: this commit breaks mkimg and makes it useless. It's a good WIP to safe thogh -- hence doing it on my branch. END K 10 svn:author V 3 gjb K 8 svn:date V 27 2014-09-28T01:45:20.122343Z K 7 svn:log V 1350 Initial commit to include virtual machine images as part of the FreeBSD release builds. This adds a make(1) environment variable requirement, WITH_VMIMAGES, which triggers the virtual machine image targets when not defined to an empty value. Relevant user-driven variables include: o VMFORMATS: The virtual machine image formats to create. Valid formats are provided by running 'mkimg --formats' o VMSIZE: The size of the resulting virtual machine image. Typical compression is roughly 140Mb, regardless of the target size (10GB, 15GB, 20GB, 40GB sizes have been tested with the same result). o VMBASE: The prefix of the virtual machine disk images. The VMBASE make(1) environment variable is suffixed with each format in VMFORMATS for each individual disk image, as well as '.img' for the source UFS filesystem passed to mkimg(1). This also includes a new script, mk-vmimage.sh, based on how the VM images for 10.0-RELEASE, 9.3-RELEASE, and 10.1-RELEASE were created (mk-vmimage.sh in ^/user/gjb/thermite/). With the order in which the stages need to occur, as well as sanity-checking error cases, it makes much more sense to execute a shell script called from make(1), using env(1) to set specific parameters for the target image than it does to do this in make(1) directly. Sponsored by: The FreeBSD Foundation END K 10 svn:author V 6 bryanv K 8 svn:date V 27 2014-09-28T01:52:04.763639Z K 7 svn:log V 14 IFC @ r272233 END K 10 svn:author V 3 gjb K 8 svn:date V 27 2014-09-28T01:53:02.968194Z K 7 svn:log V 107 Use VMBASE in place of a hard-coded filename in the CLEANFILES list. Sponsored by: The FreeBSD Foundation END K 10 svn:author V 6 adrian K 8 svn:date V 27 2014-09-28T05:28:11.081776Z K 7 svn:log V 327 Fix the ar724x PCI config space register read. It was doing incorrect things with masks. This was fixed in the AR71xx codebase but it wasn't yet fixed in the AR724x code. This ended up having config space reads return larger/incorrect values in some situations. Tested: * AR7240 TODO: * test ar7241, AR7242, and AR934x. END K 10 svn:author V 7 glebius K 8 svn:date V 27 2014-09-28T07:19:32.839768Z K 7 svn:log V 48 Mechanically switch ixv(4) to if_inc_counter(). END K 10 svn:author V 6 adrian K 8 svn:date V 27 2014-09-28T07:27:58.435906Z K 7 svn:log V 759 Fix the AR724x PCIe glue to correctly probe the BAR on AR7240 devices. There's a bug in the AR7240 PCIe hardware where a correct BAR will end up having the device disappear. It turns out that for the device address it should be all 0's. However, this meant that the PCI probe code would try writing 0xffffffff in to see how big the window was, read back 0x0, and think the window was 32 bits. It then ended up calculating a resource size of 0 bytes, failed to find anything via an rman call, and this would fail to attach. I have quite absolutely no idea how in the various planes of existence this particular bit of code and how it worked with the PCI bus code ever worked. But, well, it did. Tested: * Atheros AP93 - AR7240 + AR9280 reference board END K 10 svn:author V 7 glebius K 8 svn:date V 27 2014-09-28T07:29:45.360208Z K 7 svn:log V 29 Convert to if_get_counter(). END K 10 svn:author V 7 glebius K 8 svn:date V 27 2014-09-28T07:40:26.747534Z K 7 svn:log V 28 Provide ixgb_get_counter(). END K 10 svn:author V 7 glebius K 8 svn:date V 27 2014-09-28T07:43:38.386808Z K 7 svn:log V 84 Convert to if_inc_counter() last remnantes of bare access to struct ifnet counters. END K 10 svn:author V 4 nyan K 8 svn:date V 27 2014-09-28T08:23:26.120350Z K 7 svn:log V 58 Merged from r183296. Add missing library dependencies. END K 10 svn:author V 7 glebius K 8 svn:date V 27 2014-09-28T08:57:07.578542Z K 7 svn:log V 106 Finally, convert counters in struct ifnet to counter(9). Sponsored by: Netflix Sponsored by: Nginx, Inc. END K 10 svn:author V 4 nyan K 8 svn:date V 27 2014-09-28T08:59:38.442667Z K 7 svn:log V 23 Remove duplicate prog. END K 10 svn:author V 3 kib K 8 svn:date V 27 2014-09-28T11:08:32.494676Z K 7 svn:log V 77 MFC r272132: Fix fcntl(2) compat32 after r270691. Approved by: re (glebius) END K 10 svn:author V 3 mav K 8 svn:date V 27 2014-09-28T11:10:37.771799Z K 7 svn:log V 97 Do not transfer unneeded training zero bytes in INQUIRY response. It is an addition to r269631. END K 10 svn:author V 4 nyan K 8 svn:date V 27 2014-09-28T11:32:46.163721Z K 7 svn:log V 49 - Cleanups pc98 code. - Remove unworked formats. END K 10 svn:author V 4 nyan K 8 svn:date V 27 2014-09-28T12:12:54.835394Z K 7 svn:log V 18 Remove extra '\'. END K 10 svn:author V 4 nyan K 8 svn:date V 27 2014-09-28T12:13:51.638615Z K 7 svn:log V 27 Reduce diffs against i386. END K 10 svn:author V 7 glebius K 8 svn:date V 27 2014-09-28T12:18:21.041858Z K 7 svn:log V 36 Merge head r256150 through r272245. END K 10 svn:author V 4 nyan K 8 svn:date V 27 2014-09-28T12:25:27.756993Z K 7 svn:log V 71 MFi386: r261520 Drop the 3rd clause from all 3 clause BSD licenses. END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2014-09-28T12:41:48.081315Z K 7 svn:log V 39 Regenerate usb.conf MFC after: 3 days END K 10 svn:author V 8 hselasky K 8 svn:date V 27 2014-09-28T12:55:13.427755Z K 7 svn:log V 194 Instead of creating the full range of possible ports, try to figure out the actual number of so-called "embedded jacks" which are present when a USB MIDI device is attaching. MFC after: 3 days END K 10 svn:author V 4 nyan K 8 svn:date V 27 2014-09-28T13:13:18.328396Z K 7 svn:log V 79 MFi386: r268974 Supress clang warning for FreeBSD printf %b and %D formats. END K 10 svn:author V 4 nyan K 8 svn:date V 27 2014-09-28T13:34:43.754376Z K 7 svn:log V 68 MFi386: r261567 Switch from lib/libstand to sys/boot/libstand32. END K 10 svn:author V 7 glebius K 8 svn:date V 27 2014-09-28T14:05:18.248215Z K 7 svn:log V 204 - Remove empty wrappers ether_poll_[de]register_drv(). [1] - Move polling(9) declarations out of ifq.h back to if_var.h they are absolutely unrelated to queues. Submitted by: Mikhail [1] END K 10 svn:author V 4 nyan K 8 svn:date V 27 2014-09-28T14:25:46.642580Z K 7 svn:log V 49 - Cosmetic changes. - Reduce diffs against i386. END K 10 svn:author V 4 nyan K 8 svn:date V 27 2014-09-28T14:39:11.321584Z K 7 svn:log V 48 MFi386: Enable QUOTA, PRINTF_BUFR_SIZE and puc. END K 10 svn:author V 2 bz K 8 svn:date V 27 2014-09-28T15:38:21.844173Z K 7 svn:log V 299 Remove duplicate declaraton of the if_inc_counter() function after r272244. if_var.h has the expected on and if_var.h include ifq.h and thus we get duplicates. It seems only one cavium ethernet file actually includes ifq.h directly which might be another cleanup to be done but need to test first. END K 10 svn:author V 2 bz K 8 svn:date V 27 2014-09-28T17:09:40.097934Z K 7 svn:log V 245 Move the unconditional #include of net/ifq.h to the very end of file. This seems to allow us to pass a universe with either clang or gcc after r272244 (and r272260) and probably makes it easier to untabgle these chained #includes in the future. END K 10 svn:author V 3 gjb K 8 svn:date V 27 2014-09-28T17:16:45.758831Z K 7 svn:log V 86 Remove a 'set -x' that snuck in during testing. Sponsored by: The FreeBSD Foundation END K 10 svn:author V 6 tuexen K 8 svn:date V 27 2014-09-28T17:22:45.498611Z K 7 svn:log V 184 Checksum coverage values larger than 65535 for UDPLite are invalid. Check for this when the user calls setsockopt using UDPLITE_{SEND,RECV}CSCOV. Reviewed by: kevlo MFC after: 3 days END K 10 svn:author V 3 gjb K 8 svn:date V 27 2014-09-28T17:53:10.104899Z K 7 svn:log V 398 release/Makefile: Connect the virtual machine image build to the release target if WITH_VMIMAGES is set to a non-empty value. release/release.sh: Add WITH_VMIMAGES to RELEASE_RMAKEFLAGS. release/release.conf.sample: Add commented entries for tuning the release build if the WITH_VMIMAGES make(1) environment variable is set to a non-empty value. Sponsored by: The FreeBSD Foundation END K 10 svn:author V 6 marcel K 8 svn:date V 27 2014-09-28T18:34:20.846465Z K 7 svn:log V 964 Implement image_copyin_mapped(): 1. If we can't seek, then let image_copyin_stream() deal with it. 2. Use SEEK_HOLE and SEEK_DATA to iterate over the regions of a sparse file. 3. Round or truncate to the sector size based on whether it's a hold or data. We truncate for holes and round for data. This to make sure to handle sparse files correctly when the sector size is larger than the file system's block/fragment size. Since we detect runts of zeroes for mmap'd data (to handle streams), we correct ourselves if such is applicable. We never mishandle data, which is the most important. I need to check with a file system that doesn't support sparse files what SEEK_HOLE and SEEK_DATA return. I'm thinking -1, which is what I don't handle yet. It's easy to do, because everything should be treated as data and we'll find the holes the hard way. While here: set DEBUG_FLAGS unconditionally to make sure I can always debug a core. END K 10 svn:author V 8 melifaro K 8 svn:date V 27 2014-09-28T19:05:22.820548Z K 7 svn:log V 60 Convert most BPF_TAP users to BPF_MTAP. MFC after: 2 weeks END K 10 svn:author V 6 bryanv K 8 svn:date V 27 2014-09-28T19:17:33.529989Z K 7 svn:log V 120 - Convert to if_inc_counter() - Replace rwlocks with rmlocks - Drop packets with any reserved bits set in the header END K 10 svn:author V 6 marcel K 8 svn:date V 27 2014-09-28T19:55:21.828753Z K 7 svn:log V 189 When SEEK_HOLE and SEEK_DATA return -1, then the entire file is data. Set hole and data accordingly and before acting on them. While here: remove some debugging printfs; we're good so far. END K 10 svn:author V 3 gjb K 8 svn:date V 27 2014-09-28T20:06:02.355467Z K 7 svn:log V 163 release/Makefile: Include .OBJDIR in DESTDIR in the vm-base target. release/release.sh: Provide the full path to mddev. Sponsored by: The FreeBSD Foundation END K 10 svn:author V 4 neel K 8 svn:date V 27 2014-09-28T21:12:23.024607Z K 7 svn:log V 1823 tty_rel_free() can be called more than once for the same tty so make sure that the tty is dequeued from 'tty_list' only the first time. The panic below was seen when a revoke(2) was issued on an nmdm device. In this case there was also a thread that was blocked on a read(2) on the device. The revoke(2) woke up the blocked thread which would typically return an error to userspace. In this case the reader also held the last reference on the file descriptor so fdrop() ended up calling tty_rel_free() via ttydev_close(). tty_rel_free() then tried to dequeue 'tp' again which led to the panic. panic: Bad link elm 0xfffff80042602400 prev->next != elm cpuid = 1 KDB: stack backtrace: db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfffffe00f9c90460 kdb_backtrace() at kdb_backtrace+0x39/frame 0xfffffe00f9c90510 vpanic() at vpanic+0x189/frame 0xfffffe00f9c90590 panic() at panic+0x43/frame 0xfffffe00f9c905f0 tty_rel_free() at tty_rel_free+0x29b/frame 0xfffffe00f9c90640 ttydev_close() at ttydev_close+0x1f9/frame 0xfffffe00f9c90690 devfs_close() at devfs_close+0x298/frame 0xfffffe00f9c90720 VOP_CLOSE_APV() at VOP_CLOSE_APV+0x13c/frame 0xfffffe00f9c90770 vn_close() at vn_close+0x194/frame 0xfffffe00f9c90810 vn_closefile() at vn_closefile+0x48/frame 0xfffffe00f9c90890 devfs_close_f() at devfs_close_f+0x2c/frame 0xfffffe00f9c908c0 _fdrop() at _fdrop+0x29/frame 0xfffffe00f9c908e0 sys_read() at sys_read+0x63/frame 0xfffffe00f9c90980 amd64_syscall() at amd64_syscall+0x2b3/frame 0xfffffe00f9c90ab0 Xfast_syscall() at Xfast_syscall+0xfb/frame 0xfffffe00f9c90ab0 --- syscall (3, FreeBSD ELF64, sys_read), rip = 0x800b78d8a, rsp = 0x7fffffbfdaf8, rbp = 0x7fffffbfdb30 --- CR: https://reviews.freebsd.org/D851 Reviewed by: glebius, ed Reported by: Leon Dang Sponsored by: Nahanni Systems MFC after: 1 week END K 10 svn:author V 3 gjb K 8 svn:date V 27 2014-09-28T21:13:30.028264Z K 7 svn:log V 77 Fix UFS label for the root filesystem. Sponsored by: The FreeBSD Foundation END K 10 svn:author V 3 gjb K 8 svn:date V 27 2014-09-28T21:15:30.222160Z K 7 svn:log V 132 Remove comments left in accidentally while testing, so the VM /etc/fstab is actually created. Sponsored by: The FreeBSD Foundation END K 10 svn:author V 3 pfg K 8 svn:date V 27 2014-09-28T21:20:20.489154Z K 7 svn:log V 648 Add strptime(3) support for %U and %W (take 2) Add support for the missing POSIX-2001 %U and %W features: the existing FreeBSD strptime code recognizes both directives and validates that the week number lies in the permitted range, but then simply discards the value. Initial support for the feature was written by Paul Green. David Carlier added the initial handling of tm_wday/tm_yday. Major credit goes to Andrey Chernov for detecting much of the brokenness, and rewriting/cleaning most of the code, making it much more robust. Tested independently with the strptime test from the GNU C library. PR: 137307 MFC after: 1 month Relnotes: yes END K 10 svn:author V 9 allanjude K 8 svn:date V 27 2014-09-28T21:44:23.563824Z K 7 svn:log V 350 Change the /var dataset in the default ZFS layout to have the ZFS property canmount=off so that /var/db/pkg and other such directories are part of the / dataset, and only /var/mail, /var/log, and /var/crash are excluded from the ZFS boot environment (beadm). PR: 193971 Approved by: jmg MFC after: ASAP Relnotes: yes Sponsored by: ScaleEngine Inc. END K 10 svn:author V 6 wblock K 8 svn:date V 27 2014-09-28T23:15:18.345057Z K 7 svn:log V 159 MFC r272137: Revised to better point to release notes and errata, security advisories, and be more specific about the -questions list. Approved by: re (gjb) END K 10 svn:author V 6 wblock K 8 svn:date V 27 2014-09-28T23:22:46.604097Z K 7 svn:log V 136 MFC r272137: Revised to better point to release notes and errata, security advisories, and be more specific about the -questions list. END K 10 svn:author V 3 gjb K 8 svn:date V 27 2014-09-28T23:22:55.751398Z K 7 svn:log V 166 Remove the UFS label from the root filesystem since it is added by mkimg(1) as a gpt label, consistent with the fstab(5) entry. Sponsored by: The FreeBSD Foundation END K 10 svn:author V 6 dteske K 8 svn:date V 27 2014-09-29T00:35:12.390411Z K 7 svn:log V 1177 Use snprintf(3) in place of unbounded sprintf(3) (prevent buffer overflow). Use adequately sized buffer for error(s) (512 -> PATH_MAX + 512). Fix the following style(9) nits while here: - distfetch.c uses PATH_MAX while distextract.c uses MAXPATHLEN; standardize on one (PATH_MAX) - Move $FreeBSD$ from comment to __FBSDID() - Sort included headers (alphabetically, sys/* at top) - Add missing header includes (e.g., for getenv(3), calloc(3)/malloc(3)/free(3), and atoi(3); for strdup(3), strrchr(3), strsep(3), and strcmp(3); for isspace(3); and for chdir(2), etc.) - Remove rogue newline at end of distfetch.c - Don't declare variables in if-, while-, or other statement NB: To prevent masking of prior declarations atop function - Perform stack alignment for variable declarations - Add missing function prototype for count_files() in distextract.c - Break out single-line multivariable-declarations NB: Aligning similarly-named variables with one-char difference(s) NB: Minimizes diffs and makes future diffs more clear - Use err(3) family of functions (requires s/int err;/int retval;/g) Reviewed by: nwhitehorn, julian END K 10 svn:author V 3 gjb K 8 svn:date V 27 2014-09-29T01:17:42.898749Z K 7 svn:log V 137 Comment cleanup in panic() message when mkimg(1) does not support the requested disk image format. Sponsored by: The FreeBSD Foundation END K 10 svn:author V 3 des K 8 svn:date V 27 2014-09-29T08:57:36.172633Z K 7 svn:log V 274 Instead of failing when neither PAM_TTY nor PAM_RHOST are available, call login_access() with "**unknown**" as the second argument. This will allow "ALL" rules to match. Reported by: Tim Daneliuk Tested by: dim@ PR: 83099 193927 MFC after: 3 days END K 10 svn:author V 2 bz K 8 svn:date V 27 2014-09-29T10:36:14.582613Z K 7 svn:log V 165 Hopefully fix build breakage with gcc passing void * instead of char * to "%s" format string after r272280. PR: 83099 193927 MFC after: 3 days X-MFC with: r272280 END K 10 svn:author V 4 will K 8 svn:date V 27 2014-09-29T15:05:23.199727Z K 7 svn:log V 668 Search for the nearest PORTSDIR where Mk/bsd.ports.mk exists, from .CURDIR. This will only take effect if PORTSDIR is not set, as previously supported. Use .if exists(), for four specific possibilities relative to .CURDIR: ., .., ../.., and ../../.. The fourth possibility is primarily in case ports ever grows a third level. If none of these paths exist, fall back to the old default of /usr/ports. This removes the need to set PORTSDIR explicitly (or via wrapper script) if one is running out of a ports tree that is not in /usr/ports, but in a home directory. Reviewed by: bapt, bdrewery (older version) CR: D799 MFC after: 1 week Sponsored by: Spectra Logic END K 10 svn:author V 6 marcel K 8 svn:date V 27 2014-09-29T16:24:48.744094Z K 7 svn:log V 613 o In image_set_size(), don't truncate the swap file. It isn't holding the entire image data anymore. o Prepare for changes to image_write(): partitioning schemes call image_write() to fill in the sectors they reserved from themselves. Since we're talking about a handful of sectors, there's no need to have them in the swap file. Change struct chunk to accomodate for that. A chunk now has a type. That type can be "zeroes", "file" or "memory". o Flesh out the cleanup function: iterate over the chunks and close or free the corresponding data container. Free the chunk as well. END K 10 svn:author V 6 rstone K 8 svn:date V 27 2014-09-29T17:38:50.607155Z K 7 svn:log V 381 Fix integer truncation in affecting systat -ifstat The "systat -ifstat" command was using a u_int to store byte counters. With a 10Gbps or faster interface, this overflows within the default 5 second refresh period. Switch to using a uint64_t across the board, which matches the size used for all counters as of r263102. PR: 182448 MFC after: 1 week Sponsored by: Sandvine Inc END K 10 svn:author V 6 rstone K 8 svn:date V 27 2014-09-29T17:51:39.250996Z K 7 svn:log V 375 Ensure that ixl_flush() uses a defined register on VFs In some code that is shared between the ixl(4) and ixlv(4) drivers, a macro hard-coded a register offset that was not valid on ixlv devices. Fix this by having each driver define a variable that contains the correct offset. Reviewed by: Eric Joyner MFC after: 3 days Sponsored by: Sandvine Inc END K 10 svn:author V 4 jkim K 8 svn:date V 27 2014-09-29T19:53:38.885383Z K 7 svn:log V 24 Import ACPICA 20140926. END K 10 svn:author V 4 jkim K 8 svn:date V 27 2014-09-29T19:54:17.128536Z K 7 svn:log V 21 Tag ACPICA 20140926. END K 10 svn:author V 7 delphij K 8 svn:date V 27 2014-09-29T21:45:57.088122Z K 7 svn:log V 387 When setting environment variables in the atrun script, use the "export foo=bar" form instead of "foo=bar; export foo" since the former allows the shell to catch variable names that are not valid shell identifiers. This will cause /bin/sh to exit with an error (which gets mailed to the at user) and it will not run the script. Obtained from: OpenBSD (r1.63 millert) MFC after: 3 days END K 10 svn:author V 7 delphij K 8 svn:date V 27 2014-09-29T21:54:46.390029Z K 7 svn:log V 129 Sigh, remove a line that needs to be removed along with previous commit. Submitted by: mjg MFC after: 3 days X-MFC-with: 272288 END K 10 svn:author V 3 mjg K 8 svn:date V 27 2014-09-29T23:59:19.433905Z K 7 svn:log V 272 Use bzero instead of explicitly zeroing stuff in do_execve. While strictly speaking this is not correct since some fields are pointers, it makes no difference on all supported archs and we already rely on it doing the right thing in other places. No functional changes. END K 10 svn:author V 8 bdrewery K 8 svn:date V 27 2014-09-30T00:06:53.966740Z K 7 svn:log V 55 Document [EPERM] for UNIX sockets. MFC after: 2 weeks END K 10 svn:author V 6 adrian K 8 svn:date V 27 2014-09-30T03:19:29.248323Z K 7 svn:log V 1478 Add initial support for the AR9485 CUS198 / CUS230 variants. These variants have a few differences from the default AR9485 NIC, namely: * a non-default antenna switch config; * slightly different RX gain table setup; * an external XLNA hooked up to a GPIO pin; * (and not yet done) RSSI threshold differences when doing slow diversity. To make this possible: * Add the PCI device list from Linux ath9k, complete with vendor and sub-vendor IDs for various things to be enabled; * .. and until FreeBSD learns about a PCI device list like this, write a search function inspired by the USB device enumeration code; * add HAL_OPS_CONFIG to the HAL attach methods; the HAL can use this to initialise its local driver parameters upon attach; * copy these parameters over in the AR9300 HAL; * don't default to override the antenna switch - only do it for the chips that require it; * I brought over ar9300_attenuation_apply() from ath9k which is cleaner and easier to read for this particular NIC. This is a work in progress. I'm worried that there's some post-AR9380 NIC out there which doesn't work without the antenna override set as I currently haven't implemented bluetooth coexistence for the AR9380 and later HAL. But I'd rather have this code in the tree and fix it up before 11.0-RELEASE happens versus having a set of newer NICs in laptops be effectively RX deaf. Tested: * AR9380 (STA) * AR9485 CUS198 (STA) Obtained from: Qualcomm Atheros, Linux ath9k END K 10 svn:author V 6 adrian K 8 svn:date V 27 2014-09-30T03:29:46.140294Z K 7 svn:log V 48 Remove this stuff - it's no longer needed here. END K 10 svn:author V 5 gavin K 8 svn:date V 27 2014-09-30T05:36:16.061306Z K 7 svn:log V 228 Make clear in the ipheth(4) hardware notes that this driver is for the tethering functionality only. Add a "bugs" section to give a pointer to usbconfig set_config if the device isn't automatically detected. MFC after: 3 days END K 10 svn:author V 6 adrian K 8 svn:date V 27 2014-09-30T05:50:34.796863Z K 7 svn:log V 63 Add a missing file from the last commit. Noticed by: jhibbits END K 10 svn:author V 5 kevlo K 8 svn:date V 27 2014-09-30T07:28:31.131519Z K 7 svn:log V 83 When plen != ulen, it should only be checked when this is UDP. Spotted by: bryanv END K 10 svn:author V 3 pjd K 8 svn:date V 27 2014-09-30T11:51:32.410335Z K 7 svn:log V 13 Style fixes. END K 10 svn:author V 3 pjd K 8 svn:date V 27 2014-09-30T12:00:50.497793Z K 7 svn:log V 213 Be prepared that set_dumper() might fail even when resetting it or prefix the call with (void) to document that we intentionally ignore the return value - no way to handle an error in case of device disappearing. END K 10 svn:author V 2 ae K 8 svn:date V 27 2014-09-30T13:15:19.190636Z K 7 svn:log V 116 Remove redundant call to ipsec_getpolicybyaddr(). ipsec_hdrsiz() will call it internally. Sponsored by: Yandex LLC END K 10 svn:author V 6 andrew K 8 svn:date V 27 2014-09-30T13:32:45.801454Z K 7 svn:log V 71 Make sure __ARM_ARCH is defined in sysreg.h by including acle-compat.h END K 10 svn:author V 6 emaste K 8 svn:date V 27 2014-09-30T13:56:32.492048Z K 7 svn:log V 74 MFC r272105: Remove duplicated header content Approved by: re (gjb, kib) END K 10 svn:author V 6 emaste K 8 svn:date V 27 2014-09-30T15:05:27.616636Z K 7 svn:log V 203 MFC r271432: Merge upstream Clang rev 205331 debuginfo crash fix: Debug info: fix a crash when emitting IndirectFieldDecls, which were previously not handled at all. rdar://problem/16348575 END K 10 svn:author V 6 emaste K 8 svn:date V 27 2014-09-30T15:07:06.801472Z K 7 svn:log V 54 MFC r271433: Add clang patch corresponding to r271432 END K 10 svn:author V 6 emaste K 8 svn:date V 27 2014-09-30T15:10:40.697771Z K 7 svn:log V 840 MFC Clang debug info crash fix 271282: Merge Clang debug info crash fix rev 200797: Debug info: fix a crasher when when emitting debug info for not-yet-completed templated types. getTypeSize() needs a complete type. rdar://problem/15931354 271283: Add clang patch for r271282 Note that r271282 contains only the src change from Clang rev 200797. This patch file includes two follow-on changes to the test case, which do not apply to the copy in the FreeBSD tree. Upstream Clang revisions: 200797: Debug info: fix a crasher when when emitting debug info for not-yet-completed templated types. getTypeSize() needs a complete type. rdar://problem/15931354 200798: Simplify testcase from r200797 some more. 200805: Further simplify r200797 and add an explanatory comment. PR: 193347 END K 10 svn:author V 7 rodrigc K 8 svn:date V 27 2014-09-30T15:27:49.215410Z K 7 svn:log V 193 Fix pkill unit tests. - use daemon(8) to write out a pid file for processes, and check for for the existence of that file after killing processes - use explict named parameters to jail(8) END K 10 svn:author V 8 melifaro K 8 svn:date V 27 2014-09-30T16:10:49.371242Z K 7 svn:log V 53 Project to implement fast,modular multipath routing. END K 10 svn:author V 7 rodrigc K 8 svn:date V 27 2014-09-30T16:14:02.651169Z K 7 svn:log V 178 MFC r271875, r272046, r272049, r272056 -> Reference the test case "packs" to fix warnings -> Delete mentions to removed manpages -> Minor fixes to docs Approved by: re (gjb) END K 10 svn:author V 3 mav K 8 svn:date V 27 2014-09-30T16:17:12.901063Z K 7 svn:log V 310 Fix old iSCSI initiator to work with new CAM locking. This switches code to using xpt_scan() routine, irrelevant to locking. Using xpt_action() directly requires knowledge about higher level locks, that SIM does not need to have. This code is obsoleted, but that is not a reason to crash. MFC after: 3 days END K 10 svn:author V 6 emaste K 8 svn:date V 27 2014-09-30T16:36:50.157273Z K 7 svn:log V 212 MFC r271549 (nwhitehorn): Create /tmp/bsdinstall_etc even if we aren't starting the installer so that dhclient can write resolv.conf when used from the live environment. PR: 176078 Approved by: re END K 10 svn:author V 6 royger K 8 svn:date V 27 2014-09-30T16:46:45.531396Z K 7 svn:log V 1705 msi: add Xen MSI implementation This patch adds support for MSI interrupts when running on Xen. Apart from adding the Xen related code needed in order to register MSI interrupts this patch also makes the msi_init function a hook in init_ops, so different MSI implementations can have different initialization functions. Sponsored by: Citrix Systems R&D xen/interface/physdev.h: - Add the MAP_PIRQ_TYPE_MULTI_MSI to map multi-vector MSI to the Xen public interface. x86/include/init.h: - Add a hook for setting custom msi_init methods. amd64/amd64/machdep.c: i386/i386/machdep.c: - Set the default msi_init hook to point to the native MSI initialization method. x86/xen/pv.c: - Set the Xen MSI init hook when running as a Xen guest. x86/x86/local_apic.c: - Call the msi_init hook instead of directly calling msi_init. xen/xen_intr.h: x86/xen/xen_intr.c: - Introduce support for registering/releasing MSI interrupts with Xen. - The MSI interrupts will use the same PIC as the IO APIC interrupts. xen/xen_msi.h: x86/xen/xen_msi.c: - Introduce a Xen MSI implementation. x86/xen/xen_nexus.c: - Overwrite the default MSI hooks in the Xen Nexus to use the Xen MSI implementation. x86/xen/xen_pci.c: - Introduce a Xen specific PCI bus that inherits from the ACPI PCI bus and overwrites the native MSI methods. - This is needed because when running under Xen the MSI messages used to configure MSI interrupts on PCI devices are written by Xen itself. dev/acpica/acpi_pci.c: - Lower the quality of the ACPI PCI bus so the newly introduced Xen PCI bus can take over when needed. conf/files.i386: conf/files.amd64: - Add the newly created files to the build process. END K 10 svn:author V 6 royger K 8 svn:date V 27 2014-09-30T16:49:17.695754Z K 7 svn:log V 308 xen: add the Xen implementation of pci_child_added method Add the Xen specific implementation of pci_child_added to the Xen PCI bus. This is needed so FreeBSD can register the devices it finds with the hypervisor. Sponsored by: Citrix Systems R&D x86/xen/xen_pci.c: - Add the Xen pci_child_added method. END K 10 svn:author V 6 royger K 8 svn:date V 27 2014-09-30T16:53:08.794299Z K 7 svn:log V 269 xen: make xen balloon a driver that depends on xenstore This is done so we can prevent the Xen Balloon driver from attaching before xenstore is setup. Sponsored by: Citrix Systems R&D dev/xen/balloon/balloon.c: - Make xen balloon a driver that depends on xenstore. END K 10 svn:author V 2 bz K 8 svn:date V 27 2014-09-30T16:55:19.791301Z K 7 svn:log V 492 MFC 271745,271834,271899,271900,271913,272022,272023: Revert changes to shared code of the ixl and ixlv drivers to allow for easier long-term maintainability. Restrict the drivers to building on amd64 for now as it is only tested on that 64bit architecture. Just depend on PCI and neither INET nor INET6; also make sure we can build individual drivers and they do not depend on each other anymore. Reviewed by: gnn, eric.joyner intel.com PR: 193824 Approved by: re (gjb) END K 10 svn:author V 6 royger K 8 svn:date V 27 2014-09-30T17:14:11.937952Z K 7 svn:log V 212 xen: move xenstore devices Move xenstore related devices (xenstore.c and xenstore_dev.c) from xen/xenstore to dev/xen/xenstore. This is just code motion, no functional changes. Sponsored by: Citrix Systems R&D END K 10 svn:author V 3 jhb K 8 svn:date V 27 2014-09-30T17:19:07.241717Z K 7 svn:log V 217 Explicitly return None for negative event indices. Prior to this, eventat(-1) would return the next-to-last event causing the back button to cycle back to the end of an event source instead of stopping at the start. END K 10 svn:author V 3 jhb K 8 svn:date V 27 2014-09-30T17:26:34.189870Z K 7 svn:log V 75 Only define the full inm_print() if KTR_IGMPV3 is enabled at compile time. END K 10 svn:author V 6 royger K 8 svn:date V 27 2014-09-30T17:27:56.664698Z K 7 svn:log V 763 xen: defer xenstore initialization until xenstored is started The xenstore related devices in the kernel cannot be started until xenstored is running, which will happen later in the Dom0 case. If start_info_t doesn't contain a valid xenstore event channel, defer all xenstore related devices attachment to later. Sponsored by: Citrix Systems R&D dev/xen/xenstore/xenstore.c: - Prevent xenstore from trying to attach it's descendant devices if xenstore is not initialized. - Add a callback in the xenstore interrupt filter that will trigger the plug of xenstore descendant devices on the first received interrupt. This interrupt is generated when xenstored attaches to the event channel, and serves as a notification that xenstored is running. END K 10 svn:author V 6 royger K 8 svn:date V 27 2014-09-30T17:31:04.122715Z K 7 svn:log V 609 xen: convert the xenstore user-space char device to a newbus device Convert the xenstore user-space device (/dev/xen/xenstore) to a device using the newbus interface. This allows us to make the device initialization dependant on the initialization of xenstore itself in the kernel. Sponsored by: Citrix Systems R&D dev/xen/xenstore/xenstore.c: - Convert to a newbus device, this removes the xs_dev_init function. xen/xenstore/xenstore_internal.h: - Remove xs_dev_init prototype. dev/xen/xenstore/xenstore.c: - Don't call xs_dev_init anymore, the device will attach itself when xenstore is started. END K 10 svn:author V 6 royger K 8 svn:date V 27 2014-09-30T17:37:26.227095Z K 7 svn:log V 489 xen: add xenstored user-space device This device is used by the user-space daemon that runs xenstore (xenstored). It allows xenstored to map the xenstore memory page, and reports the event channel xenstore is using. Sponsored by: Citrix Systems R&D dev/xen/xenstore/xenstored_dev.c: - Add the xenstored character device that's used to map the xenstore memory into user-space, and to report the event channel used by xenstore. conf/files: - Add the device to the build process. END K 10 svn:author V 6 royger K 8 svn:date V 27 2014-09-30T17:38:21.438072Z K 7 svn:log V 389 xen/balloon: fix accounting of current memory pages on PVH Using realmem on PVH is not realiable, since in this case the realmem value is computed from Maxmem, which contains the higher memory address found. Use HYPERVISOR_start_info->nr_pages instead, which is set by the hypervisor and contains the exact number of memory pages assigned to the domain. Sponsored by: Citrix Systems R&D END K 10 svn:author V 6 royger K 8 svn:date V 27 2014-09-30T17:41:16.431969Z K 7 svn:log V 1849 xen: fix blkback pushing responses before releasing internal resources Fix a problem where the blockback driver could run out of requests, despite the fact that we allocate enough request and reqlist structures to satisfy the maximum possible number of requests. The problem was that we were sending responses back to the other end (blockfront) before freeing resources. The Citrix Windows driver is pretty agressive about queueing, and would queue more I/O to us immediately after we sent responses to it. We would run into a resource shortage and stall out I/O until we freed resources. It isn't clear whether the request shortage condition was an indirect cause of the I/O hangs we've been seeing between Windows with the Citrix PV drivers and FreeBSD's blockback, but the above problem is certainly a bug. Sponsored by: Spectra Logic Submitted by: ken Reviewed by: royger dev/xen/blkback/blkback.c: - Break xbb_send_response() into two sub-functions, xbb_queue_response() and xbb_push_responses(). Remove xbb_send_response(), because it is no longer used. - Adjust xbb_complete_reqlist() so that it calls the two new functions, and holds the mutex around both calls. The mutex insures that another context can't come along and push responses before we've freed our resources. - Change xbb_release_reqlist() so that it requires the mutex to be held instead of acquiring the mutex itself. Both callers could easily hold the mutex while calling it, and one really needs to hold the mutex during the call. - Add two new counters, accessible via sysctl variables. The first one counts the number of I/Os that are queued and waiting to be pushed (reqs_queued_for_completion). The second one (reqs_completed_with_error) counts the number of requests we've completed with an error status. END K 10 svn:author V 7 delphij K 8 svn:date V 27 2014-09-30T17:54:57.596252Z K 7 svn:log V 409 MFC r271493,271688-271689,271696,271854,272139-272143: Import HyperV Key-Value Pair (KVP) driver and daemon code by Microsoft, many thanks for their continued support of FreeBSD. While I'm there, also implement a new build knob, WITHOUT_HYPERV to disable building and installing of the HyperV utilities when necessary. The HyperV utilities are only built for i386 and amd64 targets. Approved by: re (gjb) END K 10 svn:author V 6 tuexen K 8 svn:date V 27 2014-09-30T18:17:28.916279Z K 7 svn:log V 198 If the checksum coverage field in the UDPLITE header is the length of the complete UDPLITE packet, the packet has full checksum coverage. SO fix the condition. Reviewed by: kevlo MFC after: 3 days END K 10 svn:author V 7 delphij K 8 svn:date V 27 2014-09-30T18:50:45.734783Z K 7 svn:log V 182 Fix a mismerge in r260183 which prevents snapshot zvol devices being removed and re-instate the fix in r242862. Reported by: Leon Dang , smh MFC after: 3 days END K 10 svn:author V 3 gnn K 8 svn:date V 27 2014-09-30T20:18:10.124396Z K 7 svn:log V 312 cleanup: code style fixes Remove trailing whitespaces and tabs. Enclose value in return statements in parentheses. Use tabs after #define. Do not skip comparison with 0/NULL in boolean expressions. Submitted by: Andrew Rybchenko Sponsored by: Solarflare Communications, Inc. END K 10 svn:author V 6 tuexen K 8 svn:date V 27 2014-09-30T20:29:58.830083Z K 7 svn:log V 107 UDPLite requires a checksum. Therefore, discard a received packet if the checksum is 0. MFC after: 3 days END K 10 svn:author V 6 brooks K 8 svn:date V 27 2014-09-30T20:32:27.314439Z K 7 svn:log V 213 MFC the altera_atse.4. This was intended to have been merged along with r256752. This commit contains the altera_atse.4 portions of r256752, r257656, and r270268. Approved by: re (gjb) Sponsored by: DARPA/AFRL END K 10 svn:author V 3 gnn K 8 svn:date V 27 2014-09-30T20:36:07.333501Z K 7 svn:log V 204 Make size of Tx and Rx rings configurable Required size of event queue is calculated now. Submitted by: Andrew Rybchenko Sponsored by: Solarflare Communications, Inc. END K 10 svn:author V 3 gnn K 8 svn:date V 27 2014-09-30T20:38:36.590941Z K 7 svn:log V 169 Update SolarFlare driver manual page with new tunables. Submitted by: Andrew Rybchenko Sponsored by: Solarflare Communications, Inc. END K 10 svn:author V 3 gnn K 8 svn:date V 27 2014-09-30T20:43:21.422665Z K 7 svn:log V 184 The patch allows to check state of the software Tx queues at run time. Submitted by: Andrew Rybchenko Sponsored by: Solarflare Communications, Inc. END K 10 svn:author V 3 gnn K 8 svn:date V 27 2014-09-30T20:57:25.039199Z K 7 svn:log V 442 Support tunable to control Tx deferred packet list limits Also increase default for Tx queue get-list limit. Too small limit results in TCP packets drops especiall when many streams are running simultaneously. Put list may be kept small enough since it is just a temporary location if transmit function can't get Tx queue lock. Submitted by: Andrew Rybchenko Sponsored by: Solarflare Communications, Inc. END K 10 svn:author V 7 delphij K 8 svn:date V 27 2014-09-30T21:03:17.389890Z K 7 svn:log V 328 MFC r271526: MFV r271510: Enforce 4K as smallest indirect block size (previously the smallest indirect block size was 1K but that was never used). This makes some space estimates more accurate and uses less memory for some data structures. Illumos issue: 5141 zfs minimum indirect block size is 4K Approved by: re (gjb) END K 10 svn:author V 3 ian K 8 svn:date V 27 2014-09-30T21:28:05.104043Z K 7 svn:log V 178 When building the lists of available memory, actually honor the exclusion flags, like the comment says it does. Pointy hat: ian Submitted by: Svatopluk Kraus END K 10 svn:author V 3 ian K 8 svn:date V 27 2014-09-30T23:01:11.734852Z K 7 svn:log V 153 Return the actual baud rate programmed in the hardware rather than 115200. This allows the "3wire" entry in /etc/ttys (with no speed specified) to work. END K 10 svn:author V 6 marcel K 8 svn:date V 27 2014-09-30T23:16:03.033351Z K 7 svn:log V 609 Implement image_write(): For every sector in the buffer, find the chunk that contains it and break it up (if it's not already a memory chunk) so that we have have a new chunk for every sector being written. We don't write to chunks for type file, because we may not be able to write and we don't want to clobber partition data. We don't try to combine adjacent chunks of type memory into a single one. It doesn't seem to have any significant upsides other than reducing syscall overhead. The downsides includes "excessive" copying and memory fragmantation. Without any kind of benchmarking, simplicity wins. END K 10 svn:author V 2 np K 8 svn:date V 27 2014-09-30T23:16:26.917458Z K 7 svn:log V 156 Test for absence of M_NOFREE before attempting to purge the mbuf's tags. This will leave more state intact should the assertion go off. MFC after: 1 month END K 10 svn:author V 6 marcel K 8 svn:date V 27 2014-09-30T23:29:06.840223Z K 7 svn:log V 313 Implement image_data(): we now simply call image_chunk_find() to get the chunk that contains the block and we effectively have the answer right away. Account for the as-of-yet non-existent case of having multiple chunks of type zeroes adjacent to each other and having to handle chunk-crossing -- hence the loop. END