| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
the same uar page, these writes could be combined, which would result in
a queue not being armed.
|
|
|
|
|
|
|
|
| |
When the main thread of a MT process dies, it doesn't matter at which
priority it gets awaken to do the lasts cleanups. Not using PUSER makes
it easier to understand the existing scheduler logic.
ok visa@
|
|
|
|
| |
ok anton@, sashan@
|
|
|
|
| |
ok kn@
|
|
|
|
| |
Analysed by and ok claudio@
|
|
|
|
|
|
|
| |
could crash due to missing inp_ppcb. This happend when fstat(1)
was called often and TCP was aborted with reset. Protect the sysctl
path with the net lock.
OK mpi@
|
|
|
|
|
|
|
|
| |
set. These mpls routes use the rt_llinfo structure to store the MPLS label
and would confuse the arp and nd6 code.
OK bluhm@ anton@
Reported-by: syzbot+927e93a362f3ae33dd9c@syzkaller.appspotmail.com
|
|
|
|
|
|
|
|
|
|
| |
before adding it to the routing table. The rtable code is doing memcmp()
of those rt_dest sockaddrs so it is important that they are stored in a
canonical form. To do this struct domain is extended to include the
sockaddr size for this address family.
OK bluhm@ anton@
Reported-by: syzbot+10fe9cd8d0211c562ead@syzkaller.appspotmail.com
|
|
|
|
| |
ok deraadt, pd, phessler
|
|
|
|
| |
sympathy from jmatthew@
|
|
|
|
|
|
| |
interrupts per second, or 90% of the cq size.
ok dlg@
|
|
|
|
| |
ok visa@
|
|
|
|
|
|
| |
From Helen Koike
fbb7e114e6e690c46f170dedd6fd2fb22f241519 in linux 4.19.y/4.19.50
89a4aac0ab0e6f5eea10d7bf4869dd15c3de2cd4 in mainline linux
|
|
|
|
|
|
| |
From Jonathan Corbet
6600ec2600d63868efa8c6641375451677469b24 in linux 4.19.y/4.19.50
551bd3368a7b3cfef01edaade8970948d178d40a in mainline linux
|
|
|
|
|
|
| |
From Daniel Drake
360e00e290a355219425b5ea0ca62d9df3261fa1 in linux 4.19.y/4.19.50
396dd8143bdd94bd1c358a228a631c8c895a1126 in mainline linux
|
|
|
|
|
|
| |
From Aaron Liu
f3dcc88d531fd21af0c4261896eb23b455499366 in linux 4.19.y/4.19.50
bdb1ccb080dafc1b4224873a5b759ff85a7d1c10 in mainline linux
|
|
|
|
|
|
| |
From Christian Koenig
84c82ab8f133f1c1e27f6b1bafe3f7d8835acc4c in linux 4.19.y/4.19.50
2e26ccb119bde03584be53406bbd22e711b0d6e6 in mainline linux
|
|
|
|
|
|
| |
From Alex Deucher
748a97ec6c1588e3a49e09fe9ca56dcdb7f976b5 in linux 4.19.y/4.19.50
9d6fea5744d6798353f37ac42a8a653a2607ca69 in mainline linux
|
|
|
|
|
|
| |
From Ryan Pavlik
98a8cb0282ab22d0533de34412f2118bf21147e4 in linux 4.19.y/4.19.50
29054230f3e11ea818eccfa7bb4e4b3e89544164 in mainline linux
|
|
|
|
|
|
| |
From Andres Rodriguez
490290b0415f069eb156db50d165ca6a407d47bc in linux 4.19.y/4.19.50
30d62d4453e49f85dd17b2ba60bbb68b6593dba0 in mainline linux
|
|
|
|
| |
to avoid running out of kmem space. Suggested by and ok kettenis@
|
|
|
|
|
|
|
|
| |
passing a pointer to a pci_intr_handle_t doesnt work too well on
sparc64, where it faults in the guts of the scheduler. dunno why
amd64 is fine.
ok jmatthew@
|
|
|
|
| |
ok jmatthew@
|
| |
|
|
|
|
|
| |
jmatthew@ says we need to configure the hw to populate that, but i
can put this in now in preparation for it.
|
|
|
|
| |
ok jmatthew@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
this is mostly based on the stuff kettenis did on arm64 recently.
msix support is basically the same as msi support from the host
side, you just have to tell the actual device about the msi vectors
differently.
the most complicated part of this is storing the requested msix
vector between the call to pci_intr_map_msix and pci_intr_establish.
the pci_intr_handle_t for storing state between those is a scalar
type, so we reassign some bits in that int for use storing the type
of int (intx, msi, or msix) and the vector.
i took the low 8 bits for storing the vector, which gives us a max
of 256 values. technically msix supports up to 2048 vectors, but
pyro only supports 256 in total, so i don't think we're going to
miss out on much. vpci may support more, but we'll cross that bridge
when we get to it.
i tested pyro(4) with mcx(4).
vpci was tested by kettenis@
ok kettenis@
|
| |
|
|
|
|
|
|
| |
drivers can set ph_timestamp when packets are received by the
hardware, which should be more accurate and cheaper than getting
the clock when the packet is queued on the socket.
|
|
|
|
|
| |
if the packet has the M_TIMESTAMP csum_flag, ph_timestamp is added
to the boottime clock, otherwise it just uses microtime().
|
|
|
|
|
|
| |
add NSEC_TO_TIMESPEC while here
ok cheloha@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the chip has a cycle counter or something, and the value of the
counter when the packet is sent to the host is stored in the
completion queue entry.
the driver periodically checks the cycle counter and records the
time at that point, so the rx path can do some maths to figure out
what the clock time is for the cycle counter. if the driver is
calibrated with the chips counter, the rx packets are timestamped.
this is based on the changes made to freebsd, but with some
simplifications.
|
|
|
|
|
|
|
|
|
| |
this is so hardware that supports timestamping can set the time and
say so for things like bpf and the SO_TIMESTAMP socket option to use.
the intention is that ph_timestamp will store the nanosecond since
the system booted, which is in line with how fq_codel (the only
user of the field at the moment) uses it.
|
|
|
|
|
|
| |
if_type is now immutable in tun(4) and tap(4)
ok claudio@ mpi@
|
|
|
|
|
|
|
|
|
|
| |
The 'mode' command is supposed to force a wireless interface into 11a/b/g/n
media mode. This stopped working some time ago, probably during my work on
background scanning. Problem spotted by mlarkin@ who noticed that interfaces
were using 11g mode while forced to 11b mode.
ok phessler, jmatthew (earlier version)
relentless testing by krw@
|
|
|
|
| |
ok semarie@, visa@
|
|
|
|
|
|
|
| |
It doesn't matter in this case and reducing the number of PUSER makes
the scheduler logic easier to understand.
ok kettenis@, visa@
|
|
|
|
| |
ok mlarkin@
|
|
|
|
|
|
| |
From Daniel Vetter
390a0fd31b02f2f7086af2f3bdb8ae576b9a4b84 in linux 4.19.y/4.19.49
204f640da6914844b3270b41b29c84f6e3b74083 in mainline linux
|
|
|
|
|
|
|
| |
variable that tracks when to send next SIGXCPU. This eases MP work and
prevents accidental alteration of shared resource limit structs.
OK mpi@ semarie@
|
| |
|
|
|
|
| |
From Eygene Ryabinkin.
|
|
|
|
|
|
|
|
|
|
|
|
| |
mlarkin@ noticed we would freeze while removing enormous files because
of the amount of work done to invalidate buffers on unlink. This adds
a temporary workaround to ensure we give up the lock and yield while
doing this.
The longer term answer will be to move these buffers to another list
and not do the work here.
ok deraadt@
|
|
|
|
|
|
|
|
|
| |
64-bit DMA. Should reduce the pressure on DMA-reachable memory, which is
important since there are still cases where the pagedaemon ends up being
triggered continuously if we run out of DMA-reachable memory but have
plenty of memory left.
ok jsg@
|
|
|
|
|
|
| |
created with the BUS_DMA_64BIT flag.
ok jsg@
|
|
|
|
|
|
| |
skip PCI host bridges and devices that aren't there.
ok patrick@
|
|
|
|
|
|
| |
there's some more work to do in this space, but this helps us start.
ok kettenis@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the following improvements:
- Shift the middle bar of the upper case 'G' one pixel down in the 12x24
version
- Shift lower case 'k' character right, for better alignment in the 12x24,
16x32, and 32x64 versions
- Make upper case 'X' thicker in the 16x32 and 32x64 versions
- Make upper case 'V' thicker in the 32x64 version
- Make lower case 'g' character smoother in the 16x32 and 32x64 versions
- Add some artefacts on each side of the lower case 'i' characters
OK kettenis@, naddy@, deraadt@
|
|
|
|
|
|
|
| |
larger than 256KB not 128KB to cope with the 06-8e-09 microcode which is
currently 193KB.
Reported and tested by Paul de Weerd. Matches a diff from claudio@
|
|
|
|
| |
written by Cody Cutler <ccutler at csail.mit.edu>
|