assign_domain_store(9)
π assign_domain_store β the kernel API manual, but make it make sense π
okay bestie, so this page lives in the kernel API manual and it's all about assign_domain_store(9). Yes the name is a mouthful, no we are not skipping it. Buckle up π¦
β¨ NAME β¨
assign_domain_store β parses the APQI from @buf and sets the corresponding bit in the mediated matrix device's AQM. That's it, that's the whole personality. π
π«Ά SYNOPSIS π«Ά
ssize_t assign_domain_store (struct device *dev , struct
device_attribute *attr , const char *buf , size_t count );
literally just those four things coming at you. iconic signature tbh.
πΈ ARGUMENTS πΈ
devβ the matrix device. the main character of this whole operation πattrβ the mediated matrix device'sassign_domainattributebufβ a buffer containing the AP queue index (APQI) of the domain to be assigned. so like, the actual info you're handing over πcountβ the number of bytes inbuf
π RETURN π
it returns the number of bytes processed if the APQI is valid β¨ otherwise it hands you back one of the following errors. no cap, that's the deal:
π₯ DESCRIPTION π₯
ngl this is where it gets spicy. here's your error lineup π
-EINVALβ the APQI is not a valid number π-ENODEVβ the APQI exceeds the maximum value configured for the system π-EADDRNOTAVAILβ an APQN derived from the cross product of the APQI being assigned and the APIDs previously assigned is not bound to thevfio_apdevice driver; or, if no APIDs have yet been assigned, the APQI is not contained in an APQN bound to thevfio_apdevice driver π-EADDRINUSEβ an APQN derived from the cross product of the APQI being assigned and the APIDs previously assigned is being used by another mediated matrix device π«-EAGAINβ the lock required to validate the mdev's AP configuration could not be obtained. it's giving "someone else is holding the door" energy πͺ
π§ SEE ALSO π§
okay this list is LONG, but bestie I would never leave a single one out. every single one of these is real and here:
- Kernel file
./drivers/s390/crypto/vfio_ap_ops.c get_update_locks_for_kvm(9),release_update_locks_for_kvm(9),get_update_locks_for_mdev(9),release_update_locks_for_mdev(9),get_update_locks_by_apqn(9),get_update_locks_for_queue(9),vfio_ap_mdev_get_queue(9),vfio_ap_wait_for_irqclear(9),vfio_ap_free_aqic_resources(9),vfio_ap_irq_disable(9),vfio_ap_validate_nib(9),ensure_nib_shared(9),vfio_ap_irq_enable(9),vfio_ap_le_guid_to_be_uuid(9),handle_pqap(9),vfio_ap_mdev_verify_no_sharing(9),vfio_ap_mdev_validate_masks(9),assign_adapter_store(9),vfio_ap_mdev_unlink_adapter(9),unassign_adapter_store(9),unassign_domain_store(9),assign_control_domain_store(9),unassign_control_domain_store(9),vfio_ap_mdev_set_kvm(9),vfio_ap_mdev_unset_kvm(9),vfio_ap_mdev_resource_in_use(9),vfio_ap_mdev_hot_unplug_cfg(9),vfio_ap_mdev_cfg_remove(9),vfio_ap_mdev_on_cfg_remove(9),vfio_ap_filter_apid_by_qtype(9),vfio_ap_mdev_cfg_add(9),vfio_ap_mdev_on_cfg_add(9),vfio_ap_on_cfg_changed(9)
kudos if you read every single one of those. genuinely obsessed with you π«Ά
and that's the whole page, bestie!! π it ships from ./drivers/s390/crypto, dated October 2026, and fr fr you just read the full assign_domain_store(9) manual page. slay. πβ¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms