Re: BUG #2406: Not all systems support SHM_SHARE_MMU
От | Paul van der Zwan |
---|---|
Тема | Re: BUG #2406: Not all systems support SHM_SHARE_MMU |
Дата | |
Msg-id | 6FEB09EB-03D6-48A9-9580-541753F88E8C@Sun.COM обсуждение исходный текст |
Ответ на | Re: BUG #2406: Not all systems support SHM_SHARE_MMU (Tom Lane <tgl@sss.pgh.pa.us>) |
Список | pgsql-bugs |
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
В списке pgsql-bugs по дате отправления: