aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoshua Bakita <bakitajoshua@gmail.com>2023-10-29 13:45:28 -0400
committerJoshua Bakita <bakitajoshua@gmail.com>2023-10-29 13:45:28 -0400
commit874aecaf06a96f5866f9bf31437a1ebd27c2f408 (patch)
treef8e6e63c77e018b9c01e617a3c5ff81ba71a51a9
parent9199cc9e3bd6070bf54e28f5311867433af3dd59 (diff)
Rather than abort, print placeholders for missing runlist channels
Sometimes such "malformed" runlists appear on the TX2, yet they seem to work fine, so support printing them in full.
-rw-r--r--runlist_procfs.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/runlist_procfs.c b/runlist_procfs.c
index d9ec6eb..f7f937d 100644
--- a/runlist_procfs.c
+++ b/runlist_procfs.c
@@ -119,8 +119,9 @@ static int runlist_file_seq_show(struct seq_file *s, void *raw_rl_iter) {
119 struct nvdebug_state *g = &g_nvdebug_state[file2parentgpuidx(s->file)]; 119 struct nvdebug_state *g = &g_nvdebug_state[file2parentgpuidx(s->file)];
120 if (entry_type(g, entry) == ENTRY_TYPE_TSG) { 120 if (entry_type(g, entry) == ENTRY_TYPE_TSG) {
121 if (rl_iter->channels_left_in_tsg) { 121 if (rl_iter->channels_left_in_tsg) {
122 printk(KERN_WARNING "[nvdebug] Found a TSG @ %px when %d channels were still expected under the previous TSG in the runlist!\n", entry, rl_iter->channels_left_in_tsg); 122 printk(KERN_WARNING "[nvdebug] Found TSG ID%d @ %px when %d channels were still expected under the previous TSG in the runlist!\n", tsgid(g, entry), entry, rl_iter->channels_left_in_tsg);
123 return -EIO; 123 while (rl_iter->channels_left_in_tsg--)
124 seq_printf(s, "[missing channel]\n");
124 } 125 }
125 rl_iter->channels_left_in_tsg = tsg_length(g, entry); 126 rl_iter->channels_left_in_tsg = tsg_length(g, entry);
126 seq_printf(s, "+---- TSG Entry %-3d---+\n", tsgid(g, entry)); 127 seq_printf(s, "+---- TSG Entry %-3d---+\n", tsgid(g, entry));