NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: lib/54135: sparc userland can not deal with 8k page size



The following reply was made to PR lib/54135; it has been noted by GNATS.

From: Martin Husemann <martin%duskware.de@localhost>
To: Christos Zoulas <christos%zoulas.com@localhost>
Cc: gnats-bugs%netbsd.org@localhost
Subject: Re: lib/54135: sparc userland can not deal with 8k page size
Date: Thu, 25 Apr 2019 12:53:45 +0200

 On Wed, Apr 24, 2019 at 03:40:37PM -0400, Christos Zoulas wrote:
 > Can you change the last os_page reference passed as argument to PAGE?
 
 Still the same. I used the patch below.
 
 Martin
 
 Index: pages.c
 ===================================================================
 RCS file: /cvsroot/src/external/bsd/jemalloc/dist/src/pages.c,v
 retrieving revision 1.3
 diff -u -p -r1.3 pages.c
 --- pages.c	24 Apr 2019 14:34:21 -0000	1.3
 +++ pages.c	25 Apr 2019 08:10:18 -0000
 @@ -162,7 +162,7 @@ os_pages_unmap(void *addr, size_t size) 
  
  static void *
  pages_map_slow(size_t size, size_t alignment, bool *commit) {
 -	size_t alloc_size = size + alignment - os_page;
 +	size_t alloc_size = size + alignment - PAGE;
  	/* Beware size_t wrap-around. */
  	if (alloc_size < size) {
  		return NULL;
 @@ -203,7 +203,7 @@ pages_map(void *addr, size_t size, size_
  	 * approach works most of the time.
  	 */
  
 -	void *ret = os_pages_map(addr, size, os_page, commit);
 +	void *ret = os_pages_map(addr, size, PAGE, commit);
  	if (ret == NULL || ret == addr) {
  		return ret;
  	}
 


Home | Main Index | Thread Index | Old Index