diff options
| author | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-07 15:15:39 -0400 |
|---|---|---|
| committer | Arthur Hanson Rasmusson <arthur@vgpu.io> | 2026-10-07 15:15:39 -0400 |
| commit | 0e156a330ca60ef99895deb237ef79fea92d9db1 (patch) | |
| tree | 2a4b8c9cc6f54d4c45b81c8a37762f68ee8709f4 | |
| parent | 6aeb72dd60aec44325d293963156f6c90f7de9f0 (diff) | |
| download | open-iov-0e156a330ca60ef99895deb237ef79fea92d9db1.tar.gz open-iov-0e156a330ca60ef99895deb237ef79fea92d9db1.zip | |
vgsp: m107 - debug the bank-4 injection path: launch-opts print + unconditional inject
m106's bank-4 injection silently did not fire although the insmod args
carried mail_patch=1 and the stage-3 data pool installed. Print the getter
values at launch and log the injection entry (w0/w1/mail.pages/pt31.pages),
then inject unconditionally when bank-4 is processed so the pool-backed
mail page (window 31) is exercised either way.
| -rw-r--r-- | kernel/gsp_phys_booter.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/kernel/gsp_phys_booter.c b/kernel/gsp_phys_booter.c index ef192be..7254f24 100644 --- a/kernel/gsp_phys_booter.c +++ b/kernel/gsp_phys_booter.c @@ -16632,7 +16632,12 @@ int gsp_phys_backend_guest_gr_submit(const struct gsp_phys_gr_submit *req, gsp_phys_rmcall_gr_mail_patch_value()) { u32 *w = (u32 *)sh_page; - if (!w[0] && !w[1]) { + pr_info("vgsp-gr: bank4 inject entry: w0=%08x w1=%08x mail.pages=%u pt31.pages=%u\n", + w[0], w[1], + boot_stage.rmcall_gr_mail.pages, + boot_stage.rmcall_gr_data_pt + [GSP_PHYS_RMCALL_GR_DATA_WINS - 1].pages); + { static const char mail[] = "the little gpu man says you've got mail"; u64 mva = GSP_PHYS_RMCALL_VA_GR_DATA_BASE + @@ -17045,6 +17050,11 @@ gr_page_unmapped: goto out; } + pr_info("vgsp-gr: launch opts: mail_patch=%d data_prewin=%d pte_kind=%d ptr_guest=%d\n", + gsp_phys_rmcall_gr_mail_patch_value(), + gsp_phys_rmcall_gr_data_prewin_value(), + gsp_phys_rmcall_gr_pte_kind_value(), + gsp_phys_rmcall_gr_ptr_guest_value()); { struct gsp_phys_boot_chunk *inst_c = &boot_stage.rmcall_chunks[GSP_PHYS_RMCALL_BUF_INSTANCE]; |
