From nobody Tue Jun 2 18:25:56 2026 X-Original-To: dev-commits-src-all@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 4gVK5t071vz6g5XD for ; Tue, 02 Jun 2026 18:26:10 +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 4gVK5s1tHfz481V for ; Tue, 02 Jun 2026 18:26:09 +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-9157b94a07aso121049985a.0 for ; Tue, 02 Jun 2026 11:26:09 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1780424768; cv=none; d=google.com; s=arc-20240605; b=V3Jv/Fvzyc5O8PCoZCPKMQ0HM5Mbrcidx3TYoYJ90JNgGUkkls6oX3fRKrsItO7ovt eKYMxf/4gLVKOsdw6ZtNkw7nc8wedrVhuwLZbNp8vvFrxnJesBcVlD9WkXMD8ACuml3t LDchn7sHX+TbnxCnwYn1wWUBuTyfet3ETK4gg/VoUje8QM++usYF3+fO1K+D6EeP7IZ4 AVgwcMj5ZBqqAiP18cV+qaPmGi+3YsImyfSmB9ac4w/mhg6mZE7OcAew4JMrm5grtJAo uQd44IPj69vrk3mQH7xqmDUeFxZpRD+DuHdrhxmYEUuYMU8tcGsyIUU9/SvutJO3vXEt HksA== 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=KK5jxPKfZ92U81F0VV2sqHyB2hbI4QjQXWzMIugepzM=; b=ieO5ErrWHXiGhLeVT8geqhqN4HE2GnO59bKMaUJXXiUmx3v1nw+Q/zKLan4++xA4+e oxhDjKw+SfmGkYBdLqUPPt1ojgCFusKpwC8OXXM6q31r1WzNZXBMEKY4ek+vjHX4LVvk O1amU2HYdVcuf3qFxmpYBDb3XV25fgAoNUY2ESCOTFUenvsG2ijIca7CMa3Glo0fQyyz N3Z/s4cwhprX80yQrZoMu+757+j+4Bza/PWyzy9VB1sAib8K+BHZqy/gtn5LnGhW4/wb jaylDsCTyqG9NUEjT4ZwsL89P1WxyOB8RekJmohDnBNung3G/Alv1kUtqvWAk9TQCZzt HhDQ==; 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=PLhSKMFdULGWjVw4WH9phT8TEkYmnlQvCskZUff+ibivAVHgc01/rD3a54G51RcKvj uFgbMr9yTgQXYgbQvUvWklM+Cb04xkWX+hLuDTMaTDqu+H2Nff1KI2mrOC3ALXPUF9CS 6LiCasxuLLQNqFn1OS7jTaNEMFXTPvCV1Y6F+pZEsD6WTqxtz/P7zAF2gl+nZKtdBupM 1X2asL0L83yPK8lMd9PyYvNAWyfIQ5yHEeE4Gt9p2c5gE28AFVRj9i5JhzZl/eyn1Ym+ u9R/LRPxM8Sr7UK9UmuQ7UDpUXpL9xb2aozjqtzIH0c/uxpMA2zV4Po3auEc3IDHDB53 jkAg== X-Forwarded-Encrypted: i=1; AFNElJ+dcY7xNO8GP23DuLNoyfJXCIOOFLvlJmVuMMWvUMfpkpQhY5FHiog6Amba82psy3cFijPieS+J4/3eKaAPjiBattgU@freebsd.org X-Gm-Message-State: AOJu0YzZuLaD2JtrKueAV6Bq981gubOVQCBS5/b/QsKa6hrQsUA2pAoG otXbVHU+xEpZml7GIKNwAt4G3EH6LML0+h+iovEIDqUk/euMKaWoOr27S39mqkeXtWn+9Vp8c9Q 3/YkSc/oA3L/LH42nk0BENZSyRZnqDokwjw== X-Gm-Gg: Acq92OEqUaDOfIeRzbvTMkq75mRB6OnXIevwBOlgzPkr+IxWWQa5n9eoeii2pCStFQo kbNOQa1qm2WYOsD57X5MSOyqSGRXF2ytnxIY1XKx+X3tJqpbdXxn69PZepj6qY8zt1rrHtecLWB wzzxmknsRVaUO8qdljlANUTfVnVJlKRh6It+j7U+h42/SqKadTqiO8LU/tQpaSAYpuxOV2HbwXM Lbk9RVN0hIF+23Q0I3tMw0DBlp74Pm4cckR7jiPc3vwIVD4VCjFr+pu2FJJWeZGCtmZrKYh7V6E DP6Q4mHgFLngutbn2/usvYos8LwSPXcmbgc25QdCxjDPAETxjwhp9zP8ak0mMzkIY6rZwI/ivDS eKSV6ctwlU/JsvQcxJsTVEREOlxmKIQwFCDrtwgmA5zRHQrfUDUWwif9oOQahS/H3TrA= 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 all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@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)[]; ASN(0.00)[asn:15169, ipnet:209.85.128.0/17, country:US]; TAGGED_FROM(0.00)[] X-Rspamd-Queue-Id: 4gVK5s1tHfz481V 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"); >