Commit c3ed222
NFSv4: Fix free of uninitialized nfs4_label on referral lookup.
Send along the already-allocated fattr along with nfs4_fs_locations, and
drop the memcpy of fattr. We end up growing two more allocations, but this
fixes up a crash as:
PID: 790 TASK: ffff88811b43c000 CPU: 0 COMMAND: "ls"
#0 [ffffc90000857920] panic at ffffffff81b9bfde
analogdevicesinc#1 [ffffc900008579c0] do_trap at ffffffff81023a9b
analogdevicesinc#2 [ffffc90000857a10] do_error_trap at ffffffff81023b78
analogdevicesinc#3 [ffffc90000857a58] exc_stack_segment at ffffffff81be1f45
analogdevicesinc#4 [ffffc90000857a80] asm_exc_stack_segment at ffffffff81c009de
analogdevicesinc#5 [ffffc90000857b08] nfs_lookup at ffffffffa0302322 [nfs]
analogdevicesinc#6 [ffffc90000857b70] __lookup_slow at ffffffff813a4a5f
analogdevicesinc#7 [ffffc90000857c60] walk_component at ffffffff813a86c4
analogdevicesinc#8 [ffffc90000857cb8] path_lookupat at ffffffff813a9553
analogdevicesinc#9 [ffffc90000857cf0] filename_lookup at ffffffff813ab86b
Suggested-by: Trond Myklebust <[email protected]>
Fixes: 9558a00 ("NFS: Remove the label from the nfs4_lookup_res struct")
Signed-off-by: Benjamin Coddington <[email protected]>
Signed-off-by: Anna Schumaker <[email protected]>1 parent 9c4a5c7 commit c3ed222
File tree
5 files changed
+25
-14
lines changed- fs/nfs
- include/linux
5 files changed
+25
-14
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
417 | 417 | | |
418 | 418 | | |
419 | 419 | | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
420 | 423 | | |
421 | 424 | | |
422 | 425 | | |
| |||
427 | 430 | | |
428 | 431 | | |
429 | 432 | | |
430 | | - | |
| 433 | + | |
431 | 434 | | |
432 | 435 | | |
433 | 436 | | |
434 | 437 | | |
435 | | - | |
| 438 | + | |
436 | 439 | | |
437 | 440 | | |
| 441 | + | |
| 442 | + | |
438 | 443 | | |
439 | 444 | | |
440 | 445 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4247 | 4247 | | |
4248 | 4248 | | |
4249 | 4249 | | |
| 4250 | + | |
| 4251 | + | |
4250 | 4252 | | |
4251 | 4253 | | |
4252 | 4254 | | |
| |||
4256 | 4258 | | |
4257 | 4259 | | |
4258 | 4260 | | |
4259 | | - | |
| 4261 | + | |
4260 | 4262 | | |
4261 | 4263 | | |
4262 | 4264 | | |
4263 | 4265 | | |
4264 | 4266 | | |
4265 | 4267 | | |
4266 | | - | |
4267 | | - | |
4268 | | - | |
4269 | | - | |
| 4268 | + | |
4270 | 4269 | | |
4271 | 4270 | | |
4272 | 4271 | | |
| |||
7979 | 7978 | | |
7980 | 7979 | | |
7981 | 7980 | | |
7982 | | - | |
| 7981 | + | |
7983 | 7982 | | |
7984 | 7983 | | |
7985 | 7984 | | |
| |||
8044 | 8043 | | |
8045 | 8044 | | |
8046 | 8045 | | |
8047 | | - | |
| 8046 | + | |
8048 | 8047 | | |
8049 | 8048 | | |
8050 | 8049 | | |
| |||
8109 | 8108 | | |
8110 | 8109 | | |
8111 | 8110 | | |
8112 | | - | |
| 8111 | + | |
8113 | 8112 | | |
8114 | 8113 | | |
8115 | 8114 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2116 | 2116 | | |
2117 | 2117 | | |
2118 | 2118 | | |
| 2119 | + | |
| 2120 | + | |
| 2121 | + | |
| 2122 | + | |
| 2123 | + | |
2119 | 2124 | | |
2120 | 2125 | | |
2121 | 2126 | | |
| |||
2130 | 2135 | | |
2131 | 2136 | | |
2132 | 2137 | | |
2133 | | - | |
| 2138 | + | |
2134 | 2139 | | |
2135 | 2140 | | |
2136 | 2141 | | |
| |||
2155 | 2160 | | |
2156 | 2161 | | |
2157 | 2162 | | |
| 2163 | + | |
| 2164 | + | |
2158 | 2165 | | |
2159 | 2166 | | |
2160 | 2167 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7080 | 7080 | | |
7081 | 7081 | | |
7082 | 7082 | | |
7083 | | - | |
| 7083 | + | |
7084 | 7084 | | |
7085 | 7085 | | |
7086 | 7086 | | |
| |||
7093 | 7093 | | |
7094 | 7094 | | |
7095 | 7095 | | |
7096 | | - | |
| 7096 | + | |
7097 | 7097 | | |
7098 | 7098 | | |
7099 | 7099 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1222 | 1222 | | |
1223 | 1223 | | |
1224 | 1224 | | |
1225 | | - | |
| 1225 | + | |
1226 | 1226 | | |
1227 | 1227 | | |
1228 | 1228 | | |
| |||
0 commit comments