Commit 243a526
nfsd: rework hashtable handling in nfsd_do_file_acquire
nfsd_file is RCU-freed, so we need to hold the rcu_read_lock long enough
to get a reference after finding it in the hash. Take the
rcu_read_lock() and call rhashtable_lookup directly.
Switch to using rhashtable_lookup_insert_key as well, and use the usual
retry mechanism if we hit an -EEXIST. Rename the "retry" bool to
open_retry, and eliminiate the insert_err goto target.
Signed-off-by: Jeff Layton <[email protected]>
Signed-off-by: Chuck Lever <[email protected]>1 parent 8d0d254 commit 243a526
1 file changed
+22
-30
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1042 | 1042 | | |
1043 | 1043 | | |
1044 | 1044 | | |
1045 | | - | |
1046 | | - | |
| 1045 | + | |
| 1046 | + | |
1047 | 1047 | | |
| 1048 | + | |
1048 | 1049 | | |
1049 | 1050 | | |
1050 | 1051 | | |
| |||
1054 | 1055 | | |
1055 | 1056 | | |
1056 | 1057 | | |
1057 | | - | |
1058 | | - | |
1059 | | - | |
| 1058 | + | |
| 1059 | + | |
| 1060 | + | |
1060 | 1061 | | |
1061 | 1062 | | |
| 1063 | + | |
1062 | 1064 | | |
1063 | 1065 | | |
1064 | 1066 | | |
1065 | | - | |
1066 | | - | |
| 1067 | + | |
| 1068 | + | |
1067 | 1069 | | |
1068 | 1070 | | |
1069 | 1071 | | |
1070 | 1072 | | |
1071 | | - | |
1072 | | - | |
1073 | | - | |
1074 | | - | |
1075 | | - | |
1076 | | - | |
1077 | | - | |
1078 | | - | |
1079 | | - | |
1080 | | - | |
1081 | | - | |
1082 | | - | |
| 1073 | + | |
| 1074 | + | |
| 1075 | + | |
| 1076 | + | |
1083 | 1077 | | |
1084 | | - | |
1085 | | - | |
| 1078 | + | |
| 1079 | + | |
| 1080 | + | |
| 1081 | + | |
| 1082 | + | |
| 1083 | + | |
| 1084 | + | |
1086 | 1085 | | |
1087 | 1086 | | |
1088 | 1087 | | |
1089 | 1088 | | |
1090 | 1089 | | |
1091 | 1090 | | |
1092 | 1091 | | |
1093 | | - | |
| 1092 | + | |
1094 | 1093 | | |
1095 | 1094 | | |
1096 | 1095 | | |
1097 | | - | |
| 1096 | + | |
1098 | 1097 | | |
1099 | 1098 | | |
1100 | 1099 | | |
| |||
1142 | 1141 | | |
1143 | 1142 | | |
1144 | 1143 | | |
1145 | | - | |
1146 | | - | |
1147 | | - | |
1148 | | - | |
1149 | | - | |
1150 | | - | |
1151 | | - | |
1152 | 1144 | | |
1153 | 1145 | | |
1154 | 1146 | | |
| |||
0 commit comments