common: use boost::shared_mutex on Windows
The winpthreads shared mutex implementation causes deadlocks on
Windows [1][2]. Specifically, async RBD IO calls are hanging. This
also prevents the images from being unmounted.
For this reason, we're switching to boost::shared_mutex when using
MinGW.
[1] https://github.com/cloudbase/wnbd/issues/63#issuecomment-
1161547102
[2] https://github.com/msys2/MINGW-packages/issues/3319
Trace: https://pastebin.com/raw/i3jpTyS3
Fixes: https://tracker.ceph.com/issues/56480
Signed-off-by: Lucian Petrut <lpetrut@cloudbasesolutions.com>