s doesn't check exactly for same pattern.
> some uses "if (!strncmp(dso_name, "/tmp/perf-", 10))". Fix
> this by using helper function perf_pid_map_tid and
> is_perf_pid_map_name which looks for proper pattern of
> form: "/tmp/perf-$PID.map" for these
On 25/06/24 14:57, Adrian Hunter wrote:
> On 23/06/24 09:48, Athira Rajeev wrote:
>> Perf test for perf probe of function from different CU fails
>> as below:
>>
>> ./perf test -vv "test perf probe of function from different CU"
>> 116: te
"struct dso",
> dso->long_name holds the long name of the dso file. Since the
> /tmp/perf-$PID.map check uses the complete name, use dso___long_name for
> the string name.
>
> With the fix,
> # ./perf test "test perf probe of function from different CU&
On 18/06/24 17:03, Athira Rajeev wrote:
> Perf test for perf probe of function from different CU fails
> as below:
>
> ./perf test -vv "test perf probe of function from different CU"
> 116: test perf probe of function from different CU:
> --- start ---
> test child forked,
On 17/06/24 16:03, Athira Rajeev wrote:
> commit 80d496be89ed ("perf report: Add support for profiling JIT
> generated code") added support for profiling JIT generated code.
> This patch handles dso's of form "/tmp/perf-$PID.map".
>
> Some of the references doesn't check exactly for same pattern.
On 14/06/24 20:27, Athira Rajeev wrote:
> Perf test for perf probe of function from different CU fails
> as below:
>
> ./perf test -vv "test perf probe of function from different CU"
> 116: test perf probe of function from different CU:
> --- start ---
> test child forked,
alue in two steps:
> Previous line: if line := p.stdout.readline():
> Current change:
> line = p.stdout.readline()
> if line:
>
> With patch
>
> ./perf test "perf script tests"
>93: perf script tests: Ok
>
> Signed-off-by: Athira Rajee
On 10/06/24 15:20, Athira Rajeev wrote:
>
>
>> On 3 Jun 2024, at 10:28 PM, Adrian Hunter wrote:
>>
>> On 3/06/24 19:30, Ian Rogers wrote:
>>> On Fri, May 31, 2024 at 11:10 PM Athira Rajeev
>>> wrote:
>>>>
>>>> Now perf use
On 3/06/24 19:30, Ian Rogers wrote:
> On Fri, May 31, 2024 at 11:10 PM Athira Rajeev
> wrote:
>>
>> Now perf uses the capstone library to disassemble the instructions in
>> x86. capstone is used (if available) for perf annotate to speed up.
>> Currently it only supports x86 architecture. Patch inc
On 11/04/24 11:22, Christophe Leroy wrote:
>
>
> Le 11/04/2024 à 10:12, Christophe Leroy a écrit :
>>
>>
>> Le 11/04/2024 à 09:16, Adrian Hunter a écrit :
>>> On 11/04/24 10:04, Arnd Bergmann wrote:
>>>> On Wed, Apr 10, 2024, at 17:32, Adrian Hun
On 11/04/24 10:56, Arnd Bergmann wrote:
> On Thu, Apr 11, 2024, at 09:16, Adrian Hunter wrote:
>> On 11/04/24 10:04, Arnd Bergmann wrote:
>>> On Wed, Apr 10, 2024, at 17:32, Adrian Hunter wrote:
>>>> BUG() does not return, and arch implementations of BUG() use u
On 11/04/24 10:04, Arnd Bergmann wrote:
> On Wed, Apr 10, 2024, at 17:32, Adrian Hunter wrote:
>> BUG() does not return, and arch implementations of BUG() use unreachable()
>> or other non-returning code. However with !CONFIG_BUG, the default
>> implementation is often used i
actor timekeeping helpers")
Reported-by: Naresh Kamboju
Closes:
https://lore.kernel.org/all/CA+G9fYvjdZCW=7zgxs6a_3bysjq56yf7s-+pnlq_8a4dkh1...@mail.gmail.com/
Signed-off-by: Adrian Hunter
---
include/asm-generic/bug.h | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/i
n Rothwell
Closes: https://lore.kernel.org/all/20240409124905.6816d...@canb.auug.org.au/
Fixes: c8e3a8b6f2e6 ("vdso: Consolidate vdso_calc_delta()")
Signed-off-by: Adrian Hunter
---
lib/vdso/gettimeofday.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/vdso/gettimeofda
protection against that. Simplify by folding together
clocksource_delta() and clocksource_cyc2ns() into cycles_to_nsec_safe().
Check against max_cycles, falling back to a slower higher precision
calculation.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/clocksource.c | 42
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 31 +--
1 file changed, 13 insertions(+), 18 deletions(-)
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index 111dfdbd488f..4e18db1819f8 100644
--- a
timekeeping_cycles_to_ns() calculation,
check against max_cycles, falling back to a slower higher precision
calculation. In timekeeping_forward_now(), process delta in chunks of at
most max_cycles.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 40
Open code clocksource_delta() in timekeeping_cycles_to_ns() so that
overflow safety can be added efficiently.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 12 +++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/kernel/time
timekeeping_delta_to_ns() is now called only from
timekeeping_cycles_to_ns(), and it is not useful otherwise. Simplify by
folding it into timekeeping_cycles_to_ns().
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 13 +
1 file changed, 1
Consolidate timekeeping helpers, making use of timekeeping_cycles_to_ns()
in preference to directly using timekeeping_delta_to_ns().
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 14 --
1 file changed, 8 insertions(+), 6 deletions
Simplify use of timekeeping sanity checking, in preparation for
consolidating timekeeping helpers. This works towards eliminating
timekeeping_delta_to_ns() in favour of timekeeping_cycles_to_ns().
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 20
Simplify __timekeeping_get_ns() by reusing timekeeping_cycles_to_ns().
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 5 +
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index
Put together declaration and initialization of the local variable 'delta'.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/kernel/time/timekeeping.c b/kernel/time/tim
Rename fast_tk_get_delta_ns() to __timekeeping_get_ns() to prepare for its
reuse as a general timekeeping helper function.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/kernel
Move timekeeping helper functions to prepare for their reuse.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 34 +-
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/kernel/time/timekeeping.c b/kernel
that has similar performance as before. Newer
machines showed performance benefit, whereas older Skylake-based hardware
such as Intel Kaby Lake was seen <1% worse.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
arch/x86/Kconfig | 1 +
arch/x86/incl
, enabled by config option
CONFIG_GENERIC_VDSO_OVERFLOW_PROTECT. Check against max_cycles, falling
back to a slower higher precision calculation.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
lib/vdso/gettimeofday.c | 17 -
1 file changed, 16 insertions(+), 1
Add vdso_data::max_cycles in preparation to use it to detect potential
multiplication overflow.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
include/vdso/datapage.h | 4
kernel/time/vsyscall.c | 6 ++
2 files changed, 10 insertions(+)
diff --git a/include/vdso
Provide mul_u64_u32_add_u64_shr() which is a calculation that will be used
by timekeeping and VDSO.
Place #include after #include to allow
architecture-specific overrides, at least for the kernel.
Signed-off-by: Adrian Hunter
---
include/linux/math64.h | 2 +-
include/vdso/math64.h | 38
Put together declaration and initialization of local variables.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
include/linux/math64.h | 6 +-
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/include/linux/math64.h b/include/linux/math64.h
index bf74478926d4
Add CONFIG_GENERIC_VDSO_OVERFLOW_PROTECT in preparation to add
multiplication overflow protection to the VDSO time getter functions.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
lib/vdso/Kconfig | 7 +++
1 file changed, 7 insertions(+)
diff --git a/lib/vdso/Kconfig b/lib
Consolidate nanoseconds calculation to simplify and reduce code
duplication.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
Changes in V2:
Adjusted due to changes in "vdso: Consolidate vdso_calc_delta()"
arch/x86/include/asm/vdso/gettimeofday.h | 17
Consolidate vdso_calc_delta(), in preparation for further simplification.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
Changes in V2:
Keep powerpc comment about mask
Move ifdef out of function
arch/powerpc/include/asm/vdso/gettimeofday.h | 26
Kaby Lake which was seen <1%
worse.
Changes in V2:
vdso: Consolidate vdso_calc_delta()
Keep powerpc comment about mask
Move ifdef out of function
vdso: Consolidate nanoseconds calculation
Adjusted due to changes in "vdso: Consolidate vdso_calc_delta()&qu
Rename fast_tk_get_delta_ns() to __timekeeping_get_ns() to prepare for its
reuse as a general timekeeping helper function.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/kernel
protection against that. Simplify by folding together
clocksource_delta() and clocksource_cyc2ns() into cycles_to_nsec_safe().
Check against max_cycles, falling back to a slower higher precision
calculation.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/clocksource.c | 42
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 31 +--
1 file changed, 13 insertions(+), 18 deletions(-)
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index 111dfdbd488f..4e18db1819f8 100644
--- a
Move timekeeping helper functions to prepare for their reuse.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 34 +-
1 file changed, 17 insertions(+), 17 deletions(-)
diff --git a/kernel/time/timekeeping.c b/kernel
that has similar performance as before. Newer
machines showed performance benefit, whereas older Skylake-based hardware
such as Intel Kaby Lake was seen <1% worse.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
arch/x86/Kconfig | 1 +
arch/x86/incl
timekeeping_cycles_to_ns() calculation,
check against max_cycles, falling back to a slower higher precision
calculation. In timekeeping_forward_now(), process delta in chunks of at
most max_cycles.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 40
Open code clocksource_delta() in timekeeping_cycles_to_ns() so that
overflow safety can be added efficiently.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 12 +++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/kernel/time
, enabled by config option
CONFIG_GENERIC_VDSO_OVERFLOW_PROTECT. Check against max_cycles, falling
back to a slower higher precision calculation.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
lib/vdso/gettimeofday.c | 17 -
1 file changed, 16 insertions(+), 1
Add vdso_data::max_cycles in preparation to use it to detect potential
multiplication overflow.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
include/vdso/datapage.h | 4
kernel/time/vsyscall.c | 6 ++
2 files changed, 10 insertions(+)
diff --git a/include/vdso
timekeeping_delta_to_ns() is now called only from
timekeeping_cycles_to_ns(), and it is not useful otherwise. Simplify by
folding it into timekeeping_cycles_to_ns().
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 13 +
1 file changed, 1
Consolidate timekeeping helpers, making use of timekeeping_cycles_to_ns()
in preference to directly using timekeeping_delta_to_ns().
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 14 --
1 file changed, 8 insertions(+), 6 deletions
Provide mul_u64_u32_add_u64_shr() which is a calculation that will be used
by timekeeping and VDSO.
Place #include after #include to allow
architecture-specific overrides, at least for the kernel.
Signed-off-by: Adrian Hunter
---
include/linux/math64.h | 2 +-
include/vdso/math64.h | 38
Put together declaration and initialization of local variables.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
include/linux/math64.h | 6 +-
1 file changed, 1 insertion(+), 5 deletions(-)
diff --git a/include/linux/math64.h b/include/linux/math64.h
index bf74478926d4
Simplify use of timekeeping sanity checking, in preparation for
consolidating timekeeping helpers. This works towards eliminating
timekeeping_delta_to_ns() in favour of timekeeping_cycles_to_ns().
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 20
Add CONFIG_GENERIC_VDSO_OVERFLOW_PROTECT in preparation to add
multiplication overflow protection to the VDSO time getter functions.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
lib/vdso/Kconfig | 7 +++
1 file changed, 7 insertions(+)
diff --git a/lib/vdso/Kconfig b/lib
Simplify __timekeeping_get_ns() by reusing timekeeping_cycles_to_ns().
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 5 +
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/kernel/time/timekeeping.c b/kernel/time/timekeeping.c
index
Consolidate nanoseconds calculation to simplify and reduce code
duplication.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
arch/x86/include/asm/vdso/gettimeofday.h | 17 +
lib/vdso/gettimeofday.c | 44 +++-
2 files changed, 29
Consolidate vdso_calc_delta(), in preparation for further simplification.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
arch/powerpc/include/asm/vdso/gettimeofday.h | 17 ++---
arch/s390/include/asm/vdso/gettimeofday.h| 7 ++-
lib/vdso/gettimeofday.c
Kaby Lake which was seen <1%
worse.
Adrian Hunter (19):
vdso: Consolidate vdso_calc_delta()
vdso: Consolidate nanoseconds calculation
vdso: Add CONFIG_GENERIC_VDSO_OVERFLOW_PROTECT
math64: Tidy mul_u64_u32_shr()
vdso: math64: Provide mul_u64_u32_add_u64_shr()
Put together declaration and initialization of the local variable 'delta'.
Suggested-by: Thomas Gleixner
Signed-off-by: Adrian Hunter
---
kernel/time/timekeeping.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
diff --git a/kernel/time/timekeeping.c b/kernel/time/tim
of
> having stubs range as part of the /proc/kallsyms, so that perf
> report can resolve addresses in stubs range
>
> However this patch uses text_end to skip the stub range for
> Object code reading testcase.
>
> Reported-by: Disha Goel
> Signed-off-by: Athira Rajeev
>
les. And skip module address after text end
> + */
> + if (strstr(dso->long_name, ".ko")) {
Sorry for slow reply
!strtailcmp() is slightly better here
> + if (al.addr > dso->text_end) {
We normally avoid nesting if-statements e.g.
t; In this case for module, the address 0xc00807e11fd4 is pointing
> to stub instructions. This address range represents the module stubs
> which is allocated on module load and hence is not part of DSO offset.
>
> To identify such address, which falls out of text
> section and
On 17/08/23 20:18, Athira Rajeev wrote:
> The testcase "Object code reading" fails in somecases
> for "fs_something" sub test as below:
>
> Reading object code for memory address: 0xc00807f0142c
> File is: /lib/modules/6.5.0-rc3+/kernel/fs/xfs/xfs.ko
> On file address is: 0x1114cc
On 17/08/23 20:18, Athira Rajeev wrote:
> Update "struct dso" to include new member "text_end".
> This new field will represent the offset for end of text
> section for a dso. This value is derived as:
> sh_size (Size of section in byes) + sh_offset (Section file
> offst) of the elf header for text
is used by
> function "map__rip_2objdump" which converts symbol start
> address to objdump address. Also set the dso long_name during
> dso__load_vmlinux function.
>
> Suggested-by: Adrian Hunter
> Signed-off-by: Athira Rajeev
Acked-by: Adrian Hunter
> ---
> Note: F
On 22/09/22 22:15, Arnaldo Carvalho de Melo wrote:
> Em Wed, Sep 21, 2022 at 10:38:38PM +0530, Athira Rajeev escreveu:
>> The perf test named “build id cache operations” skips with below
>> error on some distros:
>
> I wonder if we shouldn't instead state that bash is needed?
>
> ⬢[acme@toolbox p
On 14/08/19 10:26 AM, Yinbo Zhu wrote:
> This patch is to add erratum A011334 support in ls1028a 1.0 SoC
>
> Signed-off-by: Yinbo Zhu
Acked-by: Adrian Hunter
> ---
> drivers/mmc/host/sdhci-of-esdhc.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/drivers/m
ix this by ignoring hypervisor symbols in the test.
>
> Signed-off-by: Ravi Bangoria
Acked-by: Adrian Hunter
> ---
> Changes in v2:
> - Add pr_debug()
>
> tools/perf/tests/code-reading.c | 5 +
> 1 file changed, 5 insertions(+)
>
> diff --git a/tools/perf/t
On 23/06/17 18:47, Ivan Mikhaylov wrote:
> * shdci-st driver can be used for ppc476 fsp2 soc
shdci-st -> sdhci-st
>
> Signed-off-by: Ivan Mikhaylov
Acked-by: Adrian Hunter
> ---
> drivers/mmc/host/Kconfig |2 +-
> 1 files changed, 1 insertions(+), 1 deletions
On 28/12/11 11:41, Shaohui Xie wrote:
> If dma is enabled, it'll be cleared when reset all is performed, this can
> be observed on some platforms, such as P2041 which has a version 2.3
> controller, but platform like P4080 which has a version 2.2 controller,
> does not suffer this, so we will check
Felix Radensky wrote:
Adrian Hunter wrote:
Felix Radensky wrote:
Hi,
I have a strange problem in linux-2.6.31 running on MPC8536DS board.
It is 100% reproducible, by opening a 350MB tar file into ubifs volume
on NAND flash, and starting erase of NOR flash partition right after
that.
If I
Felix Radensky wrote:
Hi,
I have a strange problem in linux-2.6.31 running on MPC8536DS board.
It is 100% reproducible, by opening a 350MB tar file into ubifs volume
on NAND flash, and starting erase of NOR flash partition right after that.
If I don't start NOR erase, everything works fine. Al
67 matches
Mail list logo