Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 5 Dec 2000 13:44:23 -0800 (PST)
From:      Matt Dillon <dillon@earth.backplane.com>
To:        Alfred Perlstein <bright@wintelcom.net>
Cc:        peter@FreeBSD.ORG, hackers@FreeBSD.ORG
Subject:   Re: phys backed shm patch.
Message-ID:  <200012052144.eB5LiNT86399@earth.backplane.com>
References:   <20001205123456.D8051@fw.wintelcom.net>

next in thread | previous in thread | raw e-mail | index | archive | help
:
:Ok, I spent quite some time trying to figure out why postgresql
:would "hang" when using the 'kern.ipc.shm_use_phys' sysctl.
:
:It finally came down to some spinlocks that were being corrupted
:in a very tiny shared memory segment.
:
:It seems like the phys_pager doesn't correctly allocate when
:given a non PAGE_SIZE'd 'size' so then I think odd stuff happens
:to the memory in the pages:

    Yes, you are absolutely right.  That's definitely a bug and your fix
    is the correct one.

    In regards to simultanious commit, unless someone makes the rules a
    little more reasonable for simple bug fixes like this you'll probably
    get fried for doing it by bozos who have nothing better to do with their
    time.

					-Matt

:Index: phys_pager.c
:===================================================================
:RCS file: /home/ncvs/src/sys/vm/phys_pager.c,v
:retrieving revision 1.3.2.1
:diff -u -u -r1.3.2.1 phys_pager.c
:--- phys_pager.c	2000/08/04 22:31:11	1.3.2.1
:+++ phys_pager.c	2000/12/05 20:13:25
:@@ -83,7 +83,7 @@
: 		 * Allocate object and associate it with the pager.
: 		 */
: 		object = vm_object_allocate(OBJT_PHYS,
:-			OFF_TO_IDX(foff + size));
:+			OFF_TO_IDX(foff + PAGE_MASK + size));
: 		object->handle = handle;
: 		TAILQ_INSERT_TAIL(&phys_pager_object_list, object,
: 		    pager_object_list);
:
:
:I'd like to commit it to both current and stable asap (afaik no
:one uses kern.ipc.shm_use_phys anyhow, we missed the boat on
:Oracle)
:
:-- 
:-Alfred Perlstein - [bright@wintelcom.net|alfred@freebsd.org]



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200012052144.eB5LiNT86399>