381dd8ef20
The two-step pattern (open full path as scheme root, then open reference relative to root_fd) failed for namespace-internal paths like /scheme/namespace/scheme-creation-cap. The namespace scheme resolves the full path and returns OtherScheme pointing to SchemeList (a kernel scheme that does not implement kopenat). The second call then hits SchemeList.kopenat() → EOPNOTSUPP. The namespace scheme already handles reference resolution internally via open_scheme_resource(), so a single SYS_OPENAT call with the full path resolves everything. This also bypasses FILETABLE.insert_upper (which previously collided with the untracked ns_fd at UPPER index 0).