aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* readelf: decode LA48 and ASG_DISABLE feature flagsEd Maste2021-02-101-0/+2
| | | | | | Sponsored by: The FreeBSD Foundation (cherry picked from commit e79b51e2b2e35d6256a1ef5311ce02ec4032d21f)
* MFC 7071734fae6019d1e3e44daf7deb4478582081cc:Cy Schubert2021-02-097-216/+215
| | | | | | | | | | | | | Indentation cleanup resulting from the cleanup of #ifdefs. The conscious decision was made not to perform any indentation or whitespace cleanup while cleaning out old redunant #ifdefs. The reason for this was to avoid confusing future readers of history and diffs with cosmetic changes, making bisection of any possible bugs introduced more difficult. This commit cleans up the whitespace detritus left behind from the previous #ifdef cleanup commits. (cherry picked from commit 7071734fae6019d1e3e44daf7deb4478582081cc)
* MFC 4cd1807c7d2a67b633dd0c0bfde15091543a2514:Cy Schubert2021-02-0999-1801/+1795
| | | | | | | | | | | Retire the K&R/STD C __P prototype declarations. In the old days when K&R C and STD C were each in use a workaround (read hack) was required to allow the same code to work on each without modification. All C compilers support STD C. We can finally put the __P prototype to rest. (cherry picked from commit 4cd1807c7d2a67b633dd0c0bfde15091543a2514)
* rtld: Fix null-pointer dereferenceDavid Chisnall2021-02-091-2/+4
| | | | (cherry picked from commit 43d44842aef3972cc86ce673e84e31f372257b15)
* amd64 GENERIC: compile in mlx5en(4)Konstantin Belousov2021-02-091-0/+9
| | | | (cherry picked from commit 5832a3e398642f721381dc2bdc8e954ae43c17a7)
* cpucontrol(8): Fix display.Konstantin Belousov2021-02-091-1/+1
| | | | (cherry picked from commit 856789c123d69de86684c5aa1ad8a53427dd47fc)
* WITH_OFED build option: fixKonstantin Belousov2021-02-093-5/+5
| | | | (cherry picked from commit ff975f15d86001d5b948ab538de1e4aca852d2f5)
* nfs client: block vnode_pager_setsize() calls from nfscl_loadattrcache in ↵Konstantin Belousov2021-02-091-2/+7
| | | | | | | nfs_write (cherry picked from commit aa8c1f8d84d2638a354e71f9593e978d00878243) (cherry picked from commit bd01a69f4836994b50b492883fb5367db41fb506)
* elf: add some definitions for i386 and amd64 relocationsKonstantin Belousov2021-02-091-0/+14
| | | | (cherry picked from commit f7d181543fd96a89b84878ddb2d5ac010fadd9b8)
* x86 vdso gettc: Add RDTSCP supportKonstantin Belousov2021-02-091-1/+23
| | | | | | | Tested by: pho (cherry picked from commit cd240c9cf100bec3def38ceb4a320611b1d02693) (cherry picked from commit 523d94dbeab5ccb1cce21b8cad350b700c3d01b2)
* x86 vdso gettc: eliminate duplicated code in ifunc selectors.Konstantin Belousov2021-02-091-22/+65
| | | | | | Tested by: pho (cherry picked from commit 5bf4bafd13a4044b7c3d2e8246684a597c6f2134)
* x86 vdso gettc: reorganize ifunctions.Konstantin Belousov2021-02-091-21/+47
| | | | | | Tested by: pho (cherry picked from commit de898cb96042a026ef703d81aea6cdf1ffce8f32)
* tsc: add RDTSCP or faster variants of get_timecount()Konstantin Belousov2021-02-091-1/+31
| | | | | | | | Tested by: pho (cherry picked from commit 9e680e4005b77e3028d28377ee3722a5260f4422) (cherry picked from commit a013e285dfd6b89b1908ca13febb0fdb0a7f3b1f) (cherry picked from commit 9f47eeffa3cfdcb512e2011fb00fc23c7c1a7d75)
* Add ddb 'show timecounter' command.Konstantin Belousov2021-02-091-0/+30
| | | | (cherry picked from commit 36bcc44e2c578dd016940c9c5068c348e1d77f99)
* x86 busdma_bounce: use malloc_domainset_aligned(9).Konstantin Belousov2021-02-091-10/+10
| | | | | | Tested by: pho (cherry picked from commit f3ea417f96b011a7eb4f43e3142e572833287ef4)
* Implement malloc_domainset_aligned(9).Konstantin Belousov2021-02-092-2/+40
| | | | | | | | Tested by: pho (cherry picked from commit 3b15beb30b3b4ba17bae3d1d43c8c04ff862bb57) (cherry picked from commit 0781c79d4872a84a8ebeee3b5eb5520a682b8e7b) (cherry picked from commit 1ac7c34486ab9177c2472278739568d4607e1acc)
* jobc: rework detection of orphaned groups.Konstantin Belousov2021-02-095-160/+68
| | | | | | | | Tested by: pho For MFC, pg_jobc member is left in struct pgrp, but it is unused now. (cherry picked from commit 5844bd058aed6f3d0c8cbbddd6aa95993ece0189)
* kinfo_proc: move job-control related data collection into a new helper.Konstantin Belousov2021-02-091-35/+51
| | | | | | Tested by: pho (cherry picked from commit cf4f802e77a3a438bce5335b67c88ac6f0e21a6e)
* Lock proctree in around fill_kinfo_proc().Konstantin Belousov2021-02-092-0/+6
| | | | | | Tested by: pho (cherry picked from commit 4daea938130b4a219e01d678e9499f0bdb715f82)
* pgrp: Prevent use after free.Konstantin Belousov2021-02-093-14/+21
| | | | | | Tested by: pho (cherry picked from commit ef739c7373d8b3833979ad471b31cb9e215411fd)
* MFC 85d8d30f9f70:Hans Petter Selasky2021-02-081-1/+6
| | | | | | | | | | Don't allow allocating a new send tag on an INP which is being torn down. This fixes a potential send tag leak. Reviewed by: rrs@ Sponsored by: Mellanox Technologies // NVIDIA Networking (cherry picked from commit 85d8d30f9f7046f5e89295352ded49135b25fbe3)
* Add a manual page for axp(4) / AMD 10G Ethernet driverGordon Bergling2021-02-072-0/+226
| | | | | | | | Submitted by: Rajesh Kumar <rajesh1 dot kumar at amd dot com> Reviewed by: bcr, brueffer, rpokala Differential Revision: https://reviews.freebsd.org/D27800 (cherry picked from commit 1f73236b0302cdf47630c99687c2dfd4e514ab54)
* ukbd(4): Push LED events in ioctl handler rather than in xfer callbackVladimir Kondratyev2021-02-051-5/+5
| | | | | | | | | | | | | | | If LED state is set through evdev interface, than asynchronous nature of USB transfer callback can lead to change of order of events echoed back to userland as it causes LED events to be echoed with some lag. Fix that with echoing of LED events synchronously in ioctl handler. Reviewed by: hselasky Obtained from: sysutils/iichid MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D27750 (cherry picked from commit 30f34a519372ebce29c4439d0e6a7bc8c2df0566)
* ukbd(4): Do not serialize evdev key eventsVladimir Kondratyev2021-02-051-3/+6
| | | | | | | | | | | | | Unlike AT keyboards, HID devices are able to send all pc105 key states within a single report. Let evdev to transmit all key state changes within a single report too. Reviewed by: hselasky Obtained from: sysutils/iichid MFC after: 1 month Differential Revision: https://reviews.freebsd.org/D27749 (cherry picked from commit 769935a4edf8a75805000900d44a66ad5d2eaabe)
* psm(4): Always initialize Synaptics touchpad report range with defaultsVladimir Kondratyev2021-02-051-14/+9
| | | | | | | | | | | Otherwise libinput refuses to recoginize some Synaptics touchpads with "kernel bug: device has min == max on ABS_X" message in Xorg.log. PR: 251149 Reported-by: Jens Grassel <freebsd-ports@jan0sch.de> Tested-by: Jens Grassel <freebsd-ports@jan0sch.de> MFC-after: 2 weeks (cherry picked from commit 2ac1c1927258e649e3ca3269aea40fb4c63e2296)
* Correct description for kern.proc.proc_tdEd Maste2021-02-051-1/+1
| | | | | | | | | | | | | | kern.proc.proc_td returns the process table with an entry for each thread. Previously the description included "no threads", presumably a cut-and-pasteo in 2648efa621748. Description suggested by PauAmma. PR: 253146 MFC after: 3 days Sponsored by: The FreeBSD Foundation (cherry picked from commit edc374e7c41d3d9e28e0b3a76bc9ed021d7db571)
* Revert "opencrypto: Fix assignment of crypto completions to worker threads"Mark Johnston2021-02-041-4/+1
| | | | | | | | atomic_fetchadd_64 is not available on all platforms on stable/12. This reverts commit 10ed8ab4ab9bd0239f2913ac2f35af9b9f76221d. Reported by: Mark Millard
* ipfw(8) crashes when ext6hdr option is omittedEvgeniy Khramtsov2021-02-041-0/+1
| | | | | | | | | | | | Verify that the option is passed, error out if it's not. The problem can be trivially triggered with `ipfw add allow ext6hdr`. PR: 253169 Reviewed by: kp@ MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D28447 (cherry picked from commit 682c31db4ecfb8fc6cac0e8ad4945c03379ea3d1)
* bridge: fix STP roles and protos stringsJonah Caplan2021-02-041-6/+6
| | | | | | | | | | | Add the missing commas that got lost in e5539fb618cc7. PR: 252532 Reviewd by: kp@, donner@, freqlabs@ MFC after: 3 days Differential Revision: https://reviews.freebsd.org/D28425 (cherry picked from commit 88be0e11205e4a2dc77e29f7b4a2e82b8d7c9a5c)
* cron(8): set the environment variables of the user and/or login classAndrew Gierth2021-02-042-8/+31
| | | | | | | | | | | | Prior to processing environment variable set in the crontab file as those should be of higher precedent, pull in the user or login class environment. This is another supporting feature for allowing one to configure system-wide settings that may affect both regular cron jobs as well as services. This is the final part of D21481. (cherry picked from commit 7466dbd684879cbe8d034f388f0c7da703e00c31)
* service(8): set the environment of the "daemon" class before invokingAndrew Gierth2021-02-041-1/+1
| | | | | | | | | | As mentioned in r357562, this gives the user a single place to configure environment variables that need to be used for various services -- the "daemon" class -- for, e.g., configuring a system-wide HTTP proxy. This is a part of D21481. (cherry picked from commit 736a5a6d1dbbdae68eb102c2ba9c114aafd61821)
* init(8): set environment variables from the "daemon" class as wellAndrew Gierth2021-02-041-0/+1
| | | | | | | | | | | | | | Specifically, when running /etc/rc. This allows one to specify via login.conf(5) an environment that should be used when running services to ease, e.g., setting up env vars for an HTTP proxy consistently across cron and services alike. Future changes will extend cron(8)/service(8) to use environment vars pecified in login.conf(5) as well to promote a more cohesive experience. This is a part of D21481. (cherry picked from commit 21c1a93c048fdd9c276899e72dcb8dc93cc18e09)
* login.conf(5): set a default PATH for the daemon classAndrew Gierth2021-02-041-0/+6
| | | | | | | | | This is a sensible default used by, e.g., cron(8), and useful if one wanted to honor it. This is a part of D21481. (cherry picked from commit ed6f64ff8a90eee579fefef510329b5e9f1f9a65)
* Remove FirstBurstLength limit for software iSCSI.Alexander Motin2021-02-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | For hardware offload solicited data may potentially be handled more efficiently than unsolicited due to direct data placement. Or there can be some unsolicited write buffering limitations. It may create situations where FirstBurstLength limit is really useful. Software driver though has no those factors, having to do memcopy() any way and having no so hard limit on the temporary storage. Same time more active use of unsolicited transfers allows to avoid some of Ready To Transfer (R2T) PDU round-trip times and processing. This change effectively doubles from 64KB to 128KB the maximum size of write command that can be transferred within one link RTT. Tests of (64KB, 128KB] QD1 writes mixed with simultaneous QD8 reads over the same connection, increasing RTT, shows almost double write speed and half latency, while we should be able to afford few megabytes of RAM for additional buffering on a target these days. Sponsored by: iXsystems, Inc. (cherry picked from commit ff751ee05c939eceab25c26ad60b1d56f989aec9)
* newvers: tweak uname to be more usefulWarner Losh2021-02-031-2/+2
| | | | | | | | | | | | | | | | | | | | | | The current uname is branch-cXXXX-gHASH Three changes to make uname more useful. 1. Move from using git rev-list --count to git rev-lis --count --first-parent since that gives a better, incrementing number. 2. Report this count as 'nXXXXX' rather than 'cXXXXX' because c is part of a hash and we've changed the sematnics of XXXXX 3. Remove g to make HASH cut and pastable. Durting review, #1 & #3 had the largest consensus. There was a diversity of opinion on #2, but on the whole it was positive so I'll acknowledge the dissent, but move forward with something seems to have support since the dissent was all about what letter to use where I chose 'n'. MFC After: 3 days Reviewed by: rgrimes, emaste (earlier version) Differential Revision: https://reviews.freebsd.org/D28338 (cherry picked from commit 8a51f14a7833fd14e1f125e63a0af9d260dcd287)
* opencrypto: Fix assignment of crypto completions to worker threadsMark Johnston2021-02-031-1/+4
| | | | | | | | | | | | | | | | | | Since r336439 we simply take the session pointer value mod the number of worker threads (ncpu by default). On small systems this ends up funneling all completion work through a single thread, which becomes a bottleneck when processing IPSec traffic using hardware crypto drivers. (Software drivers such as aesni(4) are unaffected since they invoke completion handlers synchonously.) Instead, maintain an incrementing counter with a unique value per session, and use that to distribute work to completion threads. Reviewed by: cem, jhb Sponsored by: Rubicon Communications, LLC ("Netgate") Differential Revision: https://reviews.freebsd.org/D28159 (cherry picked from commit 98d788c867b9e1d7a7e290254443b87ea77d8ab1)
* pf: Improve pf_rule input validationKristof Provost2021-02-031-31/+41
| | | | | | | | | | | | Move the validation checks to pf_rule_to_krule() to reduce duplication. This also makes the checks consistent across different ioctls. Reported-by: syzbot+e9632d7ad17398f0bd8f@syzkaller.appspotmail.com Reviewed by: tuexen@, donner@ MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D28362 (cherry picked from commit 7a808c5ee3296fdb72d8e8bc6c7ad6f316a520ab)
* lualoader: position hyphens at the beginning of character classesKyle Evans2021-02-031-4/+4
| | | | | | | | | | According to the Lua 5.4 manual section 6.4.1 ("Patterns"), the interaction between ranges and classes is not defined and hyphens must be specified at either the beginning or the end of a set if they are not escaped. Move all such occurrences to the beginning. (cherry picked from commit b24872cf7b13314669ed2136c0262bb2eb007695)
* stand: lua: enhance lfs.dir() to speed up kernels_autodetectKyle Evans2021-02-032-3/+33
| | | | | | | | | | | | | | This eliminates a lot of stat() calls that happen when lualoader renders the menu with the default settings, and greatly speeds up rendering on my laptop. ftype is nil if loader/loader.efi hasn't been updated yet, falling back to lfs.attributes() to test. This is technically incompatible with lfs, but not in a particularly terrible way. (cherry picked from commit e25ee296c919d6567aa76058a7049eac974797fb)
* cxgb(4): Remove assumption of physically contiguous mbufs.Alexander Motin2021-02-033-36/+5
| | | | | | | | | | | | | | | | | | | Investigation of iSCSI target data corruption reports brought me to discovery that cxgb(4) expects mbufs to be physically contiguous, that is not true after I've started using m_extaddref() in software iSCSI for large zero-copy transmissions. In case of fragmented memory the driver transmitted garbage from pages following the first one due to simple use of pmap_kextract() for the first pointer instead of proper bus_dmamap_load_mbuf_sg(). Seems like it was done as some optimization many years ago, and at very least it is wrong in a world of IOMMUs. This patch just removes that optimization, plus limits packet coalescing for mbufs crossing page boundary, also depending on assumption of one segment per packet. Sponsored by: iXsystems, Inc. (cherry picked from commit 9dc7c250b8bd2d5e669c7633e189a700a02c0571)
* fstyp(8): fix exfat detectionConrad Meyer2021-02-021-10/+8
| | | | | | | | In the presence of high-level errors (spec violations, bad boot blocks checksum), report non-detection instead of detection. PR: 252787 (related, but does not fully address) (cherry picked from commit ddf61156132b610915325769cbb93ea11be0d433)
* fstyp(8): Show exFAT volume labels with -l flagConrad Meyer2021-02-026-12/+367
| | | | | | | | | | | | | | | | | | | | | | | | | | exfat is fundamentally the same design as fat32. The superblock differs marginally, and there are some additional optional features irrelevant to fstype(8); the structure of dirents has changed slightly to enable, among other things, larger files; the directory entries are no longer DOS 8.3 ASCII or local 8-bit encoding, but instead explicitly UCS-2-LE. (As a result, this change uses iconv to convert a found exfat volume label to the user's locale.) Locating the volume label is identical to FAT32: locate the root directory and walk through dirents until you find a volume label. Like FAT32, follow the FAT chain between root directory clusters as necessary. PR: 242225 Reported by: Victor Sudakov <vas AT sibptus.ru> (cherry picked from commit 85b4c344c8c69ff7993bc0ac833aaf9a8108b88d) fstyp(8): Fix WITHOUT_ICONV build Reported by: olivier (cherry picked from commit 5ab1cb52b21fdc5524bd970e9b5cdff21a5bcabf)
* ixl: Permit 802.1ad frames to pass though the chipLutz Donnerhacke2021-02-022-1/+49
| | | | | | | | | | | | | This patch is a quick hack to change the internal Ethertype used within the chip. All frames with this type are dropped silently. This patch allows you to overwrite the factory default 0x88a8, which is used by IEEE 802.1ad VLAN stacking. Reviewed by: kp, philip, brueffer Approved by: philip (mentor) Differential Revision: https://reviews.freebsd.org/D24179 (cherry picked from commit fa6662b3689eeb71cb63c2b230ca08e7342cabf0)
* marvell: ap806_clock: add missing frequency modesMarcin Wojtas2021-02-021-4/+30
| | | | | | | | | | | | | | In the driver init routine the CPU clock frequency value is obtained from a dedicated register. Until now only part of the values were handled by the mv_ap806_clock driver. Fix that by adding missing cases. Submitted by: Zyta Szpak <zr@semihalf.com> MFC after: 1 week Obtained from: Semihalf Sponsored by: Marvell (cherry picked from commit a86b0839d7bf3fc06b1ae9c50e055b53c50a9d0b)
* netgraph/ng_tag: permit variable length dataLutz Donnerhacke2021-02-011-6/+4
| | | | | | | | | | | | | ng_tag(4) operate on arbitrary data of mbuf_tags(9). Those structures are padded to the next multiple of the alignment by the compiler. Hence a valid argument has be at most as long as the data received. PR: 241462 Reviewed by: kp Approved by: philip (mentor) Differential Revision: https://reviews.freebsd.org/D22140 (cherry picked from commit 7c7c231c14246a709270bf3f3a4593208e84d01a)
* MFC 064009e79462:Hans Petter Selasky2021-02-011-0/+2
| | | | | | | | | Add support for enabling and disabling IFCAP_VLAN_HWTSO via ifconfig(8) in mlx5en(4). Sponsored by: Mellanox Technologies // NVIDIA Networking (cherry picked from commit 064009e79462dea517aa7f1a857fb4d5393caa69)
* tmpfs: push VEXEC check into tmpfs_lookup()Kyle Evans2021-02-011-6/+11
| | | | | | | | | | | | vfs_cache_lookup() has already done the appropriate VEXEC check, therefore we must not re-check in VOP_CACHEDLOOKUP. This fixes O_SEARCH semantics on tmpfs and removes a redundant descent into VOP_ACCESS() in the common case. Reported-by: arichardson (via CheriBSD Jenkins CI) (cherry picked from commit 0f919ed4ae4df082eefb517afe02752b1790afd3)
* Decode NFIT Platform Capabilities.Alexander Motin2021-02-011-1/+17
| | | | (cherry picked from commit 1b109c69ed625ebf292c1d16f7a3efcab96722e5)
* Add missing newlines.Alexander Motin2021-01-311-2/+2
| | | | (cherry picked from commit 8fee65d0c70c99999b2fe5b49b267547b7ed2a49)
* netmap: simplify parameter passingVincenzo Maffione2021-01-314-44/+45
| | | | | | Changes imported from the netmap github. (cherry picked from commit ee0005f11f2b38a714bc66b7d79832108f6fee77)