/**********************************************************************/
/* wait for sends that have allocated a tx desc to launch or give up */
- while (cfs_atomic_read (&kqswnal_data.kqn_pending_txs) != 0) {
+ while (atomic_read (&kqswnal_data.kqn_pending_txs) != 0) {
CDEBUG(D_NET, "waiting for %d pending sends\n",
- cfs_atomic_read (&kqswnal_data.kqn_pending_txs));
+ atomic_read (&kqswnal_data.kqn_pending_txs));
cfs_pause(cfs_time_seconds(1));
}
/**********************************************************************/
/* flag threads to terminate, wake them and wait for them to die */
kqswnal_data.kqn_shuttingdown = 2;
- cfs_waitq_broadcast (&kqswnal_data.kqn_sched_waitq);
+ wake_up_all (&kqswnal_data.kqn_sched_waitq);
- while (cfs_atomic_read (&kqswnal_data.kqn_nthreads) != 0) {
+ while (atomic_read (&kqswnal_data.kqn_nthreads) != 0) {
CDEBUG(D_NET, "waiting for %d threads to terminate\n",
- cfs_atomic_read (&kqswnal_data.kqn_nthreads));
+ atomic_read (&kqswnal_data.kqn_nthreads));
cfs_pause(cfs_time_seconds(1));
}
/* resets flags, pointers to NULL etc */
memset(&kqswnal_data, 0, sizeof (kqswnal_data));
- CDEBUG (D_MALLOC, "done kmem %d\n", cfs_atomic_read(&libcfs_kmemory));
+ CDEBUG (D_MALLOC, "done kmem %d\n", atomic_read(&libcfs_kmemory));
- PORTAL_MODULE_UNUSE;
+ module_put(THIS_MODULE);
}
int
*kqswnal_tunables.kqn_credits);
}
- CDEBUG (D_MALLOC, "start kmem %d\n", cfs_atomic_read(&libcfs_kmemory));
+ CDEBUG (D_MALLOC, "start kmem %d\n", atomic_read(&libcfs_kmemory));
/* ensure all pointers NULL etc */
memset (&kqswnal_data, 0, sizeof (kqswnal_data));
CFS_INIT_LIST_HEAD (&kqswnal_data.kqn_readyrxds);
spin_lock_init(&kqswnal_data.kqn_sched_lock);
- cfs_waitq_init (&kqswnal_data.kqn_sched_waitq);
+ init_waitqueue_head (&kqswnal_data.kqn_sched_waitq);
/* pointers/lists/locks initialised */
kqswnal_data.kqn_init = KQN_INIT_DATA;
- PORTAL_MODULE_USE;
+ try_module_get(THIS_MODULE);
kqswnal_data.kqn_ep = ep_system();
if (kqswnal_data.kqn_ep == NULL) {
/**********************************************************************/
/* Spawn scheduling threads */
- for (i = 0; i < cfs_num_online_cpus(); i++) {
- rc = kqswnal_thread_start (kqswnal_scheduler, NULL);
+ for (i = 0; i < num_online_cpus(); i++) {
+ rc = kqswnal_thread_start(kqswnal_scheduler, NULL,
+ "kqswnal_sched");
if (rc != 0)
{
CERROR ("failed to spawn scheduling thread: %d\n", rc);