diff options
author | np <np@FreeBSD.org> | 2013-01-26 03:23:28 +0000 |
---|---|---|
committer | np <np@FreeBSD.org> | 2013-01-26 03:23:28 +0000 |
commit | f20c120ed1307b652267aa8015ec6e7486d72297 (patch) | |
tree | dc51e8e1410fb73318b07b33850ab2a29af81fff /sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c | |
parent | 7658f66486b3e23df2299b54d18e73d1873c73cd (diff) | |
download | FreeBSD-src-f20c120ed1307b652267aa8015ec6e7486d72297.zip FreeBSD-src-f20c120ed1307b652267aa8015ec6e7486d72297.tar.gz |
Install an extra hold on the newly allocated synq entry so that it
cannot be freed while do_pass_accept_req is running. This closes a race
where do_pass_establish on another CPU (the driver chose a different
queue for the new tid) expands the synq entry into a full PCB and then
releases the only hold on it, all while do_pass_accept_req is still
running.
MFC after: 3 days
Diffstat (limited to 'sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c')
0 files changed, 0 insertions, 0 deletions