[PATCH v3 0/2] 9p/trans_xen: fixes and parser cleanup

Eric-Terminal
2026-03-24T15:30:30Z

Hi,

This series provides a stability fix and a parser modernization for the
9p Xen transport. It has been split from the previous mixed series
following feedback from Dominique Martinet to ease review and testing.

Patch 1 fixes a potential double-free/Oops during initialization failure
by making the dataring cleanup idempotent.

Patch 2 replaces deprecated simple_strtoul() with kstrtouint() in the
backend version parsing logic, ensuring stricter input validation.

Testing:
- Verified the series using virtme-ng.
- Patch 1: Tested error paths by forcing init failures on non-Xen systems;
dmesg confirms the new sentinel-based cleanup correctly prevents Oops.
- Patch 2: Verified with a userspace mock harness that it correctly
handles empty tokens (,,) and rejects malformed input (1abc).

v3:
- Split into a dedicated 9p/trans_xen series for v9fs.
- No functional changes since v2.

Yufan Chen (2):
9p/trans_xen: make cleanup idempotent after dataring alloc errors
9p/trans_xen: replace simple_strto* with kstrtouint

net/9p/trans_xen.c | 77 +++++++++++++++++++++++++++++++++++-------------------
1 file changed, 50 insertions(+), 27 deletions(-)

--
2.47.3