| 434 | } |
| 435 | |
| 436 | rt_size_t rt_page_bits(rt_size_t size) |
| 437 | { |
| 438 | int bit = sizeof(rt_size_t) * 8 - rt_hw_clz(size) - 1; |
| 439 | |
| 440 | if ((size ^ (1UL << bit)) != 0) |
| 441 | { |
| 442 | bit++; |
| 443 | } |
| 444 | bit -= ARCH_PAGE_SHIFT; |
| 445 | if (bit < 0) |
| 446 | { |
| 447 | bit = 0; |
| 448 | } |
| 449 | return bit; |
| 450 | } |
| 451 | |
| 452 | struct rt_page *rt_page_addr2page(void *addr) |
| 453 | { |