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: Christos Zoulas <christos%zoulas.com@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: lib-bug-people%netbsd.org@localhost,
gnats-admin%netbsd.org@localhost,
netbsd-bugs%netbsd.org@localhost,
"martin%netbsd.org@localhost" <martin%NetBSD.org@localhost>
Subject: Re: lib/54135: sparc userland can not deal with 8k page size
Date: Thu, 25 Apr 2019 07:39:41 -0400
This is proving a tough nut to crack. Perhaps going at it backwards is =
easier (revert all of it and assign os_page =3D PAGE after the first =
test.
christos
> On Apr 25, 2019, at 6:55 AM, Martin Husemann <martin%duskware.de@localhost> =
wrote:
>=20
> The following reply was made to PR lib/54135; it has been noted by =
GNATS.
>=20
> 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
>=20
> 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?
>=20
> Still the same. I used the patch below.
>=20
> Martin
>=20
> Index: pages.c
> =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
> 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)=20
>=20
> static void *
> pages_map_slow(size_t size, size_t alignment, bool *commit) {
> - size_t alloc_size =3D size + alignment - os_page;
> + size_t alloc_size =3D 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.
> */
>=20
> - void *ret =3D os_pages_map(addr, size, os_page, commit);
> + void *ret =3D os_pages_map(addr, size, PAGE, commit);
> if (ret =3D=3D NULL || ret =3D=3D addr) {
> return ret;
> }
>=20
Home |
Main Index |
Thread Index |
Old Index