Rafael Vanoni wrote:
Hi everyoneI'm using page_get_{free,cache}list() to get pages from specific lgroups, during boot - after lgrp_plat_probe() on main().But I don't fully understand the implications of using those calls outside page_create_va(). I've read it, but it's not an easy one to interpret.What am I missing by not working with page_create_va() in terms of properly allocating a page, and what should I do after getting one from page_get_{free,cache}list() ?
I suspect page_get_{free,cache}list() should really be static?
Anyway, page_create_va calls these:
# dtrace -n page_get_freelist:entry'[EMAIL PROTECTED]()] = count()}'
dtrace: description 'page_get_freelist:entry' matched 1 probe
^C
unix`page_create_va+0x2bd
genunix`swap_getapage+0xc1
genunix`swap_getpage+0x99
genunix`fop_getpage+0x96
genunix`segkp_get_internal+0x419
genunix`segkp_get_withanonmap+0x38
genunix`schedctl_getpage+0x4b
genunix`schedctl_shared_alloc+0x7c
genunix`schedctl+0x34
unix`sys_syscall+0x17b
1
unix`page_create_va+0x2bd
unix`segkmem_page_create+0x89
unix`segkmem_xalloc+0xbc
unix`segkmem_alloc_vn+0xcd
unix`segkmem_alloc+0x20
genunix`vmem_xalloc+0x4fc
genunix`vmem_alloc+0x159
genunix`kmem_slab_create+0x7d
genunix`kmem_slab_alloc+0x60
genunix`kmem_cache_alloc+0x137
genunix`anon_alloc+0x2c
genunix`anon_zero+0x70
genunix`segvn_faultpage+0x2a7
genunix`segvn_fault+0xaf1
genunix`as_fault+0x5ae
unix`pagefault+0x95
unix`trap+0xbcb
unix`0xfffffffffb8001d9
2
unix`page_create_va+0x2bd
unix`page_get_physical+0x7c
unix`ptable_alloc+0x94
unix`htable_alloc+0x1be
unix`htable_create+0x1a7
unix`hati_load_common+0x9e
unix`hat_memload+0x81
genunix`segvn_faultpage+0x43a
genunix`segvn_fault+0xaf1
genunix`as_fault+0x5ae
unix`pagefault+0x95
unix`trap+0xbcb
unix`0xfffffffffb8001d9
2
unix`page_create_va+0x2bd
genunix`swap_getapage+0xc1
genunix`swap_getpage+0x99
genunix`fop_getpage+0x96
genunix`anon_zero+0x9c
genunix`segvn_faultpage+0x2a7
genunix`segvn_fault+0xaf1
genunix`as_fault+0x5ae
unix`pagefault+0x95
unix`trap+0x127e
unix`0xfffffffffb8001d9
unix`kcopy+0x2c
genunix`uiomove+0xe5
genunix`struiocopyout+0x52
genunix`strread+0x37c
fifofs`fifo_read+0x25f
genunix`fop_read+0x69
namefs`nm_read+0x2c
genunix`fop_read+0x69
genunix`readv+0x2c5
7
unix`page_create_va+0x2bd
unix`segkmem_page_create+0x89
unix`segkmem_xalloc+0xbc
unix`segkmem_alloc_vn+0xcd
unix`segkmem_alloc+0x20
genunix`vmem_xalloc+0x4fc
genunix`vmem_alloc+0x159
genunix`kmem_alloc+0x4f
genunix`kmem_zalloc+0x37
kstat`read_kstat_data+0x177
kstat`kstat_ioctl+0x4a
genunix`cdev_ioctl+0x48
specfs`spec_ioctl+0x86
genunix`fop_ioctl+0x6e
genunix`ioctl+0x16b
unix`sys_syscall32+0x101
47
unix`page_create_va+0x2bd
genunix`swap_getapage+0xc1
genunix`swap_getpage+0x99
genunix`fop_getpage+0x96
genunix`anon_zero+0x9c
genunix`segvn_faultpage+0x2a7
genunix`segvn_fault+0xaf1
genunix`as_fault+0x5ae
unix`pagefault+0x95
unix`trap+0xbcb
unix`0xfffffffffb8001d9
116
Gavin
smime.p7s
Description: S/MIME Cryptographic Signature
_______________________________________________ opensolaris-code mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/opensolaris-code
