• Home
  • Raw
  • Download

Lines Matching refs:sb

392 			     struct kvmppc_xive_src_block *sb,  in xive_lock_and_mask()  argument
405 arch_spin_lock(&sb->lock); in xive_lock_and_mask()
412 arch_spin_unlock(&sb->lock); in xive_lock_and_mask()
457 static void xive_lock_for_unmask(struct kvmppc_xive_src_block *sb, in xive_lock_for_unmask() argument
464 arch_spin_lock(&sb->lock); in xive_lock_for_unmask()
467 arch_spin_unlock(&sb->lock); in xive_lock_for_unmask()
472 struct kvmppc_xive_src_block *sb, in xive_finish_unmask() argument
617 struct kvmppc_xive_src_block *sb; in kvmppc_xive_set_xive() local
641 sb = kvmppc_xive_find_source(xive, irq, &idx); in kvmppc_xive_set_xive()
642 if (!sb) in kvmppc_xive_set_xive()
644 state = &sb->irq_state[idx]; in kvmppc_xive_set_xive()
661 xive_lock_and_mask(xive, sb, state); in kvmppc_xive_set_xive()
663 xive_lock_for_unmask(sb, state); in kvmppc_xive_set_xive()
702 xive_finish_unmask(xive, sb, state, priority); in kvmppc_xive_set_xive()
710 arch_spin_unlock(&sb->lock); in kvmppc_xive_set_xive()
718 struct kvmppc_xive_src_block *sb; in kvmppc_xive_get_xive() local
725 sb = kvmppc_xive_find_source(xive, irq, &idx); in kvmppc_xive_get_xive()
726 if (!sb) in kvmppc_xive_get_xive()
728 state = &sb->irq_state[idx]; in kvmppc_xive_get_xive()
729 arch_spin_lock(&sb->lock); in kvmppc_xive_get_xive()
732 arch_spin_unlock(&sb->lock); in kvmppc_xive_get_xive()
740 struct kvmppc_xive_src_block *sb; in kvmppc_xive_int_on() local
747 sb = kvmppc_xive_find_source(xive, irq, &idx); in kvmppc_xive_int_on()
748 if (!sb) in kvmppc_xive_int_on()
750 state = &sb->irq_state[idx]; in kvmppc_xive_int_on()
769 xive_lock_for_unmask(sb, state); in kvmppc_xive_int_on()
770 xive_finish_unmask(xive, sb, state, state->saved_priority); in kvmppc_xive_int_on()
771 arch_spin_unlock(&sb->lock); in kvmppc_xive_int_on()
779 struct kvmppc_xive_src_block *sb; in kvmppc_xive_int_off() local
786 sb = kvmppc_xive_find_source(xive, irq, &idx); in kvmppc_xive_int_off()
787 if (!sb) in kvmppc_xive_int_off()
789 state = &sb->irq_state[idx]; in kvmppc_xive_int_off()
796 state->saved_priority = xive_lock_and_mask(xive, sb, state); in kvmppc_xive_int_off()
797 arch_spin_unlock(&sb->lock); in kvmppc_xive_int_off()
804 struct kvmppc_xive_src_block *sb; in xive_restore_pending_irq() local
808 sb = kvmppc_xive_find_source(xive, irq, &idx); in xive_restore_pending_irq()
809 if (!sb) in xive_restore_pending_irq()
811 state = &sb->irq_state[idx]; in xive_restore_pending_irq()
900 struct kvmppc_xive_src_block *sb; in kvmppc_xive_set_mapped() local
914 sb = kvmppc_xive_find_source(xive, guest_irq, &idx); in kvmppc_xive_set_mapped()
915 if (!sb) in kvmppc_xive_set_mapped()
917 state = &sb->irq_state[idx]; in kvmppc_xive_set_mapped()
943 prio = xive_lock_and_mask(xive, sb, state); in kvmppc_xive_set_mapped()
987 arch_spin_unlock(&sb->lock); in kvmppc_xive_set_mapped()
997 struct kvmppc_xive_src_block *sb; in kvmppc_xive_clr_mapped() local
1009 sb = kvmppc_xive_find_source(xive, guest_irq, &idx); in kvmppc_xive_clr_mapped()
1010 if (!sb) in kvmppc_xive_clr_mapped()
1012 state = &sb->irq_state[idx]; in kvmppc_xive_clr_mapped()
1019 prio = xive_lock_and_mask(xive, sb, state); in kvmppc_xive_clr_mapped()
1068 arch_spin_unlock(&sb->lock); in kvmppc_xive_clr_mapped()
1082 struct kvmppc_xive_src_block *sb = xive->src_blocks[i]; in kvmppc_xive_disable_vcpu_interrupts() local
1084 if (!sb) in kvmppc_xive_disable_vcpu_interrupts()
1087 struct kvmppc_xive_irq_state *state = &sb->irq_state[j]; in kvmppc_xive_disable_vcpu_interrupts()
1097 arch_spin_lock(&sb->lock); in kvmppc_xive_disable_vcpu_interrupts()
1105 arch_spin_unlock(&sb->lock); in kvmppc_xive_disable_vcpu_interrupts()
1351 struct kvmppc_xive_src_block *sb; in xive_pre_save_set_queued() local
1355 sb = kvmppc_xive_find_source(xive, irq, &idx); in xive_pre_save_set_queued()
1356 if (!sb) in xive_pre_save_set_queued()
1359 state = &sb->irq_state[idx]; in xive_pre_save_set_queued()
1380 struct kvmppc_xive_src_block *sb, in xive_pre_save_mask_irq() argument
1383 struct kvmppc_xive_irq_state *state = &sb->irq_state[irq]; in xive_pre_save_mask_irq()
1389 state->saved_scan_prio = xive_lock_and_mask(xive, sb, state); in xive_pre_save_mask_irq()
1396 arch_spin_unlock(&sb->lock); in xive_pre_save_mask_irq()
1400 struct kvmppc_xive_src_block *sb, in xive_pre_save_unmask_irq() argument
1403 struct kvmppc_xive_irq_state *state = &sb->irq_state[irq]; in xive_pre_save_unmask_irq()
1413 xive_lock_for_unmask(sb, state); in xive_pre_save_unmask_irq()
1417 xive_finish_unmask(xive, sb, state, state->saved_scan_prio); in xive_pre_save_unmask_irq()
1420 arch_spin_unlock(&sb->lock); in xive_pre_save_unmask_irq()
1446 struct kvmppc_xive_src_block *sb = xive->src_blocks[i]; in xive_pre_save_scan() local
1447 if (!sb) in xive_pre_save_scan()
1450 xive_pre_save_mask_irq(xive, sb, j); in xive_pre_save_scan()
1466 struct kvmppc_xive_src_block *sb = xive->src_blocks[i]; in xive_pre_save_scan() local
1467 if (!sb) in xive_pre_save_scan()
1470 xive_pre_save_unmask_irq(xive, sb, j); in xive_pre_save_scan()
1480 struct kvmppc_xive_src_block *sb = xive->src_blocks[i]; in xive_post_save_scan() local
1481 if (!sb) in xive_post_save_scan()
1484 sb->irq_state[j].in_queue = false; in xive_post_save_scan()
1496 struct kvmppc_xive_src_block *sb; in xive_get_source() local
1502 sb = kvmppc_xive_find_source(xive, irq, &idx); in xive_get_source()
1503 if (!sb) in xive_get_source()
1506 state = &sb->irq_state[idx]; in xive_get_source()
1580 struct kvmppc_xive_src_block *sb; in kvmppc_xive_create_src_block() local
1592 sb = kzalloc(sizeof(*sb), GFP_KERNEL); in kvmppc_xive_create_src_block()
1593 if (!sb) in kvmppc_xive_create_src_block()
1596 sb->id = bid; in kvmppc_xive_create_src_block()
1599 sb->irq_state[i].number = (bid << KVMPPC_XICS_ICS_SHIFT) | i; in kvmppc_xive_create_src_block()
1600 sb->irq_state[i].eisn = 0; in kvmppc_xive_create_src_block()
1601 sb->irq_state[i].guest_priority = MASKED; in kvmppc_xive_create_src_block()
1602 sb->irq_state[i].saved_priority = MASKED; in kvmppc_xive_create_src_block()
1603 sb->irq_state[i].act_priority = MASKED; in kvmppc_xive_create_src_block()
1606 xive->src_blocks[bid] = sb; in kvmppc_xive_create_src_block()
1639 struct kvmppc_xive_src_block *sb; in xive_set_source() local
1654 sb = kvmppc_xive_find_source(xive, irq, &idx); in xive_set_source()
1655 if (!sb) { in xive_set_source()
1657 sb = kvmppc_xive_create_src_block(xive, irq); in xive_set_source()
1658 if (!sb) { in xive_set_source()
1663 state = &sb->irq_state[idx]; in xive_set_source()
1699 xive_lock_and_mask(xive, sb, state); in xive_set_source()
1717 arch_spin_unlock(&sb->lock); in xive_set_source()
1788 xive_finish_unmask(xive, sb, state, guest_prio); in xive_set_source()
1804 struct kvmppc_xive_src_block *sb; in kvmppc_xive_set_irq() local
1811 sb = kvmppc_xive_find_source(xive, irq, &idx); in kvmppc_xive_set_irq()
1812 if (!sb) in kvmppc_xive_set_irq()
1816 state = &sb->irq_state[idx]; in kvmppc_xive_set_irq()
1880 void kvmppc_xive_free_sources(struct kvmppc_xive_src_block *sb) in kvmppc_xive_free_sources() argument
1885 struct kvmppc_xive_irq_state *state = &sb->irq_state[i]; in kvmppc_xive_free_sources()