Hello Prateek,
On Thu, Oct 01, 2026 at 07:28:45PM +0000, K Prateek Nayak wrote:
[ snip ]
quoted hunk ↗ jump to hunk
+static __init void init_sbm_topology(u32 max_apicid)
+{
+ u32 sbm_shift = x86_topo_system.dom_shifts[TOPO_DIE_DOMAIN] - 1;
As sashiko reported, and also mentioned here:
https://lore.kernel.org/lkml/20260510155920.2587431-2-yu.c.chen@intel.com/ (local)
Maybe x86_topo_system.dom_shifts[TOPO_DIE_DOMAIN - 1] ?
quoted hunk ↗ jump to hunk
+ int num_sbm_instances, max_threads_per_instance;
+
+ /*
+ * On Intel systems, memory controllers are present at TOPO_DIE_DOMAIN.
+ * On newer AMD and Hygon systems, LLC is at TOPO_TILE_DOMAIN so use
+ * that instead.
+ */
+ if (boot_cpu_data.x86_vendor == X86_VENDOR_AMD ||
+ boot_cpu_data.x86_vendor == X86_VENDOR_HYGON)
+ sbm_shift = x86_topo_system.dom_shifts[TOPO_TILE_DOMAIN] - 1;
Ditto.
thanks,
Chenyu