summaryrefslogtreecommitdiff
path: root/sys/src/9
AgeCommit message (Collapse)Author
2018-03-07usbehci: catch interrupt in tsleepaiju
2018-03-06usbehci: add uframes control request to return uframes one at a timeaiju
2018-03-05usbehci: fix medium- to low quality highspeed isochronous transferscinap_lenrek
everything was broken. strting with hsinit not even chaining the itd's into a ring. followed by broken buffer pointer pages. finally, the interrupt handler's read transaction length calculation was completely bugged, using the *FRAME* index to access descriptors csw[] fields and not reseting tdi->ndata thru the loop. minor stuff: iso->data needs to be freed with ctlr->dmafree() put ival in iso->ival so ctl message cannot override the endpoints pollival and screw up deallocation.
2018-02-25devloopback: reassign device letter from #X to #λ to avoid collision with ↵cinap_lenrek
devvmx
2018-02-25kernel: properly handle bad attach specifierscinap_lenrek
- only accept decimal for numeric device id's - exclude negative device id's - device id's out of range yield Enodev
2018-02-25devether: remove (unimplemented) detach, allow device creation on attachcinap_lenrek
we allow devether to create ethernet cards on attach. this is useull for virtual cards like the sink driver, so we can create a sink by simply: bind -a '#l2:sink ea=112233445566' /net the detach routine was never called, so remove it from the few drivers that attempted to implement it.
2018-02-25devip: fix crash on negative dev id on attachcinap_lenrek
2018-02-25ns, devproc: quote path and spec arguments for /proc/$pid/ns, namespace(6) ↵cinap_lenrek
does support quoting
2018-02-18devether: mux bridges, portable netconsolecinap_lenrek
2018-02-18kernel: fix missing header dependency for ethersink.$Ocinap_lenrek
2018-02-16audiohda: add device id for x260's Intel Sunrise Point-LP. (thanks rodri)cinap_lenrek
2018-02-12if ether, then etherif.hcinap_lenrek
2018-02-12ethersink: after the experiment, the zeros get dismantled. and then destroyed.cinap_lenrek
2018-02-11ethersink: provide promisc and multicast functions for v6, set out queue ↵cinap_lenrek
limit to 0 on attach, add to pc64 config
2018-02-11kernel: move devether and wifi to port/cinap_lenrek
the only architecture dependence of devether was enabling interrupts, which is now done at the end of the driver's reset() function now. the wifi stack and dummy ethersink also go to port/. do the IRQ2->IRQ9 hack for pc kernels in intrenabale(), so not every caller of intrenable() has to be aware of it.
2018-02-10zynq: fix 10BASE-T and 100BASE-TX supportaiju
2018-02-07usbxhci: fix mistake in completering()cinap_lenrek
the td index "x" was incremented twice, once in for loop and in the body expression. so r->rp only got updated every second completion. this is wrong, but harmless.
2018-01-29pc64: fix kmap() and invlpg()cinap_lenrek
flushing tlb once the index wraps arround is not enougth as in use pte's can be speculatively loaded. so instead use invlpg() and explicitely invalidate the tlb of the page mapped. this fixes wired mount cache corruption for reads approaching 2MB which is the size of the KMAP window. invlpg() was broken, using wrong operand type.
2018-01-27kernel: initialize cyclefreq for machno > 0 in guesscpuhz()cinap_lenrek
2018-01-22ip: make pkt interfaces unbind on close (from inferno)cinap_lenrek
2018-01-20gre: don't drop pptp packets when smaller than v4 headercinap_lenrek
2018-01-16set router R-flag when sendra is active for neighbor advertisementcinap_lenrek
windows 7 just drops the default router when it tries to probe for router reachability but gets a neighbor avertisement from the router with the router bit clear. so set the R-flag when sendra is active, which implies that we are a router.
2018-01-13ether79c970: dont disable promisc mode when multicast table is not emptycinap_lenrek
2018-01-13ether82557: don't turn off promisc mode when mcast table is not emptycinap_lenrek
the driver doesnt implement multicast filter, but just turns on promiscuous mode when a multicast address is added. but this breaks when one actually enables and then disables promiscuous mode with say, running snoopy. we have to keep promisc mode active as long as multicast table is not empty.
2018-01-12wifi: learn target ip address from neighbor advertisements in dmat proxycinap_lenrek
2018-01-12wifi: filter out loopback traffic from myselfcinap_lenrek
broadcast traffic was received back on the wire causing duplicate address detection to break with dmat proy as the rewritten broadcasts where observable. the fix is to just ignore packets from ourselfs received from the air. devether already handles loopback.
2018-01-08ether8169: deal with kernel memory exhautioncinap_lenrek
when kernel memory is exhausted, rtl8169replenish() can fail to plant more receive descriptors and rtl8169receive() would run over the receive tail and crash on the nil ctlr->rb[x]. rtl8169receive() is called on "Receive Descriptor Unavailable" and "Packet Underrun" so we will try to replenish descriptors in the beginning first in case memory was exhausted and memory is available again and make sure not to run over the tail.
2018-01-05stats: show amount of reclaimable pages (add -r flag)cinap_lenrek
reclaimable pages are user pages that are used for caches like the image cache, mount cache and swap cache.
2018-01-04pc kernel: fix wrong simd exception mask (fixes go bootstrap)cinap_lenrek
2017-12-31wifi: get rid of custom hextob() routine, use dec16(), avoid copies in ↵cinap_lenrek
parsekey()
2017-12-29usbxhci: add missing pexit() in xhcirecover proc (thanks sam-d)cinap_lenrek
2017-12-29wifi: revert rate adoption divider, breaks arpunks wificinap_lenrek
2017-12-28devtls, devssl: avoid ~0UL comparsion (from drawterm)cinap_lenrek
2017-12-28devmnt: use u32int for tagmask, simplify alloctag()cinap_lenrek
2017-12-28wifi: don't implicitely update lastseen timestamp on nodelookup()cinap_lenrek
in case we continue to send traffic (like ping) with the ap gone, the sending would keep updating bss->lastseen which prevents the timeout to happen to switch bss.
2017-12-28etheriwl, etherwpi: limit transmit queue buffer bloat to 48k (at 22Mbit ≅ ↵cinap_lenrek
20ms)
2017-12-28wifi: don't assume Wifi.rates[] is sorted, return net data rate for mbps ↵cinap_lenrek
(50% theoretical)
2017-12-23devvga: removing #v/vgabios, use /dev/realmodemem insteadcinap_lenrek
2017-12-23kernel: convert textmode cga screen contents to kmesg only oncecinap_lenrek
screeninit() might be called again by devvga when switching to textmode, so only convert the text framebuffer to kmesg the first time.
2017-12-23kernel: remove Ipifc.mbps, unused.cinap_lenrek
2017-12-19ether8169: add Macv45 for RTL8111HN, rename Macv45 -> Macv42 (thanks qeed, ↵cinap_lenrek
sam-d)
2017-12-18devether: dont forward loopback packets on bridgescinap_lenrek
2017-12-18devbridge: disable write blocking on ethernetscinap_lenrek
2017-12-17pc, pc64: add devbridge to kernel configurationcinap_lenrek
2017-12-17devbridge: fix mss clampingcinap_lenrek
- use protocol constants from ip/ip.h and ip/ipv6.h - support mss clamping for ipv6 - fix padding bug on 64 bit machines (can't use sizeof(Tcphdr))
2017-12-17wifi: use protocol constants from ip/ip.h and ip/ipv6.h for dmatproxy()cinap_lenrek
2017-12-16wifi: matt damon wifi bridging supportcinap_lenrek
2017-12-15ether: allow spoofing of source mac address for bridges; used by vmxcinap_lenrek
to implement layer 2 bridges in userspace, we disable to auto filling of the source mac address when bridge mode is enabled on the connection.
2017-12-09devether: remove duplicated parseether() implementation (pull from libip)cinap_lenrek
2017-12-03devvga: properly handle physical screen size and panningcinap_lenrek
- remove arbitrary limits on screen size, just check with badrect() - post resize when physgscreenr is changed (actualsize ctl command) - preserve physgscreenr across softscreen flag toggle - honor panning flag on resize - fix nil dereference in panning ctl command when scr->gscreen == nil - use clipr when drawing vga plan 9 console (vgascreenwin())