lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <010781f9-94d1-4f6d-868b-9197adb7f45e@arm.com>
Date: Mon, 1 Jul 2024 19:16:15 +0100
From: James Morse <james.morse@....com>
To: Reinette Chatre <reinette.chatre@...el.com>, x86@...nel.org,
 linux-kernel@...r.kernel.org
Cc: Fenghua Yu <fenghua.yu@...el.com>, Thomas Gleixner <tglx@...utronix.de>,
 Ingo Molnar <mingo@...hat.com>, Borislav Petkov <bp@...en8.de>,
 H Peter Anvin <hpa@...or.com>, Babu Moger <Babu.Moger@....com>,
 shameerali.kolothum.thodi@...wei.com,
 D Scott Phillips OS <scott@...amperecomputing.com>,
 carl@...amperecomputing.com, lcherian@...vell.com,
 bobo.shaobowang@...wei.com, tan.shaopeng@...itsu.com,
 baolin.wang@...ux.alibaba.com, Jamie Iles <quic_jiles@...cinc.com>,
 Xin Hao <xhao@...ux.alibaba.com>, peternewman@...gle.com,
 dfustini@...libre.com, amitsinght@...vell.com,
 David Hildenbrand <david@...hat.com>, Rex Nie <rex.nie@...uarmicro.com>,
 Dave Martin <dave.martin@....com>, Shaopeng Tan <tan.shaopeng@...fujitsu.com>
Subject: Re: [PATCH v3 13/38] x86/resctrl: Move resctrl types to a separate
 header

Hi Reinette,

On 28/06/2024 17:45, Reinette Chatre wrote:
> On 6/14/24 8:00 AM, James Morse wrote:
>> When resctrl is fully factored into core and per-arch code, each arch
>> will need to use some resctrl common definitions in order to define its
>> own specializations and helpers.  Following conventional practice, it
>> would be desirable to put the dependent arch definitions in an
>> <asm/resctrl.h> header that is included by the common <linux/resctrl.h>
>> header.  However, this can make it awkward to avoid a circular
>> dependency between <linux/resctrl.h> and the arch header.
>>
>> To avoid such dependencies, move the affected common types and
>> constants into a new header that does not need to depend on
>> <linux/resctrl.h> or on the arch headers.
>>
>> The same logic applies to the monitor-configuration defines, move these
>> too.
>>
>> Some kind of enumeration for events is needed between the filesystem
>> and architecture code. Take the x86 definition as its convenient for
>> x86.
>>
>> The definition of enum resctrl_event_id is need to allow the architecture
> 
> "is need" -> "is needed" ?


>> code to define resctrl_arch_event_is_free_running(),
> 
> Cannot find resctrl_arch_event_is_free_running()

Sorry - this will show up after the MPAM driver:
{
	MPAM has an additional piece of hardware that needs to be allocated to read the
	memory bandwidth counters. resctrl expects these things to be pre-allocated and
	free running from the start of time.
	I have some patches to explicitly tell resctrl this, so that the resctrl interface
	to these things can be used by perf to query the 'mbm' counters, even if the files
	are not exposed.
}

>> resctrl_arch_set_cdp_enabled(), resctrl_arch_mon_ctx_alloc() and
> 
> resctrl_arch_set_cdp_enabled() should not need enum resctrl_event_id

Sorry, wrong list.


>> resctrl_arch_mon_ctx_free().
>>
>> The definition of enum resctrl_res_level is needed to allow the
>> architecture code to define resctrl_arch_set_cdp_enabled() and
>> resctrl_arch_get_cdp_enabled().
>>
>> The bits for mbm_local_bytes_config et al are ABI, and must be the same
>> on all architectures. These are documented in
>> Documentation/arch/x86/resctrl.rst
>>
>> The maintainers entry for these headers was missed when resctrl.h was
>> created. Add a wildcard entry to match both resctrl.h and
>> resctrl_types.h.

>> ---
>>   MAINTAINERS                            |  1 +
>>   arch/x86/kernel/cpu/resctrl/internal.h | 24 ------------
>>   include/linux/resctrl.h                | 21 +---------
>>   include/linux/resctrl_types.h          | 54 ++++++++++++++++++++++++++
> 
> Considering the motivation I also expected to see a change in
> arch/x86/include/asm/resctrl.h that adds the #include of the new file.

It gets added in a later patch - but I'll move it here.


Thanks,

James

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