};
 
 static struct iucv_irq_data *iucv_irq_data[NR_CPUS];
-static cpumask_t iucv_buffer_cpumask = CPU_MASK_NONE;
-static cpumask_t iucv_irq_cpumask = CPU_MASK_NONE;
+static cpumask_t iucv_buffer_cpumask = { CPU_BITS_NONE };
+static cpumask_t iucv_irq_cpumask = { CPU_BITS_NONE };
 
 /*
  * Queue of interrupt buffers lock for delivery via the tasklet
        parm->set_mask.ipmask = 0xf8;
        iucv_call_b2f0(IUCV_SETCONTROLMASK, parm);
        /* Set indication that iucv interrupts are allowed for this cpu. */
-       cpu_set(cpu, iucv_irq_cpumask);
+       cpumask_set_cpu(cpu, &iucv_irq_cpumask);
 }
 
 /**
        iucv_call_b2f0(IUCV_SETMASK, parm);
 
        /* Clear indication that iucv interrupts are allowed for this cpu. */
-       cpu_clear(cpu, iucv_irq_cpumask);
+       cpumask_clear_cpu(cpu, &iucv_irq_cpumask);
 }
 
 /**
        iucv_call_b2f0(IUCV_SETCONTROLMASK, parm);
 
        /* Clear indication that iucv interrupts are allowed for this cpu. */
-       cpu_clear(cpu, iucv_irq_cpumask);
+       cpumask_clear_cpu(cpu, &iucv_irq_cpumask);
 }
 
 /**
        union iucv_param *parm;
        int rc;
 
-       if (cpu_isset(cpu, iucv_buffer_cpumask))
+       if (cpumask_test_cpu(cpu, &iucv_buffer_cpumask))
                return;
 
        /* Declare interrupt buffer. */
        }
 
        /* Set indication that an iucv buffer exists for this cpu. */
-       cpu_set(cpu, iucv_buffer_cpumask);
+       cpumask_set_cpu(cpu, &iucv_buffer_cpumask);
 
-       if (iucv_nonsmp_handler == 0 || cpus_empty(iucv_irq_cpumask))
+       if (iucv_nonsmp_handler == 0 || cpumask_empty(&iucv_irq_cpumask))
                /* Enable iucv interrupts on this cpu. */
                iucv_allow_cpu(NULL);
        else
        int cpu = smp_processor_id();
        union iucv_param *parm;
 
-       if (!cpu_isset(cpu, iucv_buffer_cpumask))
+       if (!cpumask_test_cpu(cpu, &iucv_buffer_cpumask))
                return;
 
        /* Block iucv interrupts. */
        iucv_call_b2f0(IUCV_RETRIEVE_BUFFER, parm);
 
        /* Clear indication that an iucv buffer exists for this cpu. */
-       cpu_clear(cpu, iucv_buffer_cpumask);
+       cpumask_clear_cpu(cpu, &iucv_buffer_cpumask);
 }
 
 /**
        get_online_cpus();
        for_each_online_cpu(cpu)
                /* Enable all cpus with a declared buffer. */
-               if (cpu_isset(cpu, iucv_buffer_cpumask) &&
-                   !cpu_isset(cpu, iucv_irq_cpumask))
+               if (cpumask_test_cpu(cpu, &iucv_buffer_cpumask) &&
+                   !cpumask_test_cpu(cpu, &iucv_irq_cpumask))
                        smp_call_function_single(cpu, iucv_allow_cpu,
                                                 NULL, 1);
        put_online_cpus();
        int cpu;
 
        /* Disable all cpu but the first in cpu_irq_cpumask. */
-       cpumask = iucv_irq_cpumask;
-       cpu_clear(first_cpu(iucv_irq_cpumask), cpumask);
-       for_each_cpu_mask_nr(cpu, cpumask)
+       cpumask_copy(&cpumask, &iucv_irq_cpumask);
+       cpumask_clear_cpu(cpumask_first(&iucv_irq_cpumask), &cpumask);
+       for_each_cpu(cpu, &cpumask)
                smp_call_function_single(cpu, iucv_block_cpu, NULL, 1);
 }
 
        rc = -EIO;
        for_each_online_cpu(cpu)
                smp_call_function_single(cpu, iucv_declare_cpu, NULL, 1);
-       if (cpus_empty(iucv_buffer_cpumask))
+       if (cpumask_empty(&iucv_buffer_cpumask))
                /* No cpu could declare an iucv buffer. */
                goto out;
        put_online_cpus();
        case CPU_DOWN_PREPARE_FROZEN:
                if (!iucv_path_table)
                        break;
