Age | Commit message (Collapse) | Author |
|
|
|
|
|
; (0x7fffffff/1000)*1000 + 999
0x8000015f
oh no!
; 0x80000000-1024
0x7ffffc00
; (0x7ffffc00/1000)*1000 + 999
0x7ffffd77
fixed.
|
|
this patch turns "no Tx entry available" messages into
an ifstats counter to reduce console spam.
While here, remove tx/rx offloading from the todo list
to not give people ideas.
|
|
|
|
|
|
|
|
|
|
|
|
Instead of waking up every second, sleep the maximum
amount possible for long timeouts.
Waking up every second is slow with thousands of
processes hammering the timer.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
move in to the namespace earlier before the
announce. Only attempt and complain to syslog
when the file already exists, but if building
the new namespace fails we should bail.
|
|
Submitted by Matt:
*Explain the problem that your change solves. Explain why your change
solves the problem well.*
The problem is that when using 9front on an Rpi3/Rpi4, on a revision 2
board, in bcm scheme, you cannot use GPIO5 nor GPIO6. If you look at the
pinout, https://pinout.xyz/pinout/, you can see GPIO5 and GPIO6 are both
GPIO pins - so, you should be able to use them. As you can see in the
patch, "5" and "6" were both missing from the bcmtableR2 definition. The
changes noted above fix this issue by adding GPIO5 ("5") and GPIO6 ("6")
to the bcmtableR2 definition. I specifically only addressed r2 boards b/c I
don't have an r1 board and don't want to make any speculations.
* If applicable, explain how you tested the patch, and give us a way of
reproducing the issue.*
I tested this / you can reproduce this by:
- Trying using GPIO5 and GPIO6 without the patch. You can do this by:
bind -a '#G' /dev
cd /dev/gpio
echo 'scheme bcm' > ctl
echo 'function out 5' > ctl
echo 'function out 6' > ctl
read -c 1 5
read -c 1 6
- Note that the `read` command above reads '0' from file 5 and from file 6.
- Now try to change the GPIO pins from 0 (off) to 1 (on)
echo '1' > 5
echo '1' > 6
read -c 1 5
read -c 1 6
- Note that the pins still read '0'
- Now, apply the patch and repeat the steps above. Except, after you `echo
'1' > 5` and `echo '1' > 6`, and then read files "5" and "6", you will see
that the pins now read "1" as intended.
Thanks,
Matt
|
|
The noauth and nonone commands are only valid in config mode.
The problem is that some people assumed that issuing the
noauth command in the runtime fileserver console would be
persistent across reboots, which is not the case.
To avoid this confusion, we remove these commands from the
fileserver console.
To still give a way to disable authentication at runtime,
define a authdisabled flag that can be toggled at runtime.
|
|
|
|
|
|
icmpdontfrag() was not working properly, need to pass the
gating source interface. in fact, we now always pass the source
interface to all icmp*() functions, which is used to
determine source ip address of the icmp reply.
also dont generate a icmp response for packets going to
non-unicast addresses (such as broadcast).
increase the amount of icmp response payload, but keep
icmp responses below the minimum ipv4 mtu (68 bytes).
regularize icmpv6 function names.
move icmp unreachable codes to icmpv6.c.
provide the mtu value for icmppkttoobig6().
dont advise announced udp connections.
avoid code duplication in icmp.c and icmpv6.c,
by having single send function with type, code and arg
parameters.
maintain statistics for sent ipv4 icmp types.
avoid route lookup in ipout*() by passing Routehint* to
icmpnohost*().
iladvise()... more like ill advice.
|
|
|
|
We used to only clamp to the MTU of the destination interface,
but this is wrong. We have to clamp to the minimum of both
source and destination.
For this, we change the gating argument type of ipoput4()
and ipoput6() from int to Ipifc* to pass the source interface.
|
|
We falsely confused locally listening connections
as existing translation entires. Fix it.
|
|
sysfatal has consistent behavior regardless if the
user is threaded.
|
|
|
|
|
|
Mount /fd, /proc, /srv and /shr in initcode
and open /dev/cons instead of #c/cons.
This way, /boot/boot could theoretically be a rc-script
and there is less reliance on magic device characters.
|
|
|
|
|
|
|
|
Need to close the channel outside of srvlk,
otherwise risk deadlock when recursing.
|
|
|
|
|
|
Unplugging and then reattaching a keyboard or a mouse causes nusb/kb to
sysfatal() since the service file it's trying to create already exists.
|
|
remove the global sdio struct and add a addmmcio() function
for drivers to register their controllers.
there is a SDio.aux pointer now where controller drivers
can stash a pointer to their private data.
SDio.init() also can signal that it wants to be called
again for more controllers by returning > 0 (see pc/pmmc.c).
this is in preparation for supporting the internal mmc
device in the mnt-reform which is hooked up to usdhc1.
|
|
We can get rid of a bunch of stuff now that we'r using a softscreen.
Get rid of the static Memimage and Memdata for the framebuffer;
just allocate gscreen as a memimage from the image pool.
Avoid exporting fbraw pointer, just have screeninit() return it.
Remove fbmemalloc() function. it used to create a write-thru
mapping but given that we are no more reading the framebuffer,
we can use ucalloc() instead.
|
|
We should have found the ip addresses of our local dns servers
from the cache or the database. Also, the rr->host is
an ip address string and not a valid domain name so the
query there makes no sense.
|
|
If the interface does not support multicast, ignore it.
|
|
|
|
|
|
The intention is good, but page is the wrong
place for this.
If ghostscript wants to sandbox, we should do
that with a wrapper script so any invocation
of ghostscript can be sandboxed.
|