Increase IVC timeout

Intermittent vblk failure during boot up.

Change Contains:
 [*] Increase the ivc_notified() timeout from
32usecs to 15msecs

Bug 4826664

Signed-off-by: gokull <gokull@nvidia.com>
Change-Id: I3a5aef2dd5288e16ae4e51cf081b53b388327022

(cherry-picked from commit
b1c28a9a2b6d919864d51cdea271001a68522d8b)

Change-Id: I3a5aef2dd5288e16ae4e51cf081b53b388327022
Reviewed-on: https://git-master.nvidia.com/r/c/linux-nv-oot/+/3210713
GVS: buildbot_gerritrpt <buildbot_gerritrpt@nvidia.com>
Reviewed-by: Vipin Kumar <vipink@nvidia.com>
Tested-by: Gokul Vasan L J <gokull@nvidia.com>
This commit is contained in:
gokull
2024-09-02 11:24:39 +00:00
committed by Jon Hunter
parent a268e2a1d2
commit 6584be8cc3
2 changed files with 23 additions and 9 deletions

View File

@@ -1,6 +1,13 @@
// SPDX-License-Identifier: GPL-2.0-only /* SPDX-FileCopyrightText: Copyright (c) 2024-2025 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
// SPDX-FileCopyrightText: Copyright (c) 2022-2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved. * SPDX-License-Identifier: LicenseRef-NvidiaProprietary
*
* NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
* property and proprietary rights in and to this material, related
* documentation and any modifications thereto. Any use, reproduction,
* disclosure or distribution of this material and related documentation
* without an express license agreement from NVIDIA CORPORATION or
* its affiliates is strictly prohibited.
*/
#include <nvidia/conftest.h> #include <nvidia/conftest.h>
#include <linux/module.h> #include <linux/module.h>
#include <linux/moduleparam.h> #include <linux/moduleparam.h>
@@ -177,7 +184,7 @@ static int vblk_send_config_cmd(struct vblk_dev *vblkdev)
return -EIO; return -EIO;
} }
set_current_state(TASK_INTERRUPTIBLE); set_current_state(TASK_INTERRUPTIBLE);
schedule_timeout(usecs_to_jiffies(1)); schedule_timeout(usecs_to_jiffies(IVC_RESET_RETRY_WAIT_15USECS));
} }
} }
vs_req = (struct vs_request *) vs_req = (struct vs_request *)
@@ -1048,7 +1055,7 @@ static int vblk_inject_err_fsi(unsigned int inst_id, struct epl_error_report_fra
return -EIO; return -EIO;
} }
set_current_state(TASK_INTERRUPTIBLE); set_current_state(TASK_INTERRUPTIBLE);
schedule_timeout(usecs_to_jiffies(1)); schedule_timeout(usecs_to_jiffies(IVC_RESET_RETRY_WAIT_15USECS));
} }
} }

View File

@@ -1,8 +1,14 @@
/* SPDX-License-Identifier: GPL-2.0-only */
/* /*
* Copyright (c) 2022-2023, NVIDIA CORPORATION & AFFILIATES. All rights reserved. * SPDX-FileCopyrightText: Copyright (c) 2024 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
* SPDX-License-Identifier: LicenseRef-NvidiaProprietary
*
* NVIDIA CORPORATION, its affiliates and licensors retain all intellectual
* property and proprietary rights in and to this material, related
* documentation and any modifications thereto. Any use, reproduction,
* disclosure or distribution of this material and related documentation
* without an express license agreement from NVIDIA CORPORATION or
* its affiliates is strictly prohibited.
*/ */
#ifndef _TEGRA_VBLK_H_ #ifndef _TEGRA_VBLK_H_
#define _TEGRA_VBLK_H_ #define _TEGRA_VBLK_H_
@@ -23,7 +29,8 @@
/* Minor number and partition management. */ /* Minor number and partition management. */
#define VBLK_MINORS 32 #define VBLK_MINORS 32
#define IVC_RESET_RETRIES 30 #define IVC_RESET_RETRIES 1000
#define IVC_RESET_RETRY_WAIT_15USECS 15
#define VS_LOG_HEADS 4 #define VS_LOG_HEADS 4
#define VS_LOG_SECTS 16 #define VS_LOG_SECTS 16