[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] xen: Drop xenoprofile support


  • To: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>
  • From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
  • Date: Tue, 6 Jan 2026 10:58:51 +0000
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=citrix.com; dmarc=pass action=none header.from=citrix.com; dkim=pass header.d=citrix.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=26l3ZTOJrrzdLT8AAIkQDwGgWRD9N4s7dh3yPy7iVWo=; b=HzN9TwpNCFyJcA6KnbsusbKoQzxVdk0fVviiPYx8/xShgTP/HlFfDxwRmlCBNamyXBZypaIfCEhRI0Bj+5GB2IVGZJChhF/SRgbcaGE3HZN8Hc9pIrMFU089p9nrrvQY2tWcg85Yn3Yog0ueHeOPyGEX0fmqBtNSdPA45wn3j7DzIflspZyOhdQWYTE+nNjeqsksT06K1Nx64BCv4XRH3Zj5udd5u2FAe0zhQhkxoZMm5+Q9EG3GrrJPaVljMZgqFcTFL2FshT9c6EdYUDI70dKfmOmMcj31Ffyiabs49bv9ryT5BKtaYEdcqwoEAV92wSc7PTBHkyFFfx5Gq5L0Iw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=qr5AoxmO6/PwWORAeWF/ypc+T0I86ca6pfYixY5IMPy6wafagrBaXpC20st1PFTLJ12UkSocs9y4FzKXGEOhRgptZzQgkl6Sv5nwV2APoErtXI9SfD9CWXYSJxDhfe45Lp12qHJWsZyQykeV9vtKvfHWk8dRmR/9LkizBWO1hk5Pz26uTL+m6qMu0v8IAJA3bQo6u7GSbwmzZBSlX3EwtbQ1Ye0vw6X3UY3ZYzfaUPicfpeLbBSCPnjQJfa8cHT295gApRcrTDJ7KnZRxesPOG3lMoCLnwxi8yPW1Lf3rr3iejuSiTSnazCZhCTON1MHJR8HfvUVX2hJCqoDSurORw==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=citrix.com;
  • Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Anthony PERARD <anthony.perard@xxxxxxxxxx>, Michal Orzel <michal.orzel@xxxxxxx>, Julien Grall <julien@xxxxxxx>, Roger Pau Monné <roger.pau@xxxxxxxxxx>, Stefano Stabellini <sstabellini@xxxxxxxxxx>, "Daniel P . Smith" <dpsmith@xxxxxxxxxxxxxxxxxxxx>, Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Tue, 06 Jan 2026 10:59:11 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On 06/01/2026 9:37 am, Oleksii Kurochko wrote:
