A closer look at the events around t=9s (when the page cache mode is switched to WB) pointed to mcelog as a suspect. Indeed the problem went away after purging the mcelog package. With mcelog (104-1) installed I was getting the following message in the logs:
mcelog: failed to prefill DIMM database from DMI data I still think there is a kernel issue here: mcelog shouldn't be able to request the wrong page cache mode and spoil things for everyone else. (Or is it dmi_remap() that's asking for the wrong mode? I'm not quite sure: if DMI data are non-volatile and read-only (are they always?) why shouldn't they be cached?)