You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
lunatik: replace boolean sleep with context string in runtime()
runtime(script, "softirq") for interrupt context (GFP_ATOMIC, spinlock);
runtime(script) or runtime(script, "process") for process context
(GFP_KERNEL, mutex). Mirrors data.new(size, "single"/"shared") style.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
*`status`: show which Lunatik kernel modules are currently loaded
96
96
*`test [suite]`: run installed test suites (see [Testing](#testing))
97
97
*`list`: show which runtime environments are currently running
98
-
*`run`: create a new runtime environment to run the script `/lib/modules/lua/<script>.lua`
98
+
*`run [softirq]`: create a new runtime environment to run the script `/lib/modules/lua/<script>.lua`; pass `softirq` for hooks that fire in atomic context (netfilter, XDP)
99
99
*`spawn`: create a new runtime environment and spawn a thread to run the script `/lib/modules/lua/<script>.lua`
100
100
*`stop`: stop the runtime environment created to run the script `<script>`
101
101
*`default`: start a _REPL (Read–Eval–Print Loop)_
@@ -320,7 +320,7 @@ sudo make btf_install # needed to export the 'bpf_luaxdp_
320
320
sudo make examples_install # installs examples
321
321
make ebpf # builds the XDP/eBPF program
322
322
sudo make ebpf_install # installs the XDP/eBPF program
323
-
sudo lunatik run examples/filter/sni false# runs the Lua kernel script
323
+
sudo lunatik run examples/filter/sni softirq# runs the Lua kernel script
324
324
sudo xdp-loader load -m skb <ifname> https.o # loads the XDP/eBPF program
325
325
```
326
326
@@ -353,7 +353,7 @@ This script drops any outbound DNS packet with question matching the blacklist p
353
353
354
354
```
355
355
sudo make examples_install # installs examples
356
-
sudo lunatik run examples/dnsblock/nf_dnsblock false # runs the Lua kernel script
356
+
sudo lunatik run examples/dnsblock/nf_dnsblock softirq # runs the Lua kernel script
357
357
```
358
358
359
359
### dnsdoctor
@@ -372,7 +372,7 @@ examples/dnsdoctor/setup.sh # sets up the environment
372
372
dig lunatik.com
373
373
374
374
# run the Lua kernel script
375
-
sudo lunatik run examples/dnsdoctor/nf_dnsdoctor false
375
+
sudo lunatik run examples/dnsdoctor/nf_dnsdoctor softirq
376
376
377
377
# test the setup, a response with IP 10.1.2.3 should be returned
378
378
dig lunatik.com
@@ -434,7 +434,7 @@ It supports gestures: swiping right locks the mouse, and swiping left unlocks it
434
434
435
435
```
436
436
sudo make examples_install # installs examples
437
-
sudo lunatik run examples/gesture false # runs gesture
437
+
sudo lunatik run examples/gesture softirq # runs gesture
438
438
# In QEMU window:
439
439
# Drag right to lock the mouse
440
440
# Drag left to unlock the mouse
@@ -450,7 +450,7 @@ It fixes the report descriptor for the device (`0x2717`:`0x5014`).
450
450
451
451
```
452
452
sudo make examples_install # installs examples
453
-
sudo lunatik run examples/xiaomi false # runs xiaomi driver
453
+
sudo lunatik run examples/xiaomi softirq # runs xiaomi driver
454
454
```
455
455
456
456
Then insert the Xiaomi Silent Mouse with bluetooth mode on and it should work properly.
0 commit comments