platform_set_drvdata(pdev, NULL);
        flush_work(&psw->work);
-       del_timer_sync(&psw->debounce);
+       timer_shutdown_sync(&psw->debounce);
        free_irq(irq, pdev);
 
        kfree(psw);
 
        ioc->running = IOC_STOP;
        spin_unlock_irq(&ioc->lock);
 
-       del_timer_sync(&ioc->timer);
+       timer_shutdown_sync(&ioc->timer);
        free_percpu(ioc->pcpu_stat);
        kfree(ioc);
 }
 
 {
        struct blk_iolatency *blkiolat = BLKIOLATENCY(rqos);
 
-       del_timer_sync(&blkiolat->timer);
+       timer_shutdown_sync(&blkiolat->timer);
        flush_work(&blkiolat->enable_work);
        blkcg_deactivate_policy(rqos->q, &blkcg_policy_iolatency);
        kfree(blkiolat);
 
        struct kyber_queue_data *kqd = e->elevator_data;
        int i;
 
-       del_timer_sync(&kqd->timer);
+       timer_shutdown_sync(&kqd->timer);
        blk_stat_disable_accounting(kqd->q);
 
        for (i = 0; i < KYBER_NUM_DOMAINS; i++)
 
        ghes->flags |= GHES_EXITING;
        switch (generic->notify.type) {
        case ACPI_HEST_NOTIFY_POLLED:
-               del_timer_sync(&ghes->timer);
+               timer_shutdown_sync(&ghes->timer);
                break;
        case ACPI_HEST_NOTIFY_EXTERNAL:
                free_irq(ghes->irq, ghes);
 
        }
        spin_unlock_irqrestore(&vc->lock, flags);
        if (est) {
-               del_timer_sync(&est->timer);
+               timer_shutdown_sync(&est->timer);
                kfree(est);
        }
 
                vc->tx_vcc = NULL;
 
                if (vc->estimator) {
-                       del_timer(&vc->estimator->timer);
+                       timer_shutdown(&vc->estimator->timer);
                        kfree(vc->estimator);
                        vc->estimator = NULL;
                }
                card = idt77252_chain;
                dev = card->atmdev;
                idt77252_chain = card->next;
-               del_timer_sync(&card->tst_timer);
+               timer_shutdown_sync(&card->tst_timer);
 
                if (dev->phy->stop)
                        dev->phy->stop(dev);
 
        struct drbd_resource *resource = device->resource;
        struct drbd_peer_device *peer_device, *tmp_peer_device;
 
-       del_timer_sync(&device->request_timer);
+       timer_shutdown_sync(&device->request_timer);
 
        /* paranoia asserts */
        D_ASSERT(device, device->open_cnt == 0);
 
        if (lo->workqueue)
                destroy_workqueue(lo->workqueue);
        loop_free_idle_workers(lo, true);
-       del_timer_sync(&lo->timer);
+       timer_shutdown_sync(&lo->timer);
        mutex_destroy(&lo->lo_mutex);
        kfree(lo);
 }
 
 {
        struct bcsp_struct *bcsp = hu->priv;
 
-       del_timer_sync(&bcsp->tbcsp);
+       timer_shutdown_sync(&bcsp->tbcsp);
 
        hu->priv = NULL;
 
 
        struct i915_sw_dma_fence_cb_timer *cb =
                container_of(wrk, typeof(*cb), work);
 
-       del_timer_sync(&cb->timer);
+       timer_shutdown_sync(&cb->timer);
        dma_fence_put(cb->dma);
 
        kfree_rcu(cb, rcu);
 
        spin_unlock_irqrestore(&wdata->state.lock, flags);
 
        cancel_work_sync(&wdata->init_worker);
-       del_timer_sync(&wdata->timer);
+       timer_shutdown_sync(&wdata->timer);
 
        device_remove_file(&wdata->hdev->dev, &dev_attr_devtype);
        device_remove_file(&wdata->hdev->dev, &dev_attr_extension);
 
 
        free_irq(dev->irq[0], locomokbd);
 
-       del_timer_sync(&locomokbd->timer);
+       timer_shutdown_sync(&locomokbd->timer);
 
        input_unregister_device(locomokbd->input);
        locomo_set_drvdata(dev, NULL);
 
        omap_writew(1, OMAP1_MPUIO_BASE + OMAP_MPUIO_KBD_MASKIT);
        free_irq(omap_kp->irq, omap_kp);
 
-       del_timer_sync(&omap_kp->timer);
+       timer_shutdown_sync(&omap_kp->timer);
        tasklet_kill(&kp_tasklet);
 
        /* unregister everything */
 
        struct alps_data *priv = psmouse->private;
 
        psmouse_reset(psmouse);
-       del_timer_sync(&priv->timer);
+       timer_shutdown_sync(&priv->timer);
        if (priv->dev2)
                input_unregister_device(priv->dev2);
        if (!IS_ERR_OR_NULL(priv->dev3))
 
 
        hc->shutdown = true;
 
-       del_timer_sync(&hc->keep_tl);
-       del_timer_sync(&hc->timeout_tl);
+       timer_shutdown_sync(&hc->keep_tl);
+       timer_shutdown_sync(&hc->timeout_tl);
 
        cancel_work_sync(&hc->workq);
 
 
        while (!list_empty(list)) {
                timer = list_first_entry(list, struct mISDNtimer, list);
                spin_unlock_irq(&dev->lock);
-               del_timer_sync(&timer->tl);
+               timer_shutdown_sync(&timer->tl);
                spin_lock_irq(&dev->lock);
                /* it might have been moved to ->expired */
                list_del(&timer->list);
                        list_del_init(&timer->list);
                        timer->id = -1;
                        spin_unlock_irq(&dev->lock);
-                       del_timer_sync(&timer->tl);
+                       timer_shutdown_sync(&timer->tl);
                        kfree(timer);
                        return id;
                }
 
 {
        struct activity_data *activity_data = led_get_trigger_data(led_cdev);
 
-       del_timer_sync(&activity_data->timer);
+       timer_shutdown_sync(&activity_data->timer);
        kfree(activity_data);
        clear_bit(LED_BLINK_SW, &led_cdev->work_flags);
 }
 
        struct heartbeat_trig_data *heartbeat_data =
                led_get_trigger_data(led_cdev);
 
-       del_timer_sync(&heartbeat_data->timer);
+       timer_shutdown_sync(&heartbeat_data->timer);
        kfree(heartbeat_data);
        clear_bit(LED_BLINK_SW, &led_cdev->work_flags);
 }
 
        if (led_cdev->pattern_clear)
                led_cdev->pattern_clear(led_cdev);
 
