Skip to content

Commit a628877

Browse files
nix/STATUS, pr-tracker: round 5 sent upstream (PlatformLab#144-PlatformLab#148)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 parent 797b2df commit a628877

2 files changed

Lines changed: 12 additions & 12 deletions

File tree

‎analysis-reports/pr-tracker.md‎

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -16,17 +16,17 @@ John Ousterhout lands PRs by applying our commits to `main` himself, so a landed
1616
| 2, fuzzing + 7.x port (2026-10-21) | 2 | 2 | 0 |
1717
| 3, sparse (2026-10-22) | 4 | 4 | 0 |
1818

19-
## Round 5: VM and sanitizer findings (fork drafts, not yet sent)
19+
## Round 5: VM and sanitizer findings (open)
2020

21-
Drafted 2026-10-31 on the fork, to go upstream as one batch once reviewed.
21+
Opened 2026-10-31 as one batch.
2222

23-
| Fork | Branch | Change | Found by |
24-
|---|---|---|---|
25-
| #22 | `fix/peer-free-net-rcu-barrier` | `rcu_barrier()` in `homa_peer_free_net`: `homa_route_free` use-after-free (F8) | KASAN, test-first |
26-
| #23 | `fix/qdisc-unknown-link-speed` | Homa qdisc on a link reporting `SPEED_UNKNOWN` (F11) | pair lifecycle, test-first |
27-
| #26 | `fix/rpc-memcg-without-config-memcg` | `mem_cgroup_from_sk()`, not `sk_memcg` (F12b: no build without `CONFIG_MEMCG`) | `analysis-netdev` |
28-
| #27 | `fix/peertab-lock-rhashtable-walk` | Walk `route_ht` outside `peertab->lock` (F13: softirq lock-order inversion) | lockdep |
29-
| #28 | `fix/qdisc-deferred-offset-data-race` | Annotate `homa_qdisc_deferred_offset`'s lockless reads (F14) | KCSAN |
23+
| Upstream | Fork | Branch | Change | Found by |
24+
|---|---|---|---|---|
25+
| [#144](https://github.com/PlatformLab/HomaModule/pull/144) | #22 | `fix/peer-free-net-rcu-barrier` | `rcu_barrier()` in `homa_peer_free_net`: `homa_route_free` use-after-free (F8) | KASAN, test-first |
26+
| [#145](https://github.com/PlatformLab/HomaModule/pull/145) | #23 | `fix/qdisc-unknown-link-speed` | Homa qdisc on a link reporting `SPEED_UNKNOWN` (F11) | pair lifecycle, test-first |
27+
| [#146](https://github.com/PlatformLab/HomaModule/pull/146) | #26 | `fix/rpc-memcg-without-config-memcg` | `mem_cgroup_from_sk()`, not `sk_memcg` (F12b: no build without `CONFIG_MEMCG`) | `analysis-netdev` |
28+
| [#147](https://github.com/PlatformLab/HomaModule/pull/147) | #27 | `fix/peertab-lock-rhashtable-walk` | Walk `route_ht` outside `peertab->lock` (F13: softirq lock-order inversion) | lockdep |
29+
| [#148](https://github.com/PlatformLab/HomaModule/pull/148) | #28 | `fix/qdisc-deferred-offset-data-race` | Annotate `homa_qdisc_deferred_offset`'s lockless reads (F14) | KCSAN |
3030

3131
F12a (`strip.py` `#else` after `#ifndef`) was fork #25, closed as a duplicate of upstream
3232
[#134](https://github.com/PlatformLab/HomaModule/pull/134).

‎nix/STATUS.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -522,9 +522,9 @@ is `homa_route_free`, in an RCU callback, taking `peertab->lock` after the walk
522522
| 11 | Bootable 7.0–7.2 kernels (PLAN-pairs phase 6) | Full VM coverage of the 7.x series | large (kernel builds) | optional |
523523
| 14 | Does `util/` need to build off x86? (F9) If so, a portable `rdtsc()` and `REG_RIP` guard | riscv64/aarch64 `util/` builds fail | small | ask John |
524524
| 15 | riscv `homa_clock_khz()`: `riscv_timebase / 1000` (F9) | Timers 100× off on riscv in the normal build | small | us → upstream (if John wants riscv) |
525-
| 19 | F13: walk the route table outside `peertab->lock`, drafted (fork #27) | A possible hard hang at netns exit; lockdep fails the KASAN VM until it is fixed | small | us → upstream |
526-
| 18 | F12: `strip.py` `#else` toggle (upstream #134, not ours) and `mem_cgroup_from_sk()`, drafted (fork #26) | The net-next files must build in-tree before any submission | small | us → upstream |
527-
| 20 | F14: `skb_queue_len_lockless()` and `READ_ONCE`/`WRITE_ONCE` on `tx_left`, drafted (fork #28) | KCSAN fails the pair lifecycle until the intended race is annotated | small | us → upstream |
525+
| 19 | F13: walk the route table outside `peertab->lock`, sent (upstream #147) | A possible hard hang at netns exit; lockdep fails the KASAN VM until it is fixed | small | us → upstream |
526+
| 18 | F12: `strip.py` `#else` toggle (upstream #134, not ours) and `mem_cgroup_from_sk()`, sent (upstream #146) | The net-next files must build in-tree before any submission | small | us → upstream |
527+
| 20 | F14: `skb_queue_len_lockless()` and `READ_ONCE`/`WRITE_ONCE` on `tx_left`, sent (upstream #148) | KCSAN fails the pair lifecycle until the intended race is annotated | small | us → upstream |
528528
| 12 | Keep `nix/fuzz/known-findings.txt` in step with upstream | Entries come out as fixes land, so the fuzz-mock gate stays meaningful; currently empty | ongoing | us |
529529

530530
---

0 commit comments

Comments
 (0)