Hi,
On 2021-07-13 13:25:50 +1200, Thomas Munro wrote:
> On Mon, May 31, 2021 at 10:29 AM Thomas Munro <thomas.munro@gmail.com> wrote:
> > For comparison, here is my sketch of idea #1. I pick an arbitrary
> > value to use as PG_O_DIRECT (I don't want to define O_DIRECT for fear
> > of breaking other code that might see it and try to pass it into
> > open()... for all I know, it might happen to match OS-internal value
> > O_NASAL_DEMONS), and statically assert that it doesn't collide with
> > standard flags we're using, and I strip it out of the flags I pass in
> > to open(). As I said, a bit icky, but it's a tiny and localised
> > patch, which is nice.
>
> I'm planning to go with that idea (#1), if there are no objections.
The only other viable approach I see is to completely separate our
internal flag representation from the OS representation and do the whole
mapping inside fd.c - but that seems like a too big hammer right now.
Greetings,
Andres Freund