Lines Matching full:windows
31 #include "windows.h"
54 * init_window_mem() - Divide the reserved memory region among the windows
66 * windows. The windows are placed one after the other in ascending in init_window_mem()
68 * shouldn't have allocated more windows than we have memory, but if we in init_window_mem()
71 for (i = 0; i < context->windows.num; i++) { in init_window_mem()
72 uint32_t size = context->windows.window[i].size; in init_window_mem()
75 context->windows.window[i].mem = mem_location; in init_window_mem()
79 MSG_ERR("Total size of windows exceeds reserved mem\n"); in init_window_mem()
80 MSG_ERR("Try smaller or fewer windows\n"); in init_window_mem()
99 if (!context->windows.default_size) { in windows_init()
100 /* Default to 1MB windows */ in windows_init()
101 context->windows.default_size = 1 << 20; in windows_init()
103 MSG_INFO("Window size: 0x%.8x\n", context->windows.default_size); in windows_init()
104 if (!context->windows.num) { in windows_init()
106 context->windows.num = context->mem_size / in windows_init()
107 context->windows.default_size; in windows_init()
109 MSG_INFO("Number of windows: %d\n", context->windows.num); in windows_init()
111 context->windows.window = calloc(context->windows.num, in windows_init()
112 sizeof(*context->windows.window)); in windows_init()
113 if (!context->windows.window) { in windows_init()
118 for (i = 0; i < context->windows.num; i++) { in windows_init()
119 init_window_state(&context->windows.window[i], in windows_init()
120 context->windows.default_size); in windows_init()
135 if (context->windows.window) { in windows_free()
136 for (i = 0; i < context->windows.num; i++) { in windows_free()
137 free(context->windows.window[i].dirty_bmap); in windows_free()
139 free(context->windows.window); in windows_free()
347 for (i = 0; i < context->windows.num; i++) { in windows_alloc_dirty_bytemap()
348 cur = &context->windows.window[i]; in windows_alloc_dirty_bytemap()
352 cur->dirty_bmap = calloc((context->windows.default_size >> in windows_alloc_dirty_bytemap()
415 window->size = context->windows.default_size; in window_reset()
425 * windows_reset_all() - Reset all windows to a well defined default state
435 MSG_DBG("Resetting all windows\n"); in windows_reset_all()
437 context->windows.max_age = 0; in windows_reset_all()
445 for (i = 0; i < context->windows.num; i++) { in windows_reset_all()
446 window_reset(context, &context->windows.window[i]); in windows_reset_all()
461 uint32_t min_age = context->windows.max_age + 1; in windows_find_oldest()
464 for (i = 0; i < context->windows.num; i++) { in windows_find_oldest()
465 cur = &context->windows.window[i]; in windows_find_oldest()
488 for (i = 0; i < context->windows.num; i++) { in windows_find_largest()
489 cur = &context->windows.window[i]; in windows_find_largest()
506 * This will search the cache of windows for one containing the requested
507 * offset. For V1 of the protocol windows must exactly map the offset since we
522 for (i = 0; i < context->windows.num; i++) { in windows_search()
523 cur = &context->windows.window[i]; in windows_search()
537 cur->age = ++(context->windows.max_age); in windows_search()
633 * Since for V1 windows aren't constrained to start at multiples of in windows_create_map()
635 * Reset any windows which map this offset to avoid coherency problems. in windows_create_map()
637 * of the window since all windows are the same size so another window in windows_create_map()
663 cur->age = ++(context->windows.max_age); in windows_create_map()