On Mon, Mar 16, 2020 at 02:40:46PM -0400, Eduardo Habkost wrote: > On Mon, Mar 16, 2020 at 06:08:54PM +0000, Peter Maydell wrote: > > On Mon, 16 Mar 2020 at 17:51, Eduardo Habkost <ehabk...@redhat.com> wrote: > > > Yes, but both MAP_SYNC and MAP_SHARED_VALIDATE aren't available > > > if the host is not Linux. > > > > > > Defining MAP_SYNC to 0 on MIPS would restore the existing > > > behavior, so it seems like a reasonable step to fix the build > > > failure. But not even printing a warning when the host doesn't > > > have MAP_SYNC (the existing behavior on MIPS and non-Linux) seems > > > wrong. > > > > The usual approach is that if you don't have the Linux-specific > > feature available you quietly fall back to whatever the sensible > > behaviour is for when the feature isn't present. We definitely > > don't want to be printing warnings on non-Linux systems that > > are effectively just saying "you're not running Linux". Same goes > > for "host happens not to be running a bleeding-edge Linux kernel > > and this feature isn't available yet". > > I don't think using pmem=on without MAP_SYNC is expected to be a > supported use case, is it? If a use case is not supported, the > sensible behavior is to tell the user it is not supported.
Futher when eventually an arch does gain the feature, not failing when it's not available would mean users have no way to detect what's actually going on. > -- > Eduardo