* [PATCH v1 1/1] ACPI: bus: Reduce runtime memory footprint of struct acpi_device
@ 2026-09-09 16:39 Andy Shevchenko
2026-09-10 17:28 ` Rafael J. Wysocki (Intel)
0 siblings, 1 reply; 2+ messages in thread
From: Andy Shevchenko @ 2026-09-09 16:39 UTC (permalink / raw)
To: Rafael J. Wysocki, linux-acpi, acpica-devel, linux-kernel
Cc: Rafael J. Wysocki, Maciej Wieczor-Retman, Pawel Chmielewski,
Len Brown, Andy Shevchenko
The ACPI handler is heavily used by the ACPI code. Making it as
the first member in the struct acpi_device reduces code size.
For instance, the drivers/acpi/scan.o (with `make allyesconfig`)
gives this statistics:
add/remove: 0/0 grow/shrink: 3/8 up/down: 50/-169 (-119)
Function old new delta
acpi_device_add 2294 2319 +25
acpi_add_single_object 6523 6544 +21
acpi_dev_get_next_consumer_dev 602 606 +4
acpi_tie_acpi_dev 169 165 -4
acpi_scan_drop_device 319 315 -4
acpi_dev_clear_dependencies 1151 1147 -4
acpi_bus_attach 2898 2894 -4
acpi_dma_get_range 1420 1415 -5
acpi_init_device_object 5497 5485 -12
acpi_bus_check_add 1940 1923 -17
acpi_device_hotplug 3407 3288 -119
Total: Before=77509, After=77390, chg -0.15%
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
include/acpi/acpi_bus.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h
index a10a591c18b2..64ae66ca456e 100644
--- a/include/acpi/acpi_bus.h
+++ b/include/acpi/acpi_bus.h
@@ -435,9 +435,9 @@ struct acpi_device_software_nodes {
/* Device */
struct acpi_device {
+ acpi_handle handle; /* no handle for fixed hardware */
u32 pld_crc;
int device_type;
- acpi_handle handle; /* no handle for fixed hardware */
struct fwnode_handle fwnode;
struct list_head wakeup_list;
struct list_head del_list;
--
2.50.1
^ permalink raw reply [flat|nested] 2+ messages in thread* Re: [PATCH v1 1/1] ACPI: bus: Reduce runtime memory footprint of struct acpi_device
2026-09-09 16:39 [PATCH v1 1/1] ACPI: bus: Reduce runtime memory footprint of struct acpi_device Andy Shevchenko
@ 2026-09-10 17:28 ` Rafael J. Wysocki (Intel)
0 siblings, 0 replies; 2+ messages in thread
From: Rafael J. Wysocki (Intel) @ 2026-09-10 17:28 UTC (permalink / raw)
To: Andy Shevchenko
Cc: Rafael J. Wysocki, linux-acpi, acpica-devel, linux-kernel,
Rafael J. Wysocki, Maciej Wieczor-Retman, Pawel Chmielewski,
Len Brown
On Wed, Sep 9, 2026 at 6:39 PM Andy Shevchenko
<andriy.shevchenko@linux.intel.com> wrote:
>
> The ACPI handler is heavily used by the ACPI code. Making it as
> the first member in the struct acpi_device reduces code size.
> For instance, the drivers/acpi/scan.o (with `make allyesconfig`)
> gives this statistics:
>
> add/remove: 0/0 grow/shrink: 3/8 up/down: 50/-169 (-119)
> Function old new delta
> acpi_device_add 2294 2319 +25
> acpi_add_single_object 6523 6544 +21
> acpi_dev_get_next_consumer_dev 602 606 +4
> acpi_tie_acpi_dev 169 165 -4
> acpi_scan_drop_device 319 315 -4
> acpi_dev_clear_dependencies 1151 1147 -4
> acpi_bus_attach 2898 2894 -4
> acpi_dma_get_range 1420 1415 -5
> acpi_init_device_object 5497 5485 -12
> acpi_bus_check_add 1940 1923 -17
> acpi_device_hotplug 3407 3288 -119
> Total: Before=77509, After=77390, chg -0.15%
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
> include/acpi/acpi_bus.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/include/acpi/acpi_bus.h b/include/acpi/acpi_bus.h
> index a10a591c18b2..64ae66ca456e 100644
> --- a/include/acpi/acpi_bus.h
> +++ b/include/acpi/acpi_bus.h
> @@ -435,9 +435,9 @@ struct acpi_device_software_nodes {
>
> /* Device */
> struct acpi_device {
> + acpi_handle handle; /* no handle for fixed hardware */
> u32 pld_crc;
> int device_type;
> - acpi_handle handle; /* no handle for fixed hardware */
> struct fwnode_handle fwnode;
> struct list_head wakeup_list;
> struct list_head del_list;
> --
Applied as 7.4 material, thanks!
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2026-09-10 17:29 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-09-09 16:39 [PATCH v1 1/1] ACPI: bus: Reduce runtime memory footprint of struct acpi_device Andy Shevchenko
2026-09-10 17:28 ` Rafael J. Wysocki (Intel)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®