kernel/resource.c: remove deprecated __check_region() and friends
authorJakub Sitnicki <jsitnicki@gmail.com>
Wed, 15 Apr 2015 23:16:44 +0000 (16:16 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Wed, 15 Apr 2015 23:35:22 +0000 (16:35 -0700)
All users of __check_region(), check_region(), and check_mem_region() are
gone.  We got rid of the last user in v4.0-rc1.  Remove them.

bloat-o-meter on x86_64 shows:

add/remove: 0/3 grow/shrink: 0/0 up/down: 0/-102 (-102)
function                                     old     new   delta
__kstrtab___check_region                      15       -     -15
__ksymtab___check_region                      16       -     -16
__check_region                                71       -     -71

Signed-off-by: Jakub Sitnicki <jsitnicki@gmail.com>
Cc: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
include/linux/ioport.h
kernel/resource.c

index 2c5250222278069dabb31cf4dfbb8ce41fea95ca..388e3ae94f7a3b1c3c86d7ba45d6f9227ee31f0d 100644 (file)
@@ -196,10 +196,8 @@ extern struct resource * __request_region(struct resource *,
 
 /* Compatibility cruft */
 #define release_region(start,n)        __release_region(&ioport_resource, (start), (n))
-#define check_mem_region(start,n)      __check_region(&iomem_resource, (start), (n))
 #define release_mem_region(start,n)    __release_region(&iomem_resource, (start), (n))
 
-extern int __check_region(struct resource *, resource_size_t, resource_size_t);
 extern void __release_region(struct resource *, resource_size_t,
                                resource_size_t);
 #ifdef CONFIG_MEMORY_HOTREMOVE
@@ -207,12 +205,6 @@ extern int release_mem_region_adjustable(struct resource *, resource_size_t,
                                resource_size_t);
 #endif
 
-static inline int __deprecated check_region(resource_size_t s,
-                                               resource_size_t n)
-{
-       return __check_region(&ioport_resource, s, n);
-}
-
 /* Wrappers for managed devices */
 struct device;
 
index 19f2357dfda3fe88f7e0ddc6b29778176138a619..90552aab5f2dd076c147c73cc6f9ff59aabb7af6 100644 (file)
@@ -1034,8 +1034,6 @@ resource_size_t resource_alignment(struct resource *res)
  *
  * request_region creates a new busy region.
  *
- * check_region returns non-zero if the area is already busy.
- *
  * release_region releases a matching busy region.
  */
 
@@ -1097,36 +1095,6 @@ struct resource * __request_region(struct resource *parent,
 }
 EXPORT_SYMBOL(__request_region);
 
-/**
- * __check_region - check if a resource region is busy or free
- * @parent: parent resource descriptor
- * @start: resource start address
- * @n: resource region size
- *
- * Returns 0 if the region is free at the moment it is checked,
- * returns %-EBUSY if the region is busy.
- *
- * NOTE:
- * This function is deprecated because its use is racy.
- * Even if it returns 0, a subsequent call to request_region()
- * may fail because another driver etc. just allocated the region.
- * Do NOT use it.  It will be removed from the kernel.
- */
-int __check_region(struct resource *parent, resource_size_t start,
-                       resource_size_t n)
-{
-       struct resource * res;
-
-       res = __request_region(parent, start, n, "check-region", 0);
-       if (!res)
-               return -EBUSY;
-
-       release_resource(res);
-       free_resource(res);
-       return 0;
-}
-EXPORT_SYMBOL(__check_region);
-
 /**
  * __release_region - release a previously reserved resource region
  * @parent: parent resource descriptor