Tom Lane wrote:
> Bruce Momjian <pgman@candle.pha.pa.us> writes:
> > The attached email shows that Solaris benefits from the ISM or Intimate
> > Shared Memory setting during shmat() shared memory creation. It causes
> > processes mapping the same shared memory to shared mapping pages _and_
> > locks the pages in RAM.
>
> Huh? I understand "locks the pages in RAM" but I don't understand the
> first part of that. ISTM shared memory is shared memory; if we didn't
> share it without this flag, we'd not be working at all on Solaris.
It shares the virtual page map tables as well as the actual RAM pages.
> > I know many OS's lock shared memory in RAM anyway, or have OS parameters
> > that control this (FreeBSD), but it seems Solaris does this on a per
> > shmat() basis. Should we add this flag to shmat() calls for Solaris?
>
> Certainly on any OS where we can request pinning our shmem in RAM, we
> should do so --- I've pointed out before that allowing our disk buffers
> to be swapped out can't be anything but counterproductive. Not sure
> that this should be thought of as an "#ifdef SOLARIS" kind of change;
> do any other Unixen share this aspect of the API?
Yes, #ifdef SOLARIS. I am waiting from a patch from the reporter.
-- Bruce Momjian | http://candle.pha.pa.us pgman@candle.pha.pa.us | (610)
853-3000+ If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill,
Pennsylvania19026