Martin Radev
b67a3cd053
gpu: nvgpu: ga10b: Correct VAB implementation
...
This patch performs the following improvements for VAB:
1) It avoids an infinite loop when collecting VAB information.
Previously, nvgpu incorrectly assumed that the valid bit would
be eventually set for the checker when polling. It may not be set
if a VAB-related fault has occurred.
2) It handles the VAB_ERROR mmu fault which may be caused for various
reasons: invalid vab buffer address, tracking in protected mode,
etc. The recovery sequence is to set the vab buffer size to 0 and
then to the original size. This clears the VAB_ERROR bit. After
reseting, the old register values are again set in the recovery
code sequence.
3) Use correct number of VAB buffers. There's only one VAB buffer on
ga10b, not two.
4) Simplify logic.
Bug 3374805
Bug 3465734
Bug 3473147
Change-Id: I716f460ef37cb848ddc56a64c6f83024c4bb9811
Signed-off-by: Martin Radev <mradev@nvidia.com >
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2621290
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com >
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com >
2021-12-22 08:22:13 -08:00
..
2021-07-02 09:57:56 -07:00
2021-11-18 03:57:18 -08:00
2020-12-15 14:10:29 -06:00
2020-12-15 14:10:29 -06:00
2020-12-15 14:10:29 -06:00
2020-12-15 14:10:29 -06:00
2020-12-15 14:10:29 -06:00
2021-10-26 13:47:32 -07:00
2020-12-15 14:13:28 -06:00
2020-12-15 14:13:48 -06:00
2021-11-25 08:16:31 -08:00
2021-11-25 08:16:31 -08:00
2021-11-25 08:16:31 -08:00
2018-06-15 17:47:31 -07:00
2021-09-02 11:42:08 -07:00
2019-01-31 12:04:10 -08:00
2018-06-15 17:47:31 -07:00
2018-06-15 17:47:31 -07:00
2020-12-15 14:05:52 -06:00
2018-06-27 07:30:06 -07:00
2018-06-15 17:47:31 -07:00
2018-06-15 17:47:31 -07:00
2020-12-15 14:10:29 -06:00
2019-04-19 13:55:11 -07:00
2020-12-15 14:13:28 -06:00
2018-09-05 04:51:40 -07:00
2020-12-15 14:13:28 -06:00
2019-07-26 04:07:01 -07:00
2020-12-15 14:13:28 -06:00
2019-06-11 09:46:24 -07:00
2021-11-03 20:55:08 -07:00
2020-12-15 14:13:28 -06:00
2021-11-24 17:55:57 -08:00
2018-06-15 17:47:31 -07:00
2021-12-10 13:25:05 -08:00
2021-09-10 16:02:43 -07:00
2018-06-15 17:47:31 -07:00
2018-06-15 17:47:31 -07:00
2018-10-31 15:25:23 -07:00
2018-06-15 17:47:31 -07:00
2020-12-15 14:05:52 -06:00
2018-07-24 16:10:58 -07:00
2019-01-10 20:09:38 -08:00
2018-09-05 04:51:50 -07:00
2021-10-11 08:16:48 -07:00
2018-06-15 17:47:31 -07:00
2020-12-15 14:13:28 -06:00
2019-02-11 20:55:07 -08:00
2020-12-15 14:13:28 -06:00
2018-06-15 17:47:31 -07:00
2021-08-28 06:56:24 -07:00
2019-06-13 23:05:43 -07:00
2020-12-15 14:13:28 -06:00
2019-02-01 09:45:57 -08:00
2018-10-31 15:25:23 -07:00
2018-06-15 17:47:31 -07:00
2021-09-10 16:02:43 -07:00
2021-11-27 10:08:14 -08:00
2021-09-02 11:42:08 -07:00
2020-12-15 14:13:28 -06:00
2020-12-15 14:13:28 -06:00
2021-12-07 07:11:14 -08:00
2021-11-18 03:57:18 -08:00
2018-06-15 17:47:31 -07:00
2021-08-11 01:55:08 -07:00
2020-12-15 14:13:28 -06:00
2020-12-15 14:13:28 -06:00
2019-02-20 23:05:04 -08:00
2021-10-27 21:18:19 -07:00
2021-05-10 02:53:39 -07:00
2021-04-19 19:45:24 -07:00
2021-06-28 22:39:06 -07:00
2018-06-15 17:47:31 -07:00
2021-05-18 18:18:25 -07:00
2020-12-15 14:13:28 -06:00
2021-09-01 09:50:11 -07:00
2021-12-07 07:11:14 -08:00
2018-10-29 08:04:25 -07:00
2021-10-22 06:20:13 -07:00
2020-12-15 14:13:28 -06:00
2021-12-15 06:05:25 -08:00
2021-12-07 07:07:01 -08:00
2021-12-22 08:22:13 -08:00
2021-06-27 05:02:58 -07:00
2021-12-15 06:05:25 -08:00
2020-12-15 14:13:48 -06:00
2021-12-07 07:07:01 -08:00
2021-12-07 07:07:01 -08:00
2021-05-10 10:08:13 -07:00
2021-05-10 10:08:13 -07:00
2021-11-08 15:08:32 -08:00
2020-12-15 14:13:28 -06:00
2021-11-12 07:31:15 -08:00
2021-04-28 11:19:19 -07:00
2021-04-19 19:45:24 -07:00
2018-06-15 17:47:31 -07:00
2021-12-14 06:26:16 -08:00
2021-08-23 05:27:50 -07:00
2020-12-15 14:13:28 -06:00
2021-06-28 18:09:14 -07:00
2021-10-11 12:29:09 -07:00
2020-12-15 14:13:48 -06:00
2021-10-11 12:29:09 -07:00
2020-12-15 14:13:28 -06:00
2020-12-15 14:13:28 -06:00
2018-07-26 00:06:07 -07:00
2020-12-15 14:13:28 -06:00
2020-12-15 14:13:28 -06:00
2020-12-15 14:13:28 -06:00
2020-12-15 14:13:28 -06:00
2020-12-15 14:13:28 -06:00
2020-12-15 14:13:48 -06:00
2021-11-26 08:46:00 -08:00
2019-04-22 05:25:48 -07:00
2018-08-29 20:34:34 -07:00
2018-09-09 17:22:24 -07:00
2018-08-29 20:34:34 -07:00
2018-09-09 17:22:24 -07:00
2018-09-09 17:22:24 -07:00
2019-07-26 04:07:01 -07:00
2018-09-05 04:51:36 -07:00
2019-07-26 04:07:01 -07:00
2018-11-08 19:35:09 -08:00
2020-12-15 14:13:28 -06:00
2018-08-29 20:34:34 -07:00
2019-05-15 22:29:40 -07:00
2020-12-15 14:13:28 -06:00
2018-10-12 17:35:10 +05:30
2021-09-16 21:45:43 -07:00
2020-12-15 14:13:28 -06:00
2021-12-18 02:50:42 -08:00
2021-09-02 15:43:07 -07:00
2018-06-15 17:47:31 -07:00
2021-12-03 08:43:52 -08:00
2021-12-03 08:43:52 -08:00
2021-06-08 21:54:23 -07:00
2021-09-25 15:47:25 -07:00
2021-10-07 17:53:30 -07:00
2021-04-21 10:15:20 -07:00
2018-06-15 17:47:31 -07:00
2021-11-26 08:46:00 -08:00
2018-06-15 17:47:31 -07:00
2021-05-25 14:30:30 -07:00
2020-12-15 14:13:28 -06:00
2021-04-28 19:15:31 -07:00
2021-04-28 19:15:31 -07:00
2021-09-07 10:28:58 -07:00
2021-11-19 08:08:11 -08:00
2020-12-15 14:13:28 -06:00
2019-05-06 02:56:53 -07:00
2020-12-15 14:13:28 -06:00
2020-12-15 14:13:28 -06:00
2020-12-15 14:13:28 -06:00
2021-12-21 12:18:14 -08:00
2018-06-15 17:47:31 -07:00
2020-12-15 14:10:29 -06:00
2021-10-26 13:47:32 -07:00
2021-10-22 06:20:13 -07:00
2021-06-22 14:10:22 -07:00
2019-08-28 14:24:19 -07:00