Ryan
2006-Apr-11 18:32 UTC
[Xen-devel] [PATCH 4/5] pciback: deferred handling of pci configuration space accesses
Some of the linux PCI functions called by the virtual configuration space handlers (both the ones added by this patch and the ones currently in the xen-unstable tree) were making calls into ACPI code which uses semaphores. Since semaphores can not be locked while atomic (because they can sleep), I changed the way the PCI backend responds to requests from the frontend. Previously, the virtual configuration space handlers ran in the same context as the event channel interrupt handler (which was often atomic if not always atomic). Now the interrupt handlers schedules a callback function (a bottom half) in the system work queue (keventd) that will get called in process context at a slightly later time. This allows the handlers in the virtual configuration space to call any core PCI function regardless of whether it will sleep or not. Signed-off-by: Ryan Wilson <hap9@epoch.ncsc.mil> _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel