summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* MFC r290161:kp2015-11-111-0/+7
| | | | | | | | | | | | | | | pf: Fix IPv6 checksums with route-to. When using route-to (or reply-to) pf sends the packet directly to the output interface. If that interface doesn't support checksum offloading the checksum has to be calculated in software. That was already done in the IPv4 case, but not for the IPv6 case. As a result we'd emit packets with pseudo-header checksums (i.e. incorrect checksums). This issue was exposed by the changes in r289316 when pf stopped performing full checksum calculations for all packets. Submitted by: Luoqi Chen
* MFC 284324,290164:jhb2015-11-112-15/+30
| | | | | | | | | | | | | | | | | | Workaround debuggers that try to read the full 32-bit words holding selectors in trapframes. 284324: Ensure that the upper 16 bits of segment registers manually saved in trapframes are cleared by explicitly pushing a zero and then moving the segment register into the low 16 bits. Certain Intel processors treat a push of a segment register as a move of the segment register into the low 16 bits leaving the upper 16 bits of the word in the stack unchanged. 290164: Use movw instead of movl (or plain mov) when moving segment registers into memory. This is a nop on clang's assembler, but some assemblers complain if the size suffix is incorrect.
* MFC r290047:kib2015-11-101-2/+6
| | | | | Do not perform read-ahead for BA_CLRBUF request when we are low on memory or when dirty buffer queue is too large.
* MFC r290480bapt2015-11-102-4/+3
| | | | | | | | | Protecting against rm -rf / is now POSIXLY_CORRECT per posix 1003.1 edition 2013. No need anymore to disable the protection if one set the POXILY_CORRECT environment variable. Reviewed by: imp Differential Revision: https://reviews.freebsd.org/D4092
* MFC r290441:hselasky2015-11-092-1/+3
| | | | | | | | | | Fix for unaligned IP-header. The mbuf length fields must be set before m_adj() is called else m_adj() will not always adjust the mbuf and an unaligned read exception can trigger inside the network stack. This can happen on platforms where unaligned reads are not supported. Adjust a length check to include the 2-byte ethernet alignment while at it.
* MFC r266930,r289225:ngie2015-11-091-9/+6
| | | | | | | | | | | | | | | | | | | | | | | | r266930 (by jmg): convert to using the _daddr_t types like newfs was... Put the superblock in the correct possition for UFS2... There is a bug in FFS that if we don't put it here (for UFS2), it will forcefully relocate the superblock, and I believe cause data loss.. I have a fix for that, but w/ how many releases are broken, we won't be able to switch to the better _FLOPPY (block 0) for this for a while.. r289225 (by sbruno): makefs(8) leaves sblock.fs_providersize uninitialized (zero) that can be easily checked with dumpfs(8). This may lead to other problems, f.e. geom_label kernel module sanity checks do not like zero fs_old_size value and skips such UFS1 file system while tasting (fs_old_size derives from sblock.fs_providersize). PR: 203704 Submitted by: eugen@grosbein.net Reviewed by: marcel
* MFC r290268:ngie2015-11-091-4/+4
| | | | | | | | Sync minor whitespace / type changes in ffs_csum_swap and ffs_sb_swap with src/sys/ufs/ffs/ffs_bswap.c@1.39 Obtained from: NetBSD Sponsored by: EMC / Isilon Storage Division
* MFC r290264:ngie2015-11-091-2/+4
| | | | | | | | | | | Limit isoLevel to 1 and 2 to avoid segfaulting when isoLevel is set to 3 by dereferencing a NULL function pointer Add some asserts to ensure that isolevel is always either 1 or 2. PR: 203645 Reported by: Thomas Schmitt <scdbackup@gmx.net> Sponsored by: EMC / Isilon Storage Division
* MFC r290265,r290267,r290270:ngie2015-11-093-4/+134
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r290265: Add testcases for -t cd9660 -o isolevel=[1-3] -- -o isolevel=1 currently fails because of path comparison issues, so mark it as an expected failure. -- -o isolevel=3 is not implemented, so expect it to fail as an out of bounds value [*]. PR: 203645 Sponsored by: EMC / Isilon Storage Division r290267: Clean up mtree keyword support a slight bit and add a few more default keywords - Parameterize the mtree keywords as $DEFAULT_MTREE_KEYWORDS - Test with the extra mtree keywords, `mode,gid,uid`. - Add a note about mtrees with time support not working with makefs right now Sponsored by: EMC / Isilon Storage Division r290270: Add testcases for -t ffs -o version=[12] Verify the filesystem type using dumpfs. Add preliminary support for NetBSD (needs to be validated) Sponsored by: EMC / Isilon Storage Division
* MFC r289902:ngie2015-11-091-0/+27
| | | | | | | Add a regression test for r289899 to validate rockridge encoding of device types Sponsored by: EMC / Isilon Storage Division
* MFC r289899:ngie2015-11-091-4/+5
| | | | | | | | | | | | | Import the fix from NetBSD kern/48852 (sic) to fix rockridge encoding of device nodes In particular, use st_rdev (the device type), not st_dev (the device inode), and fix the comparison to be correct with the st_rdev field Bug 203648 Submitted by: Thomas Schmitt <scdbackup@gmx.net> Coverity CID: 1008927 Sponsored by: EMC / Isilon Storage Division
* MFC r289203,r290180:ngie2015-11-094-5/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r289203 (by adrian): makefs: introduce a new option to specify what to round the resulting image up to. From ticket: While trying to run FreeBSD/mips on some device having very small flash media, one is forced to compress file system with mkulzma(8) utility. It is desirable to specify small UFS block/fragment sizes like 4096/512 bytes for makefs(8) and big compression block size like 65535 bytes to mkulzma at the same time. Then one obtains very good comression ratios (like 75% and more) but faces the following problem. geom_uncompress kernel module reports GEOM provider size rounded up to its compression block size. Generally, this changes original media size and now it fails to match the size of embedded UFS file system that leads to other problems, f.e. geom_label kernel module does not like this and skips the file system while tasting the GEOM and looking for UFS label. This makes it impossible to refer to the file system using known UFS label instead of something like /dev/map/rootfs.uncompress. The following patch introduces new command line option "-r roundup" for makefs that makes it round up the image to specified block size. Hence, geom_uncompress does not change GEOM media size for images rounded that way and geom_label accepts such GEOMs just fine. With the patch applied, one can use following commands: $ makefs -t ffs -r 65536 -o bsize=4096,fsize=512,label=flash optimization=space fs.img fs $ mkulzma -s 65536 -o fs.img.ulzma fs.img PR: bin/203707 Submitted by: <eugen@grosbein.net> r290180: Follow up to roundup feature addition in r289203 - Rename -r to -R to avoid the clash with makefs -r in NetBSD - Note that -R is an FFS-specific option because it's not implemented in cd9660 today - Rename the roundup variable to "roundup-size" in the manpage and help text for consistency with other variables. - Bump .Dd (missed in r289203) PR: 203707 Differential Revision: https://reviews.freebsd.org/D3959 Reviewed by: adrian (earlier patch), emaste Sponsored by: EMC / Isilon Storage Division
* MFC r289687,r289693:ngie2015-11-091-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | r289687: Free buffer before returning from cd9660_write_path_table to avoid leaking it after returning from the function PR: 203647 Submitted by: Thomas Schmitt <scdbackup@gmx.net> Coverity CID: 978431 Sponsored by: EMC / Isilon Storage Division r289693: Unbreak makefs -t cd9660 after r289687 buffer_head needs to be freed -- not buffer Detected by jemalloc, i.e. running makefs failed the arena assert because my copy of malloc on CURRENT is compiled with the default !MALLOC_PRODUCTION asserts on Pointyhat to: ngie PR: 203647 Sponsored by: EMC / Isilon Storage Division
* MFC r289739,r289743,r289897,r289901:ngie2015-11-096-0/+630
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r289739: Correctly reintroduce the rudimentary smoke tests I botched up in r289684 Sponsored by: EMC / Isilon Storage Division r289743: Revise "create_test_inputs" to simplify the file structure as these testcases don't need to be nested as much as bin/ls/ls_tests.sh do when verifying ls -a, ls -A, etc. This allows the tests to make all paths relative to the top of the temporary directory instead of always tacking on $ATF_TMPDIR, thus complicating things unnecessarily Create non-empty files in create_test_inputs as well now, similar to create_test_inputs2 in bin/ls/ls_tests.sh Compare the input files to the output file contents using diff where possible: - Skip over the fifo comparison for now because it always fails - Skip over the symlink comparison on cd9660 because it always fails today Sponsored by: EMC / Isilon Storage Division r289897: Add more cd9660/FFS makefs testcases General changes: - Parameterize out the mount command. - Use mtree to verify the contents of an image (check_image_contents) instead of using diff (diff verifies content, but not file metadata). - Move common logic out to functions (common_cleanup, mount_image, check_image_contents) - Add stub testcases for makefs -D (crashes with SIGBUS, similar to bug # 192839) - Add a note about the ISO-9660 and rockridge specs - Add testcases that exercise: -- Creating disk images from an mtree and multiple directories. -- -F flag use (not really an extensive testcase right now) cd9660-specific test changes: - Remove an XXX comment about symlinks; I forgot that non-rockridge images turn symlinks into hardlinks. - Add testcases that exercise: -- -o allow-deep-trees -- -o allow-max-name stub testcase (doesn't seem to be implemented in makefs) -- -o preparer (existence in image; not conformance to spec) -- -o publisher (existence in image; not conformance to spec) -- -o rockridge (basic) Sponsored by: EMC / Isilon Storage Division r289901: Remove an ls -l I was using for debugging Sponsored by: EMC / Isilon Storage Division
* MFC r289441:ngie2015-11-0911-991/+639
| | | | | | | | | | | | Integrate tools/test/posixshm and tools/regression/posixshm into the FreeBSD test suite as tests/sys/posixshm Some other highlights: - Convert the testcases over to ATF - Don't use hardcoded paths to /tmp (which violate the ATF/kyua samdbox); use mkstemp to generate temporary paths for non-SHM_ANON shm objects. Sponsored by: EMC / Isilon Storage Division
* MFC r290177:ngie2015-11-092-0/+3
| | | | | | | | | | Integrate contrib/netbsd-tests/lib/libc/rpc into the FreeBSD test suite as lib/libc/rpc This testcase requires rpcbind be up in running; otherwise the testcases will time out and be skipped Sponsored by: EMC / Isilon Storage Division
* MFC r290179:ngie2015-11-091-2/+1
| | | | | | Remove a set but unused variable in __getgroupmembership to fix a gcc 4.9+ warning Sponsored by: EMC / Isilon Storage Division
* MFC r290190,r290251:ngie2015-11-092-18/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | r290190: Fix compiler warnings with open_to_operation.c Other sidenotes: - Remove unused variables with main(..) - Convert errx/exit with -1 to errx/exit with 1 - Fix a bogus test in try_directory_open (expected_errno == expected_errno -> errno == expected_errno) [*] - Fix some warnings related to discarded qualifiers - Remove a bogus else-statement at the end of check_mmap_exec(..) in the successful case. mmap(2), POSIX, Linux, etc all don't state what the behavior is when mixing O_WRONLY + PROT_EXEC, so assume success for now to get the test program to pass again. PR: 201286 [*] Submitted by: David Binderman <dcb314@hotmail.com> Sponsored by: EMC / Isilon Storage Division r290251: Use nitems(x) instead of sizeof(x)/sizeof(x[0]) Sponsored by: EMC / Isilon Storage Division
* MFC r289903:ngie2015-11-091-0/+4
| | | | | | Add libvmmapi to OptionalObsoleteFiles.inc when MK_BHYVE == no Sponsored by: EMC / Isilon Storage Division
* MFC r290184:ngie2015-11-091-2/+1
| | | | | | | Fix a set but not used variable warning flagged by gcc 4.9 with lib/libc/ssp/h_readlink Sponsored by: EMC / Isilon Storage Division
* MFC r290182:ngie2015-11-091-5/+5
| | | | | | | | | | | | | Fix rtsold's usage message - Remove -a from the usage message example dealing with specific interfaces. -a only makes sense when not specifying an interface, such that it's to be run on all interfaces - Fix the pidfile option (it's -p, not -P) - Change `interfaces` to `interface` to match the manpage PR: 173744 Sponsored by: EMC / Isilon Storage Division
* MFC r290178:ngie2015-11-091-1/+2
| | | | | | | | | Fix GOST engine cipher linkage by adding e_gost_err.c to SRCS so it picks up undefined symbols, like "ERR_load_GOST_strings" PR: 184805 Submitted by: Ivan IvanZhdanov <ivan.zhdanov@gmail.com> Sponsored by: EMC / Isilon Storage Division
* MFC r289487:ngie2015-11-094-0/+26
| | | | | | | | | | Integrate contrib/netbsd-tests/bin/dd into the FreeBSD test suite as bin/dd/tests Ensure fdescfs is mounted on /dev/fd/ for the length testcase as it's used in validating the characters read from /dev/zero Sponsored by: EMC / Isilon Storage Division
* MFC r290024,290073:delphij2015-11-092-5/+12
| | | | | | | | | | | In gunzip(1), treat trailing garbage as a warning and not an error. This allows scripts to distinguish it between real fatal errors, for instance a CRC mismatch. Update manual page for the behavior change. PR: bin/203873 Submitted by: Eugene Grosbein <eugen grosbein net>
* MFC: r290329,r290336ache2015-11-081-4/+24
| | | | | | | | | | | | | PR: 204230 r290329: Use meaningful errno for ssize_t overflow in read(). Catch size_t overflow in malloc(). r290336: Check for (old|new)size + 1 overflows off_t.
* MFC: r289863,r289931,r290110,r290230,r290231,r290232ache2015-11-088-23/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r290232: Microoptimize. r290231: Addition to prev. commit. In some edge cases fp->_p can be changed in _sseek(), recalculate. r290230: Don't seek to the end if write buffer is empty (in append modes). PR: 204156 r290110: Add _flags2 per jhb@ suggestion since no room left in _flags. Rewrite O_APPEND flag checking using new __S2OAP flag. r289931: According to POSIX, a write operation shall start at the current size of the stream (if mode had 'a' as the first character). r289863: Since no room left in the _flags, reuse __SALC for O_APPEND. It helps to remove _fcntl() call from _ftello() and optimize seek position calculation in _swrite().
* MFC 289636:jhb2015-11-063-4/+4
| | | | Switch pl_child_pid from int to pid_t.
* MFC 288902:jhb2015-11-061-18/+23
| | | | | | | Include additional info in ptrace(2) KTR traces: - The new PC value and signal passed to PT_CONTINUE, PT_DETACH, PT_SYSCALL, and PT_TO_SC[EX]. - The system call code returned via PT_LWPINFO.
* MFC 288452,289719:jhb2015-11-061-12/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | 288452: Most error cases in i915_gem_do_execbuffer() jump to one of two labels to release resources (such as unholding pages) when errors occur. Some recently added error checks return immediately instead of jumping to a label resulting in leaks. Fix these to jump to a label to do cleanup instead. Note that stable/9 does not have the "recently added" error checks, but it does have some older error checks (that were are no longer present in stable/10 and head) that have the same bug and this fixes those instead. 289719: i915_gem_do_execbuffer() holds the pages backing each relocation region for various reasons while executing user commands. After these commands are completed, the pages backing the relocation regions are unheld. Since relocation regions do not have to be page aligned, the code in validate_exec_list() allocates 2 extra page pointers in the array of held pages populated by vm_fault_quick_hold_pages(). However, the cleanup code that unheld the pages always assumed that only the buffer size / PAGE_SIZE pages were used. This meant that non-page aligned buffers would not unheld the last 1 or 2 pages in the list. Fix this by saving the number of held pages returned by vm_fault_quick_hold_pages() for each relocation region and using this count during cleanup.
* MFC r290195:hselasky2015-11-061-6/+11
| | | | | | | Reduce the DWC OTG interrupt load by not reading all the host channel status registers for every interrupt. Check a common host channel status interrupt register first, then conditionally read the individual host channel status registers.
* MFC 288371:jhb2015-11-051-1/+0
| | | | | | | | | | | | | | | | When XSAVE support was added on amd64, the FPU save area was moved out of 'struct pcb' and into a variable-sized region after the structure. The kgdb code currently only reads the pcb. It does not read in the FPU save area but instead passes stack garbage as the FPU's saved context. Fixing this would mean determining the proper size of the area and fetching it. However, this state is not saved for running CPUs in stoppcbs[], so the callback would also have to know to ignore those pcbs. Instead, just remove the call since it is of limited usefulness. It results in kgdb reporting the state of the FPU/SIMD registers in userland, not their current values in the kernel. In particular, it does not report the correct state for any code in the kernel which does use the FPU and would report incorrect values in that case.
* MFC 288372:jhb2015-11-051-3/+3
| | | | Use EFI page size constants instead of hardcoding 4096.
* MFC 287934:jhb2015-11-051-1/+1
| | | | | | | | | | | | | The EFI boot loader allocates a single chunk of contiguous memory to hold the kernel, modules, and any other loaded data. This memory block is relocated to the kernel's expected location during the transfer of control from the loader to the kernel. The GENERIC kernel on amd64 has recently grown such that a kernel + zfs.ko no longer fits in the default staging size. Bump the default size from 32MB to 48MB to provide more breathing room. PR: 201679
* MFC r276450smh2015-11-051-1/+2
| | | | | | Correct zpool list displaying invalid EXPANDSZ for unavailable pool vdevs Sponsored by: Multiplay
* MFC r273118 (by mjg)smh2015-11-051-3/+6
| | | | | | Don't take devmtx unnecessarily in vn_isdisk. Sponsored by: Multiplay
* MFC r289637emax2015-11-051-9/+43
| | | | | | | check boundaries while parsing SDP responses Reported by: hps Reviewed by: hps
* MFC r289746:ngie2015-11-051-1/+2
| | | | | | | | | Exit with a user-friendly message instead of tripping an assert if vm_activate_cpu(..) fails when called from fbsdrun_addcpu(..) PR: 203884 Reviewed by: grehan Submitted by: William Orr <will@worrbase.com>
* MFC r289913,r289916:ngie2015-11-052-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | r289913: Use 't' (bits) not 'i' (bytes) for describing MRIE (aka "Method of Reporting Informational Exceptions") in the SCSI mode database as the field described in X3T10/94-190 (revision 4; page 2, table 1) [1.] is 4 bits wide, not 4 bytes wide 1. http://ftp.t10.org/ftp/t10/document.94/94-190r4.pdf Bug 200619 Reported by: Michael Baptist <mbaptist@isilon.com> Submitted by: Lars Skodje <lskodje@isilon.com> Sponsored by: EMC / Isilon Storage Division r289916: Limit RESOLUTION_MAX to INT_MAX, not UINT_MAX (all spelled out) so the mode value isn't always clipped to -1 when (resolution * size) == 32, which would have been the case with values => {4i,32b,32t}. This seems to have been broken in r64382. PR: 200619 Reported by: Michael Baptist Submitted by: Lars Skodje Sponsored by: EMC / Isilon Storage Division
* MFC r290116:ae2015-11-041-0/+8
| | | | | | Check the size of data available in mbuf before using it. PR: 202667
* MFC r288600:hrs2015-11-042-19/+47
| | | | | | | | | | | | - Schedule DAD for IN6_IFF_TENTATIVE addresses in nd6_timer(). This catches cases that DAD probes cannot be sent because of IFF_UP && !IFF_DRV_RUNNING. - nd6_dad_starttimer() now calls nd6_dad_ns_output(), instead of calling it before nd6_dad_starttimer(). - Do not release an entry in dadq when a duplicate entry is being added.
* MFC r288575:hrs2015-11-043-4/+20
| | | | Add IFCAP_LINKSTATE support.
* MFC r285914, r289029 and r289560:hselasky2015-11-032-82/+81
| | | | | | | | | | | | | | - Move the remainder of host controller capability registers reading from xhci_start_controller() to xhci_init(). These values don't change at run- time so there's no point of acquiring them on every USB_HW_POWER_RESUME instead of only once during initialization. In r276717, reading the first couple of registers in question already had been moved as a prerequisite for the changes in that revision. - Identify ASMedia ASM1042A controllers. - Use NULL instead of 0 for pointers. - Add quirks for USB 3.0 PCI devices. PR: 203650
* MFC r289661:kib2015-11-031-1/+1
| | | | | Mark struct thread zone as type-stable, to prevent dereference of the freed memory in the locks spin loops.
* MFC r289660,r289664:kib2015-11-031-2/+13
| | | | | Do not allow to execute ptrace(PT_TRACE_ME) when the process is already traced or when there is no parent which can trace the process.
* MFC r289658:kib2015-11-031-1/+1
| | | | | No need to dereference struct proc to pids when comparing processes for equality.
* MFC r287413: Minor code cleanups (no functional changes).dteske2015-11-021-14/+12
|
* MFC r287390: Bump version for altered long-opts processingdteske2015-11-021-1/+1
|
* MFC r287389: Simplify long-option processingdteske2015-11-021-14/+10
|
* MFC r287385: Bump version for prior fix (SVN r287381)dteske2015-11-021-1/+1
|
* MFC r287384:dteske2015-11-021-1/+1
| | | | Style: Remove whitespace around brackets from function syntax options
OpenPOWER on IntegriCloud