Commit 35e08b5
block: lock AioContext in bdrv_replace_child_noperm() when in non-coroutine context
When called in non-coroutine context, bdrv_replace_child_noperm() needs to
grab the AioContext lock because bdrv_parent_drained_begin_single() and
bdrv_parent_drained_end_single() rely on AIO_WAIT_WHILE(). This prevents
crashes when AIO_WAIT_WHILE() tries to temporarily release the lock.
Orabug: 36514180
Signed-off-by: Mark Kanda <mark.kanda@oracle.com>
Reviewed-by: Steve Sistare <steven.sistare@oracle.com>1 parent 6d3d143 commit 35e08b5
1 file changed
+9
-0
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2832 | 2832 | | |
2833 | 2833 | | |
2834 | 2834 | | |
| 2835 | + | |
2835 | 2836 | | |
2836 | 2837 | | |
2837 | 2838 | | |
| |||
2844 | 2845 | | |
2845 | 2846 | | |
2846 | 2847 | | |
| 2848 | + | |
| 2849 | + | |
| 2850 | + | |
| 2851 | + | |
2847 | 2852 | | |
2848 | 2853 | | |
2849 | 2854 | | |
| |||
2895 | 2900 | | |
2896 | 2901 | | |
2897 | 2902 | | |
| 2903 | + | |
| 2904 | + | |
| 2905 | + | |
| 2906 | + | |
2898 | 2907 | | |
2899 | 2908 | | |
2900 | 2909 | | |
| |||
0 commit comments