aboutsummaryrefslogtreecommitdiffstats
path: root/package/kernel/mwlwifi/patches/001-remove-vfs_write.patch
blob: 9703d1d688958f0ca1c09392e986e5fc4185e741 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
--- a/debugfs.c
+++ b/debugfs.c
@@ -279,7 +279,6 @@ static void core_dump_file(u8 *valbuf, u
 			   u32 append, u32 totallen, bool textmode)
 {
 	struct file *filp_core = NULL;
-	mm_segment_t oldfs;
 	char file_name[40];
 	u8 *buf = kmalloc(length * 3, GFP_KERNEL);
 	u8 *data_p = buf;
@@ -292,9 +291,6 @@ static void core_dump_file(u8 *valbuf, u
 	sprintf(file_name, "/dev/shm/coredump-%x-%x",
 		region, (region + totallen));
 
-	oldfs = get_fs();
-	set_fs(KERNEL_DS);
-
 	if (append)
 		filp_core = filp_open(file_name, O_RDWR | O_APPEND, 0);
 	else
@@ -317,15 +313,15 @@ static void core_dump_file(u8 *valbuf, u
 			}
 			data_p = buf + j;
 			data_p += sprintf(data_p, "\n");
-			vfs_write(filp_core, buf, strlen(buf),
-				  &filp_core->f_pos);
+			kernel_write(filp_core, buf, strlen(buf),
+				     &filp_core->f_pos);
 		} else
-			vfs_write(filp_core, valbuf, length, &filp_core->f_pos);
+			kernel_write(filp_core, valbuf, length,
+				     &filp_core->f_pos);
 
 		filp_close(filp_core, current->files);
 	}
 
-	set_fs(oldfs);
 	kfree(buf);
 }
 
@@ -1338,7 +1334,6 @@ static ssize_t mwl_debugfs_ba_hist_read(
 	u8 bmap0flag, nobaflag;
 	char buff[500], file_location[20];
 	struct file *filp_bahisto;
-	mm_segment_t oldfs;
 	u8 *data_p = buff;
 	ssize_t ret;
 
@@ -1354,13 +1349,10 @@ static ssize_t mwl_debugfs_ba_hist_read(
 	memset(file_location, 0, sizeof(file_location));
 	sprintf(file_location, "/tmp/ba_histo-%d", priv->ba_aid);
 
-	oldfs = get_fs();
-	set_fs(KERNEL_DS);
 	filp_bahisto = filp_open(file_location,
 				 O_RDWR | O_CREAT | O_TRUNC, 0);
 
 	if (IS_ERR(filp_bahisto)) {
-		set_fs(oldfs);
 		ret = -EIO;
 		goto err;
 	}
@@ -1401,8 +1393,8 @@ static ssize_t mwl_debugfs_ba_hist_read(
 
 			/* Buffer is full. Write to file and reset buf */
 			if ((strlen(buff) + 36) >= 500) {
-				vfs_write(filp_bahisto, buff, strlen(buff),
-					  &filp_bahisto->f_pos);
+				kernel_write(filp_bahisto, buff, strlen(buff),
+					     &filp_bahisto->f_pos);
 				mdelay(2);
 				memset(buff, 0, sizeof(buff));
 				data_p = buff;
@@ -1426,8 +1418,8 @@ static ssize_t mwl_debugfs_ba_hist_read(
 				data_p += sprintf(data_p, "%8d\n", nobaflag);
 		}
 
-		vfs_write(filp_bahisto, buff, strlen(buff),
-			  &filp_bahisto->f_pos);
+		kernel_write(filp_bahisto, buff, strlen(buff),
+			     &filp_bahisto->f_pos);
 		len += scnprintf(p + len, size - len,
 				 "hole: %d, expect: %d, bmap0: %d, noba: %d\n",
 				 baholecnt, baexpcnt, bmap0cnt, nobacnt);
@@ -1440,7 +1432,6 @@ static ssize_t mwl_debugfs_ba_hist_read(
 				 priv->ba_aid);
 
 	filp_close(filp_bahisto, current->files);
-	set_fs(oldfs);
 
 	ret = simple_read_from_buffer(ubuf, count, ppos, p, len);