Lines Matching refs:scratch
453 hibernate_scratch_init(hibernate_scratch_t * scratch, hibernate_page_list_t * map, uint32_t * nextF… in hibernate_scratch_init() argument
456 __nosan_bzero(scratch, sizeof(*scratch)); in hibernate_scratch_init()
457 scratch->map = map; in hibernate_scratch_init()
458 scratch->nextFree = nextFree; in hibernate_scratch_init()
459 scratch->headPage = hibernate_page_list_grab(scratch->map, scratch->nextFree); in hibernate_scratch_init()
460 scratch->curPage = (uint8_t *)pal_hib_map(SCRATCH_AREA, ptoa_64(scratch->headPage)); in hibernate_scratch_init()
464 hibernate_scratch_start_read(hibernate_scratch_t * scratch) in hibernate_scratch_start_read() argument
469 result.headPage = scratch->headPage; in hibernate_scratch_start_read()
471 result.totalLength = scratch->curPos; in hibernate_scratch_start_read()
472 *scratch = result; in hibernate_scratch_start_read()
476 hibernate_scratch_io(hibernate_scratch_t * scratch, void * buffer, size_t size, bool write) in hibernate_scratch_io() argument
481 HIB_ASSERT(scratch->curPos + size <= scratch->totalLength); in hibernate_scratch_io()
485 if (scratch->curPagePos == PAGE_SIZE - sizeof(ppnum_t)) { in hibernate_scratch_io()
486 ppnum_t *nextPage = (ppnum_t *)(scratch->curPage + scratch->curPagePos); in hibernate_scratch_io()
489 *nextPage = hibernate_page_list_grab(scratch->map, scratch->nextFree); in hibernate_scratch_io()
491 scratch->curPage = (uint8_t *)pal_hib_map(SCRATCH_AREA, ptoa_64(*nextPage)); in hibernate_scratch_io()
492 scratch->curPagePos = 0; in hibernate_scratch_io()
494 size_t curPageRemaining = PAGE_SIZE - sizeof(ppnum_t) - scratch->curPagePos; in hibernate_scratch_io()
498 __nosan_memcpy(scratch->curPage + scratch->curPagePos, buffer, toCopy); in hibernate_scratch_io()
501 __nosan_memcpy(buffer, scratch->curPage + scratch->curPagePos, toCopy); in hibernate_scratch_io()
503 scratch->curPos += toCopy; in hibernate_scratch_io()
504 scratch->curPagePos += toCopy; in hibernate_scratch_io()
511 hibernate_scratch_write(hibernate_scratch_t * scratch, const void * buffer, size_t size) in hibernate_scratch_write() argument
513 hibernate_scratch_io(scratch, (void *)(uintptr_t)buffer, size, true); in hibernate_scratch_write()
517 hibernate_scratch_read(hibernate_scratch_t * scratch, void * buffer, size_t size) in hibernate_scratch_read() argument
519 hibernate_scratch_io(scratch, buffer, size, false); in hibernate_scratch_read()
526 uint8_t * scratch, uint32_t ppnum) in store_one_page() argument
533 pal_hib_decompress_page(src, (void *)dst, scratch, compressedSize); in store_one_page()