Commit 74a6565f authored by Jann Horn's avatar Jann Horn Committed by Greg Kroah-Hartman

staging: rtl8723bs: use kernel_read() instead of open-coded version

Replace the manual call to f_op->read() under KERNEL_DS with kernel_read().
This also reduces the number of users of the legacy alias get_ds() for
KERNEL_DS.
Signed-off-by: default avatarJann Horn <jannh@google.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 3b3a1a0b
...@@ -107,7 +107,7 @@ static int readFile(struct file *fp, char *buf, int len) ...@@ -107,7 +107,7 @@ static int readFile(struct file *fp, char *buf, int len)
return -EPERM; return -EPERM;
while (sum<len) { while (sum<len) {
rlen =fp->f_op->read(fp, (char __force __user *)buf+sum, len-sum, &fp->f_pos); rlen = kernel_read(fp, buf + sum, len - sum, &fp->f_pos);
if (rlen>0) if (rlen>0)
sum+=rlen; sum+=rlen;
else if (0 != rlen) else if (0 != rlen)
...@@ -116,7 +116,7 @@ static int readFile(struct file *fp, char *buf, int len) ...@@ -116,7 +116,7 @@ static int readFile(struct file *fp, char *buf, int len)
break; break;
} }
return sum; return sum;
} }
...@@ -129,22 +129,16 @@ static int isFileReadable(char *path) ...@@ -129,22 +129,16 @@ static int isFileReadable(char *path)
{ {
struct file *fp; struct file *fp;
int ret = 0; int ret = 0;
mm_segment_t oldfs;
char buf; char buf;
fp =filp_open(path, O_RDONLY, 0); fp =filp_open(path, O_RDONLY, 0);
if (IS_ERR(fp)) { if (IS_ERR(fp))
ret = PTR_ERR(fp); return PTR_ERR(fp);
}
else {
oldfs = get_fs(); set_fs(KERNEL_DS);
if (1!=readFile(fp, &buf, 1)) if (readFile(fp, &buf, 1) != 1)
ret = -EINVAL; ret = -EINVAL;
set_fs(oldfs); filp_close(fp, NULL);
filp_close(fp, NULL);
}
return ret; return ret;
} }
...@@ -158,16 +152,13 @@ static int isFileReadable(char *path) ...@@ -158,16 +152,13 @@ static int isFileReadable(char *path)
static int retriveFromFile(char *path, u8 *buf, u32 sz) static int retriveFromFile(char *path, u8 *buf, u32 sz)
{ {
int ret =-1; int ret =-1;
mm_segment_t oldfs;
struct file *fp; struct file *fp;
if (path && buf) { if (path && buf) {
if (0 == (ret =openFile(&fp, path, O_RDONLY, 0))) { if (0 == (ret =openFile(&fp, path, O_RDONLY, 0))) {
DBG_871X("%s openFile path:%s fp =%p\n", __func__, path , fp); DBG_871X("%s openFile path:%s fp =%p\n", __func__, path , fp);
oldfs = get_fs(); set_fs(KERNEL_DS);
ret =readFile(fp, buf, sz); ret =readFile(fp, buf, sz);
set_fs(oldfs);
closeFile(fp); closeFile(fp);
DBG_871X("%s readFile, ret:%d\n", __func__, ret); DBG_871X("%s readFile, ret:%d\n", __func__, ret);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment