The patch titled mm/: make functions static has been added to the -mm tree. Its filename is mm-make-functions-static.patch See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: mm/: make functions static From: Adrian Bunk <bunk@xxxxxxxxx> This patch makes the following needlessly global functions static: - slab.c: kmem_find_general_cachep() - swap.c: __page_cache_release() - vmalloc.c: __vmalloc_node() Signed-off-by: Adrian Bunk <bunk@xxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- include/linux/mm.h | 2 - include/linux/slab.h | 2 - include/linux/vmalloc.h | 2 - mm/slab.c | 3 -- mm/swap.c | 39 ++++++++++++++++++-------------------- mm/vmalloc.c | 8 ++++--- 6 files changed, 25 insertions(+), 31 deletions(-) diff -puN include/linux/mm.h~mm-make-functions-static include/linux/mm.h --- a/include/linux/mm.h~mm-make-functions-static +++ a/include/linux/mm.h @@ -323,8 +323,6 @@ static inline int get_page_unless_zero(s return atomic_inc_not_zero(&page->_count); } -extern void FASTCALL(__page_cache_release(struct page *)); - static inline int page_count(struct page *page) { if (unlikely(PageCompound(page))) diff -puN include/linux/slab.h~mm-make-functions-static include/linux/slab.h --- a/include/linux/slab.h~mm-make-functions-static +++ a/include/linux/slab.h @@ -67,7 +67,6 @@ extern void *kmem_cache_zalloc(struct km extern void kmem_cache_free(kmem_cache_t *, void *); extern unsigned int kmem_cache_size(kmem_cache_t *); extern const char *kmem_cache_name(kmem_cache_t *); -extern kmem_cache_t *kmem_find_general_cachep(size_t size, gfp_t gfpflags); /* Size description struct for general caches. */ struct cache_sizes { @@ -226,7 +225,6 @@ extern void kmem_set_shrinker(kmem_cache /* SLOB allocator routines */ void kmem_cache_init(void); -struct kmem_cache *kmem_find_general_cachep(size_t, gfp_t gfpflags); struct kmem_cache *kmem_cache_create(const char *c, size_t, size_t, unsigned long, void (*)(void *, struct kmem_cache *, unsigned long), diff -puN include/linux/vmalloc.h~mm-make-functions-static include/linux/vmalloc.h --- a/include/linux/vmalloc.h~mm-make-functions-static +++ a/include/linux/vmalloc.h @@ -43,8 +43,6 @@ extern void *vmalloc_32_user(unsigned lo extern void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot); extern void *__vmalloc_area(struct vm_struct *area, gfp_t gfp_mask, pgprot_t prot); -extern void *__vmalloc_node(unsigned long size, gfp_t gfp_mask, - pgprot_t prot, int node); extern void vfree(void *addr); extern void *vmap(struct page **pages, unsigned int count, diff -puN mm/slab.c~mm-make-functions-static mm/slab.c --- a/mm/slab.c~mm-make-functions-static +++ a/mm/slab.c @@ -740,11 +740,10 @@ static inline struct kmem_cache *__find_ return csizep->cs_cachep; } -struct kmem_cache *kmem_find_general_cachep(size_t size, gfp_t gfpflags) +static struct kmem_cache *kmem_find_general_cachep(size_t size, gfp_t gfpflags) { return __find_general_cachep(size, gfpflags); } -EXPORT_SYMBOL(kmem_find_general_cachep); static size_t slab_mgmt_size(size_t nr_objs, size_t align) { diff -puN mm/swap.c~mm-make-functions-static mm/swap.c --- a/mm/swap.c~mm-make-functions-static +++ a/mm/swap.c @@ -35,6 +35,25 @@ /* How many pages do we try to swap or page in/out together? */ int page_cluster; +/* + * This path almost never happens for VM activity - pages are normally + * freed via pagevecs. But it gets used by networking. + */ +static void fastcall __page_cache_release(struct page *page) +{ + if (PageLRU(page)) { + unsigned long flags; + struct zone *zone = page_zone(page); + + spin_lock_irqsave(&zone->lru_lock, flags); + VM_BUG_ON(!PageLRU(page)); + __ClearPageLRU(page); + del_page_from_lru(zone, page); + spin_unlock_irqrestore(&zone->lru_lock, flags); + } + free_hot_page(page); +} + static void put_compound_page(struct page *page) { page = (struct page *)page_private(page); @@ -235,26 +254,6 @@ int lru_add_drain_all(void) #endif /* - * This path almost never happens for VM activity - pages are normally - * freed via pagevecs. But it gets used by networking. - */ -void fastcall __page_cache_release(struct page *page) -{ - if (PageLRU(page)) { - unsigned long flags; - struct zone *zone = page_zone(page); - - spin_lock_irqsave(&zone->lru_lock, flags); - VM_BUG_ON(!PageLRU(page)); - __ClearPageLRU(page); - del_page_from_lru(zone, page); - spin_unlock_irqrestore(&zone->lru_lock, flags); - } - free_hot_page(page); -} -EXPORT_SYMBOL(__page_cache_release); - -/* * Batched page_cache_release(). Decrement the reference count on all the * passed pages. If it fell to zero then remove the page from the LRU and * free it. diff -puN mm/vmalloc.c~mm-make-functions-static mm/vmalloc.c --- a/mm/vmalloc.c~mm-make-functions-static +++ a/mm/vmalloc.c @@ -24,6 +24,9 @@ DEFINE_RWLOCK(vmlist_lock); struct vm_struct *vmlist; +static void *__vmalloc_node(unsigned long size, gfp_t gfp_mask, pgprot_t prot, + int node); + static void vunmap_pte_range(pmd_t *pmd, unsigned long addr, unsigned long end) { pte_t *pte; @@ -477,8 +480,8 @@ void *__vmalloc_area(struct vm_struct *a * allocator with @gfp_mask flags. Map them into contiguous * kernel virtual space, using a pagetable protection of @prot. */ -void *__vmalloc_node(unsigned long size, gfp_t gfp_mask, pgprot_t prot, - int node) +static void *__vmalloc_node(unsigned long size, gfp_t gfp_mask, pgprot_t prot, + int node) { struct vm_struct *area; @@ -492,7 +495,6 @@ void *__vmalloc_node(unsigned long size, return __vmalloc_area_node(area, gfp_mask, prot, node); } -EXPORT_SYMBOL(__vmalloc_node); void *__vmalloc(unsigned long size, gfp_t gfp_mask, pgprot_t prot) { _ Patches currently in -mm which might be from bunk@xxxxxxxxx are origin.patch fix-istallion=y.patch fix-the-init_env_arg_limit-dependencies.patch show-acorn-specific-block-devices-menu-only-when-required.patch drivers-cdrom-cm206c-cleanups.patch git-acpi.patch drivers-acpi-scanc-make-acpi_bus_type-static.patch the-scheduled-unexport-of-insert_resource.patch remove-kernel-power-pmcpm_unregister_all.patch git-gfs2.patch if-0-drivers-usb-input-hid-corechid_find_field_by_usage.patch make-variables-static-after-klibc-merge.patch git-libata-all.patch git-mtd.patch ni5010-netcard-cleanup.patch drivers-dma-iovlockc-make-num_pages_spanned-static.patch fs-nfs-make-2-functions-static.patch gregkh-pci-acpiphp-configure-_prt-v3-cleanup.patch drivers-scsi-aic7xxx-possible-cleanups.patch drivers-scsi-small-cleanups.patch drivers-scsi-megaraidc-add-a-dummy-mega_create_proc_entry-for-proc_fs=y.patch drivers-scsi-qla2xxx-make-some-functions-static.patch drivers-scsi-qla2xxx-make-more-some-functions-static.patch drivers-scsi-aic7xxx-aic79xx_corec-make-ahd_done_with_status-static.patch drivers-scsi-aic7xxx-aic79xx_corec-make-ahd_match_scb-static.patch drivers-scsi-aic7xxx-possible-cleanups-2.patch drivers-scsi-advansysc-cleanups.patch make-drivers-scsi-aic7xxx-aic79xx_coreahd_set_tags-static.patch drivers-message-fusion-mptsasc-make-2-functions-static.patch drivers-scsi-arcmsr-cleanups.patch mm-make-functions-static.patch acx1xx-wireless-driver.patch fs-ecryptfs-possible-cleanups.patch ecryptfs-add-a-maintainers-entry.patch make-kernel-sysctlc_proc_do_string-static.patch namespaces-utsname-implement-clone_newuts-flag-tidy.patch task-watchers-register-semundo-task-watcher-cleanup.patch fs-reiser4-possible-cleanups.patch drivers-ide-legacy-ide-csc-make-2-functions-static.patch lockdep-core.patch srcu-add-srcu-operations-to-rcutorture-tidy-2.patch the-scheduled-removal-of-some-oss-drivers.patch slab-cache-shrinker-statistics.patch i386-enable-4k-stacks-by-default.patch mutex-subsystem-synchro-test-module.patch kernel-printkc-export_symbol_unused.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html