static void hfa384x_usbctlx_reaper_task(unsigned long data)
 {
        hfa384x_t *hw = (hfa384x_t *)data;
-       struct list_head *entry;
-       struct list_head *temp;
+       hfa384x_usbctlx_t *ctlx, *temp;
        unsigned long flags;
 
        spin_lock_irqsave(&hw->ctlxq.lock, flags);
        /* This list is guaranteed to be empty if someone
         * has unplugged the adapter.
         */
-       list_for_each_safe(entry, temp, &hw->ctlxq.reapable) {
-               hfa384x_usbctlx_t *ctlx;
-
-               ctlx = list_entry(entry, hfa384x_usbctlx_t, list);
+       list_for_each_entry_safe(ctlx, temp, &hw->ctlxq.reapable, list) {
                list_del(&ctlx->list);
                kfree(ctlx);
        }
 static void hfa384x_usbctlx_completion_task(unsigned long data)
 {
        hfa384x_t *hw = (hfa384x_t *)data;
-       struct list_head *entry;
-       struct list_head *temp;
+       hfa384x_usbctlx_t *ctlx, *temp;
        unsigned long flags;
 
        int reap = 0;
        /* This list is guaranteed to be empty if someone
         * has unplugged the adapter ...
         */
-       list_for_each_safe(entry, temp, &hw->ctlxq.completing) {
-               hfa384x_usbctlx_t *ctlx;
-
-               ctlx = list_entry(entry, hfa384x_usbctlx_t, list);
-
+       list_for_each_entry_safe(ctlx, temp, &hw->ctlxq.completing, list) {
                /* Call the completion function that this
                 * command was assigned, assuming it has one.
                 */
 
        wlandev = (wlandevice_t *)usb_get_intfdata(interface);
        if (wlandev != NULL) {
                LIST_HEAD(cleanlist);
-               struct list_head *entry;
-               struct list_head *temp;
+               hfa384x_usbctlx_t *ctlx, *temp;
                unsigned long flags;
 
                hfa384x_t *hw = wlandev->priv;
                 * and tell everyone who is waiting for their
                 * responses that we have shut down.
                 */
-               list_for_each(entry, &cleanlist) {
-                       hfa384x_usbctlx_t *ctlx;
-
-                       ctlx = list_entry(entry, hfa384x_usbctlx_t, list);
+               list_for_each_entry(ctlx, &cleanlist, list)
                        complete(&ctlx->done);
-               }
 
                /* Give any outstanding synchronous commands
                 * a chance to complete. All they need to do
                msleep(100);
 
                /* Now delete the CTLXs, because no-one else can now. */
-               list_for_each_safe(entry, temp, &cleanlist) {
-                       hfa384x_usbctlx_t *ctlx;
-
-                       ctlx = list_entry(entry, hfa384x_usbctlx_t, list);
+               list_for_each_entry_safe(ctlx, temp, &cleanlist, list)
                        kfree(ctlx);
-               }
 
                /* Unhook the wlandev */
                unregister_wlandev(wlandev);