summaryrefslogtreecommitdiffstats
path: root/sys (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* if stoeplitz is enabled, use it to provide a flowid for tcp packets.dlg2021-01-254-4/+29
| | | | | | | | | | | | | | drivers that implement rss and multiple rings depend on the symmetric toeplitz code, and use it to generate a key that decides with rx ring a packet lands on. if the toeplitz code is enabled, this diff has the pcb and tcp layer use the toeplitz code to generate a flowid for packets they send, which in turn is used to pick a tx ring. because the nic and the stack use the same key, the tx and rx sides end up with the same hash/flowid. at the very least this means that the same rx and tx queue pair on a particular nic are used for both sides of the connection. as the stack becomes more parallel, it will also help keep both sides of the tcp connection processing in the one place.
* use an intrmap when establishing interrupts for queues.dlg2021-01-251-21/+44
| | | | | | | mcx is still hardcoded/limited to 1 queue for now, but this lets different mcx devices use different cpus for handling packets. looks good jmatthew@
* match on Intel Alder Lake and Meteor Lake I219 Ethernet idsjsg2021-01-243-3/+30
|
* regenjsg2021-01-242-2/+47
|
* add Intel Alder Lake and Meteor Lake I219 Ethernet idsjsg2021-01-241-1/+10
|
* match on Realtek RTL8168H ids for Killer E2500V2 and E2600jsg2021-01-241-1/+3
| | | | checked against linux and windows drivers
* regenjsg2021-01-242-2/+12
|
* add Realtek RTL8168H ids for Killer E2500V2 and E2600jsg2021-01-241-1/+3
| | | | checked against linux and windows drivers
* match on another Realtek RTL8168 idjsg2021-01-231-1/+2
| | | | reported and tested by John Batteen on a TP-Link TG-3468
* regenjsg2021-01-232-2/+7
|
* add another Realtek RTL8168 idjsg2021-01-231-1/+2
| | | | shows up on a TP-Link TG-3468 John Batteen has
* Fix whitespace issuesmlarkin2021-01-231-4/+4
|
* vmm(4): wire faulted in pagesmlarkin2021-01-231-20/+6
| | | | | | | | | | | | | | | | | | | | This change wires the pages used by virtual machines managed by vmm(4). When uvm swaps out a page, vmm(4) does not properly do TLB flushing, possibly leading to memory corruption or improper page access later. While this diff is not the correct fix (implementing proper TLB flush semantics), it does work around the problem by not letting the pages get swapped out in the first place. This means that under memory pressure, swap pages will have to come from other processes, and it also means you cannot overcommit vmm(4) memory assignment (eg, assign more memory to VMs than you actually have). It is my plan to fix this the correct way, but that will take time. This issue was originally pointed out a long time ago by Maxime V., but due to my taking a year away from OpenBSD, the issue remained unfixed.
* Fix IORT struct for Context and PMU interrupts. I misread bytes with bits.patrick2021-01-231-7/+5
| | | | ok kettenis@
* OPAL implements firmware calls that abstract communicating with the BMC overkettenis2021-01-239-11/+489
| | | | | | IPMI. Use these calls to add support for impi(4) on PowerNV systems. ok dlg@
* introduce ujoy(4), a restricted subset of uhid(4) for gamecontrollers.thfr2021-01-2333-33/+242
| | | | | | | | This includes ujoy_hid_is_collection() to work around limitations of hid_is_collection() until this can be combined without fallout. input, testing with 8bitdo controller, and ok brynet@ PS4 controller testing, fix for hid_is_collection, and ok mglocker@
* ims: an actual i2c-connected mouse is unlikelyjcs2021-01-221-3/+2
| | | | | | | Claim to be a touchpad instead, which sets up ims devices in X11 to be more like touchpads. ok mglocker
* carp(4): convert ifunit() to if_unit(9)mvs2021-01-211-3/+6
| | | | ok dlg@ bluhm@
* vlan(4): convert ifunit() to if_unit(9)mvs2021-01-211-9/+15
| | | | ok dlg@ kn@
* let vfs keep track of nonblocking state for us.dlg2021-01-212-9/+4
| | | | ok claudio@ mvs@
* An invalid packet may not have set src and dst in packet descriptor.bluhm2021-01-201-7/+9
| | | | | | Add a NULL check to prevent crash in pflog(4) introduced in previous commit. Reported-by: syzbot+c6d2f2ad34b822bce98a@syzkaller.appspotmail.com
* If pledge "wroute" is missing for setsockopt SO_RTABLE, print failurebluhm2021-01-201-2/+2
| | | | | | message "wroute" into dmesg. Since revision 1.263 pledge "wroute" allows to change the routing table of a socket. OK florian@ semarie@
* Print rewritten addresses in tcpdump(8) logged with pflog(4) forbluhm2021-01-201-3/+10
| | | | | | | | rdr-to, nat-to, af-to rules. The kernel uses the information from the packet description and fills it into the fields in the pflog header. While doing this, it is trival to figure out whether the packet has been rewritten. OK sashan@
* Reprogram outbound windows to match the device tree. Necessary becausekettenis2021-01-201-3/+34
| | | | | | | the EDK2-based UEFI firmware sets it to its own hardcoded values. Makes device-tree mode work with newer versions of the Raspberry Pi firmware. ok patrick@
* Check management capabilities before trying to attach temperature sensors,jmatthew2021-01-201-1/+43
| | | | | | | | avoiding an unhelpful error message if the card's firmware doesn't expose the sensor registers. tested by chris@, who saw the unhelpful error message ok dlg@
* pflog(4) tried to log the translated packet with rdr-to, nat-to,bluhm2021-01-192-149/+5
| | | | | | | | | | | | | | and af-to addresses and ports applied. Therefore it created a mbuf chain on the stack with a partial copy. This is too complicated for IP options, extension header, NAT46 af-to, and fragmented mbuf chains. It even caused a crash in syzkaller. Usually the length checks in pf_setup_pdesc() rejected the faked mbuf and the goto copy logged the packet unmodified. Remove the pflog_mtap() function and call bpf_mtap_hdr() directly. As the old buggy code was bypassed in most cases, tcpdump(8) output of pflog does not change. Uncondionally log the unmodified packet. Reported-by: syzbot+947e89e06ac3fec187d0@syzkaller.appspotmail.com OK sashan@
* blacklist com on m3000s. our com code causes faults somehow.dlg2021-01-191-1/+20
| | | | | | | | console i/o still happens using ofw routines, which is Good Enough(tm) for now. having a working machine means i can better test changes now though. ok deraadt@
* Implement intx support.kettenis2021-01-191-19/+123
| | | | ok patrick@
* pipex(4): convert ifunit() to if_unit(9)mvs2021-01-191-2/+5
| | | | ok dlg@
* switch(4): convert ifunit to if_unit(9)mvs2021-01-192-21/+38
| | | | ok dlg@
* pppoe(4): convert ifunit() to if_unit(9)mvs2021-01-191-2/+4
| | | | ok dlg@ kn@
* pipex(4): convert ifunit() to if_unit(9)mvs2021-01-191-5/+12
| | | | ok dlg@
* kern/subr_disk.c: convert ifunit() to if_unit(9)mvs2021-01-191-3/+5
| | | | ok dlg@
* nfs/nfs_boot.c: convert ifunit() to if_unit(9)mvs2021-01-191-2/+3
| | | | ok dlg@
* Enable athn(4)kettenis2021-01-192-2/+4
|
* s/KHz/kHz/ and reduce dmesg spam a bitkettenis2021-01-191-4/+4
| | | | ok tb@, deraadt@
* s/KHZ/kHz/ and reduce dmesg spam a bitkettenis2021-01-198-23/+23
| | | | ok tb@, deraadt@
* /etc/malloc.conf path-approval in pledge is no longer needed since 6.5deraadt2021-01-191-9/+1
| | | | | moved option control into a sysctl. reminder that we can delete this from benjamin baier
* (re)Introduce locking for amaps & anons.mpi2021-01-198-98/+291
| | | | | | | | | | | | | | | A rwlock is attached to every amap and is shared with all its anon. The same lock will be used by multiple amaps if they have anons in common. This should be enough to get the upper part of the fault handler out of the KERNEL_LOCK() which seems to bring up to 20% improvements in builds. This is based/copied/adapted from the most recent work done in NetBSD which is an evolution of the precendent simple_lock scheme. Tested by many, thanks! ok kettenis@, mvs@
* Remove some unused #defines and remove some commented-out variables.kettenis2021-01-191-6/+1
|
* gre(4): convert ifunit() to if_unit(9)mvs2021-01-191-3/+6
| | | | ok dlg@
* tpmr(4): convert ifunit() to if_unit(9)mvs2021-01-191-11/+7
| | | | ok dlg@
* bpe(4): convert ifunit() to if_unit(9)mvs2021-01-191-8/+15
| | | | ok dlg@
* aggr(4): convert ifunit() to if_unit(9)mvs2021-01-191-16/+21
| | | | ok dlg@
* Mark `ps_oppid' as atomic.mvs2021-01-181-2/+2
| | | | ok mpi@
* regenmvs2021-01-182-4/+4
|
* Revert wrong commit.mvs2021-01-182-4/+4
|
* Convert ifunit() to if_unit(9).mvs2021-01-183-6/+9
| | | | ok sashan@
* regenmvs2021-01-182-5/+5
|
* Unlock getppid(2).mvs2021-01-181-2/+2
| | | | ok mpi@