vio_cmo            98 arch/powerpc/platforms/pseries/vio.c } vio_cmo;
vio_cmo           149 arch/powerpc/platforms/pseries/vio.c 	spin_lock_irqsave(&vio_cmo.lock, flags);
vio_cmo           156 arch/powerpc/platforms/pseries/vio.c 	if (vio_cmo.spare >= VIO_CMO_MIN_ENT)
vio_cmo           157 arch/powerpc/platforms/pseries/vio.c 		excess_free = vio_cmo.excess.free;
vio_cmo           161 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.curr += size;
vio_cmo           162 arch/powerpc/platforms/pseries/vio.c 		if (vio_cmo.curr > vio_cmo.high)
vio_cmo           163 arch/powerpc/platforms/pseries/vio.c 			vio_cmo.high = vio_cmo.curr;
vio_cmo           166 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.free -= size;
vio_cmo           170 arch/powerpc/platforms/pseries/vio.c 	spin_unlock_irqrestore(&vio_cmo.lock, flags);
vio_cmo           195 arch/powerpc/platforms/pseries/vio.c 	spin_lock_irqsave(&vio_cmo.lock, flags);
vio_cmo           196 arch/powerpc/platforms/pseries/vio.c 	vio_cmo.curr -= size;
vio_cmo           209 arch/powerpc/platforms/pseries/vio.c 	spare_needed = VIO_CMO_MIN_ENT - vio_cmo.spare;
vio_cmo           217 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.size -= tmp;
vio_cmo           218 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.reserve.size += tmp;
vio_cmo           219 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.spare += tmp;
vio_cmo           234 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.spare += tmp;
vio_cmo           246 arch/powerpc/platforms/pseries/vio.c 	if (excess_freed && (vio_cmo.desired > vio_cmo.reserve.size)) {
vio_cmo           247 arch/powerpc/platforms/pseries/vio.c 		tmp = min(excess_freed, (vio_cmo.desired - vio_cmo.reserve.size));
vio_cmo           249 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.size -= tmp;
vio_cmo           250 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.reserve.size += tmp;
vio_cmo           257 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.free += excess_freed;
vio_cmo           260 arch/powerpc/platforms/pseries/vio.c 		schedule_delayed_work(&vio_cmo.balance_q, VIO_CMO_BALANCE_DELAY);
vio_cmo           261 arch/powerpc/platforms/pseries/vio.c 	spin_unlock_irqrestore(&vio_cmo.lock, flags);
vio_cmo           282 arch/powerpc/platforms/pseries/vio.c 	spin_lock_irqsave(&vio_cmo.lock, flags);
vio_cmo           285 arch/powerpc/platforms/pseries/vio.c 	if (new_entitlement > vio_cmo.entitled) {
vio_cmo           286 arch/powerpc/platforms/pseries/vio.c 		delta = new_entitlement - vio_cmo.entitled;
vio_cmo           289 arch/powerpc/platforms/pseries/vio.c 		if (vio_cmo.spare < VIO_CMO_MIN_ENT) {
vio_cmo           290 arch/powerpc/platforms/pseries/vio.c 			tmp = min(delta, (VIO_CMO_MIN_ENT - vio_cmo.spare));
vio_cmo           291 arch/powerpc/platforms/pseries/vio.c 			vio_cmo.spare += tmp;
vio_cmo           292 arch/powerpc/platforms/pseries/vio.c 			vio_cmo.reserve.size += tmp;
vio_cmo           297 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.entitled += delta;
vio_cmo           298 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.size += delta;
vio_cmo           299 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.free += delta;
vio_cmo           305 arch/powerpc/platforms/pseries/vio.c 	delta = vio_cmo.entitled - new_entitlement;
vio_cmo           306 arch/powerpc/platforms/pseries/vio.c 	avail = vio_cmo.excess.free;
vio_cmo           312 arch/powerpc/platforms/pseries/vio.c 	list_for_each_entry(dev_ent, &vio_cmo.device_list, list) {
vio_cmo           325 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.entitled -= delta;
vio_cmo           328 arch/powerpc/platforms/pseries/vio.c 		tmp = min(vio_cmo.excess.free, delta);
vio_cmo           329 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.size -= tmp;
vio_cmo           330 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.free -= tmp;
vio_cmo           337 arch/powerpc/platforms/pseries/vio.c 		list_for_each_entry(dev_ent, &vio_cmo.device_list, list) {
vio_cmo           352 arch/powerpc/platforms/pseries/vio.c 		spin_unlock_irqrestore(&vio_cmo.lock, flags);
vio_cmo           357 arch/powerpc/platforms/pseries/vio.c 	schedule_delayed_work(&vio_cmo.balance_q, 0);
vio_cmo           358 arch/powerpc/platforms/pseries/vio.c 	spin_unlock_irqrestore(&vio_cmo.lock, flags);
vio_cmo           385 arch/powerpc/platforms/pseries/vio.c 	struct vio_cmo *cmo;
vio_cmo           392 arch/powerpc/platforms/pseries/vio.c 	cmo = container_of(work, struct vio_cmo, balance_q.work);
vio_cmo           394 arch/powerpc/platforms/pseries/vio.c 	spin_lock_irqsave(&vio_cmo.lock, flags);
vio_cmo           408 arch/powerpc/platforms/pseries/vio.c 	list_for_each_entry(dev_ent, &vio_cmo.device_list, list) {
vio_cmo           424 arch/powerpc/platforms/pseries/vio.c 		list_for_each_entry(dev_ent, &vio_cmo.device_list, list) {
vio_cmo           462 arch/powerpc/platforms/pseries/vio.c 	list_for_each_entry(dev_ent, &vio_cmo.device_list, list) {
vio_cmo           476 arch/powerpc/platforms/pseries/vio.c 	spin_unlock_irqrestore(&vio_cmo.lock, flags);
vio_cmo           631 arch/powerpc/platforms/pseries/vio.c 	spin_lock_irqsave(&vio_cmo.lock, flags);
vio_cmo           640 arch/powerpc/platforms/pseries/vio.c 	list_for_each_entry(dev_ent, &vio_cmo.device_list, list)
vio_cmo           646 arch/powerpc/platforms/pseries/vio.c 		spin_unlock_irqrestore(&vio_cmo.lock, flags);
vio_cmo           653 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.desired += desired - viodev->cmo.desired;
vio_cmo           657 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.desired -= viodev->cmo.desired - desired;
vio_cmo           664 arch/powerpc/platforms/pseries/vio.c 			vio_cmo.reserve.size -= viodev->cmo.entitled - desired;
vio_cmo           665 arch/powerpc/platforms/pseries/vio.c 			vio_cmo.excess.size += viodev->cmo.entitled - desired;
vio_cmo           672 arch/powerpc/platforms/pseries/vio.c 				vio_cmo.excess.free += viodev->cmo.entitled -
vio_cmo           677 arch/powerpc/platforms/pseries/vio.c 	schedule_delayed_work(&vio_cmo.balance_q, 0);
vio_cmo           678 arch/powerpc/platforms/pseries/vio.c 	spin_unlock_irqrestore(&vio_cmo.lock, flags);
vio_cmo           744 arch/powerpc/platforms/pseries/vio.c 		spin_lock_irqsave(&vio_cmo.lock, flags);
vio_cmo           745 arch/powerpc/platforms/pseries/vio.c 		list_add(&dev_ent->list, &vio_cmo.device_list);
vio_cmo           749 arch/powerpc/platforms/pseries/vio.c 		spin_lock_irqsave(&vio_cmo.lock, flags);
vio_cmo           758 arch/powerpc/platforms/pseries/vio.c 	if (vio_cmo.min == ((vio_cmo_num_OF_devs() + 1) *
vio_cmo           762 arch/powerpc/platforms/pseries/vio.c 			vio_cmo.desired += (viodev->cmo.desired -
vio_cmo           767 arch/powerpc/platforms/pseries/vio.c 		tmp = vio_cmo.spare + vio_cmo.excess.free;
vio_cmo           772 arch/powerpc/platforms/pseries/vio.c 				size, (vio_cmo.spare + tmp));
vio_cmo           773 arch/powerpc/platforms/pseries/vio.c 			spin_unlock_irqrestore(&vio_cmo.lock, flags);
vio_cmo           778 arch/powerpc/platforms/pseries/vio.c 		tmp = min(size, vio_cmo.excess.free);
vio_cmo           779 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.free -= tmp;
vio_cmo           780 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.size -= tmp;
vio_cmo           781 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.reserve.size += tmp;
vio_cmo           784 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.spare -= size - tmp;
vio_cmo           787 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.min += size;
vio_cmo           788 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.desired += viodev->cmo.desired;
vio_cmo           790 arch/powerpc/platforms/pseries/vio.c 	spin_unlock_irqrestore(&vio_cmo.lock, flags);
vio_cmo           810 arch/powerpc/platforms/pseries/vio.c 	spin_lock_irqsave(&vio_cmo.lock, flags);
vio_cmo           822 arch/powerpc/platforms/pseries/vio.c 	list_for_each_entry(dev_ent, &vio_cmo.device_list, list)
vio_cmo           840 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.desired -= (viodev->cmo.desired - VIO_CMO_MIN_ENT);
vio_cmo           850 arch/powerpc/platforms/pseries/vio.c 		if (viodev->cmo.entitled && (vio_cmo.spare < VIO_CMO_MIN_ENT)) {
vio_cmo           852 arch/powerpc/platforms/pseries/vio.c 			                                 vio_cmo.spare));
vio_cmo           853 arch/powerpc/platforms/pseries/vio.c 			vio_cmo.spare += tmp;
vio_cmo           858 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.size += viodev->cmo.entitled;
vio_cmo           859 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.excess.free += viodev->cmo.entitled;
vio_cmo           860 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.reserve.size -= viodev->cmo.entitled;
vio_cmo           872 arch/powerpc/platforms/pseries/vio.c 	spin_unlock_irqrestore(&vio_cmo.lock, flags);
vio_cmo           892 arch/powerpc/platforms/pseries/vio.c 	memset(&vio_cmo, 0, sizeof(struct vio_cmo));
vio_cmo           893 arch/powerpc/platforms/pseries/vio.c 	spin_lock_init(&vio_cmo.lock);
vio_cmo           894 arch/powerpc/platforms/pseries/vio.c 	INIT_LIST_HEAD(&vio_cmo.device_list);
vio_cmo           895 arch/powerpc/platforms/pseries/vio.c 	INIT_DELAYED_WORK(&vio_cmo.balance_q, vio_cmo_balance);
vio_cmo           907 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.entitled = 0;
vio_cmo           909 arch/powerpc/platforms/pseries/vio.c 		vio_cmo.entitled = mpp_data.entitled_mem;
vio_cmo           913 arch/powerpc/platforms/pseries/vio.c 	vio_cmo.spare = VIO_CMO_MIN_ENT;
vio_cmo           914 arch/powerpc/platforms/pseries/vio.c 	vio_cmo.reserve.size = vio_cmo.spare;
vio_cmo           915 arch/powerpc/platforms/pseries/vio.c 	vio_cmo.reserve.size += (vio_cmo_num_OF_devs() *
vio_cmo           917 arch/powerpc/platforms/pseries/vio.c 	if (vio_cmo.reserve.size > vio_cmo.entitled) {
vio_cmo           924 arch/powerpc/platforms/pseries/vio.c 	vio_cmo.excess.size = vio_cmo.entitled - vio_cmo.reserve.size;
vio_cmo           925 arch/powerpc/platforms/pseries/vio.c 	vio_cmo.excess.free = vio_cmo.excess.size;
vio_cmo           926 arch/powerpc/platforms/pseries/vio.c 	vio_cmo.min = vio_cmo.reserve.size;
vio_cmo           927 arch/powerpc/platforms/pseries/vio.c 	vio_cmo.desired = vio_cmo.reserve.size;
vio_cmo          1005 arch/powerpc/platforms/pseries/vio.c 	return sprintf(buf, "%lu\n", vio_cmo.name);                     \
vio_cmo          1014 arch/powerpc/platforms/pseries/vio.c 	return sprintf(buf, "%lu\n", vio_cmo.name.var);                 \
vio_cmo          1029 arch/powerpc/platforms/pseries/vio.c 	return sprintf(buf, "%lu\n", vio_cmo.high);
vio_cmo          1037 arch/powerpc/platforms/pseries/vio.c 	spin_lock_irqsave(&vio_cmo.lock, flags);
vio_cmo          1038 arch/powerpc/platforms/pseries/vio.c 	vio_cmo.high = vio_cmo.curr;
vio_cmo          1039 arch/powerpc/platforms/pseries/vio.c 	spin_unlock_irqrestore(&vio_cmo.lock, flags);