History

ftrace: Simplify the calculation of page number for ftrace_page->records some more

Commit b40c6eabfcd40 ("ftrace: Simplify the calculation of page number for ftrace_page->records") simplified the calculation of the number of pages needed for each page group without having any empty pages, but it can be simplified even further. Link: https://lore.kernel.org/lkml/CAHk-=wjt9b7kxQ2J=aDNKbR1QBMB3Hiqb_hYcZbKsxGRSEb+gQ@mail.gmail.com/

Steven Rostedt (VMware) committed 5 years ago

Commit ceaaa121 parent db425231 file · +2 −8Browse files

Unified · Split

kernel/trace/ftrace.c+2−8
@@ -3156,15 +3156,9 @@ static int ftrace_allocate_records(struct ftrace_page *pg, int count) · 3155 unmodified lines
3156 if (WARN_ON(!count))3156 if (WARN_ON(!count))
3157 return -EINVAL;3157 return -EINVAL;
3158 3158
3159 /* We want to fill as much as possible, with no empty pages */
3159 pages = DIV_ROUND_UP(count, ENTRIES_PER_PAGE);3160 pages = DIV_ROUND_UP(count, ENTRIES_PER_PAGE);
3160 order = get_count_order(pages);3161 order = fls(pages) - 1;
3161
3162 /*
3163 * We want to fill as much as possible. No more than a page
3164 * may be empty.
3165 */
3166 if (!is_power_of_2(pages))
3167 order--;
3168 3162
3169 again:3163 again:
3170 pg->records = (void *)__get_free_pages(GFP_KERNEL | __GFP_ZERO, order);3164 pg->records = (void *)__get_free_pages(GFP_KERNEL | __GFP_ZERO, order);

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t