Daniel Barlow
1b6a05aec5
make uevent-watch use devout instead of direct netlink
2024-04-27 21:07:25 +01:00
Daniel Barlow
80628a3d90
move event matching tests to devout
...
in preparation for future uevent-watch not needing to do
event matching
2024-04-27 21:07:25 +01:00
Daniel Barlow
bf0cafffed
start devout alongside mdevd
...
ensure it starts before mdevd-coldplug so it can populate
its database
2024-04-26 20:52:12 +01:00
Daniel Barlow
e49aba127c
devout: improve socket error handling
2024-04-26 20:49:23 +01:00
Daniel Barlow
324465bc18
devout: write uevent KEY=value format to clients
2024-04-26 17:37:28 +01:00
Daniel Barlow
b33249a050
devout: add readiness notification
2024-04-26 17:23:29 +01:00
Daniel Barlow
b9c084415e
devout: handle readiness on netlink socket but no event
2024-04-26 17:20:33 +01:00
Daniel Barlow
cf9cadd212
devout: replay relevant events to new subscriber
2024-04-26 17:20:33 +01:00
Daniel Barlow
a116fe084a
devout: use socket constants from anoia.net.constants
2024-04-26 16:48:51 +01:00
Daniel Barlow
74cf3e0711
add anoia.net.constants for SOCK_{STREAM,DGRAM} etc
...
we use an ugly bit of C preprocessor to get the values from
header files, because certain constants are different on MIPS
than on other architectures
2024-04-26 16:43:09 +01:00
Daniel Barlow
9795f03da4
think
2024-04-26 16:41:31 +01:00
Daniel Barlow
cdb23b147c
convert anoia.fs to use lualinux
2024-04-25 21:14:37 +01:00
Daniel Barlow
dbd1264352
convert anoia.fs to use lualinux instead of lfs
2024-04-24 20:44:32 +01:00
Daniel Barlow
834858d5bc
think
2024-04-24 18:33:57 +01:00
Daniel Barlow
18335b95e3
devout: strip newlines from client terms
...
this is just to make testing with socat easier
2024-04-24 18:33:02 +01:00
Daniel Barlow
6bee2f67ac
devout: add incoming netlink messages to database
2024-04-24 18:32:27 +01:00
Daniel Barlow
b4ba3eea21
fix revents in unpack-pollfds
2024-04-24 18:31:26 +01:00
Daniel Barlow
16af3984c9
add lualinux to fennelrepl
2024-04-24 18:30:34 +01:00
Daniel Barlow
ce7e395295
devout test: replace minisock with lualinux
2024-04-24 18:29:24 +01:00
Daniel Barlow
7e13e017eb
add readline suport to fennelrepl
2024-04-24 18:28:39 +01:00
Daniel Barlow
bbf2f53c0e
cross-compile lualinux
2024-04-24 18:28:14 +01:00
Daniel Barlow
032d0f8aca
add netlink socket
...
it's not hooked up to anything yet, but it proves we can
do this with lualinux
2024-04-23 23:34:25 +01:00
Daniel Barlow
b8ac9e5279
convert devout from minisock to lualinux
2024-04-23 23:33:11 +01:00
Daniel Barlow
ff2604ca5d
think
2024-04-23 23:30:50 +01:00
Daniel Barlow
72789984ce
add lualinux package
2024-04-23 22:41:38 +01:00
Daniel Barlow
90d9d0e811
update minisock to not scribble on lua strings
2024-04-23 20:19:33 +01:00
Daniel Barlow
97a8ae1c84
devout: add event loop and main run
function
2024-04-23 20:15:02 +01:00
Daniel Barlow
52eb283a26
implement unsubscribe
...
and add ids to subscribe so that there's a unique identifier
to pass to unsubscribe
2024-04-23 20:12:46 +01:00
Daniel Barlow
cbb1de804e
switch to minisock fork witj poll() call
...
this is likely to be temporary as minisock is getting
replaced with lualinux
2024-04-23 20:09:41 +01:00
Raito Bezarius
afb14d844b
feat(preinit): support alternative roots
...
In A/B schemas, it is possible to have multiple rootfs.
Thus, it is necessary to let the B kernel preinitialize either the A
rootfs or the B rootfs failing to mount the A rootfs.
Ideally, we should also try to switch to the B rootfs if we cannot start
up the init on the A rootfs, but that's a FUTUREWORK.
Signed-off-by: Raito Bezarius <masterancpp@gmail.com>
2024-04-21 17:26:37 +02:00
Daniel Barlow
f9c03998b8
implement subscriptions with callback
2024-04-21 13:19:17 +01:00
Daniel Barlow
50de1b090f
add the rest of the test list (all we've thought of)
2024-04-21 11:22:26 +01:00
Daniel Barlow
648382f64a
report bodyless tests as PENDING
2024-04-21 11:19:42 +01:00
Daniel Barlow
e9370358ae
implement "remove" events
2024-04-21 11:19:06 +01:00
Daniel Barlow
762ce7b6b8
cut/paste devout implementation into a real module
2024-04-20 22:48:00 +01:00
Daniel Barlow
b1c0560f4f
implement fetch by path
2024-04-20 22:20:43 +01:00
Daniel Barlow
e34135c41a
improve failed test reporting
2024-04-20 21:46:37 +01:00
Daniel Barlow
712c9b266f
implement find
2024-04-20 18:42:42 +01:00
Daniel Barlow
4df963996c
devout: add device
2024-04-20 18:24:10 +01:00
Daniel Barlow
349bfecbb8
new package "devout", does nothing yet
2024-04-20 17:45:40 +01:00
Daniel Barlow
450d3820b2
clean up uevent-watch test using writeFennel and mainFunction
...
requires less cavorting with globals and stuff
2024-04-20 16:53:43 +01:00
Daniel Barlow
771585546d
import expect= where previously it was copy-pasted
2024-04-20 15:09:50 +01:00
Daniel Barlow
73abf952d5
package minisock, a minimal Lua socket library
2024-04-20 15:09:17 +01:00
Daniel Barlow
8af4e9fd5b
package anoia assert macros and point fennelrepl at them
2024-04-20 14:59:14 +01:00
Daniel Barlow
7e19d80130
anoia: add assert macro module
...
contains expect and expect=
2024-04-20 14:04:32 +01:00
Daniel Barlow
0f0688c802
think
2024-04-20 14:03:48 +01:00
Daniel Barlow
b43f17f655
think
2024-04-20 12:23:04 +01:00
Daniel Barlow
adf62d4483
arhcive: make it work when disk is attached before boot
...
This is a bit of a kludge (a lot of a kludge) but it will
get it running whilt I work on something better
2024-04-17 18:49:30 +01:00
Daniel Barlow
68eb1360f6
use appended dtb in gl-mt300n-v2 tftpboot
...
probably the A variant needs this as well
2024-04-17 18:48:19 +01:00
Daniel Barlow
19ad6cd278
watchdog: put s6 pkg on $PATH for s6-svstat
2024-04-17 13:01:10 +01:00