On 25-apr-2006, at 9:08, Tom Lane wrote:
> Paul van der Zwan <Paul.Vanderzwan@Sun.COM> writes:
>> Maybe noone ever ran Postgres on Solaris on a VIA Epia system.
>
> Maybe. What is a "VIA Epia system"?
>
VIA is a hardware manufacturer who make small, low power boards with
their own X86 compatible cpu
on it, you can find more about it on : http://www.via.com.tw/en/
products/mainboards/mini_itx/epia/index.jsp
> Frankly, I'm afraid that your patch is likely to break way more
> systems
> than it fixes. What is getpagesizes(), and is it guaranteed to
> exist on
> *every* Solaris system? What the heck correlation does its result
> have
> to whether SHM_SHARE_MMU will work?
AFAIK getpagesizes() appeared in 2001 so that probably means it is
missing in anything before
Solaris 9.
If you look at line 308 of http://cvs.opensolaris.org/source/xref/on/
usr/src/uts/common/os/shm.c
you'll see that shmat return EINVAL if only one pagesize is available.
Which is what happens on my system, and possibly also on older (32
bit pre Ultra ) Sparc systems.
My guess is that all UltraSparce and 'modern' x86/amd64 cpu's support
large pages and therefor will n
ever hit this failure mode of shmat().
I'll see if I can get the x86 experts here to have a look at it...
Regards
Paul