diff options
Diffstat (limited to 'drivers/staging/unisys/uislib/uisutils.c')
-rw-r--r-- | drivers/staging/unisys/uislib/uisutils.c | 99 |
1 files changed, 45 insertions, 54 deletions
diff --git a/drivers/staging/unisys/uislib/uisutils.c b/drivers/staging/unisys/uislib/uisutils.c index 4a5b86773927..31318d246252 100644 --- a/drivers/staging/unisys/uislib/uisutils.c +++ b/drivers/staging/unisys/uislib/uisutils.c @@ -42,14 +42,13 @@ atomic_t uisutils_registered_services = ATOMIC_INIT(0); * uisctrl_register_req_handler() or * uisctrl_register_req_handler_ex() */ - /*****************************************************/ /* Utility functions */ /*****************************************************/ int uisutil_add_proc_line_ex(int *total, char **buffer, int *buffer_remaining, - char *format, ...) + char *format, ...) { va_list args; int len; @@ -57,6 +56,7 @@ uisutil_add_proc_line_ex(int *total, char **buffer, int *buffer_remaining, DBGINF("buffer = 0x%p : *buffer = 0x%p.\n", buffer, *buffer); va_start(args, format); len = vsnprintf(*buffer, *buffer_remaining, format, args); + va_end(args); if (len >= *buffer_remaining) { *buffer += *buffer_remaining; *total += *buffer_remaining; @@ -96,7 +96,7 @@ uisctrl_register_req_handler(int type, void *fptr, } if (chipset_driver_info) bus_device_info_init(chipset_driver_info, "chipset", "uislib", - VERSION, NULL); + VERSION, NULL); return 1; } @@ -113,66 +113,57 @@ uisctrl_register_req_handler_ex(uuid_le switch_uuid, u32 client_str_len, u64 bytes), struct ultra_vbus_deviceinfo *chipset_driver_info) { - struct req_handler_info *pReqHandlerInfo; - int rc = 0; /* assume failure */ + struct req_handler_info *req_handler; LOGINF("type=%pUL, controlfunc=0x%p.\n", &switch_uuid, controlfunc); if (!controlfunc) { LOGERR("%pUL: controlfunc must be supplied\n", &switch_uuid); - goto Away; + return 0; } if (!server_channel_ok) { LOGERR("%pUL: Server_Channel_Ok must be supplied\n", &switch_uuid); - goto Away; + return 0; } if (!server_channel_init) { LOGERR("%pUL: Server_Channel_Init must be supplied\n", &switch_uuid); - goto Away; + return 0; } - pReqHandlerInfo = req_handler_add(switch_uuid, - switch_type_name, - controlfunc, - min_channel_bytes, - server_channel_ok, server_channel_init); - if (!pReqHandlerInfo) { + req_handler = req_handler_add(switch_uuid, + switch_type_name, + controlfunc, + min_channel_bytes, + server_channel_ok, server_channel_init); + if (!req_handler) { LOGERR("failed to add %pUL to server list\n", &switch_uuid); - goto Away; + return 0; } atomic_inc(&uisutils_registered_services); - rc = 1; /* success */ -Away: - if (rc) { - if (chipset_driver_info) - bus_device_info_init(chipset_driver_info, "chipset", - "uislib", VERSION, NULL); - } else - LOGERR("failed to register type %pUL.\n", &switch_uuid); + if (chipset_driver_info) { + bus_device_info_init(chipset_driver_info, "chipset", + "uislib", VERSION, NULL); + return 1; + } - return rc; + LOGERR("failed to register type %pUL.\n", &switch_uuid); + return 0; } EXPORT_SYMBOL_GPL(uisctrl_register_req_handler_ex); int uisctrl_unregister_req_handler_ex(uuid_le switch_uuid) { - int rc = 0; /* assume failure */ - LOGINF("type=%pUL.\n", &switch_uuid); if (req_handler_del(switch_uuid) < 0) { LOGERR("failed to remove %pUL from server list\n", - &switch_uuid); - goto Away; + &switch_uuid); + return 0; } atomic_dec(&uisutils_registered_services); - rc = 1; /* success */ -Away: - if (!rc) - LOGERR("failed to unregister type %pUL.\n", &switch_uuid); - return rc; + return 1; } EXPORT_SYMBOL_GPL(uisctrl_unregister_req_handler_ex); @@ -214,10 +205,10 @@ uisutil_copy_fragsinfo_from_skb(unsigned char *calling_ctx, void *skb_in, frags[count].pi_pfn = page_to_pfn(virt_to_page(skb->data + offset)); frags[count].pi_off = - (unsigned long) (skb->data + offset) & PI_PAGE_MASK; + (unsigned long)(skb->data + offset) & PI_PAGE_MASK; size = min(firstfraglen, - (unsigned int) (PI_PAGE_SIZE - frags[count].pi_off)); + (unsigned int)(PI_PAGE_SIZE - frags[count].pi_off)); /* can take smallest of firstfraglen(what's left) OR * bytes left in the page */ @@ -231,7 +222,7 @@ uisutil_copy_fragsinfo_from_skb(unsigned char *calling_ctx, void *skb_in, if ((count + numfrags) > frags_max) { LOGERR("**** FAILED %s frags array too small: max:%d count+nr_frags:%d\n", - calling_ctx, frags_max, count + numfrags); + calling_ctx, frags_max, count + numfrags); return -1; /* failure */ } @@ -255,7 +246,6 @@ dolist: if (skb_shinfo(skb)->frag_list) { for (skbinlist = skb_shinfo(skb)->frag_list; skbinlist; skbinlist = skbinlist->next) { - c = uisutil_copy_fragsinfo_from_skb("recursive", skbinlist, skbinlist->len - skbinlist->data_len, @@ -272,17 +262,18 @@ dolist: if (skb_shinfo(skb)->frag_list) { } EXPORT_SYMBOL_GPL(uisutil_copy_fragsinfo_from_skb); -static LIST_HEAD(ReqHandlerInfo_list); /* list of struct req_handler_info */ -static DEFINE_SPINLOCK(ReqHandlerInfo_list_lock); +static LIST_HEAD(req_handler_info_list); /* list of struct req_handler_info */ +static DEFINE_SPINLOCK(req_handler_info_list_lock); struct req_handler_info * req_handler_add(uuid_le switch_uuid, const char *switch_type_name, int (*controlfunc)(struct io_msgs *), unsigned long min_channel_bytes, - int (*Server_Channel_Ok)(unsigned long channelBytes), - int (*Server_Channel_Init) - (void *x, unsigned char *clientStr, u32 clientStrLen, u64 bytes)) + int (*server_channel_ok)(unsigned long channel_bytes), + int (*server_channel_init) + (void *x, unsigned char *clientstr, u32 clientstr_len, + u64 bytes)) { struct req_handler_info *rc = NULL; @@ -292,14 +283,14 @@ req_handler_add(uuid_le switch_uuid, rc->switch_uuid = switch_uuid; rc->controlfunc = controlfunc; rc->min_channel_bytes = min_channel_bytes; - rc->server_channel_ok = Server_Channel_Ok; - rc->server_channel_init = Server_Channel_Init; + rc->server_channel_ok = server_channel_ok; + rc->server_channel_init = server_channel_init; if (switch_type_name) strncpy(rc->switch_type_name, switch_type_name, sizeof(rc->switch_type_name) - 1); - spin_lock(&ReqHandlerInfo_list_lock); - list_add_tail(&(rc->list_link), &ReqHandlerInfo_list); - spin_unlock(&ReqHandlerInfo_list_lock); + spin_lock(&req_handler_info_list_lock); + list_add_tail(&rc->list_link, &req_handler_info_list); + spin_unlock(&req_handler_info_list_lock); return rc; } @@ -310,15 +301,15 @@ req_handler_find(uuid_le switch_uuid) struct list_head *lelt, *tmp; struct req_handler_info *entry = NULL; - spin_lock(&ReqHandlerInfo_list_lock); - list_for_each_safe(lelt, tmp, &ReqHandlerInfo_list) { + spin_lock(&req_handler_info_list_lock); + list_for_each_safe(lelt, tmp, &req_handler_info_list) { entry = list_entry(lelt, struct req_handler_info, list_link); if (uuid_le_cmp(entry->switch_uuid, switch_uuid) == 0) { - spin_unlock(&ReqHandlerInfo_list_lock); + spin_unlock(&req_handler_info_list_lock); return entry; } } - spin_unlock(&ReqHandlerInfo_list_lock); + spin_unlock(&req_handler_info_list_lock); return NULL; } @@ -329,8 +320,8 @@ req_handler_del(uuid_le switch_uuid) struct req_handler_info *entry = NULL; int rc = -1; - spin_lock(&ReqHandlerInfo_list_lock); - list_for_each_safe(lelt, tmp, &ReqHandlerInfo_list) { + spin_lock(&req_handler_info_list_lock); + list_for_each_safe(lelt, tmp, &req_handler_info_list) { entry = list_entry(lelt, struct req_handler_info, list_link); if (uuid_le_cmp(entry->switch_uuid, switch_uuid) == 0) { list_del(lelt); @@ -338,6 +329,6 @@ req_handler_del(uuid_le switch_uuid) rc++; } } - spin_unlock(&ReqHandlerInfo_list_lock); + spin_unlock(&req_handler_info_list_lock); return rc; } |