diff options
| author | Joshua Bakita <bakitajoshua@gmail.com> | 2023-10-29 13:45:28 -0400 |
|---|---|---|
| committer | Joshua Bakita <bakitajoshua@gmail.com> | 2023-10-29 13:45:28 -0400 |
| commit | 874aecaf06a96f5866f9bf31437a1ebd27c2f408 (patch) | |
| tree | f8e6e63c77e018b9c01e617a3c5ff81ba71a51a9 /runlist_procfs.c | |
| parent | 9199cc9e3bd6070bf54e28f5311867433af3dd59 (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.
Diffstat (limited to 'runlist_procfs.c')
| -rw-r--r-- | runlist_procfs.c | 5 |
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)); |
