racefs dynamic linking
a87834d19aa2 perf build: Fix broken feature check for libtracefs due to
external lib changes
To avoid breaking older perf versions.
For rtla,
Tested-by: Daniel Bristot de Oliveira
-- Daniel
> Signed-off-by: Daniel Wagner
> ---
> Our downstream packaging stop
Hi Thomas
On 6/12/24 16:54, tglo...@redhat.com wrote:
> From: Tomas Glozar
I think we can split this into two patches, this first part on tools/Build:
> Add a test for libcpupower into feature tests and use it to add a
> dependency on libcpupower to rtla.
>
> Signed-off-by: Tomas Glozar
> ---
On 6/12/24 16:54, tglo...@redhat.com wrote:
> +
> + nr_states = cpuidle_state_count(cpu);
> +
Question: Is this library implemented for all archs or only
intel &| arm?
If it is restricted to few archs, it is another point to make
it optional.
-- Daniel
On 6/12/24 16:54, tglo...@redhat.com wrote:
> @@ -550,6 +555,7 @@ static struct timerlat_top_params
> {"aa-only", required_argument, 0, '5'},
> {"warm-up", required_argument, 0, '6'},
> {"trace-buffe
On 6/12/24 16:12, John Kacur wrote:
>> +/* There are samples above the threshold */
> IMHO The comment isn't needed because the variable had_samples is
> descriptive, but it's not a big deal either
Yeah, I would not do it too, but it is fine.
I am adding it to my queue.
Thanks Luis
Adding Arnaldo
On 6/17/24 20:38, Daniel Wagner wrote:
> Use libtracefs as package name to lookup the CFLAGS for libtracefs. This
> makes it possible to use the distro specific path as include path for
> the header file.
>
> Signed-off-by: Daniel Wagner
> ---
> Our downstream packaging stop worki
On 6/10/24 21:20, Qais Yousef wrote:
> - if (realtime_prio(p->prio)) /* includes deadline */
> + if (rt_or_dl_prio(p->prio))
that is it... no thinking, no recall, no comment, no confusion...
-- Daniel.
On 6/5/24 15:24, Qais Yousef wrote:
>>> But rt is a shortened version of realtime, and so it is making *it less*
>>> clear that we also have DL here.
>> Can SCHED_DL be considered a real-time scheduling class as in opposite
>> to SCHED_BATCH for instance? Due to its requirements it fits for a real
On 6/5/24 11:32, Sebastian Andrzej Siewior wrote:
> On 2024-06-04 17:57:46 [+0200], Daniel Bristot de Oliveira wrote:
>> On 6/4/24 16:42, Qais Yousef wrote:
>>> - (wakeup_rt && !dl_task(p) && !rt_task(p)) ||
>>> + (wakeup_rt && !re
On 6/4/24 18:37, Steven Rostedt wrote:
> On Tue, 4 Jun 2024 17:57:46 +0200
> Daniel Bristot de Oliveira wrote:
>
>> On 6/4/24 16:42, Qais Yousef wrote:
>>> - (wakeup_rt && !dl_task(p) && !rt_task(p)) ||
>>> + (wakeup_rt && !rea
On 6/4/24 16:42, Qais Yousef wrote:
> - (wakeup_rt && !dl_task(p) && !rt_task(p)) ||
> + (wakeup_rt && !realtime_task(p)) ||
I do not like bikeshedding, and no hard feelings...
But rt is a shortened version of realtime, and so it is making *it less*
clear that we also have DL here
On 5/20/24 07:42, Yang Li wrote:
> The patch updates the function documentation comment for
> rv_en(dis)able_monitor to adhere to the kernel-doc specification.
>
> Signed-off-by: Yang Li
Acked-by: Daniel Bristot de Oliveira
Thanks
-- Daniel
Hi Yang
On 5/17/24 11:14, Yang Li wrote:
> The patch updates the function documentation comment for
> rv_en(dis)able_monitor to adhere to the kernel-doc specification.
>
> Signed-off-by: Yang Li
> ---
> kernel/trace/rv/rv.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/kernel/trac
x.git
trace-tools-v6.10
Tag SHA1: dbd633e7f81bac0114f609ff2eade9f4e66a28e2
Head SHA1: 59c22f70b2951d81de410d477ae536ba951b4f37
Daniel Bristot de Oliveira (8):
rtla/timerlat: Simplify "no value" printing on top
rtla/auto-analysis: Replace \t with spaces
rtla/timerlat: Use pretty fo
.
Please pull the latest trace-tools-v6.9-2 tree, which can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/bristot/linux.git
trace-tools-v6.9-2
Tag SHA1: e8d5e0f38601c3718874d95db2a0020ab1c454df
Head SHA1: a23c05fd76cf4ad27e0c74f7a93e7b089e94a55c
Daniel Bristot de Oliveira (4):
On 3/20/24 00:02, Steven Rostedt wrote:
> On Mon, 18 Mar 2024 18:41:13 +0100
> Daniel Bristot de Oliveira wrote:
>
>> Steven,
>>
>> Tracing tooling updates for 6.9
>>
>> Tracing:
>> - Update makefiles for latency-collector and RTLA,
>&g
the latest trace-tools-v6.9 tree, which can be found at:
git://git.kernel.org/pub/scm/linux/kernel/git/bristot/linux.git
trace-tools-v6.9
Tag SHA1: 2eb09a97c56af3c27bd9dcebccb495f70d56d5c0
Head SHA1: 9c63d9f58a42b979a42bcaed534d9246996ac0d9
Daniel Bristot de Oliveira (4):
tools/tracing:
Use tools/build/ makefiles to build rv, inheriting the benefits of
it. For example, having a proper way to handle dependencies.
Suggested-by: Linus Torvalds
Signed-off-by: Daniel Bristot de Oliveira
---
tools/verification/rv/.gitignore | 6 +
tools/verification/rv/Build | 1
tools/build.
But this would also require changes in the user side (the directory
structure changes, and probably the deps to build the package).
Inspired on perf and objtool.
Suggested-by: Linus Torvalds
Signed-off-by: Daniel Bristot de Oliveira
---
tools/tracing/rtla/.gitignore | 7
/libtracefs-devel
Makefile.config:29: *** Please, check the errors above.. Stop.
This type of output is common across other tools in tools/ like perf
and objtool.
Suggested-by: Linus Torvalds
Signed-off-by: Daniel Bristot de Oliveira
---
tools/tracing/latency/.gitignore | 5 +-
tools
ges from V1:
- Link: https://lore.kernel.org/lkml/cover.1709914259.git.bris...@kernel.org/
- Proper handle O= and OUTPUT= flags fixing "make tools/tracing"
- Cleanups
Daniel Bristot de Oliveira (3):
tools/tracing: Use tools/build makefiles on latency-collector
tools/rtla: Use tools
On 3/15/24 15:53, Arnaldo Carvalho de Melo wrote:
> On Fri, Mar 15, 2024 at 03:48:58PM +0100, Daniel Bristot de Oliveira wrote:
>> On 3/15/24 15:24, Daniel Bristot de Oliveira wrote:
>>> Use tools/build/ makefiles to build latency-collector, inheriting
>>> the benefits
On 3/15/24 15:24, Daniel Bristot de Oliveira wrote:
> Use tools/build/ makefiles to build latency-collector, inheriting
> the benefits of it. For example: Before this patch, a missing
> tracefs/traceevents headers will result in fail
Use tools/build/ makefiles to build rv, inheriting the benefits of
it. For example, having a proper way to handle dependencies.
Suggested-by: Linus Torvalds
Signed-off-by: Daniel Bristot de Oliveira
---
tools/verification/rv/.gitignore | 6 +
tools/verification/rv/Build | 1
tools/build.
But this would also require changes in the user side (the directory
structure changes, and probably the deps to build the package).
Inspired on perf and objtool.
Suggested-by: Linus Torvalds
Signed-off-by: Daniel Bristot de Oliveira
---
tools/tracing/rtla/.gitignore | 7
e.. Stop.
%< ---
This type of output is common across other tools in tools/ like perf
and objtool.
Suggested-by: Linus Torvalds
Signed-off-by: Daniel Bristot de Oliveira
---
tools/tracing/latency/.gitignore | 5 +-
tools/tracing/latency/Build | 1 +
tools/tra
l.com/
Changes from V1:
- Link: https://lore.kernel.org/lkml/cover.1709914259.git.bris...@kernel.org/
- Proper handle O= and OUTPUT= flags fixing "make tools/tracing"
- Cleanups
Daniel Bristot de Oliveira (3):
tools/tracing: Use tools/build makefiles on latency-collector
tools/
tools/build.
But this would also require changes in the user side (the directory
structure changes, and probably the deps to build the package).
Inspired on perf and objtool.
Suggested-by: Linus Torvalds
Signed-off-by: Daniel Bristot de Oliveira
---
tools/tracing/rtla/.gitignore | 4
Use tools/build/ makefiles to build rv, inheriting the benefits of
it. For example, having a proper way to handle dependencies.
Suggested-by: Linus Torvalds
Signed-off-by: Daniel Bristot de Oliveira
---
tools/verification/rv/.gitignore | 2 +
tools/verification/rv/Build | 1
Use tools/build/ makefiles to build latency-collector, inheriting
the benefits of it. For example, having a proper way to
handle dependencies.
Inspired on perf and objtool.
Suggested-by: Linus Torvalds
Signed-off-by: Daniel Bristot de Oliveira
---
tools/tracing/latency/.gitignore | 1
cgq-e...@mail.gmail.com/
Daniel Bristot de Oliveira (3):
tools/tracing: Use tools/build makefiles on latency-collector
tools/verification: Use tools/build makefiles on rv
tools/rtla: Use tools/build makefiles to build rtla
tools/tracing/latency/.gitignore | 1 +
tools/tracing/latency/
/linux.git
trace-tools-fixes-v6.8-rc4
Tag SHA1: 63f0522db203c7d138595e760b9a237bc02990fa
Head SHA1: b5f319360371087d52070d8f3fc7789e80ce69a6
Daniel Bristot de Oliveira (6):
tools/rtla: Fix Makefile compiler options for clang
tools/rtla: Fix uninitialized bucket/data->bucket_size warn
On 2/7/24 07:51, limingming3 wrote:
> Since the sched_priority for SCHED_OTHER is always 0, it makes no
> sence to set it.
> Setting nice for SCHED_OTHER seems more meaningful.
Thanks!
This is actually a fix, I meant to set nice since the beginning.
-- Daniel
On 2/6/24 16:48, Nathan Chancellor wrote:
> On Tue, Feb 06, 2024 at 12:05:29PM +0100, Daniel Bristot de Oliveira wrote:
>> The following errors are showing up when compiling rtla with clang:
>>
>> $ make HOSTCC=clang CC=clang LLVM_IAS=1
>> [...]
>>
>> cl
ed.
Which is correct. Setting curr_reactor to NULL avoids the problem.
Cc: sta...@vger.kernel.org
Fixes: 6d60f89691fc ("tools/rv: Add in-kernel monitor interface")
Signed-off-by: Daniel Bristot de Oliveira
---
tools/verification/rv/src/in_kernel.c | 2 +-
1 file changed, 1 insertion(+), 1 de
o=auto
Cc: sta...@vger.kernel.org
Fixes: 4bc4b131d44c ("rv: Add rv tool")
Suggested-by: Donald Zickus
Signed-off-by: Daniel Bristot de Oliveira
---
tools/verification/rv/Makefile | 7 ++-
1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/tools/verification/rv/Makefile b
Which is correct, so remove the unused function.
Cc: sta...@vger.kernel.org
Fixes: b1696371d865 ("rtla: Helper functions for rtla")
Signed-off-by: Daniel Bristot de Oliveira
---
tools/tracing/rtla/src/utils.c | 6 --
1 file changed, 6 deletions(-)
diff --git a/tools/tracing/rtla/sr
rnel.org
Fixes: a957cbc02531 ("rtla: Add -C cgroup support")
Signed-off-by: Daniel Bristot de Oliveira
---
tools/tracing/rtla/src/utils.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tools/tracing/rtla/src/utils.c b/tools/tracing/rtla/src/utils.c
index c769d7b3842c
^
|= 0
1 warning generated.
This is a legit warning, but data->bucket_size is always > 0 (see
timerlat_hist_parse_args()), so the if is not necessary.
Remove the unneeded if (data->bucket_size) to avoid the warning.
Cc: sta...@vger.kernel.org
Fixes: 1eeb6328e8
10: rtla] Error 1
Solve these issues by:
- removing -ffat-lto-objects and -Wno-maybe-uninitialized if using clang
- informing the linker about -flto=auto
Cc: sta...@vger.kernel.org
Fixes: 1a7b22ab15eb ("tools/rtla: Build with EXTRA_{C,LD}FLAGS")
Suggested-by: Donald Zickus
Signed-off-
. These problems are also fixed.
Daniel Bristot de Oliveira (6):
tools/rtla: Fix Makefile compiler options for clang
tools/rtla: Fix uninitialized bucket/data->bucket_size warning
tools/rtla: Fix clang warning about mount_point var size
tools/rtla: Remove unused sched_getattr() funct
On 2/1/24 16:44, Greg KH wrote:
> On Thu, Feb 01, 2024 at 04:13:39PM +0100, Daniel Bristot de Oliveira wrote:
>> Currently, the timerlat's hrtimer is initialized at the first read of
>> timerlat_fd, and destroyed at close(). It works, but it causes an error
>> if the use
On 2/1/24 16:25, Steven Rostedt wrote:
> On Thu, 1 Feb 2024 16:13:39 +0100
> Daniel Bristot de Oliveira wrote:
>
>> Currently, the timerlat's hrtimer is initialized at the first read of
>> timerlat_fd, and destroyed at close(). It works, but it causes an error
>>
anges.
Fixes: e88ed227f639 ("tracing/timerlat: Add user-space interface")
Signed-off-by: Daniel Bristot de Oliveira
---
kernel/trace/trace_osnoise.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/kernel/trace/trace_osnoise.c b/kernel/trace/trace_osnoise.c
ind
Steven,
Tracing tools changes for 6.7:
RTLA:
- On rtla/utils.c, initialize the 'found' variable to avoid garbage
when a mount point is not found.
Verification:
- Remove duplicated imports on dot2k python script
Please pull the latest tracing-tools-v6.7 tree, which can be found at:
>> In any case, as you've pointed out, duplicates can arise from names in code
>> that is not intended to be a module.
>> Therefore, relying solely on the module name would not fully address the
>> problem you initially aimed to solve.
>
> From my POV:
>
> The source path and the line number is
On 10/9/23 17:37, Jinyu Tang wrote:
> $ cyclictest --mlockall --smp --priority=99 &
rtla timerlat -a
will give you an structured analysis of your latency...
https://bristot.me/linux-scheduling-latency-debug-and-analysis/
-- Daniel
On 10/4/23 03:03, Steven Rostedt wrote:
> On Fri, 29 Sep 2023 17:02:46 +0200
> Daniel Bristot de Oliveira wrote:
>
>> The osnoise/per_cpu/CPU$/timerlat_fd is create for each possible
>> CPU, but it might create confusion if the CPU is not online.
>>
>> Create th
: 81ec384b80ffbda752c230778d39ea620c7e3bcf
Daniel Bristot de Oliveira (4):
rtla/timerlat_aa: Zero thread sum after every sample analysis
rtla/timerlat_aa: Fix negative IRQ delay
rtla/timerlat_aa: Fix previous IRQ delay for IRQs that happens after
thread sample
rtla/timerlat: Do not stop
rface")
Signed-off-by: Daniel Bristot de Oliveira
---
Changes from V2:
- Better split the code into the generic (per_cpu/cpu$)
and timerlat (/timerlat_fd) specific function (Daniel)
- Fixed a cpus_read_lock/unlock() usage (kbuild test)
Link:
https://lore.kerne
rface")
Signed-off-by: Daniel Bristot de Oliveira
---
Changes from V1:
- Fix compilation issue when !HOTPLUG
- Fix init interface | hotplug race
Link:
https://lore.kernel.org/lkml/b619d9fd08a3bb47018cf40afa95783844a3c1fd.1694789910.git.bris...@kernel.org/
kernel/trace/trace
drop us a note.
> And when submitting patch, we suggest to use '--base' as documented in
> https://git-scm.com/docs/git-format-patch#_base_tree_information]
>
> url:
> https://github.com/intel-lab-lkp/linux/commits/Daniel-Bristot-de-Oliveira/tracing-timerlat-Hotplug
rface")
Signed-off-by: Daniel Bristot de Oliveira
---
kernel/trace/trace_osnoise.c | 101 ++-
1 file changed, 77 insertions(+), 24 deletions(-)
diff --git a/kernel/trace/trace_osnoise.c b/kernel/trace/trace_osnoise.c
index bd0d01d00fb9..1af01eec3e36 100644
--
running user-space
thread is killed. However, this is too restrictive.
So, reduce the error to a debug message, and rtla timerlat run as
long as there is at least one user-space thread alive.
Fixes: cdca4f4e5e8e ("rtla/timerlat_top: Add timerlat user-space support")
Signed-off-by: Daniel
On 9/6/23 17:57, Alessandro Carminati (Red Hat) wrote:
> The presence of duplicate import lines appears to be a typo.
> Removing them.
>
> Fixes: 24bce201d798 ("tools/rv: Add dot2k")
> Signed-off-by: Alessandro Carminati (Red Hat)
Queued, thanks!
https://git.kernel.org/pub/scm/linux/kernel/git/
On 4/16/21 6:57 AM, chensong wrote:
>
>
> On 2021/4/13 下午4:39, Thomas Gleixner wrote:
>> On Tue, Apr 13 2021 at 14:19, Song Chen wrote:
>>> In general, irq handler thread will be assigned a default priority which
>>> is MAX_RT_PRIO/2, as a result, no one can preempt others.
>>>
>>> Here is the ca
On 4/15/21 3:49 PM, Steven Rostedt wrote:
> OK, for osnoise, I can see how it is useful. But as you said above, for
> hwlat tracer, it's not as useful.
I agree, it is not as useful.
-- Daniel
On 4/14/21 7:14 PM, Steven Rostedt wrote:
> On Thu, 8 Apr 2021 16:13:23 +0200
> Daniel Bristot de Oliveira wrote:
>
>> In the context of high-performance computing (HPC), the Operating System
>> Noise (osnoise) refers to the interference experienced by an application
>&g
On 4/14/21 4:41 PM, Steven Rostedt wrote:
> On Thu, 8 Apr 2021 16:13:21 +0200
> Daniel Bristot de Oliveira wrote:
>
>> Implements the per-cpu mode in which a sampling thread is created for
>> each cpu in the "cpus" (and tracing_mask).
>>
>> The per
On 4/14/21 4:30 PM, Steven Rostedt wrote:
> On Thu, 8 Apr 2021 16:13:20 +0200
> Daniel Bristot de Oliveira wrote:
>
>> +/**
>> + * hwlat_mode_write - Write function for "mode" entry
>> + * @filp: The active open file structure
>> + * @ubuf: The u
On 4/14/21 4:10 PM, Steven Rostedt wrote:
> On Thu, 8 Apr 2021 16:13:19 +0200
> Daniel Bristot de Oliveira wrote:
>
>> Provides a "cpus" interface to the hardware latency detector. By
>> default, it lists all CPUs, allowing hwlatd threads to run on any online
On 4/8/21 5:58 PM, Jonathan Corbet wrote:
> Daniel Bristot de Oliveira writes:
>
> A quick nit:
>
>> Documentation/trace/osnoise_tracer.rst | 149 ++
>> include/linux/ftrace_irq.h | 16 +
>> include/trace/events/osnoise.h | 1
This justifies the dual approach: measuring
thread and tracing.
Cc: Jonathan Corbet
Cc: Steven Rostedt
Cc: Ingo Molnar
Cc: Peter Zijlstra
Cc: Thomas Gleixner
Cc: Alexandre Chartre
Cc: Clark Willaims
Cc: John Kacur
Cc: Juri Lelli
Cc: linux-...@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: Steven Rostedt
Cc: Ingo Molnar
Cc: Peter Zijlstra
Cc: Thomas Gleixner
Cc: Alexandre Chartre
Cc: Clark Willaims
Cc: John Kacur
Cc: Juri Lelli
Cc: linux-...@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Steven Rostedt
Signed-off-by: Daniel Bristot de Oli
Cc: Peter Zijlstra
Cc: Thomas Gleixner
Cc: Alexandre Chartre
Cc: Clark Willaims
Cc: John Kacur
Cc: Juri Lelli
Cc: linux-...@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Daniel Bristot de Oliveira
---
Documentation/trace/hwlat_detector.rst | 6 +-
kernel/trace/tra
eixner
Cc: Alexandre Chartre
Cc: Clark Willaims
Cc: John Kacur
Cc: Juri Lelli
Cc: linux-...@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Daniel Bristot de Oliveira
---
Documentation/trace/hwlat_detector.rst | 21 +++-
kernel/trace/trace_hwlat.c | 157 +++
c: John Kacur
Cc: Juri Lelli
Cc: linux-...@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Daniel Bristot de Oliveira
---
Documentation/trace/hwlat_detector.rst | 14 +--
kernel/trace/trace_hwlat.c | 125 -
2 files changed, 131 insertions(+), 8 deleti
ently.
Daniel Bristot de Oliveira (4):
tracing/hwlat: Add a cpus file specific for hwlat_detector
tracing/hwlat: Implement the mode config option
tracing/hwlat: Implement the per-cpu mode
tracing: Add the osnoise tracer
Steven Rostedt (1):
tracing: Add __print_ns_to_secs(
, a slow frequency switching system with cpufreq gov schedutil has
> a DL task (sugov) per frequency domain running which participates in DL
> bandwidth management.
>
> Reviewed-by: Quentin Perret
> Signed-off-by: Dietmar Eggemann
Reviewed-by: Daniel Bristot de Oliveira
Thanks!
-- Daniel
Hi Waiman,
Are you aware of this issue:
- %< -
[ 88.307857] BUG: sleeping function called from invalid context at
kernel/stop_machine.c:135
[ 88.308796] in_atomic(): 0, irqs_disabled(): 0, non_block: 0, pid: 801,
name: sh
[ 88.309785] 6 locks held by sh/801:
[ 88.310265] #0: fff
On 1/14/21 4:51 PM, Dietmar Eggemann wrote:
> On 12/01/2021 16:53, Daniel Bristot de Oliveira wrote:
>> The current SCHED_DEADLINE design supports only global scheduler,
>> or variants of it, i.e., clustered and partitioned, via cpuset config.
>> To enable the partitio
On 1/15/21 3:36 PM, Dietmar Eggemann wrote:
> On 12/01/2021 16:53, Daniel Bristot de Oliveira wrote:
>
> [...]
>
>> - %< -
>> #!/bin/bash
>> # Enter on the cgroup directory
>> cd /sys/fs/cgroup/
>>
>> # Chec
On 1/14/21 1:12 PM, Dietmar Eggemann wrote:
> On 12/01/2021 16:53, Daniel Bristot de Oliveira wrote:
>> cgroups v2 allows the cpuset controller to be enabled/disabled on
>> demand. On Fedora 32, cpuset is disabled by default. To enable it,
>> a user needs to:
>&g
nd went to... sleep, not the ones
it will run in the next wakeup because of its affinity.
To avoid this problem, use the dl_task* helpers that return the task
cpu, root domain, and the "root" dl_bw, aware of the status of
task->cpu.
Reported-by: Marco Perronet
Signed-off-by: Dani
In preparation for blocking SCHED_DEADLINE tasks on non-exclusive cpuset
if bandwidth control is enabled.
No functional changes.
Signed-off-by: Daniel Bristot de Oliveira
Cc: Ingo Molnar
Cc: Peter Zijlstra
Cc: Juri Lelli
Cc: Vincent Guittot
Cc: Dietmar Eggemann
Cc: Steven Rostedt
Cc: Ben
nt placement/affinity of the task.
Note that these functions are only required on the code path that
can happen when the task is not queued.
Signed-off-by: Daniel Bristot de Oliveira
Cc: Ingo Molnar
Cc: Peter Zijlstra
Cc: Juri Lelli
Cc: Vincent Guittot
Cc: Dietmar Eggemann
Cc: Steven
ity did not change: 0-3 == 0-3
- >% -
Still, likewise for taskset, this restriction can be bypassed by
disabling the admission test, i.e.:
# sysctl -w kernel.sched_rt_runtime_us=-1
and work at their own risk.
Reported-by: Marco Perronet
Signed-off-by: Daniel Bristot de Oliveira
Cc: Ingo Mo
a non-root cpuset, hence its cpu mask will
be the same as the root one. So, the bandwidth was already accounted,
and the task can proceed.
Signed-off-by: Daniel Bristot de Oliveira
Cc: Ingo Molnar
Cc: Peter Zijlstra
Cc: Juri Lelli
Cc: Vincent Guittot
Cc: Dietmar Eggemann
Cc: Steven Roste
It is easier to track the restrictions imposed on SCHED_DEADLINE
tasks if we keep them all together in a single function.
No function changes.
Signed-off-by: Daniel Bristot de Oliveira
Cc: Ingo Molnar
Cc: Peter Zijlstra
Cc: Juri Lelli
Cc: Vincent Guittot
Cc: Dietmar Eggemann
Cc: Steven
issues
addressed in this patch series.
Each patch has a more in-depth explanation, including ways to reproduce
the problem.
Daniel Bristot de Oliveira (6):
sched/deadline: Consolidate the SCHED_DL task_can_attach() check on
its own function
sched/deadline: Inform dl_task_can_attach() if the
within the call
> chain should use blocking notifiers, so patching up all atomic_notifier's
> doesn't seem *too* crazy to me.
>
> Fixes: 70d932985757 ("notifier: Fix broken error handling pattern")
> Signed-off-by: Valentin Schneider
Reviewed-by: Daniel Bristot de Oliveira
Thanks!
-- Daniel
rent lock chain (i.e., nested
> priority chains involving entities of non-DEADLINE classes). In this
> case, top waiter static DEADLINE parameters could be null (initialized
> to 0 at fork()) and replenish_dl_entity() would hit a BUG().
>
> Fix this by keeping track of the original donor and using its parameters
> when a task is boosted.
>
> Reported-by: Glenn Elliott
> Reported-by: Daniel Bristot de Oliveira
> Signed-off-by: Juri Lelli
Tested-by: Daniel Bristot de Oliveira
Thanks!
-- Daniel
; Esp. that latter resulted in significant changes to patch #10. Huge thanks to
> Valentin.
While I will still work on this, testing more and trying to
analyze the effects from the (rt) scheduling perspective, I
do not see any other issues (kudos to Valentin, impressive
review).
Feel free to add:
Review
could be null (initialized
>>> to 0 at fork()) and replenish_dl_entity() would hit a BUG().
>>>
>>
>> IIUC, rt_mutex_get_top_task(N1) == N2, and N2->dl->deadline = 0, which
>> makes enqueue_task_dl() unhappy. And that happens because, unlike p->prio,
>&
l/sched/topology.c | 1 +
>> 3 files changed, 63 insertions(+), 33 deletions(-)
>
> These look now good to me. Thanks a lot!
>
> Acked-by: Juri Lelli
I just found a minor thing in a comment:
"It's *monotonously* increasing."
I tried to find the usage of "monotonously increasing" for monotonic functions,
and I did not find it. The (as least most used) term is "monotonically," so the
sentence would be like "It is a monotonically increasing value." But it is just
a minor thing. Anyways:
Reviewed-by: Daniel Bristot de Oliveira
Thanks!
-- Daniel
The following commit has been merged into the sched/core branch of tip:
Commit-ID: feff2e65efd8d84cf831668e182b2ce73c604bbb
Gitweb:
https://git.kernel.org/tip/feff2e65efd8d84cf831668e182b2ce73c604bbb
Author:Daniel Bristot de Oliveira
AuthorDate:Wed, 16 Sep 2020 09:06:39
On 9/18/20 8:00 AM, Juri Lelli wrote:
> Hi Daniel,
>
> On 16/09/20 09:06, Daniel Bristot de Oliveira wrote:
>> stress-ng has a test (stress-ng --cyclic) that creates a set of threads
>> under SCHED_DEADLINE with the following parameters:
>>
>> dl_runtime =
The following commit has been merged into the sched/core branch of tip:
Commit-ID: 2586af1ac187f6b3a50930a4e33497074e81762d
Gitweb:
https://git.kernel.org/tip/2586af1ac187f6b3a50930a4e33497074e81762d
Author:Daniel Bristot de Oliveira
AuthorDate:Mon, 21 Sep 2020 16:39:49
:-)) my bad)
Thanks!
On 9/18/20 5:17 PM, Daniel Bristot de Oliveira wrote:
> The Real-Time Mini-Summit is organized by the Linux Foundation Real-Time Linux
> (RTL) collaborative project. The event is intended to gather developers and
> users of Linux as a Real-Time Operating System. The main
On 9/24/20 10:27 AM, pet...@infradead.org wrote:
> So my current todo list is:
>
> - Change RT PULL
> - Change DL PULL
> - Add migrate_disable() tracer; exactly like preempt/irqoff, except
>measuring task-runtime instead of cpu-time.
> - Add a mode that measures actual interference.
> - A
On 9/23/20 7:08 PM, pet...@infradead.org wrote:
> On Wed, Sep 23, 2020 at 10:31:10AM +0200, Thomas Gleixner wrote:
>>In practice migrate disable could be taken into account on placement
>>decisions, but yes we don't have anything like that at the moment.
> I think at the very least we shoul
On 9/23/20 10:31 AM, Thomas Gleixner wrote:
> On Mon, Sep 21 2020 at 22:42, Daniel Bristot de Oliveira wrote:
>> On 9/21/20 9:16 PM, Thomas Gleixner wrote:
>>> On Mon, Sep 21 2020 at 18:36, Peter Zijlstra wrote:
>>> But seriously, I completely understand your
On 9/22/20 7:14 PM, Wei Wang wrote:
> On Mon, Sep 21, 2020 at 7:40 AM Daniel Bristot de Oliveira
> wrote:
>>
>> The RT_RUNTIME_SHARE sched feature enables the sharing of rt_runtime
>> between CPUs, allowing a CPU to run a real-time task up to 100% of the
>> time wh
On 9/21/20 9:16 PM, Thomas Gleixner wrote:
> On Mon, Sep 21 2020 at 18:36, Peter Zijlstra wrote:
>> Add the base migrate_disable() support (under protest).
>
> :)
>
>> +/*
>> + * Migrate-Disable and why it is (strongly) undesired.
>> + *
>> + * The premise of the Real-Time schedulers we have on L
onsole
in a raw_spin_lock() protected section.
Signed-off-by: Daniel Bristot de Oliveira
Suggested-by: Thomas Gleixner
Cc: Thomas Gleixner
Cc: Ingo Molnar
Cc: Borislav Petkov
Cc: "H. Peter Anvin"
Cc: Marc Zyngier
Cc: Peter Xu
Cc: Andy Lutomirski
Cc: Bjorn Helgaas
Cc: x...@kernel
Oliveira
Cc: Ingo Molnar
Cc: Peter Zijlstra
Cc: Juri Lelli
Cc: Vincent Guittot
Cc: Dietmar Eggemann
Cc: Steven Rostedt
Cc: Ben Segall
Cc: Mel Gorman
Cc: Daniel Bristot de Oliveira
Cc: Thomas Gleixner
Cc: linux-kernel@vger.kernel.org
---
kernel/sched/features.h | 2 +-
1 file changed, 1
Questions on submitting a proposal?
Email Daniel Bristot de Oliveira
I faced a similar issue, but involving DL tasks (not !DL):
https://lore.kernel.org/lkml/5076e003450835ec74e6fa5917d02c4fa41687e6.1600170294.git.bris...@redhat.com/
While debugging that problem, I reviewed and tested this patch,
and we need it. So:
Reviewed-by: Daniel Bristot de Oliveira
Thanks!
-- Daniel
> Thanks!
>
ot; on
replenish_dl_entity() for more information.
Signed-off-by: Daniel Bristot de Oliveira
Reported-by: Mark Simmons
Reviewed-by: Juri Lelli
Tested-by: Mark Simmons
Cc: Ingo Molnar
Cc: Peter Zijlstra
Cc: Juri Lelli
Cc: Vincent Guittot
Cc: Dietmar Eggemann
Cc: Steven Rostedt
Cc: Ben
On 9/4/20 2:36 PM, Ingo Molnar wrote:
> Welcome Daniel! :-)
>
> I've applied the patch to tip:sched/core.
Thanks Ingo! :D
-- Daniel
1 - 100 of 463 matches
Mail list logo