Skip to content

Commit

Permalink
kernel/resource.c: remove deprecated __check_region() and friends
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
jsitnicki authored and torvalds committed Apr 15, 2015
1 parent 2813893 commit 96831c0
Show file tree
Hide file tree
Showing 2 changed files with 0 additions and 40 deletions.
8 changes: 0 additions & 8 deletions include/linux/ioport.h
Original file line number Diff line number Diff line change
Expand Up @@ -196,23 +196,15 @@ 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
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;

Expand Down
32 changes: 0 additions & 32 deletions kernel/resource.c
Original file line number Diff line number Diff line change
Expand Up @@ -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.
*/

Expand Down Expand Up @@ -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
Expand Down

0 comments on commit 96831c0

Please sign in to comment.