summaryrefslogtreecommitdiff
path: root/sys
AgeCommit message (Collapse)Author
2017-05-21Tweak style.Visa Hankala
2017-05-21Enable radeondrm(4) on loongson to get accelerated graphicsVisa Hankala
with the RS780E chipset. OK kettenis@, jsg@
2017-05-21Rockchip SoCs needs some additional register twiddling when the link speedMark Kettenis
changes to set the appropriate clock. Add a sc_statchg callback in the core softc that gets called when the link status changes.
2017-05-21Add dwmmc(4), a driver for the Synopsis Designware SD/MMC controller as foundMark Kettenis
on various Rockchip SoCs. This is still WIP. Next steps will be to get rid of various busy-wait loops and add DMA support.
2017-05-20More SD/MMC controller-related clocks.Mark Kettenis
2017-05-20- fixes regression found by pf_forward testAlexandr Nedvedicky
O.K. bluhm@
2017-05-20Accept baud rates up to 2 Mbps as these are supported by CP2104 and laterMark Kettenis
variants. ok jsg@, deraadt@
2017-05-19Repair rtwn(4) IQ calibration.Stefan Sperling
Restore behaviour from before the fix of the botched R92C_USTIME_TSF register definition. IQ cal code was referring to this register by name, but actually needs to use the old value. So add a register definition for the old value under a new name (R92C_BCN_CTRL1) and use this name in the IQ cal code. Discussed with Kevin Lo
2017-05-19Make monitor work with athn(4) on my 3T3R AR9380 device.Stefan Sperling
This card can now receive packets. Transmit is still broken and Kevin Lo reports that his 2T2R AR9380 device cannot receive yet.
2017-05-19Make rtwn(4) add frames which failed to transmit to AMRR's transmit counter.Stefan Sperling
More closely matches what other drivers are doing.
2017-05-19Make rtwn(4) support fixed transmit rates set with ifconfig(8).Stefan Sperling
Useful for development and testing but not recommended for regular usage.
2017-05-19Change PF behavior to allow MLD Listener Report packets to be sentRafael Zalamena
without needing a previously created state by MLD Listener Query. It wasn't working because: (1) you might not have a previous MLD Listener Query and (2) the addresses of the Query and Report don't match. ok mikeb@, sashan@
2017-05-19Fix R92C_USTIME_TSF register definition.Stefan Sperling
According to Kevin Lo it was wrong (and is also wrong in the Linux driver). FreeBSD made the same change in r282623. Patch by Kevin Lo.
2017-05-19Add some comments about the assumptions of the scsi mid layerStefan Fritsch
ok krw@
2017-05-19Respect max VPID/ASID limits. VMX VPIDs are capped at 4095, for now.Mike Larkin
2017-05-19return EIO to vmd if the guest HLTs with interrupts disabledMike Larkin
2017-05-19Replace __cpu_cas() with atomic_cas_ulong().Visa Hankala
OK kettenis@
2017-05-19Implement copyin32(9) for mips64.Visa Hankala
OK kettenis@
2017-05-19tweak the spllower asm so it is more straightforward.David Gwynne
this properly identifies the registers used as input and output operands to the code running in the trap handler, and passes them to the asm statement as such. this means we dont have to do an extra copy in the asm, or an extra clobber to keep the compiler away from the registers. it also lets gcc set up and use the input register nicely before it reaches the asm. ok kettenis@
2017-05-18Add a gap of 1MB between the stack and mmap spaces.Mark Kettenis
ok deraadt@, millert@, stefan@
2017-05-18Implement copyin32(9).Mark Kettenis
"your chicken scratches look fine to me" deraadt@
2017-05-18Grab the netlock in umb_state_task() and umb_decode_ip_configuration()Alexander Bluhm
when calling in_ioctl(). These ioctls modify the routing table, which is global. So they need the lock. Found with Zaur Molotnikov's static lock analyzer. OK gerhard@ mpi@
2017-05-18enable acpisbs on i386 for old MacBooksJoshua Stein
tested by Jan Stary
2017-05-18Merge the content of <netinet/tcpip.h> and <netinet6/tcpipv6.h> inMartin Pieuchot
<netinet/tcp_debug.h>. The IPv6 variant was always included and the IPv4 version is not present on all systems. Most of the offending ports are already fixed, thanks to sthen@!
2017-05-18The function name ip4_input() is confusing as it also handles IPv6Alexander Bluhm
packets. This is the IP in IP protocol input function, so call it ipip_input(). Rename the existing ipip_input() to ipip_input_gif() as it is the input function used by the gif interface. Pass the address family to make it consistent with pr_input. Use __func__ in debug print and panic messages. Move all ipip prototypes to the ip_ipip.h header file. OK dhill@ mpi@
2017-05-18Since copyin(9) already doeas access 32-bit quantities atomically, we canMark Kettenis
add copyin32(9) as a simple C wrapper around it. These wrappers do check alignment and return EFAULT if the userland pointer is misaligned. This is enough to guarantee that the access doesn't cross a cache line boundary which could make the access non-atomic. ok mpi@, visa@, tedu@
2017-05-18Add copyin32(9) prototype.Mark Kettenis
2017-05-18Fix a uvm fault in athn_clock_rate():Stefan Sperling
Don't deref an IEEE80211_CHAN_ANYC channel pointer. ok mpi@
2017-05-18Do not panic if we find ourself on the sleep queue while being SONPROC.Martin Pieuchot
If the rwlock passed to rwsleep(9) is contented, the CPU will call wakeup() between sleep_setup() and sleep_finish(). At this moment curproc is on the sleep queue but marked as SONPROC. Avoid panicing in this case. Problem reported by sthen@ ok kettenis@, visa@
2017-05-18AAPCS64 requires 16 byte stack alignment. Set the bits in the systemJonathan Gray
control register to enable alignment fault exceptions if the stack pointer is not correctly aligned when used as a base address in load or store instructions. drahn@ pointed out that FreeBSD made this change in svn rev 295270 and believes we should do the same.
2017-05-18Fix kernel build on armv7 and sh.Visa Hankala
Pointed out by deraadt@
2017-05-17Revert MI AES-XTS code back to T-tables amid poor performanceMike Belopuhov
Suffered by many, the revert tested by stsp@.
2017-05-17The large and nested GIF #ifdef in protosw made it hard to figureAlexander Bluhm
out what is going on. There were also some inconsistencies that seem to be oversights. Use more specific the #ifdefs. OK mpi@
2017-05-17Optimize multicast packet sending by using m_dup_pkt() instead ofRafael Zalamena
m_copym() for cloning packets. m_dup_pkt() creates a new mbuf with the whole packet content and also pre allocates the space for layer 2 headers (Ethernet/VLAN). ok mikeb@
2017-05-17Make IPL_MPSAFE effective on loongson.Visa Hankala
Testing help from fcambus@
2017-05-17Protect the global list of interfaces with the NET_LOCK().Martin Pieuchot
ok bluhm@
2017-05-17Remove useless splsoftnet().Martin Pieuchot
Outside of USB, no code is executed in a softnet interrupt context. So what's protecting NFS data structures is the KERNEL_LOCK(). But more importantly, since r1.114 of nfs_socket.c, the 'softnet' thread is no longer executing NFS code. ok visa@
2017-05-17Raise "uvm_map_entry_kmem_pool" IPL level to IPL_VM to prevent a deadlock.Martin Pieuchot
A deadlock can occur when the uvm_km_thread(), running without KERNEL_LOCK() is interrupted by and non-MPSAFE handler while holding the pool's mutex. At that moment if another CPU is holding the KERNEL_LOCK() and wants to grab the pool mutex, like in sys_kbind(), kaboom! This is a temporaty solution, a more generate approach regarding mutexes and un-KERNEL_LOCK()ed threads is beeing discussed. Deadlock reported by sthen@, ok kettenis@
2017-05-17regenJonathan Gray
2017-05-17add some devices from submitted dmesgsJonathan Gray
2017-05-16- percpu anchor stacksAlexandr Nedvedicky
we actually don't need to pre-allocate per_anchor_stack[], if we use a 'natural' recursion, when doing anchor tree traversal. O.K. mikeb@, mpi@
2017-05-16Implement copyin32(9).Mark Kettenis
ok mpi@, visa@
2017-05-16Using __aligned(8) to tag 'struct m_hdr' triggers warnings on landisk:Mark Kettenis
/usr/src/sys/dev/ic/re.c:1602: warning: ignoring alignment for stack allocated 'mh' So instead add explicit padding on ILP32 systems. ok deraadt@, mikeb@
2017-05-16use _mtx_init instead of __mtx_init inside mtx_init on !WITNESS kernelsDavid Gwynne
_mtx_init uses __MUTEX_IPL to wrap the ipl argument to __mtx_init. without this, mutexes were initted below the mp floor, which allowed deadlocks with the kernel lock to occur. reported by hrvoje popovski and pinpointed by mikeb@ tweaks from phessler@ ok mpi@ visa@
2017-05-16Sync three changes that were caught by IPv6 multicast routing review:Rafael Zalamena
* use a variable to allow disabling debugs on run-time * fix a potential memory leak on copyout() failure * don't just blindly use the first address provided by ifalist ok bluhm@
2017-05-16Make return values more meaningful by using errno instead of -1 or 1.Rafael Zalamena
ok bluhm@
2017-05-16Replace remaining splsoftassert(IPL_SOFTNET) by NET_ASSERT_LOCKED().Martin Pieuchot
ok visa@
2017-05-16Remove list member now that the global list is gone.Martin Pieuchot
2017-05-16Kill unused global list and protect global array by the NET_LOCK().Martin Pieuchot
ok bluhm@
2017-05-16Make the IPv6 multicast routing code use the OpenBSD routing tableRafael Zalamena
instead of implementing its own. This makes the IPv6 multicast routing code look more like the IPv4 version. ok bluhm@, mpi@