-               cpumask = iucv_buffer_cpumask;
-               cpu_clear(cpu, cpumask);
-               if (cpus_empty(cpumask))
+               cpumask_copy(&cpumask, &iucv_buffer_cpumask);
+               cpumask_clear_cpu(cpu, &cpumask);
+               if (cpumask_empty(&cpumask))
                        /* Can't offline last IUCV enabled cpu. */
                        return notifier_from_errno(-EINVAL);
                smp_call_function_single(cpu, iucv_retrieve_cpu, NULL, 1);
-               if (cpus_empty(iucv_irq_cpumask))
-                       smp_call_function_single(first_cpu(iucv_buffer_cpumask),
-                                                iucv_allow_cpu, NULL, 1);
+               if (cpumask_empty(&iucv_irq_cpumask))
+                       smp_call_function_single(
+                               cpumask_first(&iucv_buffer_cpumask),
+                               iucv_allow_cpu, NULL, 1);
                break;
        }
        return NOTIFY_OK;
        int rc;
 
        local_bh_disable();
-       if (cpus_empty(iucv_buffer_cpumask)) {
+       if (cpumask_empty(&iucv_buffer_cpumask)) {
                rc = -EIO;
                goto out;
        }
 
        spin_lock_bh(&iucv_table_lock);
        iucv_cleanup_queue();
-       if (cpus_empty(iucv_buffer_cpumask)) {
+       if (cpumask_empty(&iucv_buffer_cpumask)) {
                rc = -EIO;
                goto out;
        }
        int rc;
 
        local_bh_disable();
-       if (cpus_empty(iucv_buffer_cpumask)) {
+       if (cpumask_empty(&iucv_buffer_cpumask)) {
                rc = -EIO;
                goto out;
        }
        int rc;
 
        local_bh_disable();
-       if (cpus_empty(iucv_buffer_cpumask)) {
+       if (cpumask_empty(&iucv_buffer_cpumask)) {
                rc = -EIO;
                goto out;
        }
        int rc;
 
        preempt_disable();
-       if (cpus_empty(iucv_buffer_cpumask)) {
+       if (cpumask_empty(&iucv_buffer_cpumask)) {
                rc = -EIO;
                goto out;
        }
        int rc;
 
        local_bh_disable();
-       if (cpus_empty(iucv_buffer_cpumask)) {
+       if (cpumask_empty(&iucv_buffer_cpumask)) {
                rc = -EIO;
                goto out;
        }
        if (msg->flags & IUCV_IPRMDATA)
                return iucv_message_receive_iprmdata(path, msg, flags,
                                                     buffer, size, residual);
-       if (cpus_empty(iucv_buffer_cpumask)) {
+        if (cpumask_empty(&iucv_buffer_cpumask)) {
                rc = -EIO;
                goto out;
        }
        int rc;
 
        local_bh_disable();
-       if (cpus_empty(iucv_buffer_cpumask)) {
+       if (cpumask_empty(&iucv_buffer_cpumask)) {
                rc = -EIO;
                goto out;
        }
        int rc;
 
        local_bh_disable();
-       if (cpus_empty(iucv_buffer_cpumask)) {
+       if (cpumask_empty(&iucv_buffer_cpumask)) {
                rc = -EIO;
                goto out;
        }
        union iucv_param *parm;
        int rc;
 
-       if (cpus_empty(iucv_buffer_cpumask)) {
+       if (cpumask_empty(&iucv_buffer_cpumask)) {
                rc = -EIO;
                goto out;
        }
        int rc;
 
        local_bh_disable();
-       if (cpus_empty(iucv_buffer_cpumask)) {
+       if (cpumask_empty(&iucv_buffer_cpumask)) {
                rc = -EIO;
                goto out;
        }
        printk(KERN_WARNING "iucv_pm_freeze\n");
 #endif
        if (iucv_pm_state != IUCV_PM_FREEZING) {
-               for_each_cpu_mask_nr(cpu, iucv_irq_cpumask)
+               for_each_cpu(cpu, &iucv_irq_cpumask)
                        smp_call_function_single(cpu, iucv_block_cpu_almost,
                                                 NULL, 1);
                cancel_work_sync(&iucv_work);
                if (rc)
                        goto out;
        }
-       if (cpus_empty(iucv_irq_cpumask)) {
+       if (cpumask_empty(&iucv_irq_cpumask)) {
                if (iucv_nonsmp_handler)
                        /* enable interrupts on one cpu */
                        iucv_allow_cpu(NULL);
                pr_warning("Suspending Linux did not completely close all IUCV "
                        "connections\n");
        iucv_pm_state = IUCV_PM_RESTORING;
-       if (cpus_empty(iucv_irq_cpumask)) {
+       if (cpumask_empty(&iucv_irq_cpumask)) {
                rc = iucv_query_maxconn();
                rc = iucv_enable();
                if (rc)