Convert `fd_cmask' and `fd_refcnt' types from u_short to 32 bit types.
authormvs <mvs@openbsd.org>
Thu, 12 May 2022 13:33:09 +0000 (13:33 +0000)
committermvs <mvs@openbsd.org>
Thu, 12 May 2022 13:33:09 +0000 (13:33 +0000)
commitd0517649e10b8988bbe5ddfc4744ed456dbe76c7
tree1e980069a43d5d1772376df506239e04caa5145d
parent1789dd4eb95259e423d89763d5da99ea11950664
Convert `fd_cmask' and `fd_refcnt' types from u_short to 32 bit types.

`fd_cmask' and `fd_refcnt' are 16 bit variables which are protected by
different locks and could be not MP independent on all architectures.
`fd_cmask' modifications already protected by fd_lock' rwlock(9), but
actually we do all access to both variables with kernel lock held. So
convert them both before make `fd_cmask' access without kernel when
umask(2) will be unlocked.

Proposed by bluhm@.

ok deraadt@ bluhm@
sys/sys/filedesc.h