From nobody Tue Jun 2 18:25:56 2026 X-Original-To: dev-commits-src-main@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4gVK5y2Xtxz6g5XF for ; Tue, 02 Jun 2026 18:26:14 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Received: from mail-qk1-f176.google.com (mail-qk1-f176.google.com [209.85.222.176]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "WR4" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4gVK5y1xSsz47qC for ; Tue, 02 Jun 2026 18:26:14 +0000 (UTC) (envelope-from adrian.chadd@gmail.com) Authentication-Results: mx1.freebsd.org; none Received: by mail-qk1-f176.google.com with SMTP id af79cd13be357-91550fe1619so353935885a.3 for ; Tue, 02 Jun 2026 11:26:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1780424768; cv=none; d=google.com; s=arc-20240605; b=hH8fa7SC/a1TwYi3pwHX8Pu8DuvPDvJbNF+0b+XDGFg7Wf+425ibIXBunkJFu/TB/8 uuGzuD2nug+roQ+ByQgwJYaBN/sJdDpu/LZPJIMB1K5GR18U4bycg1C4IqbX4oXeuLna K8psSwNFdRJm1et3/zNrCbdOWAxkUZhmpV9NePqnbGvcXU/CRmD+9WR+5uob/PuIQ00k jz+lYlBvxUYd7AtOF2srLXmslgoGVACJF9o323KB0k/AsZcvgU6amb8fgLUBWJ4/ZqxQ YFsNPSsm7wgTqs2tVWEtSjbhzA2xvNZt51wpzLxilcHTijRV3nOtd2dwYMnfYoEM1upT ptKw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version; bh=b/papAWu+k5kmQ7Tpm2UoL+QirrWZWp475SuYY/ulBo=; fh=LMoqgb0EJ/7k/VIHKZPXT0PGKKEOrMs6R1ZJAcoRQEg=; b=I5BPJJJKwtTBuu5Fph199m5ZegHN/rvVU2kUymyDOHk7n7weiQlFLDpWT/XpgcffJT ajx7+9oSC3239bxOfU8tUVfrjjfy1SiFPwq/DdZCj+Sx0Zojvrzg9oAUcc6FgxF/bs+8 q7DZOxrCbAeD+cDnwvi1PeiYM1OE+OBDaMahvUeJDT+DmLQtldktjJi1+97FvU8AhDEz SbPP5ju/z3B+DK3zHqU+f9RlIvgGsc8Fzp0AxOZ17H8R0J/ehJx++2WPYT4jA7J4W0JR LvIRnQRqC9gt3hhZPivlEcpaHadBcBKs5f7aAUC1rNDr8cPHeKH99NAsKwcfPbitHUNI AIAw==; darn=freebsd.org ARC-Authentication-Results: i=1; mx.google.com; arc=none X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1780424768; x=1781029568; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=b/papAWu+k5kmQ7Tpm2UoL+QirrWZWp475SuYY/ulBo=; b=AJ9FEMaF4ky4TlR1uwhaMs7fklkkg2qAshkxCZ8Q3vXaCjdG8mpDI5X68h8yrcii6c ZX/7h7KRNMk2znnfhzLCCpGmIxeEE6qgyr4BG6SlZRsKbqIydNB5tfo7fntWcYFKvyHO JjkzgpJ2oC6ODyOxHlgEVZ3eCubS2QW8vzRhEnDNiDqC10Xbk4FBnvKSTq01uuIBN+K/ /0aydD8z7pGK5D5d/jTxQJCMhGuisonKSCezXGWsdL3rDGpT6ACqO1NeA3pui8FcUy0v snuDD1CYSoA+dH4/FB7dliLfp57k4Xf5BJRjnwE/r2qLQVkbakjgcD8eaPiRRLvHVg3W qIbA== X-Forwarded-Encrypted: i=1; AFNElJ8eFDpVbmklI3tugh0gMKCZg9LyawvmtVe6ImuvVyzBfieTHB1Um/QwOxAp7pAwY2KXNk+YxgkEBQGNc5z/YB6jd1Og7g==@freebsd.org X-Gm-Message-State: AOJu0YzoIHl/4e6tiIEhyURmUaaPIBTGJ+04hqJpXmCf5sT7Oe0sOPSJ ekmLola8i1zJFpIoGf+G5LcfchQgnrcE7Q4b11kAPpmvlUaC6b7fukrdjzhxv2Pqr9NYPeWgBwk b0yFN+H5CSskKU3ByYKQHi1rgZdFwZS4= X-Gm-Gg: Acq92OG2vSVqLhK+ISdPBCoqCRgZlni1qja9lkI8mOXUtzpPyIqrMl+WL/5RzsssnZ+ mDW/UXMj+aWShD12E2vLweIxFyg6p3dNYA65M9lg4yk4MAx4Tb9kdUeKu15GH8xdJuyRhclmCZw tFLDhZRftbYnDBnuQcEMNw1hNSZJUBBApWkahFvTDmcrwxpIUEtYKSZc52nPOLo9ITrEo0tjMrD hmxZK+aX3zTrCsDp9oX4VuXXPfMYHXiz3mVjF1dk7aYaAfpU2LMIRsYgDEEj07ichgpMHdzJYZx kA521BJL5WR7tK/7R2wXgyIFGLc0TwqZqokEmyVlRqdPvYtGG5ST6RRSmrazw7zBCRwsvtNxDOh gs/z8sBQJtxRnOLoJ2P7pZ0vHPhW9CMv0OzYMNNnH5790MFgQAQgIzFU9ArX11wcGrY4= X-Received: by 2002:a05:620a:1a14:b0:915:7e22:6f1f with SMTP id af79cd13be357-9158a6b10a2mr32596385a.22.1780424768341; Tue, 02 Jun 2026 11:26:08 -0700 (PDT) List-Id: Commit messages for the main branch of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-main List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-main@freebsd.org Sender: owner-dev-commits-src-main@FreeBSD.org List-Id: List-Post: List-Help: List-Subscribe: List-Unsubscribe: List-Owner: Precedence: list MIME-Version: 1.0 References: <6a1e7b3b.1a45a.91f6820@gitrepo.freebsd.org> In-Reply-To: <6a1e7b3b.1a45a.91f6820@gitrepo.freebsd.org> From: Adrian Chadd Date: Tue, 2 Jun 2026 11:25:56 -0700 X-Gm-Features: AVHnY4LuzgHW_sSAHljKy60kQt6ygUdwI7mAOy_IGysVPBuOZ0fpTyU3_PLynq0 Message-ID: Subject: Re: git: 7b26353a59d6 - main - hwpstate_intel: Disable package control on hybrid CPU To: ShengYi Hung Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Content-Type: text/plain; charset="UTF-8" X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; TAGGED_FROM(0.00)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US] X-Rspamd-Queue-Id: 4gVK5y1xSsz47qC X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated .. it sounds like we want to split this up into package versus cluster frequency or something? What's the API look like right now? -adrian On Mon, 1 Jun 2026 at 23:42, ShengYi Hung wrote: > > The branch main has been updated by aokblast: > > URL: https://cgit.FreeBSD.org/src/commit/?id=7b26353a59d66dc1bc611fd042a49b9e3bd13699 > > commit 7b26353a59d66dc1bc611fd042a49b9e3bd13699 > Author: ShengYi Hung > AuthorDate: 2026-06-01 09:46:37 +0000 > Commit: ShengYi Hung > CommitDate: 2026-06-02 06:41:41 +0000 > > hwpstate_intel: Disable package control on hybrid CPU > > In package control mode, the performance of all cores depends on the > most recent value written to the request field. If the last write comes > from an E-core, all cores are forced to align with the E-core > performance level, resulting in significant performance degradation. > Therefore, package control is disabled on hybrid-core systems. > > Reviewed by: olce > MFC after: 2 weeks > Sponsored by: The FreeBSD Foundation > Sponsored by: Framework Computer Inc > Differential Revision: https://reviews.freebsd.org/D57377 > --- > sys/x86/cpufreq/hwpstate_intel.c | 21 +++++++++++++++++++++ > 1 file changed, 21 insertions(+) > > diff --git a/sys/x86/cpufreq/hwpstate_intel.c b/sys/x86/cpufreq/hwpstate_intel.c > index 3d2cc0a5966b..db8600d7b89a 100644 > --- a/sys/x86/cpufreq/hwpstate_intel.c > +++ b/sys/x86/cpufreq/hwpstate_intel.c > @@ -321,9 +321,19 @@ out: > return (ret); > } > > +static void > +intel_hwpstate_hybrid_cb(void *ctx) > +{ > + uint32_t *small_cores = ctx; > + > + atomic_add_32(small_cores, PCPU_GET(small_core)); > +} > + > void > intel_hwpstate_identify(driver_t *driver, device_t parent) > { > + uint32_t small_cores = 0; > + > if (device_find_child(parent, "hwpstate_intel", DEVICE_UNIT_ANY) != NULL) > return; > > @@ -343,6 +353,17 @@ intel_hwpstate_identify(driver_t *driver, device_t parent) > if ((cpu_power_eax & CPUTPM1_HWP) == 0) > return; > > + /* > + * On hybrid-core systems, package-level control cannot be used. > + * It may cause all cores to run at the E-core frequency because > + * the resulting package frequency depends on the last core that > + * sets the frequency. > + */ > + smp_rendezvous_cpus(all_cpus, smp_no_rendezvous_barrier, > + intel_hwpstate_hybrid_cb, smp_no_rendezvous_barrier, &small_cores); > + if (small_cores > 0 && small_cores < mp_ncores) > + hwpstate_pkg_ctrl_enable = false; > + > if (BUS_ADD_CHILD(parent, 10, "hwpstate_intel", device_get_unit(parent)) > == NULL) > device_printf(parent, "hwpstate_intel: add child failed\n"); >