Commit 783ea2b
Jaegeuk Kim
f2fs: add a rw_sem to cover quota flag changes
Two paths to update quota and f2fs_lock_op:
1.
- lock_op
| - quota_update
`- unlock_op
2.
- quota_update
- lock_op
`- unlock_op
But, we need to make a transaction on quota_update + lock_op in #2 case.
So, this patch introduces:
1. lock_op
2. down_write
3. check __need_flush
4. up_write
5. if there is dirty quota entries, flush them
6. otherwise, good to go
Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>1 parent e115c85 commit 783ea2b
3 files changed
Lines changed: 53 additions & 27 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1134 | 1134 | | |
1135 | 1135 | | |
1136 | 1136 | | |
| 1137 | + | |
| 1138 | + | |
1137 | 1139 | | |
1138 | 1140 | | |
1139 | | - | |
1140 | | - | |
1141 | | - | |
1142 | | - | |
1143 | | - | |
1144 | | - | |
1145 | | - | |
1146 | | - | |
1147 | | - | |
| 1141 | + | |
| 1142 | + | |
| 1143 | + | |
| 1144 | + | |
| 1145 | + | |
| 1146 | + | |
| 1147 | + | |
| 1148 | + | |
| 1149 | + | |
| 1150 | + | |
| 1151 | + | |
| 1152 | + | |
| 1153 | + | |
| 1154 | + | |
1148 | 1155 | | |
1149 | 1156 | | |
1150 | 1157 | | |
| |||
1163 | 1170 | | |
1164 | 1171 | | |
1165 | 1172 | | |
| 1173 | + | |
1166 | 1174 | | |
1167 | 1175 | | |
1168 | 1176 | | |
1169 | 1177 | | |
1170 | 1178 | | |
1171 | | - | |
| 1179 | + | |
1172 | 1180 | | |
1173 | 1181 | | |
1174 | | - | |
| 1182 | + | |
1175 | 1183 | | |
1176 | 1184 | | |
1177 | 1185 | | |
1178 | 1186 | | |
1179 | 1187 | | |
1180 | 1188 | | |
1181 | | - | |
1182 | | - | |
1183 | | - | |
1184 | | - | |
1185 | | - | |
1186 | 1189 | | |
1187 | 1190 | | |
1188 | 1191 | | |
| |||
1204 | 1207 | | |
1205 | 1208 | | |
1206 | 1209 | | |
1207 | | - | |
1208 | | - | |
1209 | | - | |
1210 | | - | |
1211 | | - | |
1212 | | - | |
1213 | 1210 | | |
1214 | 1211 | | |
1215 | 1212 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1322 | 1322 | | |
1323 | 1323 | | |
1324 | 1324 | | |
| 1325 | + | |
1325 | 1326 | | |
1326 | 1327 | | |
1327 | 1328 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1925 | 1925 | | |
1926 | 1926 | | |
1927 | 1927 | | |
| 1928 | + | |
| 1929 | + | |
| 1930 | + | |
| 1931 | + | |
| 1932 | + | |
| 1933 | + | |
| 1934 | + | |
| 1935 | + | |
| 1936 | + | |
| 1937 | + | |
| 1938 | + | |
| 1939 | + | |
1928 | 1940 | | |
1929 | 1941 | | |
1930 | 1942 | | |
| |||
1962 | 1974 | | |
1963 | 1975 | | |
1964 | 1976 | | |
| 1977 | + | |
| 1978 | + | |
1965 | 1979 | | |
1966 | 1980 | | |
1967 | 1981 | | |
| |||
2053 | 2067 | | |
2054 | 2068 | | |
2055 | 2069 | | |
| 2070 | + | |
2056 | 2071 | | |
2057 | 2072 | | |
| 2073 | + | |
2058 | 2074 | | |
2059 | 2075 | | |
2060 | | - | |
| 2076 | + | |
| 2077 | + | |
2061 | 2078 | | |
2062 | 2079 | | |
2063 | 2080 | | |
2064 | 2081 | | |
2065 | 2082 | | |
| 2083 | + | |
2066 | 2084 | | |
2067 | 2085 | | |
| 2086 | + | |
2068 | 2087 | | |
2069 | 2088 | | |
2070 | | - | |
2071 | | - | |
| 2089 | + | |
| 2090 | + | |
2072 | 2091 | | |
2073 | 2092 | | |
2074 | 2093 | | |
2075 | 2094 | | |
2076 | 2095 | | |
| 2096 | + | |
2077 | 2097 | | |
2078 | 2098 | | |
| 2099 | + | |
2079 | 2100 | | |
2080 | 2101 | | |
2081 | | - | |
| 2102 | + | |
| 2103 | + | |
2082 | 2104 | | |
2083 | 2105 | | |
2084 | 2106 | | |
| |||
2088 | 2110 | | |
2089 | 2111 | | |
2090 | 2112 | | |
| 2113 | + | |
2091 | 2114 | | |
2092 | 2115 | | |
2093 | 2116 | | |
2094 | 2117 | | |
2095 | 2118 | | |
2096 | 2119 | | |
| 2120 | + | |
2097 | 2121 | | |
2098 | 2122 | | |
2099 | 2123 | | |
2100 | 2124 | | |
2101 | 2125 | | |
| 2126 | + | |
2102 | 2127 | | |
2103 | 2128 | | |
| 2129 | + | |
2104 | 2130 | | |
2105 | 2131 | | |
2106 | | - | |
| 2132 | + | |
| 2133 | + | |
2107 | 2134 | | |
2108 | 2135 | | |
2109 | 2136 | | |
| |||
3180 | 3207 | | |
3181 | 3208 | | |
3182 | 3209 | | |
| 3210 | + | |
3183 | 3211 | | |
3184 | 3212 | | |
3185 | 3213 | | |
| |||
0 commit comments