1
0
Fork 0

staging/fsl_qbman: stop using current_kernel_time()

The current_kernel_time() call was removed in [1] in order to avoid
overflows in 2038. Use ktime_get_coarse_real_ts64() instead.

[1] 9765164 ("y2038: remove unused time interfaces")

Signed-off-by: Camelia Groza <camelia.groza@nxp.com>
5.4-rM2-2.2.x-imx-squashed
Camelia Groza 2018-10-10 17:30:18 +03:00 committed by Dong Aisheng
parent 01a63a24ac
commit 08f45df7f9
1 changed files with 6 additions and 3 deletions

View File

@ -57,7 +57,10 @@ static __init int qbman_init(void)
};
struct qm_mcr_queryfq_np np;
int err, retry = CONFIG_FSL_QMAN_INIT_TIMEOUT;
struct timespec nowts, diffts, startts = current_kernel_time();
struct timespec64 nowts, diffts, startts;
ktime_get_coarse_real_ts64(&startts);
/* Loop while querying given fqid succeeds or time out */
while (1) {
err = qman_query_fq_np(&fq, &np);
@ -68,8 +71,8 @@ static __init int qbman_init(void)
pr_err("QMan: I/O error, continuing anyway\n");
break;
}
nowts = current_kernel_time();
diffts = timespec_sub(nowts, startts);
ktime_get_coarse_real_ts64(&nowts);
diffts = timespec64_sub(nowts, startts);
if (diffts.tv_sec > 0) {
if (!retry--) {
pr_err("QMan: time out, control-plane"