Re: Direct I/O

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Andres Freund <andres(at)anarazel(dot)de>
Cc: Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, Andrew Dunstan <andrew(at)dunslane(dot)net>, Dagfinn Ilmari Mannsåker <ilmari(at)ilmari(dot)org>, Christoph Berg <myon(at)debian(dot)org>, mikael(dot)kjellstrom(at)gmail(dot)com, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Direct I/O
Date: 2023-04-14 19:21:18
Message-ID: 1555176.1681500078@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Andres Freund <andres(at)anarazel(dot)de> writes:
> On 2023-04-14 13:21:33 -0400, Tom Lane wrote:
>> ... I'm not sure why only those two animals
>> are unhappy, but I think they have a point: typical ABIs don't
>> guarantee alignment of function stack frames to better than
>> 16 bytes or so. In principle the compiler could support a 4K
>> alignment request anyway by doing the equivalent of alloca(3),
>> but I do not think we can count on that to happen.

> Hm. New-ish compilers seem to be ok with it.

Oh! I was misled by the buildfarm label on morepork, which claims
it's running clang 10.0.1. But actually, per its configure report,
it's running

configure: using compiler=gcc (GCC) 4.2.1 20070719

which is the same as curculio. So that explains why nothing else is
complaining. I agree we needn't let 15-year-old compilers force us
into the mess that would be entailed by not treating these variables
as simple locals.

> Perhaps we should have a
> configure check whether the compiler is OK with that, and disable direct IO
> support if not?

+1 for that, though. (Also, the fact that these animals aren't
actually failing suggests that 004_io_direct.pl needs expansion.)

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andres Freund 2023-04-14 19:33:39 Re: Direct I/O
Previous Message Jonathan S. Katz 2023-04-14 19:07:37 Re: Should we remove vacuum_defer_cleanup_age?