summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
...
* MFC 317729:n_hibma2017-05-262-6/+6
| | | | | | | Silence sysctl in startup scripts. This makes 'stop' behave consistently with 'start' in the script. Also use $SYSCTL instead of sysctl for consistency within that script.
* MFC r314935 (thompsa):gjb2017-05-261-1/+2
| | | | | | | Change ec2.conf to use the pkg tool from a chroot rather than trying to bootstrap it and fail from the livecd readonly filesystem. Sponsored by: The FreeBSD Foundation
* MFC 315335,315336,315496,315497,315500,315502,315504,315509,315523,315524,jhb2017-05-262-44/+157
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 315525: Decode more system call arguments in truss. 315335: Remove duplicate argument from linux_stat64() decoding. 315336: Automate the handling of QUAD_ALIGN and QUAD_SLOTS. Previously, the offset in a system call description specified the array index of the start of a system call argument. For most system call arguments this was the same as the index of the argument in the function signature. 64-bit arguments (off_t and id_t values) passed on 32-bit platforms use two slots in the array however. This was handled by adding (QUAD_SLOTS - 1) to the slot indicies of any subsequent arguments after a 64-bit argument (though written as ("{ Quad, 1 }, { Int, 1 + QUAD_SLOTS }" rather than "{ Quad, 1 }, { Int, 2 + QUAD_SLOTS - 1 }"). If a system call contained multiple 64-bit arguments (such as posix_fadvise()), then additional arguments would need to use 'QUAD_SLOTS * 2' but remember to subtract 2 from the initial number, etc. In addition, 32-bit powerpc requires 64-bit arguments to be 64-bit aligned, so if the effective index in the array of a 64-bit argument is odd, it needs QUAD_ALIGN added to the current and any subsequent slots. However, if the effective index in the array of a 64-bit argument was even, QUAD_ALIGN was omitted. This approach was messy and error prone. This commit replaces it with automated pre-processing of the system call table to do fixups for 64-bit argument offsets. The offset in a system call description now indicates the index of an argument in the associated function call's signature. A fixup function is run against each decoded system call description during startup on 32-bit platforms. The fixup function maintains an 'offset' value which holds an offset to be added to each remaining system call argument's index. Initially offset is 0. When a 64-bit system call argument is encountered, the offset is first aligned to a 64-bit boundary (only on powerpc) and then incremented to account for the second argument slot used by the argument. This modified 'offset' is then applied to any remaining arguments. This approach does require a few things that were not previously required: 1) Each system call description must now list arguments in ascending order (existing ones all do) without using duplicate slots in the register array. A new assert() should catch any future descriptions which violate this rule. 2) A system call description is still permitted to omit arguments (though none currently do), but if the call accepts 64-bit arguments those cannot be omitted or incorrect results will be displated on 32-bit systems. 315496: Decode the arguments passed to cap_fcntls_get() and cap_fcntls_limit(). 315497: Decode arguments passed to posix_fadvise(). 315500: Decode file flags passed to *chflags*(). While here, decode arguments passed to fchflags() and chflagsat(). 315502: Decode flock() operation. 315504: Decode arguments passed to getfsstat(). Note that this does not yet decode the statfs structures returned by getfsstat(). 315509: Decode arguments passed to kldsym() and kldunloadf(). This does not currently decode the kld_sym_lookup structure passed to kldsym(). 315523: Add a Sizet type for 'size_t' values and use it instead of Int. Various size_t arguments were previously decoded as Int values instead which would have truncated values above 2^31 on 64-bit systems. 315524: Decode arguments to madvise(). 315525: Improve decoding of last arguments to ioctl() and sendto(). Decode the last argument to ioctl() as a pointer rather than an int. Eventually this could use 'int' for the _IOWINT() case and pointers for all others. The last argument to sendto() is a socklen_t value, not a pointer.
* MFC r318755: Extend libblacklist support with new action typeslidl2017-05-265-11/+81
| | | | | | | | | | | | | | | | | | The original blacklist library supported two notification types: - failed auth attempt, which incremented the failed login count by one for the remote address - successful auth attempt, which reset the failed login count to zero for that remote address When the failed login count reached the limit in the configuration file, the remote address would be blocked by a packet filter. This patch implements a new notification type, "abusive behavior", and accepts, but does not act on an additional type, "bad username". It is envisioned that a system administrator will configure a small list of "known bad usernames" that should be blocked immediately. Sponsored by: The FreeBSD Foundation
* MFC r318748:gjb2017-05-261-0/+7
| | | | | | | Honor WITHOUT_TFTP for check-old* and delete-old* targets. PR: 217949 Sponsored by: The FreeBSD Foundation
* MFC r318523, r318631:royger2017-05-261-43/+37
| | | | | xen/netfront: don't drop the ring RX lock with inconsistent ring state xen/netfront: don't drop the RX lock in xn_rxeof
* MFC r318520:royger2017-05-261-4/+7
| | | | xen/blkfront: correctly detach a disk with active users
* MFC r318516: Fix time handling in cv_timedwait_hires().mav2017-05-261-3/+8
| | | | | pthread_cond_timedwait() receives absolute time, not relative. Passing wrong time there caused two threads of zdb to spin in a tight loop.
* MFC r318527truckman2017-05-252-6/+16
| | | | | | | | | | | | | | | | | Fix the queue delay estimation in PIE/FQ-PIE when the timestamp (TS) method is used. When packet timestamp is used, the "current_qdelay" keeps storing the last queue delay value calculated in the dequeue function. Therefore, when a burst of packets arrives followed by a pause, the "current_qdelay" will store a high value caused by the burst and stick to that value during the pause because the queue delay measurement is done inside the dequeue function. This causes the drop probability calculation function to calculate high drop probability value instead of zero and prevents the burst allowance mechanism from working properly. Fix this problem by resetting "current_qdelay" inside the drop probability calculation function when the queue length is zero and TS option is used. Submitted by: Rasool Al-Saadi <ralsaadi@swin.edu.au>
* MFC r318314stevek2017-05-251-0/+10
| | | | | | | | | Add information to open(2) man page about the O_VERIFY flag. PR: 219262 Reviewed by: bjk wblock Approved by: sjg (mentor) Obtained from: Juniper Networks, Inc.
* MFC r318511truckman2017-05-252-42/+76
| | | | | | | | | | | | | | | | The result of right shifting a negative signed value is implementation defined. On machines without arithmetic shift instructions, zero bits may be shifted in from the left, giving a large positive result instead of the desired divide-by power-of-2. Fix this by operating on the absolute value and compensating for the possible negation later. Reverse the order of the underflow/overflow tests and the exponential decay calculation to avoid the possibility of an erroneous overflow detection if p is a sufficiently small non-negative value. Also check for negative values of prob before doing the exponential decay to avoid another instance of of right shifting a negative value. Tested by: Rasool Al-Saadi <ralsaadi@swin.edu.au>
* MFC r318655:dim2017-05-253-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull in r302416 from upstream llvm trunk (by Martin Storsjö): [ARM] Clear the constant pool cache on explicit .ltorg directives Multiple ldr pseudoinstructions with the same constant value will reuse the same constant pool entry. However, if the constant pool is explicitly flushed with a .ltorg directive, we should not try to reference constants in the previous pool any longer, since they may be out of range. This fixes assembling hand-written assembler source which repeatedly loads the same constant value, across a binary size larger than the pc-relative fixup range for ldr instructions (4096 bytes). Such assembler source already uses explicit .ltorg instructions to emit constant pools with regular intervals. However if we try to reuse constants emitted in earlier pools, they end up out of range. This makes the output of the testcase match what binutils gas does (prior to this patch, it would fail to assemble). Differential Revision: https://reviews.llvm.org/D32847 This should fix "out of range pc-relative fixup value" errors, when compiling certain ARM inline assembly for www/webkit-gtk[23]. Reported by: mmel
* Further expand the r318785 entry, noting vfs.zfs.debugflags can begjb2017-05-251-1/+4
| | | | | | | set in loader.conf(5), whereas vfs.zfs.debug_flags could not. Submitted by: avg Sponsored by: The FreeBSD Foundation
* Document r312790, EC2 IPv6 by default.gjb2017-05-251-0/+4
| | | | Sponsored by: The FreeBSD Foundation
* Document r318660, Amazon EFS support in the NFS client.gjb2017-05-251-0/+4
| | | | Sponsored by: The FreeBSD Foundation
* Document r318660, various NFS client fixes.gjb2017-05-251-1/+7
| | | | Sponsored by: The FreeBSD Foundation
* Document r318785, vfs.zfs.debug_flags -> vfs.zfs.debugflags rename.gjb2017-05-251-1/+4
| | | | Sponsored by: The FreeBSD Foundation
* MFC r318863:jlh2017-05-251-1/+1
| | | | Replace stale handbook URL with the proper one.
* MFC r318014, r318091, r318125, and r318263.np2017-05-253-9/+50
| | | | | | | | | | | | | | | | | | | | | | | r318014: cxgbe(4): Fixes related to the knob that controls link autonegotiation. - Do not leak the adapter lock in sysctl_autoneg. - Accept only 0 or 1 as valid settings for autonegotiation. - A fixed speed must be requested by the driver when autonegotiation is disabled otherwise the firmware will reject the l1cfg command. Use the top speed supported by the port for now. r318091: cxgbe(4): Do not assume that if_qflush is always followed by inteface-down. r318125: Adjust whitespace and fix a comment. No functional change. r318263: cxgbe(4): netmap-only interrupts for a VI do not have an associated rxq or ofld_rxq and should be ignored by vi_intr_iq. Sponsored by: Chelsio Communications
* MFC r318646:gjb2017-05-252-5/+6
| | | | | | | Allow PORTSDIR to be overridden in the pkg-stage target. PR: 218393 Sponsored by: The FreeBSD Foundation
* MFC r318599, r318643:gjb2017-05-251-18/+16
| | | | | | | | | | | | | r318599 (bjk): Updates for efivar.8 Fix spelling, appease igor and mandoc -Tlint, and adopt the language style to be more consistent with our corpus. r318643: Correct the "first appeared in" version for efivar(8). Sponsored by: The FreeBSD Foundation
* MFC r317702, r317847, r318307np2017-05-259-294/+640
| | | | | | | | | | | | | | | | | | | | | | | r317702: cxgbe(4): Support routines for Tx traffic scheduling. - Create a new file, t4_sched.c, and move all of the code related to traffic management from t4_main.c and t4_sge.c to this file. - Track both Channel Rate Limiter (ch_rl) and Class Rate Limiter (cl_rl) parameters in the PF driver. - Initialize all the cl_rl limiters with somewhat arbitrary default rates and provide routines to update them on the fly. - Provide routines to reserve and release traffic classes. r317847: cxgbe(4): The Tx scheduler initialization either works or doesn't. It doesn't need a refresh in either case. r318307: cxgbe(4): Avoid an out of bounds access when an attempt to unbind a tx queue from a traffic class fails. Sponsored by: Chelsio Communications
* MFC r308737, r308779:gjb2017-05-251-2/+2
| | | | | | | | | | | | r308737: Pass SWAPSIZE in env(1) when invoking mk-vmimage.sh, otherwise mkimg(1) does not create the second partition after r307008. r308779: Pass SWAPSIZE in env(1) when invoking mk-vmimage.sh for the vm-image target, missed in r308737. Sponsored by: The FreeBSD Foundation
* MFC r318479:markj2017-05-251-1/+1
| | | | Don't bother enqueuing a page immediately before freeing it.
* MFC r318476, r318478:markj2017-05-252-3/+3
| | | | Fix up some kern_yield() usages.
* MFC r318124:np2017-05-251-0/+1
| | | | ip6_output runs with the inp lock held, just like ip_output.
* MFC r318191:markj2017-05-251-2/+2
| | | | Let ptracestop() suspend threads sleeping in an SBDRY section.
* MFC r317820 and r317837.np2017-05-253-2/+42
| | | | | | | | | | | | r317820: cxgbe(4): Update the list of PCIe devices claimed by the driver. At this point any board with a T6 should just work. r317837: cxgbe(4): Update the VF device ids too. This should have been part of r317820. Sponsored by: Chelsio Communications
* MFC r317041:np2017-05-252-10/+58
| | | | | | | | cxgbe: Add tunables to control the number of LRO entries and the number of rx mbufs that should be presorted before LRO. There is no change in default behavior. Sponsored by: Chelsio Communications
* MFC r318603: nm: document 'r' symbol typeemaste2017-05-251-1/+3
| | | | | PR: 219245 Sponsored by: The FreeBSD Foundation
* MFC r316971:np2017-05-253-8/+39
| | | | | | | | | | | cxgbe: Add a tunable to configure the SGE time scaler, which is available starting with T6. The values in the timer holdoff registers are multiplied by the scaling factor before use. dev.<nexus>.<n>.holdoff_timers shows the final values of the timers in microseconds. Sponsored by: Chelsio Communications
* MFC r316506:np2017-05-241-9/+12
| | | | cxgbe(4): Program the global RSS key once instead of once per ifnet.
* MFC r316172:np2017-05-241-1/+2
| | | | | | cxgbe: Don't call t4_edc_err_read for errors not related to the EDCs. Sponsored by: Chelsio Communications
* MFC r309725:np2017-05-242-2/+6
| | | | | | | cxgbe(4): netmap does not set IFCAP_NETMAP in an ifnet's if_capabilities any more (since r307394). Do it in the driver instead. Sponsored by: Chelsio Communications
* MFC r317759:asomers2017-05-241-9/+6
| | | | | | | | | | Fix memory leaks in camcontrol Reported by: Coverity CID: 1331674, 1331675 Reviewed by: ken Sponsored by: Spectra Logic Corp Differential Revision: https://reviews.freebsd.org/D10588
* MFC r307380:np2017-05-241-1/+1
| | | | Fix typo in comments.
* MFC r317755, r317758asomers2017-05-245-39/+35
| | | | | | | | | | | | | | | | | | | | | | | | | | | | r317755: Various Coverity fixes in ifconfig(8) * Exit early if kldload(2) fails (1011259). This is the only change that affects ifconfig's behavior. * Close memory and resource leaks (1305624, 1305205, 1007100) * Mark usage() as _Noreturn (1305806, 1305750) * Fix some dereference after null checks (1011474, 270774) Reported by: Coverity CID: 1305624, 1305205, 1007100, 1305806, 1305750, 1011474, CID: 270774, 1011259 Reviewed by: cem Sponsored by: Spectra Logic Corp Differential Revision: https://reviews.freebsd.org/D10587 r317758: Unbreak ifconfig for mlx4en(4) after r317755 ifconfig doesn't correctly infer mlx interfaces' module names, so it will attempt to load the mlx(4) module even when not necessary. Reported by: rstone X-MFC-With: 317755 Sponsored by: Spectra Logic Corp
* MFC r307008:np2017-05-242-1/+2
| | | | | | | Add the ability to override the size of the swap partition when building VM images. The default continues to be 1G. Sponsored by: Chelsio Communications
* MFC r313318:np2017-05-242-46/+50
| | | | | | | | | | | cxgbe(4): Allow tunables that control the number of queues to be set to '-n' to tell the driver to create _up to_ 'n' queues if enough cores are available. For example, setting hw.cxgbe.nrxq10g="-32" will result in 16 queues if the system has 16 cores, 32 if it has 32. There is no change in the default number of queues of any type. Sponsored by: Chelsio Communications
* MFC r317715:asomers2017-05-241-2/+1
| | | | | | | | ifconfig displays ND6_IFF_NO_DAD as "IGNORELOOP" PR: 218958 Reviewed by: kristof Differential Revision: https://reviews.freebsd.org/D10543
* MFC 318401jpaetzel2017-05-241-1/+1
| | | | | | | | | | Increase the number of LUNs this hardware can support. Experimentally we know this value works, but the hardware may support an even higher value. PR: 213876 Reported by: J.Catrysse@proximedia.be
* MFC r313346:np2017-05-244-6/+9
| | | | | | | | cxgbe/t4_tom: Fix CLIP entry refcounting on the passive side. Every IPv6 connection being handled by the TOE should have a reference on its CLIP entry. Sponsored by: Chelsio Communications
* MFC r314131:np2017-05-241-2/+2
| | | | | | | Avoid NULL dereference in a couple of sysctl handlers in ibcore. iw_cxgbe sets ib_device->dma_device to NULL (since r311880). Sponsored by: Chelsio Communications
* MFC r311880, r314167, r316118, r316571, r316573, r316580, r316936-r316937,np2017-05-248-58/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r316940, and r317410. r311880: The iw_cxgb and iw_cxgbe drivers should not use a FreeBSD device_t where a linuxkpi style device is expected. If OFED/linuxkpi actually starts using this field then we'll have to figure out whether to create fake devices for these drivers or have linuxkpi deal with NULL device. This mismatch was first reported as part of D6585. r314167: cxgbe/iw_cxgbe: Minor changes for T6. r316118: cxgbe/iw_cxgbe: T6 has no limit on the amount of memory that can be registered in one ib_reg_phys_mr. r316571: cxgbe/iw_cxgbe: Remove bad cast that resulted in incorrect length for memory regions larger than 4GB. r316573: cxgbe/iw_cxgbe: Replace a magic constant with something more readable (and accurate). T4 and later have an extra bit for page shift so the maximum page size is 8TB (shift of 12 + 31) instead of 128MB (12 + 15). This saves space in the chip's PBL (physical buffer list) when registering very large memory regions. r316580: cxgbe/iw_cxgbe: Remove another bad cast. This should have been included in r316571. r316936: cxgbe/iw_cxgbe: hw supports 64K (not 32K) Protection Domains. r316937: cxgbe/iw_cxgbe: Report accurate page_size_cap in ib_query_device. r316940: cxgbe/iw_cxgbe: Report the actual values of various parameters as configured by the firmware. r317410: cxgbe/iw_cxgbe: Pull in some updates to c4iw_wait_for_reply from the iw_cxgb4 Linux driver. Sponsored by: Chelsio Communications
* MFC r316774:np2017-05-243-0/+19
| | | | | | cxgbe: Query some more RDMA related parameters from the firmware. Sponsored by: Chelsio Communications
* MFC r312346:loos2017-05-241-2/+6
| | | | | | | | Set the the wp_disabled flag when asked to. While here, add the missing new line. Sponsored by: Rubicon Communications, LLC (Netgate)
* Document r318763, EARLY_AP_STARTUP enabled by default.gjb2017-05-241-0/+6
| | | | Sponsored by: The FreeBSD Foundation
* MFC r316854: rename vfs.zfs.debug_flags to vfs.zfs.debugflagsavg2017-05-241-1/+5
| | | | | Since this is a stable branch vfs.zfs.debug_flags sysctl is also kept. The corresponing tunable could never work.
* MFC r316853: dtrace: fix normalization of stddev aggregationavg2017-05-241-0/+2
| | | | Sponsored by: Panzura
* MFC r316643: use msr 0xc001100c to discover multi-node AMD processorsavg2017-05-241-7/+14
|
OpenPOWER on IntegriCloud