aqm
unsigned int aqm[8]; /* AP (usage) queue mask */
__u64 aqm[APCB0_MASK_SIZE]; /* 0x0008 */
__u64 aqm[APCB1_MASK_SIZE]; /* 0x0020 */
unsigned long *aqm, unsigned long *adm);
unsigned long *aqm, unsigned long *adm)
memcpy(crycb->apcb1.aqm, aqm, 32);
aqm[0], aqm[1], aqm[2], aqm[3]);
memcpy(crycb->apcb0.aqm, aqm, 2);
apm[0], *((unsigned short *)aqm),
apcb_s->aqm[0] = apcb_h->aqm[0] & tmp.aqm[0] & 0xffff000000000000UL;
u64 aqm : 1;
u64 aqm : 1;
test_bit_inv(queue, ap_perms.aqm);
!test_bit_inv(domain, ap_perms.aqm))
ap_qci_info->aqm[0], ap_qci_info->aqm[1],
ap_qci_info->aqm[2], ap_qci_info->aqm[3],
ap_qci_info->aqm[4], ap_qci_info->aqm[5],
ap_qci_info->aqm[6], ap_qci_info->aqm[7]);
bitmap_full(ap_perms.aqm, AP_DOMAINS) ?
ap_perms.aqm[0], ap_perms.aqm[1],
ap_perms.aqm[2], ap_perms.aqm[3]);
if (bitmap_andnot(reserved, newaqm, ap_perms.aqm, AP_DOMAINS)) {
memcpy(ap_perms.aqm, newaqm, AQMASKSIZE);
bitmap_full(ap_perms.aqm, AP_DOMAINS) ?
rc = ap_parse_bitmap_str(buf, ap_perms.aqm, AP_DOMAINS, newaqm);
changes = memcmp(ap_perms.aqm, newaqm, APMASKSIZE);
!test_bit_inv(dom, ap_perms.aqm))
bitmap_andnot(m, (unsigned long *)ap_qci_info->aqm,
(unsigned long *)ap_qci_info_old->aqm, AP_DOMAINS);
memset(&ap_perms.aqm, 0xFF, sizeof(ap_perms.aqm));
memset(&ap_perms.aqm, 0, sizeof(ap_perms.aqm));
ap_parse_mask_str(aqm_str, ap_perms.aqm, AP_DOMAINS,
!test_bit_inv(ap_domain_index, ap_perms.aqm))) {
return ap_test_config(ap_qci_info->aqm, domain);
test_bit_inv(queue, ap_perms.aqm);
test_bit_inv(queue, ap_perms.aqm))
unsigned long *aqm)
if (test_bit_inv(queue, aqm))
int (*in_use)(unsigned long *apm, unsigned long *aqm);
unsigned long aqm[BITS_TO_LONGS(AP_DOMAINS)];
for_each_set_bit_inv(apqi, matrix_mdev->shadow_apcb.aqm, AP_DOMAINS) {
for_each_set_bit_inv(apqi, matrix_mdev->matrix.aqm, AP_DOMAINS) {
test_bit_inv(apqi, matrix_mdev->shadow_apcb.aqm))
if (test_bit_inv(apqi, matrix_mdev->matrix.aqm)) {
set_bit_inv(apqi, matrix_mdev->matrix.aqm);
clear_bit_inv(apqi, matrix_mdev->matrix.aqm);
test_bit_inv(apqi, matrix_mdev->shadow_apcb.aqm))
if (test_bit_inv(apqi, matrix_mdev->shadow_apcb.aqm)) {
clear_bit_inv(apqi, matrix_mdev->shadow_apcb.aqm);
if (!test_bit_inv(apqi, matrix_mdev->matrix.aqm)) {
clear_bit_inv((unsigned long)apqi, matrix_mdev->matrix.aqm);
test_bit_inv(AP_QID_QUEUE(apqn), matrix_mdev->matrix.aqm)) {
apqi1 = find_first_bit_inv(matrix->aqm, naqm_bits);
for_each_set_bit_inv(apqi, matrix->aqm, naqm_bits)
for_each_set_bit_inv(apqi, matrix->aqm, naqm_bits)
idx += write_ap_bitmap(matrix_mdev->matrix.aqm, buf, idx, ',');
for_each_set_bit_inv(bit, matrix_mdev->matrix.aqm, AP_DOMAINS) {
bitmap_copy(dst->aqm, src->aqm, AP_DOMAINS);
parse_bitmap(&rest, m_new.aqm, AP_DOMAINS) ||
bitmap_andnot(m_removed.aqm, m_old.aqm, m_new.aqm, AP_DOMAINS);
bitmap_andnot(m_added.aqm, m_new.aqm, m_old.aqm, AP_DOMAINS);
vfio_ap_mdev_hot_unplug_domains(matrix_mdev, m_removed.aqm);
for_each_set_bit_inv(newbit, m_added.aqm, AP_DOMAINS)
test_bit_inv(apqi, matrix_mdev->matrix.aqm))
test_bit_inv(apqi, matrix_mdev->shadow_apcb.aqm))
test_bit_inv(apqi, matrix_mdev->shadow_apcb.aqm)) {
test_bit_inv(apqi, (unsigned long *)matrix_dev->info.aqm)) {
int vfio_ap_mdev_resource_in_use(unsigned long *apm, unsigned long *aqm)
ret = vfio_ap_mdev_verify_no_sharing(NULL, apm, aqm);
do_hotplug |= bitmap_andnot(matrix_mdev->shadow_apcb.aqm,
matrix_mdev->shadow_apcb.aqm,
matrix_mdev->matrix.aqm,
(unsigned long *)prev_config_info->aqm,
(unsigned long *)cur_config_info->aqm,
static void vfio_ap_filter_apid_by_qtype(unsigned long *apm, unsigned long *aqm)
for_each_set_bit_inv(apqi, aqm, AP_DOMAINS) {
matrix_mdev->matrix.aqm, aqm_add, AP_DOMAINS);
(unsigned long *)cur_config_info->aqm,
(unsigned long *)prev_config_info->aqm,
filter_domains = bitmap_intersects(matrix_mdev->matrix.aqm,
matrix_mdev->shadow_apcb.aqm,
bitmap_copy(prev_shadow_aqm, matrix_mdev->shadow_apcb.aqm, AP_DOMAINS);
bitmap_and(matrix_mdev->shadow_apcb.aqm, matrix_mdev->matrix.aqm,
(unsigned long *)matrix_dev->info.aqm, AP_DOMAINS);
for_each_set_bit_inv(apqi, matrix_mdev->shadow_apcb.aqm,
!bitmap_equal(prev_shadow_aqm, matrix_mdev->shadow_apcb.aqm,
for_each_set_bit_inv(apqi, matrix_mdev->matrix.aqm,
unsigned long *apm, unsigned long *aqm)
for_each_set_bit_inv(apqi, aqm, AP_DOMAINS) {
unsigned long *apm, unsigned long *aqm)
for_each_set_bit_inv(apqi, aqm, AP_DOMAINS)
DECLARE_BITMAP(aqm, AP_DOMAINS);
memset(aqm, 0, sizeof(aqm));
if (!bitmap_and(aqm, mdev_aqm, assigned_to->matrix.aqm, AP_DOMAINS))
vfio_ap_mdev_log_sharing_err(assignee, assigned_to, apm, aqm);
vfio_ap_mdev_log_in_use_err(assigned_to, apm, aqm);
matrix_mdev->matrix.aqm))
matrix_mdev->matrix.aqm);
for_each_set_bit_inv(apqi, matrix_mdev->matrix.aqm, AP_DOMAINS)
int vfio_ap_mdev_resource_in_use(unsigned long *apm, unsigned long *aqm);
DECLARE_BITMAP(aqm, AP_DOMAINS);
for (i = 0; i < sizeof(zcdndev->perms.aqm) / sizeof(long); i++)
n += sysfs_emit_at(buf, n, "%016lx", zcdndev->perms.aqm[i]);
rc = ap_parse_mask_str(buf, zcdndev->perms.aqm,
return test_bit_inv(queue, perms->aqm) ? true : false;
DEBUGFS_ADD_MODE(aqm, 0600);
IEEE80211_IF_FILE_R(aqm);
DEBUGFS_ADD(aqm);
DEBUGFS_ADD(aqm);
STA_OPS(aqm);