From: "Mike Rapoport (Microsoft)" vc_screen defines __free() handler that frees a page using free_page(). Move that definition to include/linux/gfp.h next to free_page() and rename it from free_page_ptr to free_page. Signed-off-by: Mike Rapoport (Microsoft) --- drivers/tty/vt/vc_screen.c | 6 ++---- include/linux/gfp.h | 2 ++ 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/tty/vt/vc_screen.c b/drivers/tty/vt/vc_screen.c index c814644ef4ee..d2029f029de6 100644 --- a/drivers/tty/vt/vc_screen.c +++ b/drivers/tty/vt/vc_screen.c @@ -53,8 +53,6 @@ #define HEADER_SIZE 4u #define CON_BUF_SIZE (IS_ENABLED(CONFIG_BASE_SMALL) ? 256 : PAGE_SIZE) -DEFINE_FREE(free_page_ptr, void *, if (_T) free_page((unsigned long)_T)); - /* * Our minor space: * @@ -371,7 +369,7 @@ vcs_read(struct file *file, char __user *buf, size_t count, loff_t *ppos) loff_t pos; bool viewed, attr, uni_mode; - char *con_buf __free(free_page_ptr) = (char *)__get_free_page(GFP_KERNEL); + char *con_buf __free(free_page) = (char *)__get_free_page(GFP_KERNEL); if (!con_buf) return -ENOMEM; @@ -596,7 +594,7 @@ vcs_write(struct file *file, const char __user *buf, size_t count, loff_t *ppos) if (use_unicode(inode)) return -EOPNOTSUPP; - char *con_buf __free(free_page_ptr) = (char *)__get_free_page(GFP_KERNEL); + char *con_buf __free(free_page) = (char *)__get_free_page(GFP_KERNEL); if (!con_buf) return -ENOMEM; diff --git a/include/linux/gfp.h b/include/linux/gfp.h index 0ceb4e09306c..93a6a532f10d 100644 --- a/include/linux/gfp.h +++ b/include/linux/gfp.h @@ -385,6 +385,8 @@ extern void free_pages(unsigned long addr, unsigned int order); #define __free_page(page) __free_pages((page), 0) #define free_page(addr) free_pages((addr), 0) +DEFINE_FREE(free_page, unsigned long, if (_T) free_page(_T)); + void page_alloc_init_cpuhp(void); int decay_pcp_high(struct zone *zone, struct per_cpu_pages *pcp); void drain_zone_pages(struct zone *zone, struct per_cpu_pages *pcp); base-commit: 211ddde0823f1442e4ad052a2f30f050145ccada -- 2.50.1