>
> On 1/6/26 9:53 AM, Jan Beulich wrote:
>> On 06.01.2026 09:43, Oleksii Kurochko wrote:
>>> On 1/5/26 8:57 PM, Andrew Cooper wrote:
>>>> The most recent xenoprof change was 300ef0cb4fde ("x86: Add
>>>> Xenoprofile
>>>> support for AMD Family16h") in 2013, despite there being 42 changes
>>>> worth of
>>>> other cleanup/rearranging since then.
>>>>
>>>> Oprofile themselves dropped Xen support in commit 0c142c3a096d
>>>> ("Remove
>>>> opcontrol and the GUI and processor models dependent on it") in
>>>> 2014, as part
>>>> of releasing version 1.0 and switching over to using operf based on
>>>> the Linux
>>>> perf_event subsystem.  Linux's version of this patch was merged in
>>>> commit
>>>> 24880bef417f ("Merge tag 'oprofile-removal-5.12'") in 2021.
>>>>
>>>> Drop xenoprof and all supporting infrastructure, including the
>>>> hypercall, the
>>>> XSM hook and flask vectors which lose their only caller, and even
>>>> shrinks
>>>> struct domain by one pointer which wasn't properly excluded in
>>>> !CONFIG_XENOPROF builds.
>>>>
>>>> Retain the public xenoprof.h header as it is ABI, but note that the
>>>> functionality is removed.
>>>>
>>>> Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
>>>> ---
>>>> CC: Anthony PERARD <anthony.perard@xxxxxxxxxx>
>>>> CC: Michal Orzel <michal.orzel@xxxxxxx>
>>>> CC: Jan Beulich <jbeulich@xxxxxxxx>
>>>> CC: Julien Grall <julien@xxxxxxx>
>>>> CC: Roger Pau Monné <roger.pau@xxxxxxxxxx>
>>>> CC: Stefano Stabellini <sstabellini@xxxxxxxxxx>
>>>> CC: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx>
>>>> CC: Daniel P. Smith <dpsmith@xxxxxxxxxxxxxxxxxxxx>
>>>>
>>>> Despite appearing to be architecture neutral, the internals of
>>>> Xenoprof were
>>>> entirely x86-specific.  Another curiosity is that only the VMX MSR
>>>> hooks
>>>> called passive_domain_do_{rd,wr}msr(), and I can't see how this was
>>>> correct
>>>> for SVM.
>>>>
>>>> The real reason for finally getting around to this is the number of
>>>> MISRA
>>>> violations reported by the eclair-x86_64-allcode job that I don't
>>>> feel like
>>>> fixing.
>>>> ---
>>>>    CHANGELOG.md                            |   3 +
>>>>    docs/misc/xen-command-line.pandoc       |   6 -
>>>>    tools/flask/policy/modules/dom0.te      |   2 -
>>>>    xen/arch/x86/Makefile                   |   1 -
>>>>    xen/arch/x86/cpu/vpmu_amd.c             |   7 -
>>>>    xen/arch/x86/cpu/vpmu_intel.c           |   6 -
>>>>    xen/arch/x86/hvm/svm/entry.S            |   1 -
>>>>    xen/arch/x86/hvm/svm/svm.c              |   2 -
>>>>    xen/arch/x86/hvm/vmx/vmx.c              |   9 -
>>>>    xen/arch/x86/include/asm/xenoprof.h     |  95 ---
>>>>    xen/arch/x86/oprofile/Makefile          |   6 -
>>>>    xen/arch/x86/oprofile/backtrace.c       | 145 ----
>>>>    xen/arch/x86/oprofile/nmi_int.c         | 485 ------------
>>>>    xen/arch/x86/oprofile/op_counter.h      |  41 -
>>>>    xen/arch/x86/oprofile/op_model_athlon.c | 547 -------------
>>>>    xen/arch/x86/oprofile/op_model_p4.c     | 721 -----------------
>>>>    xen/arch/x86/oprofile/op_model_ppro.c   | 348 ---------
>>>>    xen/arch/x86/oprofile/op_x86_model.h    |  58 --
>>>>    xen/arch/x86/oprofile/xenoprof.c        | 106 ---
>>>>    xen/arch/x86/traps.c                    |   4 -
>>>>    xen/common/Kconfig                      |  11 -
>>>>    xen/common/Makefile                     |   1 -
>>>>    xen/common/compat/xenoprof.c            |  42 -
>>>>    xen/common/domain.c                     |   6 -
>>>>    xen/common/xenoprof.c                   | 977
>>>> ------------------------
>>>>    xen/include/Makefile                    |   1 -
>>>>    xen/include/hypercall-defs.c            |   6 -
>>>>    xen/include/public/xen.h                |   2 +-
>>>>    xen/include/public/xenoprof.h           |   2 +-
>>>>    xen/include/xen/sched.h                 |   3 -
>>>>    xen/include/xen/xenoprof.h              |  49 --
>>>>    xen/include/xsm/dummy.h                 |   7 -
>>>>    xen/include/xsm/xsm.h                   |   7 -
>>>>    xen/xsm/dummy.c                         |   2 -
>>>>    xen/xsm/flask/hooks.c                   |  35 -
>>>>    xen/xsm/flask/policy/access_vectors     |   4 -
>>>>    36 files changed, 5 insertions(+), 3743 deletions(-)
>>>>    delete mode 100644 xen/arch/x86/include/asm/xenoprof.h
>>>>    delete mode 100644 xen/arch/x86/oprofile/Makefile
>>>>    delete mode 100644 xen/arch/x86/oprofile/backtrace.c
>>>>    delete mode 100644 xen/arch/x86/oprofile/nmi_int.c
>>>>    delete mode 100644 xen/arch/x86/oprofile/op_counter.h
>>>>    delete mode 100644 xen/arch/x86/oprofile/op_model_athlon.c
>>>>    delete mode 100644 xen/arch/x86/oprofile/op_model_p4.c
>>>>    delete mode 100644 xen/arch/x86/oprofile/op_model_ppro.c
>>>>    delete mode 100644 xen/arch/x86/oprofile/op_x86_model.h
>>>>    delete mode 100644 xen/arch/x86/oprofile/xenoprof.c
>>>>    delete mode 100644 xen/common/compat/xenoprof.c
>>>>    delete mode 100644 xen/common/xenoprof.c
>>>>    delete mode 100644 xen/include/xen/xenoprof.h
>>>>
>>>> diff --git a/CHANGELOG.md b/CHANGELOG.md
>>>> index 3aaf5986231c..1663f6878ef2 100644
>>>> --- a/CHANGELOG.md
>>>> +++ b/CHANGELOG.md
>>>> @@ -15,6 +15,9 @@ The format is based on [Keep a
>>>> Changelog](https://keepachangelog.com/en/1.0.0/)
>>>>       - The cpuid_mask_* command line options for legacy AMD CPUs. 
>>>> These were
>>>>         deprecated in Xen 4.7 and noted not to work correctly with
>>>> AMD CPUs from
>>>>         2011 onwards.
>>>> +   - Xenoprofile support.  Oprofile themselves removed support for
>>>> Xen in 2014
>>>> +     prior to the version 1.0 release, and there has been no
>>>> development since
>>>> +     before then in Xen.
>>> LGTM:
>>> Acked-by: Oleksii Kurochko <oleksii.kurochko@xxxxxxxxx> # CHANGELOG.md
>>>
>>> Nit: It is necessary to drop the extra space before "  Oprofile
>>> themselves...".
>> Why would that be? See the other bullet point in context, which also
>> uses a
>> two blanks after the inner full stop. This is deliberate.
>
> I just missed that a similar case was mentioned above. If this is
> deliberate,
> then I’m fine with it. It’s just not obvious (at least, for me) where
> it’s
> acceptable and where it isn’t to have extra spaces.

The hunk looks correct in
https://lore.kernel.org/xen-devel/20260105195717.601500-1-andrew.cooper3@xxxxxxxxxx/T/#u

It's only your reply
https://lore.kernel.org/xen-devel/724e78ef-b6ed-40db-a5c0-bd6473b6fe16@xxxxxxxxx/
where it looks to have whitespace problems, so I suspect that will be a
local MUA problem.

~Andrew



 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.