CVSROOT: /cvs Module name: src Changes by: m...@cvs.openbsd.org 2022/05/12 07:33:09
Modified files: sys/sys : filedesc.h Log message: 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@