mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Re: [PATCH v2 2/3] x86/apic: Introduce a variable to track the number of EILVT registers
@ 2026-05-15 11:48 Christian Ludloff
  2026-05-15 13:30 ` Christian Ludloff
  0 siblings, 1 reply; 4+ messages in thread
From: Christian Ludloff @ 2026-05-15 11:48 UTC (permalink / raw)
  To: Naveen N Rao (AMD)
  Cc: x86, Thomas Gleixner, Borislav Petkov, Dave Hansen,
	H. Peter Anvin, Nikunj A Dadhania, Manali Shukla, Bharata B Rao,
	linux-kernel

> + if (cpu_feature_enabled(X86_FEATURE_EXTAPIC))
> + apic_eilvt_count = APIC_EFEAT_XLC(apic_read(APIC_EFEAT));

BKDG #21656, #21922, and #24141 for K7 were not published.
If you find them internally at AMD, consider publishing them.  :)
That way they could be archived, and referenced from then on.

BKDG #26094 for K8 Fam Fh DDR1 documents 4 extended LVTs.
BKDG #32559 for K8 Fam Fh DDR2 documents 1 extended LVT.
BKDG #41256 for K8 Fam 11h (LG) documents 4 extended LVTs.

Fam 10h/12h, 14h and 16h, and 15h all have 4 – no surprises.

The Fam 10h BKDG (#31116) has an explicit entry in its "Major
Changes Relative to Family 0Fh Processors" section: "Number
of extended LVT interrupts in APIC increased to 4." – AMD may
want to clarify what was correct vs not for those old K8 models.

> + if (!apic_eilvt_count && boot_cpu_data.x86_vendor == X86_VENDOR_AMD)
> + apic_eilvt_count = APIC_EILVT_NR_AMD_10H;

This seems... unsafe?

--
C.

^ permalink raw reply	[flat|nested] 4+ messages in thread
* [PATCH v2 0/3] Support additional AMD EILVT registers
@ 2026-05-12 14:19 Naveen N Rao (AMD)
  2026-05-12 14:19 ` [PATCH v2 2/3] x86/apic: Introduce a variable to track the number of " Naveen N Rao (AMD)
  0 siblings, 1 reply; 4+ messages in thread
From: Naveen N Rao (AMD) @ 2026-05-12 14:19 UTC (permalink / raw)
  To: x86
  Cc: Thomas Gleixner, Borislav Petkov, Dave Hansen, H. Peter Anvin,
	Nikunj A Dadhania, Manali Shukla, Bharata B Rao, linux-kernel

This is v2 of the series posted at:
http://lore.kernel.org/r/cover.1775019269.git.naveen@kernel.org

Changes since v1:
- Drop the first two patches that were merged
- Call init_eilvt() from apic_bsp_setup(), rather than 
  setup_local_APIC() so as not to call an __init function from a 
  non-init function. (Kernel 0-day bot)
- Initialize eilvt count to APIC_EILVT_NR_AMD_10H and allocate 
  eilvt_offsets array only on AMD processors.
 
Manali,
I am retaining your Tested-by: tag since the changes are minimal, but 
please reply here if you have concerns with the changes.

--
Future AMD processors will be increasing the number of APIC EILVT 
registers (*). This series adds support for the same along with some 
related cleanups.

(*) https://docs.amd.com/v/u/en-US/69205_1.00_AMD64_IBS_PUB)


- Naveen


Naveen N Rao (AMD) (3):
  perf/amd/ibs: Limit the max EILVT register count for AMD family 0x10
  x86/apic: Introduce a variable to track the number of EILVT registers
  x86/apic: Drop APIC_EILVT_NR_MAX and switch to using apic_eilvt_count

 arch/x86/include/asm/apic.h    |  2 ++
 arch/x86/include/asm/apicdef.h |  2 +-
 arch/x86/events/amd/ibs.c      |  4 ++--
 arch/x86/kernel/apic/apic.c    | 19 +++++++++++++++++--
 4 files changed, 22 insertions(+), 5 deletions(-)


base-commit: 70e7aca9f7ff4d1bee94c5b04973c3dbca1dba00
-- 
2.54.0


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2026-05-15 13:54 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-05-15 11:48 [PATCH v2 2/3] x86/apic: Introduce a variable to track the number of EILVT registers Christian Ludloff
2026-05-15 13:30 ` Christian Ludloff
2026-05-15 13:50   ` Naveen N Rao
  -- strict thread matches above, loose matches on Subject: below --
2026-05-12 14:19 [PATCH v2 0/3] Support additional AMD " Naveen N Rao (AMD)
2026-05-12 14:19 ` [PATCH v2 2/3] x86/apic: Introduce a variable to track the number of " Naveen N Rao (AMD)

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®