Commit 02a8222
committed
feat: support remount with RDONLY flags
This commit introduces enhancements to the remount functionality in the
filesystem module, enabling better support for read-only (RDONLY) mounts.
The updates is essential for user space init proc to cleanup the runtime
resource, ensuring clean handling of cached data and enhancing system
robustness during power down processing.
Changes:
- Added `MNT_LAZY_UMNT` and `MNT_RDONLY` flags to `dfs_mnt` structure.
- Introduced `dfs_mnt_setflags` function for dynamic flag management.
- Updated `dfs_remount` to utilize `dfs_mnt_setflags` for flag setting.
- Enhanced unmount operations with `dfs_mnt_umount_iter` and lazy unmounting.
- Added `dfs_pcache_clean` to handle cache cleanup for read-only mounts.
- Improved error reporting in `dfs_umount` for better user feedback.
- Refactored `sys_mount` to streamline parameter handling and support remounts.
- Introduced `_cp_from_usr_string` helper for user-space string operations.
- Updated internal APIs to ensure consistency in reference count management.
Signed-off-by: Shell <[email protected]>1 parent 1c97a36 commit 02a8222
File tree
6 files changed
+121
-64
lines changed- components
- dfs/dfs_v2
- include
- src
- lwp
6 files changed
+121
-64
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
| 42 | + | |
42 | 43 | | |
43 | 44 | | |
44 | 45 | | |
| |||
61 | 62 | | |
62 | 63 | | |
63 | 64 | | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
64 | 68 | | |
65 | 69 | | |
66 | 70 | | |
| 71 | + | |
67 | 72 | | |
68 | 73 | | |
69 | 74 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
118 | 118 | | |
119 | 119 | | |
120 | 120 | | |
| 121 | + | |
121 | 122 | | |
122 | 123 | | |
123 | 124 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
119 | 119 | | |
120 | 120 | | |
121 | 121 | | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
| 122 | + | |
126 | 123 | | |
127 | 124 | | |
128 | 125 | | |
| |||
363 | 360 | | |
364 | 361 | | |
365 | 362 | | |
366 | | - | |
| 363 | + | |
367 | 364 | | |
368 | 365 | | |
369 | 366 | | |
| |||
376 | 373 | | |
377 | 374 | | |
378 | 375 | | |
379 | | - | |
| 376 | + | |
380 | 377 | | |
381 | 378 | | |
382 | 379 | | |
383 | 380 | | |
384 | | - | |
| 381 | + | |
385 | 382 | | |
386 | 383 | | |
387 | 384 | | |
388 | 385 | | |
389 | | - | |
| 386 | + | |
390 | 387 | | |
391 | 388 | | |
392 | 389 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
10 | 10 | | |
11 | 11 | | |
12 | 12 | | |
13 | | - | |
14 | | - | |
15 | | - | |
16 | 13 | | |
17 | 14 | | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
18 | 20 | | |
19 | 21 | | |
20 | 22 | | |
| |||
77 | 79 | | |
78 | 80 | | |
79 | 81 | | |
| 82 | + | |
80 | 83 | | |
81 | 84 | | |
82 | 85 | | |
| |||
244 | 247 | | |
245 | 248 | | |
246 | 249 | | |
247 | | - | |
| 250 | + | |
248 | 251 | | |
249 | 252 | | |
| 253 | + | |
250 | 254 | | |
251 | 255 | | |
252 | 256 | | |
253 | | - | |
| 257 | + | |
254 | 258 | | |
255 | | - | |
| 259 | + | |
256 | 260 | | |
257 | 261 | | |
258 | 262 | | |
| |||
282 | 286 | | |
283 | 287 | | |
284 | 288 | | |
| 289 | + | |
| 290 | + | |
| 291 | + | |
| 292 | + | |
| 293 | + | |
| 294 | + | |
| 295 | + | |
| 296 | + | |
| 297 | + | |
| 298 | + | |
| 299 | + | |
| 300 | + | |
| 301 | + | |
285 | 302 | | |
286 | 303 | | |
287 | 304 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
161 | 161 | | |
162 | 162 | | |
163 | 163 | | |
164 | | - | |
| 164 | + | |
165 | 165 | | |
166 | 166 | | |
167 | 167 | | |
| |||
176 | 176 | | |
177 | 177 | | |
178 | 178 | | |
179 | | - | |
| 179 | + | |
180 | 180 | | |
181 | 181 | | |
182 | 182 | | |
| |||
188 | 188 | | |
189 | 189 | | |
190 | 190 | | |
191 | | - | |
| 191 | + | |
192 | 192 | | |
193 | 193 | | |
194 | 194 | | |
195 | 195 | | |
196 | 196 | | |
197 | 197 | | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
| 201 | + | |
| 202 | + | |
| 203 | + | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
| 212 | + | |
198 | 213 | | |
199 | 214 | | |
200 | 215 | | |
| |||
1139 | 1154 | | |
1140 | 1155 | | |
1141 | 1156 | | |
1142 | | - | |
1143 | | - | |
1144 | 1157 | | |
1145 | 1158 | | |
1146 | 1159 | | |
1147 | 1160 | | |
1148 | 1161 | | |
1149 | 1162 | | |
| 1163 | + | |
| 1164 | + | |
| 1165 | + | |
| 1166 | + | |
| 1167 | + | |
| 1168 | + | |
| 1169 | + | |
| 1170 | + | |
| 1171 | + | |
1150 | 1172 | | |
1151 | 1173 | | |
1152 | 1174 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
5743 | 5743 | | |
5744 | 5744 | | |
5745 | 5745 | | |
5746 | | - | |
5747 | | - | |
5748 | | - | |
5749 | | - | |
5750 | | - | |
5751 | | - | |
5752 | | - | |
5753 | | - | |
5754 | | - | |
5755 | | - | |
| 5746 | + | |
| 5747 | + | |
| 5748 | + | |
| 5749 | + | |
| 5750 | + | |
| 5751 | + | |
| 5752 | + | |
| 5753 | + | |
| 5754 | + | |
| 5755 | + | |
| 5756 | + | |
| 5757 | + | |
| 5758 | + | |
| 5759 | + | |
| 5760 | + | |
| 5761 | + | |
| 5762 | + | |
| 5763 | + | |
| 5764 | + | |
| 5765 | + | |
| 5766 | + | |
| 5767 | + | |
5756 | 5768 | | |
5757 | 5769 | | |
5758 | 5770 | | |
| 5771 | + | |
5759 | 5772 | | |
5760 | | - | |
5761 | | - | |
| 5773 | + | |
| 5774 | + | |
5762 | 5775 | | |
5763 | 5776 | | |
5764 | | - | |
| 5777 | + | |
5765 | 5778 | | |
5766 | 5779 | | |
5767 | 5780 | | |
5768 | | - | |
5769 | | - | |
| 5781 | + | |
| 5782 | + | |
5770 | 5783 | | |
5771 | 5784 | | |
5772 | | - | |
5773 | | - | |
| 5785 | + | |
| 5786 | + | |
5774 | 5787 | | |
5775 | 5788 | | |
5776 | 5789 | | |
5777 | | - | |
5778 | | - | |
5779 | 5790 | | |
5780 | | - | |
5781 | | - | |
5782 | | - | |
5783 | | - | |
5784 | | - | |
5785 | | - | |
| 5791 | + | |
| 5792 | + | |
| 5793 | + | |
| 5794 | + | |
| 5795 | + | |
| 5796 | + | |
| 5797 | + | |
5786 | 5798 | | |
5787 | | - | |
| 5799 | + | |
5788 | 5800 | | |
5789 | | - | |
5790 | | - | |
| 5801 | + | |
5791 | 5802 | | |
5792 | | - | |
| 5803 | + | |
5793 | 5804 | | |
5794 | | - | |
5795 | | - | |
| 5805 | + | |
| 5806 | + | |
| 5807 | + | |
| 5808 | + | |
| 5809 | + | |
| 5810 | + | |
| 5811 | + | |
| 5812 | + | |
| 5813 | + | |
5796 | 5814 | | |
5797 | | - | |
5798 | | - | |
5799 | | - | |
5800 | | - | |
5801 | | - | |
5802 | | - | |
| 5815 | + | |
5803 | 5816 | | |
5804 | | - | |
| 5817 | + | |
| 5818 | + | |
| 5819 | + | |
5805 | 5820 | | |
5806 | | - | |
5807 | | - | |
5808 | | - | |
5809 | | - | |
5810 | | - | |
5811 | | - | |
| 5821 | + | |
| 5822 | + | |
| 5823 | + | |
| 5824 | + | |
| 5825 | + | |
5812 | 5826 | | |
5813 | 5827 | | |
5814 | 5828 | | |
5815 | 5829 | | |
5816 | | - | |
5817 | 5830 | | |
5818 | 5831 | | |
| 5832 | + | |
| 5833 | + | |
5819 | 5834 | | |
5820 | 5835 | | |
5821 | 5836 | | |
| |||
0 commit comments