-       del_timer_sync(&data->timer);
+       timer_shutdown_sync(&data->timer);
 
        led_set_brightness(led_cdev, LED_OFF);
        kfree(data);
 
 {
        struct transient_trig_data *transient_data = led_get_trigger_data(led_cdev);
 
-       del_timer_sync(&transient_data->timer);
+       timer_shutdown_sync(&transient_data->timer);
        led_set_brightness_nosleep(led_cdev, transient_data->restore_state);
        kfree(transient_data);
 }
 
 
        /* Interrupts */
        ivtv_set_irq_mask(itv, 0xffffffff);
-       del_timer_sync(&itv->dma_timer);
+       timer_shutdown_sync(&itv->dma_timer);
 
        /* Kill irq worker */
        kthread_flush_worker(&itv->irq_worker);
 
        return hdw;
  fail:
        if (hdw) {
-               del_timer_sync(&hdw->quiescent_timer);
-               del_timer_sync(&hdw->decoder_stabilization_timer);
-               del_timer_sync(&hdw->encoder_run_timer);
-               del_timer_sync(&hdw->encoder_wait_timer);
+               timer_shutdown_sync(&hdw->quiescent_timer);
+               timer_shutdown_sync(&hdw->decoder_stabilization_timer);
+               timer_shutdown_sync(&hdw->encoder_run_timer);
+               timer_shutdown_sync(&hdw->encoder_wait_timer);
                flush_work(&hdw->workpoll);
                v4l2_device_unregister(&hdw->v4l2_dev);
                usb_free_urb(hdw->ctl_read_urb);
        if (!hdw) return;
        pvr2_trace(PVR2_TRACE_INIT,"pvr2_hdw_destroy: hdw=%p",hdw);
        flush_work(&hdw->workpoll);
-       del_timer_sync(&hdw->quiescent_timer);
-       del_timer_sync(&hdw->decoder_stabilization_timer);
-       del_timer_sync(&hdw->encoder_run_timer);
-       del_timer_sync(&hdw->encoder_wait_timer);
+       timer_shutdown_sync(&hdw->quiescent_timer);
+       timer_shutdown_sync(&hdw->decoder_stabilization_timer);
+       timer_shutdown_sync(&hdw->encoder_run_timer);
+       timer_shutdown_sync(&hdw->encoder_wait_timer);
        if (hdw->fw_buffer) {
                kfree(hdw->fw_buffer);
                hdw->fw_buffer = NULL;
 
        /* board shutdown stops the read pipe if it is running */
        s2255_board_shutdown(dev);
        /* make sure firmware still not trying to load */
-       del_timer_sync(&dev->timer);  /* only started in .probe and .open */
+       timer_shutdown_sync(&dev->timer);  /* only started in .probe and .open */
        if (dev->fw_data->fw_urb) {
                usb_kill_urb(dev->fw_data->fw_urb);
                usb_free_urb(dev->fw_data->fw_urb);
 errorFWDATA2:
        usb_free_urb(dev->fw_data->fw_urb);
 errorFWURB:
-       del_timer_sync(&dev->timer);
+       timer_shutdown_sync(&dev->timer);
 errorEP:
        usb_put_dev(dev->udev);
 errorUDEV:
 
 
 err_switch_setup:
        i40e_reset_interrupt_capability(pf);
-       del_timer_sync(&pf->service_timer);
+       timer_shutdown_sync(&pf->service_timer);
        i40e_shutdown_adminq(hw);
        iounmap(hw->hw_addr);
        pci_disable_pcie_error_reporting(pf->pdev);
        kfree(pf->vsi);
 err_switch_setup:
        i40e_reset_interrupt_capability(pf);
-       del_timer_sync(&pf->service_timer);
+       timer_shutdown_sync(&pf->service_timer);
 err_mac_addr:
 err_configure_lan_hmc:
        (void)i40e_shutdown_lan_hmc(hw);
        set_bit(__I40E_SUSPENDED, pf->state);
        set_bit(__I40E_DOWN, pf->state);
        if (pf->service_timer.function)
-               del_timer_sync(&pf->service_timer);
+               timer_shutdown_sync(&pf->service_timer);
        if (pf->service_task.func)
                cancel_work_sync(&pf->service_task);
 
 
        if (!hw)
                return;
 
-       del_timer_sync(&hw->watchdog_timer);
+       timer_shutdown_sync(&hw->watchdog_timer);
        cancel_work_sync(&hw->restart_work);
 
        for (i = hw->ports-1; i >= 0; --i)
 
                hlist_del_rcu(&port->hash);
 
                synchronize_rcu();
-               del_timer_sync(&port->clean_timer);
+               timer_shutdown_sync(&port->clean_timer);
                sunvnet_port_rm_txq_common(port);
                netif_napi_del(&port->napi);
                sunvnet_port_free_tx_bufs_common(port);
 
        dev_dbg(&dev->udev->dev, "%s", __func__);
 
        /* kill the timer and work */
-       del_timer_sync(&priv->sync_timer);
+       timer_shutdown_sync(&priv->sync_timer);
        cancel_work_sync(&priv->sierra_net_kevent);
 
        /* tell modem we are going away */
 
 
        if (cfg->btcoex->timer_on) {
                cfg->btcoex->timer_on = false;
-               del_timer_sync(&cfg->btcoex->timer);
+               timer_shutdown_sync(&cfg->btcoex->timer);
        }
 
        cancel_work_sync(&cfg->btcoex->work);
 
        struct iwl_dbg_tlv_timer_node *node, *tmp;
 
        list_for_each_entry_safe(node, tmp, timer_list, list) {
-               del_timer_sync(&node->timer);
+               timer_shutdown_sync(&node->timer);
                list_del(&node->list);
                kfree(node);
        }
 
 
                /* synchronize all rx queues so we can safely delete */
                iwl_mvm_free_reorder(mvm, baid_data);
-               del_timer_sync(&baid_data->session_timer);
+               timer_shutdown_sync(&baid_data->session_timer);
                RCU_INIT_POINTER(mvm->baid_map[baid], NULL);
                kfree_rcu(baid_data, rcu_head);
                IWL_DEBUG_HT(mvm, "BAID %d is free\n", baid);
 
 
        if (!sta->ap)
                kfree(sta->u.sta.challenge);
-       del_timer_sync(&sta->timer);
+       timer_shutdown_sync(&sta->timer);
 #endif /* PRISM2_NO_KERNEL_IEEE80211_MGMT */
 
        kfree(sta);
 
        if (adapter->if_ops.cleanup_if)
                adapter->if_ops.cleanup_if(adapter);
 
-       del_timer_sync(&adapter->cmd_timer);
+       timer_shutdown_sync(&adapter->cmd_timer);
 
        /* Free private structures */
        for (i = 0; i < adapter->priv_num; i++) {
 
 
        mutex_lock(&vif->wilc->deinit_lock);
 
-       del_timer_sync(&hif_drv->scan_timer);
-       del_timer_sync(&hif_drv->connect_timer);
+       timer_shutdown_sync(&hif_drv->scan_timer);
+       timer_shutdown_sync(&hif_drv->connect_timer);
        del_timer_sync(&vif->periodic_rssi);
-       del_timer_sync(&hif_drv->remain_on_ch_timer);
+       timer_shutdown_sync(&hif_drv->remain_on_ch_timer);
 
        if (hif_drv->usr_scan_req.scan_result) {
                hif_drv->usr_scan_req.scan_result(SCAN_EVENT_ABORTED, NULL,
 
        struct pn533_cmd *cmd, *n;
 
        /* delete the timer before cleanup the worker */
-       del_timer_sync(&priv->listen_timer);
+       timer_shutdown_sync(&priv->listen_timer);
 
        flush_delayed_work(&priv->poll_work);
        destroy_workqueue(priv->wq);
 
        pn53x_unregister_nfc(pn532->priv);
        serdev_device_close(serdev);
        pn53x_common_clean(pn532->priv);
-       del_timer_sync(&pn532->cmd_timeout);
+       timer_shutdown_sync(&pn532->cmd_timeout);
        kfree_skb(pn532->recv_skb);
        kfree(pn532);
 }
 
        struct resource *res;
 
        skt = platform_get_drvdata(pdev);
-       del_timer_sync(&skt->timer);
+       timer_shutdown_sync(&skt->timer);
        iounmap(skt->base);
        iounmap(skt->io_base);
        res = skt->reg_res;
 
        cf->active = 0;
        pcmcia_unregister_socket(&cf->socket);
        free_irq(cf->irq, cf);
-       del_timer_sync(&cf->timer);
+       timer_shutdown_sync(&cf->timer);
 
        iounmap(cf->io_virt);
        iounmap(cf->mem_base);
 
 
        cf->active = 0;
        pcmcia_unregister_socket(&cf->socket);
-       del_timer_sync(&cf->timer);
+       timer_shutdown_sync(&cf->timer);
        release_mem_region(cf->phys_cf, SZ_8K);
        free_irq(cf->irq, cf);
        kfree(cf);
 
        if (irq_mode == 1)
                free_irq(dev->irq, socket);
        else
-               del_timer_sync(&socket->poll_timer);
+               timer_shutdown_sync(&socket->poll_timer);
 err_out_free_res:
        pci_release_regions(dev);
 err_out_disable:
        if (irq_mode == 1)
                free_irq(dev->irq, socket);
        else
-               del_timer_sync(&socket->poll_timer);
+               timer_shutdown_sync(&socket->poll_timer);
        pci_release_regions(dev);
        pci_disable_device(dev);
 
 
        if (sock->cb_irq)
                free_irq(sock->cb_irq, sock);
        else
-               del_timer_sync(&sock->poll_timer);
+               timer_shutdown_sync(&sock->poll_timer);
 
        iounmap(sock->base);
        yenta_free_resources(sock);
        if (socket->cb_irq)
                free_irq(socket->cb_irq, socket);
        else
-               del_timer_sync(&socket->poll_timer);
+               timer_shutdown_sync(&socket->poll_timer);
  unmap:
        iounmap(socket->base);
        yenta_free_resources(socket);
 
                                 */
                                if (edif_entry->delete_sa_index !=
                                                INVALID_EDIF_SA_INDEX) {
-                                       del_timer(&edif_entry->timer);
+                                       timer_shutdown(&edif_entry->timer);
 
                                        /* build and send the aen */
                                        fcport->edif.rx_sa_set = 1;
                            "%s: removing edif_entry %p, new sa_index: 0x%x\n",
                            __func__, edif_entry, pkt->sa_index);
                        qla_edif_list_delete_sa_index(sp->fcport, edif_entry);
-                       del_timer(&edif_entry->timer);
+                       timer_shutdown(&edif_entry->timer);
 
                        ql_dbg(ql_dbg_edif, vha, 0x5033,
                            "%s: releasing edif_entry %p, new sa_index: 0x%x\n",
 
 
        atomisp_gmin_remove_subdev(sd);
 
-       del_timer_sync(&flash->flash_off_delay);
+       timer_shutdown_sync(&flash->flash_off_delay);
 
        lm3554_gpio_uninit(client);
 
 
                 */
                prism2sta_ifstate(wlandev, P80211ENUM_ifstate_disable);
 
-               del_timer_sync(&hw->throttle);
-               del_timer_sync(&hw->reqtimer);
-               del_timer_sync(&hw->resptimer);
+               timer_shutdown_sync(&hw->throttle);
+               timer_shutdown_sync(&hw->reqtimer);
+               timer_shutdown_sync(&hw->resptimer);
 
                /* Unlink all the URBs. This "removes the wheels"
                 * from the entire CTLX handling mechanism.
 
 {
        struct gsm_dlci *dlci = container_of(port, struct gsm_dlci, port);
 
-       del_timer_sync(&dlci->t1);
+       timer_shutdown_sync(&dlci->t1);
        dlci->gsm->dlci[dlci->addr] = NULL;
        kfifo_free(&dlci->fifo);
        while ((dlci->skb = skb_dequeue(&dlci->skb_list)))
 
 
        input_close_device(handle);
        cancel_work_sync(&sysrq->reinject_work);
-       del_timer_sync(&sysrq->keyreset_timer);
+       timer_shutdown_sync(&sysrq->keyreset_timer);
        input_unregister_handle(handle);
        kfree(sysrq);
 }
 
 
        usb_del_gadget_udc(&m66592->gadget);
 
-       del_timer_sync(&m66592->timer);
+       timer_shutdown_sync(&m66592->timer);
        iounmap(m66592->reg);
        free_irq(platform_get_irq(pdev, 0), m66592);
        m66592_free_request(&m66592->ep[0].ep, m66592->ep0_req);
 
 
        usb_kill_anchored_urbs(&garmin_data_p->write_urbs);
        usb_kill_urb(port->interrupt_in_urb);
-       del_timer_sync(&garmin_data_p->timer);
+       timer_shutdown_sync(&garmin_data_p->timer);
        kfree(garmin_data_p);
 }
 
 
                /* Turn off LED */
                mos7840_set_led_sync(port, MODEM_CONTROL_REGISTER, 0x0300);
 
-               del_timer_sync(&mos7840_port->led_timer1);
-               del_timer_sync(&mos7840_port->led_timer2);
+               timer_shutdown_sync(&mos7840_port->led_timer1);
+               timer_shutdown_sync(&mos7840_port->led_timer2);
 
                usb_kill_urb(mos7840_port->led_urb);
                usb_free_urb(mos7840_port->led_urb);
 
        }
 
        ext4_es_unregister_shrinker(sbi);
-       del_timer_sync(&sbi->s_err_report);
+       timer_shutdown_sync(&sbi->s_err_report);
        ext4_release_system_zone(sb);
        ext4_mb_release(sb);
        ext4_ext_release(sb);
 
 
        down_write(&nilfs->ns_segctor_sem);
 
-       del_timer_sync(&sci->sc_timer);
+       timer_shutdown_sync(&sci->sc_timer);
        kfree(sci);
 }
 
 
 
        /* Delete timer and generate a final TRANSMIT_PDU event to flush out
         * all pending messages before the applicant is gone. */
-       del_timer_sync(&app->join_timer);
+       timer_shutdown_sync(&app->join_timer);
 
        spin_lock_bh(&app->lock);
        garp_gid_event(app, GARP_EVENT_TRANSMIT_PDU);
 
        /* Delete timer and generate a final TX event to flush out
         * all pending messages before the applicant is gone.
         */
-       del_timer_sync(&app->join_timer);
-       del_timer_sync(&app->periodic_timer);
+       timer_shutdown_sync(&app->join_timer);
+       timer_shutdown_sync(&app->periodic_timer);
 
        spin_lock_bh(&app->lock);
        mrp_mad_event(app, MRP_EVENT_TX);
 
        WARN_ON(!hlist_unhashed(&mp->mdb_node));
        WARN_ON(mp->ports);
 
-       del_timer_sync(&mp->timer);
+       timer_shutdown_sync(&mp->timer);
        kfree_rcu(mp, rcu);
 }
 
        src = container_of(gc, struct net_bridge_group_src, mcast_gc);
        WARN_ON(!hlist_unhashed(&src->node));
 
-       del_timer_sync(&src->timer);
+       timer_shutdown_sync(&src->timer);
        kfree_rcu(src, rcu);
 }
 
        WARN_ON(!hlist_unhashed(&pg->mglist));
        WARN_ON(!hlist_empty(&pg->src_list));
 
-       del_timer_sync(&pg->rexmit_timer);
-       del_timer_sync(&pg->timer);
+       timer_shutdown_sync(&pg->rexmit_timer);
+       timer_shutdown_sync(&pg->timer);
        kfree_rcu(pg, rcu);
 }
 
 
        set_h = container_of(gc, struct net_bridge_group_eht_set_entry, mcast_gc);
        WARN_ON(!RB_EMPTY_NODE(&set_h->rb_node));
 
-       del_timer_sync(&set_h->timer);
+       timer_shutdown_sync(&set_h->timer);
        kfree(set_h);
 }
 
        WARN_ON(!RB_EMPTY_NODE(&eht_set->rb_node));
        WARN_ON(!RB_EMPTY_ROOT(&eht_set->entry_tree));
 
