Deleted Added
full compact
vm_machdep.c (302408) vm_machdep.c (327785)
1/*-
2 * Copyright (c) 1982, 1986 The Regents of the University of California.
3 * Copyright (c) 1989, 1990 William Jolitz
4 * Copyright (c) 1994 John Dyson
5 * Copyright (c) 2001 Jake Burkholder.
6 * All rights reserved.
7 *
8 * This code is derived from software contributed to Berkeley by

--- 25 unchanged lines hidden (view full) ---

34 * SUCH DAMAGE.
35 *
36 * from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91
37 * Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$
38 * from: FreeBSD: src/sys/i386/i386/vm_machdep.c,v 1.167 2001/07/12
39 */
40
41#include <sys/cdefs.h>
1/*-
2 * Copyright (c) 1982, 1986 The Regents of the University of California.
3 * Copyright (c) 1989, 1990 William Jolitz
4 * Copyright (c) 1994 John Dyson
5 * Copyright (c) 2001 Jake Burkholder.
6 * All rights reserved.
7 *
8 * This code is derived from software contributed to Berkeley by

--- 25 unchanged lines hidden (view full) ---

34 * SUCH DAMAGE.
35 *
36 * from: @(#)vm_machdep.c 7.3 (Berkeley) 5/13/91
37 * Utah $Hdr: vm_machdep.c 1.16.1.1 89/06/23$
38 * from: FreeBSD: src/sys/i386/i386/vm_machdep.c,v 1.167 2001/07/12
39 */
40
41#include <sys/cdefs.h>
42__FBSDID("$FreeBSD: stable/11/sys/sparc64/sparc64/vm_machdep.c 301961 2016-06-16 12:05:44Z kib $");
42__FBSDID("$FreeBSD: stable/11/sys/sparc64/sparc64/vm_machdep.c 327785 2018-01-10 20:39:26Z markj $");
43
44#include "opt_pmap.h"
45
46#include <sys/param.h>
47#include <sys/systm.h>
48#include <sys/bio.h>
49#include <sys/buf.h>
50#include <sys/kernel.h>

--- 338 unchanged lines hidden (view full) ---

389 /* Nothing to do here - busdma bounce buffers are not implemented. */
390}
391
392void *
393uma_small_alloc(uma_zone_t zone, vm_size_t bytes, u_int8_t *flags, int wait)
394{
395 vm_paddr_t pa;
396 vm_page_t m;
43
44#include "opt_pmap.h"
45
46#include <sys/param.h>
47#include <sys/systm.h>
48#include <sys/bio.h>
49#include <sys/buf.h>
50#include <sys/kernel.h>

--- 338 unchanged lines hidden (view full) ---

389 /* Nothing to do here - busdma bounce buffers are not implemented. */
390}
391
392void *
393uma_small_alloc(uma_zone_t zone, vm_size_t bytes, u_int8_t *flags, int wait)
394{
395 vm_paddr_t pa;
396 vm_page_t m;
397 int pflags;
398 void *va;
399
400 PMAP_STATS_INC(uma_nsmall_alloc);
401
402 *flags = UMA_SLAB_PRIV;
397 void *va;
398
399 PMAP_STATS_INC(uma_nsmall_alloc);
400
401 *flags = UMA_SLAB_PRIV;
403 pflags = malloc2vm_flags(wait) | VM_ALLOC_WIRED;
404
402
405 for (;;) {
406 m = vm_page_alloc(NULL, 0, pflags | VM_ALLOC_NOOBJ);
407 if (m == NULL) {
408 if (wait & M_NOWAIT)
409 return (NULL);
410 else
411 VM_WAIT;
412 } else
413 break;
414 }
403 m = vm_page_alloc(NULL, 0,
404 malloc2vm_flags(wait) | VM_ALLOC_WIRED | VM_ALLOC_NOOBJ);
405 if (m == NULL)
406 return (NULL);
415
416 pa = VM_PAGE_TO_PHYS(m);
417 if (dcache_color_ignore == 0 && m->md.color != DCACHE_COLOR(pa)) {
418 KASSERT(m->md.colors[0] == 0 && m->md.colors[1] == 0,
419 ("uma_small_alloc: free page %p still has mappings!", m));
420 PMAP_STATS_INC(uma_nsmall_alloc_oc);
421 m->md.color = DCACHE_COLOR(pa);
422 dcache_page_inval(pa);

--- 33 unchanged lines hidden ---
407
408 pa = VM_PAGE_TO_PHYS(m);
409 if (dcache_color_ignore == 0 && m->md.color != DCACHE_COLOR(pa)) {
410 KASSERT(m->md.colors[0] == 0 && m->md.colors[1] == 0,
411 ("uma_small_alloc: free page %p still has mappings!", m));
412 PMAP_STATS_INC(uma_nsmall_alloc_oc);
413 m->md.color = DCACHE_COLOR(pa);
414 dcache_page_inval(pa);

--- 33 unchanged lines hidden ---