// SPDX-License-Identifier: GPL-2.0-only /* * IOAPIC/IOxAPIC/IOSAPIC driver * * Copyright (C) 2009 Fujitsu Limited. * (c) Copyright 2009 Hewlett-Packard Development Company, L.P. * * Copyright (C) 2014 Intel Corporation * * Based on original drivers/pci/ioapic.c * Yinghai Lu <yinghai@kernel.org> * Jiang Liu <jiang.liu@intel.com>
*/
/* * This driver manages I/O APICs added by hotplug after boot. * We try to claim all I/O APIC devices, but those present at boot were * registered when we parsed the ACPI MADT.
*/
/* * We might assign this to 'res' later, make sure all pointers are * cleared before the resource is added to the global list
*/
memset(&win, 0, sizeof(win));
res->flags = 0; if (acpi_dev_filter_resource_type(acpi_res, IORESOURCE_MEM)) return AE_OK;
if (!acpi_dev_resource_memory(acpi_res, res)) { if (acpi_dev_resource_address_space(acpi_res, &win) ||
acpi_dev_resource_ext_address_space(acpi_res, &win))
*res = win.res;
} if ((res->flags & IORESOURCE_PREFETCH) ||
(res->flags & IORESOURCE_DISABLED))
res->flags = 0;
int acpi_ioapic_remove(struct acpi_pci_root *root)
{ int retval = 0; struct acpi_pci_ioapic *ioapic, *tmp;
mutex_lock(&ioapic_list_lock);
list_for_each_entry_safe(ioapic, tmp, &ioapic_list, list) { if (root->device->handle != ioapic->root_handle) continue; if (acpi_unregister_ioapic(ioapic->handle, ioapic->gsi_base))
retval = -EBUSY; if (ioapic->res.flags && ioapic->res.parent)
release_resource(&ioapic->res);
list_del(&ioapic->list);
kfree(ioapic);
}
mutex_unlock(&ioapic_list_lock);
return retval;
}
Messung V0.5 in Prozent
¤ Diese beiden folgenden Angebotsgruppen bietet das Unternehmen0.13Angebot
(Wie Sie bei der Firma Beratungs- und Dienstleistungen beauftragen können 2026-06-08)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.