-       del_timer_sync(&eht_set->timer);
+       timer_shutdown_sync(&eht_set->timer);
        kfree(eht_set);
 }
 
 
 
        est = xchg((__force struct net_rate_estimator **)rate_est, NULL);
        if (est) {
-               del_timer_sync(&est->timer);
+               timer_shutdown_sync(&est->timer);
                kfree_rcu(est, rcu);
        }
 }
 
 
 static void ipmr_free_table(struct mr_table *mrt)
 {
-       del_timer_sync(&mrt->ipmr_expire_timer);
+       timer_shutdown_sync(&mrt->ipmr_expire_timer);
        mroute_clean_tables(mrt, MRT_FLUSH_VIFS | MRT_FLUSH_VIFS_STATIC |
                                 MRT_FLUSH_MFC | MRT_FLUSH_MFC_STATIC);
        rhltable_destroy(&mrt->mfc_hash);
 
 
 static void ip6mr_free_table(struct mr_table *mrt)
 {
-       del_timer_sync(&mrt->ipmr_expire_timer);
+       timer_shutdown_sync(&mrt->ipmr_expire_timer);
        mroute_clean_tables(mrt, MRT6_FLUSH_MIFS | MRT6_FLUSH_MIFS_STATIC |
                                 MRT6_FLUSH_MFC | MRT6_FLUSH_MFC_STATIC);
        rhltable_destroy(&mrt->mfc_hash);
 
        mpath->flags |= MESH_PATH_RESOLVING | MESH_PATH_DELETED;
        mesh_gate_del(tbl, mpath);
        spin_unlock_bh(&mpath->state_lock);
-       del_timer_sync(&mpath->timer);
+       timer_shutdown_sync(&mpath->timer);
        atomic_dec(&sdata->u.mesh.mpaths);
        atomic_dec(&tbl->entries);
        mesh_path_flush_pending(mpath);
 
        struct set_elem *e, *n;
 
        if (SET_WITH_TIMEOUT(set))
-               del_timer_sync(&map->gc);
+               timer_shutdown_sync(&map->gc);
 
        list_for_each_entry_safe(e, n, &map->members, list) {
                list_del(&e->list);
 
        struct ip_vs_lblc_table *tbl = svc->sched_data;
 
        /* remove periodic timer */
-       del_timer_sync(&tbl->periodic_timer);
+       timer_shutdown_sync(&tbl->periodic_timer);
 
        /* got to clean up table entries here */
        ip_vs_lblc_flush(svc);
 
        struct ip_vs_lblcr_table *tbl = svc->sched_data;
 
        /* remove periodic timer */
-       del_timer_sync(&tbl->periodic_timer);
+       timer_shutdown_sync(&tbl->periodic_timer);
 
        /* got to clean up table entries here */
        ip_vs_lblcr_flush(svc);
 
                pr_debug("deleting timer %s\n", info->label);
 
                list_del(&info->timer->entry);
-               del_timer_sync(&info->timer->timer);
+               timer_shutdown_sync(&info->timer->timer);
                cancel_work_sync(&info->timer->work);
                sysfs_remove_file(idletimer_tg_kobj, &info->timer->attr.attr);
                kfree(info->timer->attr.attr.name);
                if (info->timer->timer_type & XT_IDLETIMER_ALARM) {
                        alarm_cancel(&info->timer->alarm);
                } else {
-                       del_timer_sync(&info->timer->timer);
+                       timer_shutdown_sync(&info->timer->timer);
                }
                cancel_work_sync(&info->timer->work);
                sysfs_remove_file(idletimer_tg_kobj, &info->timer->attr.attr);
 
 
        list_del(&ledinternal->list);
 
-       del_timer_sync(&ledinternal->timer);
+       timer_shutdown_sync(&ledinternal->timer);
 
        led_trigger_unregister(&ledinternal->netfilter_led_trigger);
 
 
 
 static void __flow_destroy_filter(struct flow_filter *f)
 {
-       del_timer_sync(&f->perturb_timer);
+       timer_shutdown_sync(&f->perturb_timer);
        tcf_exts_destroy(&f->exts);
        tcf_em_tree_destroy(&f->ematches);
        tcf_exts_put_net(&f->exts);
 
        struct svc_serv *serv = container_of(ref, struct svc_serv, sv_refcnt);
 
        dprintk("svc: svc_destroy(%s)\n", serv->sv_program->pg_name);
-       del_timer_sync(&serv->sv_temptimer);
+       timer_shutdown_sync(&serv->sv_temptimer);
 
        /*
         * The last user is gone and thus all sockets have to be destroyed to
 
  */
 void tipc_disc_delete(struct tipc_discoverer *d)
 {
-       del_timer_sync(&d->timer);
+       timer_shutdown_sync(&d->timer);
        kfree_skb(d->skb);
        kfree(d);
 }
 
        }
        mon->self = NULL;
        write_unlock_bh(&mon->lock);
-       del_timer_sync(&mon->timer);
+       timer_shutdown_sync(&mon->timer);
        kfree(self->domain);
        kfree(self);
        kfree(mon);
 
 
 static void snd_ak4117_free(struct ak4117 *chip)
 {
-       del_timer_sync(&chip->timer);
+       timer_shutdown_sync(&chip->timer);
        kfree(chip);
 }
 
 
        if (! emu)
                return -EINVAL;
 
-       del_timer_sync(&emu->tlist);
+       timer_shutdown_sync(&emu->tlist);
 
        snd_emux_proc_free(emu);
        snd_emux_delete_virmidi(emu);