File tree 1 file changed +4
-8
lines changed
1 file changed +4
-8
lines changed Original file line number Diff line number Diff line change @@ -55,11 +55,13 @@ void __asan_unpoison_memory_region(void const volatile *addr, size_t size);
55
55
#endif
56
56
57
57
#ifdef LWAN_HAVE_BROTLI
58
- #define CORO_STACK_SIZE ((size_t)(8 * SIGSTKSZ))
58
+ #define MIN_CORO_STACK_SIZE ((size_t)(8 * SIGSTKSZ))
59
59
#else
60
- #define CORO_STACK_SIZE ((size_t)(4 * SIGSTKSZ))
60
+ #define MIN_CORO_STACK_SIZE ((size_t)(4 * SIGSTKSZ))
61
61
#endif
62
62
63
+ #define CORO_STACK_SIZE ((MIN_CORO_STACK_SIZE + (size_t)PAGE_SIZE) & ~((size_t)PAGE_SIZE))
64
+
63
65
#define CORO_BUMP_PTR_ALLOC_SIZE 1024
64
66
65
67
#if (!defined(NDEBUG ) && defined(MAP_STACK )) || defined(__OpenBSD__ )
@@ -78,12 +80,6 @@ LWAN_SELF_TEST(sizes_are_same)
78
80
79
81
/* Request buffer fits inside coroutine stack */
80
82
assert (DEFAULT_BUFFER_SIZE < CORO_STACK_SIZE );
81
- #ifdef ALLOCATE_STACK_WITH_MMAP
82
- /* Coroutine stack size is a multiple of page size */
83
- assert ((CORO_STACK_SIZE % PAGE_SIZE ) == 0 );
84
- /* Coroutine stack size is at least a page long */
85
- assert ((CORO_STACK_SIZE >= PAGE_SIZE ));
86
- #endif
87
83
}
88
84
89
85
typedef void (* defer1_func )(void * data );
You can’t perform that action at this time.
0 commit comments