diff options
author | jhb <jhb@FreeBSD.org> | 2010-11-17 22:28:04 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2010-11-17 22:28:04 +0000 |
commit | 6858b8bb3347117f293ed046ae5886415ce60bf2 (patch) | |
tree | fd352cc55f52affd436f512d10be46c1b5468047 /sys/kern/subr_bus.c | |
parent | e5464da2b607e2a188cffe565e08622cf4988963 (diff) | |
download | FreeBSD-src-6858b8bb3347117f293ed046ae5886415ce60bf2.zip FreeBSD-src-6858b8bb3347117f293ed046ae5886415ce60bf2.tar.gz |
Add a resource_list_reserved() method that returns true if a resource
list entry contains a reserved resource.
Diffstat (limited to 'sys/kern/subr_bus.c')
-rw-r--r-- | sys/kern/subr_bus.c | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/sys/kern/subr_bus.c b/sys/kern/subr_bus.c index d12968c..5a53fc9 100644 --- a/sys/kern/subr_bus.c +++ b/sys/kern/subr_bus.c @@ -2934,6 +2934,30 @@ resource_list_busy(struct resource_list *rl, int type, int rid) } /** + * @brief Determine if a resource entry is reserved. + * + * Returns true if a resource entry is reserved meaning that it has an + * associated "reserved" resource. The resource can either be + * allocated or unallocated. + * + * @param rl the resource list to search + * @param type the resource entry type (e.g. SYS_RES_MEMORY) + * @param rid the resource identifier + * + * @returns Non-zero if the entry is reserved, zero otherwise. + */ +int +resource_list_reserved(struct resource_list *rl, int type, int rid) +{ + struct resource_list_entry *rle; + + rle = resource_list_find(rl, type, rid); + if (rle != NULL && rle->flags & RLE_RESERVED) + return (1); + return (0); +} + +/** * @brief Find a resource entry by type and rid. * * @param rl the resource list to search |