qcacmn: Migrate qdf_ssr_protect/unprotect
qdf_op_protect/unprotect supersede qdf_ssr_protect/unprotect. Replace calls to qdf_ssr_protect/unprotect with qdf_op_protect/qdf_op_unprotect. Change-Id: Iab80e4cbf6b87b37a0d761e7ecea695b840c5e5e CRs-Fixed: 2418450
This commit is contained in:

zatwierdzone przez
nshrivas

rodzic
766ea098f6
commit
50eab9871f
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* Copyright (c) 2012-2018 The Linux Foundation. All rights reserved.
|
||||
* Copyright (c) 2012-2019 The Linux Foundation. All rights reserved.
|
||||
*
|
||||
* Permission to use, copy, modify, and/or distribute this software for
|
||||
* any purpose with or without fee is hereby granted, provided that the
|
||||
@@ -537,9 +537,7 @@ static int __pktlog_open(struct inode *i, struct file *f)
|
||||
int ret = 0;
|
||||
|
||||
PKTLOG_MOD_INC_USE_COUNT;
|
||||
pl_info = (struct ath_pktlog_info *)
|
||||
PDE_DATA(f->f_path.dentry->d_inode);
|
||||
|
||||
pl_info = PDE_DATA(f->f_path.dentry->d_inode);
|
||||
if (!pl_info) {
|
||||
pr_err("%s: pl_info NULL", __func__);
|
||||
return -EINVAL;
|
||||
@@ -551,11 +549,6 @@ static int __pktlog_open(struct inode *i, struct file *f)
|
||||
return -EBUSY;
|
||||
}
|
||||
|
||||
if (qdf_is_module_state_transitioning()) {
|
||||
pr_info("%s: module transition in progress", __func__);
|
||||
return -EAGAIN;
|
||||
}
|
||||
|
||||
pl_info->curr_pkt_state = PKTLOG_OPR_IN_PROGRESS_READ_START;
|
||||
scn = cds_get_context(QDF_MODULE_ID_HIF);
|
||||
if (!scn) {
|
||||
@@ -593,13 +586,18 @@ static int __pktlog_open(struct inode *i, struct file *f)
|
||||
|
||||
static int pktlog_open(struct inode *i, struct file *f)
|
||||
{
|
||||
int ret;
|
||||
struct qdf_op_sync *op_sync;
|
||||
int errno;
|
||||
|
||||
qdf_ssr_protect(__func__);
|
||||
ret = __pktlog_open(i, f);
|
||||
qdf_ssr_unprotect(__func__);
|
||||
errno = qdf_op_protect(&op_sync);
|
||||
if (errno)
|
||||
return errno;
|
||||
|
||||
return ret;
|
||||
errno = __pktlog_open(i, f);
|
||||
|
||||
qdf_op_unprotect(op_sync);
|
||||
|
||||
return errno;
|
||||
}
|
||||
|
||||
static int __pktlog_release(struct inode *i, struct file *f)
|
||||
@@ -611,17 +609,10 @@ static int __pktlog_release(struct inode *i, struct file *f)
|
||||
|
||||
PKTLOG_MOD_DEC_USE_COUNT;
|
||||
|
||||
pl_info = (struct ath_pktlog_info *)
|
||||
PDE_DATA(f->f_path.dentry->d_inode);
|
||||
|
||||
pl_info = PDE_DATA(f->f_path.dentry->d_inode);
|
||||
if (!pl_info)
|
||||
return -EINVAL;
|
||||
|
||||
if (qdf_is_module_state_transitioning()) {
|
||||
pr_info("%s: module transition in progress", __func__);
|
||||
return -EAGAIN;
|
||||
}
|
||||
|
||||
scn = cds_get_context(QDF_MODULE_ID_HIF);
|
||||
if (!scn) {
|
||||
pl_info->curr_pkt_state = PKTLOG_OPR_NOT_IN_PROGRESS;
|
||||
@@ -660,13 +651,18 @@ static int __pktlog_release(struct inode *i, struct file *f)
|
||||
|
||||
static int pktlog_release(struct inode *i, struct file *f)
|
||||
{
|
||||
int ret;
|
||||
struct qdf_op_sync *op_sync;
|
||||
int errno;
|
||||
|
||||
qdf_ssr_protect(__func__);
|
||||
ret = __pktlog_release(i, f);
|
||||
qdf_ssr_unprotect(__func__);
|
||||
errno = qdf_op_protect(&op_sync);
|
||||
if (errno)
|
||||
return errno;
|
||||
|
||||
return ret;
|
||||
errno = __pktlog_release(i, f);
|
||||
|
||||
qdf_op_unprotect(op_sync);
|
||||
|
||||
return errno;
|
||||
}
|
||||
|
||||
#ifndef MIN
|
||||
@@ -839,13 +835,7 @@ __pktlog_read(struct file *file, char *buf, size_t nbytes, loff_t *ppos)
|
||||
struct ath_pktlog_info *pl_info;
|
||||
struct ath_pktlog_buf *log_buf;
|
||||
|
||||
if (qdf_is_module_state_transitioning()) {
|
||||
pr_info("%s: module transition in progress", __func__);
|
||||
return -EAGAIN;
|
||||
}
|
||||
|
||||
pl_info = (struct ath_pktlog_info *)
|
||||
PDE_DATA(file->f_path.dentry->d_inode);
|
||||
pl_info = PDE_DATA(file->f_path.dentry->d_inode);
|
||||
if (!pl_info)
|
||||
return 0;
|
||||
|
||||
@@ -988,20 +978,24 @@ rd_done:
|
||||
static ssize_t
|
||||
pktlog_read(struct file *file, char *buf, size_t nbytes, loff_t *ppos)
|
||||
{
|
||||
size_t ret;
|
||||
struct ath_pktlog_info *pl_info;
|
||||
struct ath_pktlog_info *info = PDE_DATA(file->f_path.dentry->d_inode);
|
||||
struct qdf_op_sync *op_sync;
|
||||
ssize_t err_size;
|
||||
|
||||
pl_info = (struct ath_pktlog_info *)
|
||||
PDE_DATA(file->f_path.dentry->d_inode);
|
||||
if (!pl_info)
|
||||
if (!info)
|
||||
return 0;
|
||||
|
||||
qdf_ssr_protect(__func__);
|
||||
mutex_lock(&pl_info->pktlog_mutex);
|
||||
ret = __pktlog_read(file, buf, nbytes, ppos);
|
||||
mutex_unlock(&pl_info->pktlog_mutex);
|
||||
qdf_ssr_unprotect(__func__);
|
||||
return ret;
|
||||
err_size = qdf_op_protect(&op_sync);
|
||||
if (err_size)
|
||||
return err_size;
|
||||
|
||||
mutex_lock(&info->pktlog_mutex);
|
||||
err_size = __pktlog_read(file, buf, nbytes, ppos);
|
||||
mutex_unlock(&info->pktlog_mutex);
|
||||
|
||||
qdf_op_unprotect(op_sync);
|
||||
|
||||
return err_size;
|
||||
}
|
||||
|
||||
int pktlogmod_init(void *context)
|
||||
|
Reference in New Issue
Block a user