The stallwarn document incorrectly mentions 'fps=' instead of 'fqs='.
Correct that.
Signed-off-by: Joel Fernandes (Google)
---
Documentation/RCU/stallwarn.txt | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Documentation/RCU/stallwarn.txt b/Documentation/RCU/stallwarn.txt
As per this thread [1], it seems this smp_mb isn't needed anymore:
"So the smp_mb() that I was trying to add doesn't need to be there."
So let us remove this part from the memory ordering documentation.
[1] https://lkml.org/lkml/2017/10/6/707
Signed-off-by: Joel Fernand
As per this thread [1], it seems this smp_mb isn't needed anymore:
"So the smp_mb() that I was trying to add doesn't need to be there."
So let us remove this part from the memory ordering documentation.
[1] https://lkml.org/lkml/2017/10/6/707
Signed-off-by: Joel Fernand
-by: Joel Fernandes (Google)
---
Documentation/RCU/listRCU.txt | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/Documentation/RCU/listRCU.txt b/Documentation/RCU/listRCU.txt
index adb5a3782846..09e9a4fc723e 100644
--- a/Documentation/RCU/listRCU.txt
+++ b/Documentation/RCU
-by: Joel Fernandes (Google)
---
Documentation/RCU/listRCU.txt | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/Documentation/RCU/listRCU.txt b/Documentation/RCU/listRCU.txt
index adb5a3782846..09e9a4fc723e 100644
--- a/Documentation/RCU/listRCU.txt
+++ b/Documentation/RCU
Since we store the type of the prz when we initialize it, we no longer
need to pass it again in ramoops_get_next_prz since we can just use that
to setup the pstore record. So lets remove it from the argument list.
Signed-off-by: Joel Fernandes (Google)
---
fs/pstore/ram.c | 20
Both the id and type fields of a pstore_record are set by
ramoops_get_next_prz. So we can just pass a pointer to the pstore_record
instead of passing individual elements. This results in cleaner more
readable code and fewer lines.
Signed-off-by: Joel Fernandes (Google)
---
fs/pstore/ram.c | 18
>From the code flow, the 'max' checks are already being done on the prz
passed to ramoops_get_next_prz. Lets remove it to simplify this function
and reduce its arguments.
Signed-off-by: Joel Fernandes (Google)
---
fs/pstore/ram.c | 14 ++
1 file changed, 6 insertions(+), 8 deleti
Since we store the type of the prz when we initialize it, we no longer
need to pass it again in ramoops_get_next_prz since we can just use that
to setup the pstore record. So lets remove it from the argument list.
Signed-off-by: Joel Fernandes (Google)
---
fs/pstore/ram.c | 20
Both the id and type fields of a pstore_record are set by
ramoops_get_next_prz. So we can just pass a pointer to the pstore_record
instead of passing individual elements. This results in cleaner more
readable code and fewer lines.
Signed-off-by: Joel Fernandes (Google)
---
fs/pstore/ram.c | 18
>From the code flow, the 'max' checks are already being done on the prz
passed to ramoops_get_next_prz. Lets remove it to simplify this function
and reduce its arguments.
Signed-off-by: Joel Fernandes (Google)
---
fs/pstore/ram.c | 14 ++
1 file changed, 6 insertions(+), 8 deleti
pstore currently calls persistent_ram_save_old even if a buffer is
empty. While this appears to work, it is simply not the right thing to
do and could lead to bugs so lets avoid that. It also prevent misleading
prints in the logs which claim the buffer is valid.
Signed-off-by: Joel Fernandes
this boot and the other parts will be from
previous boots. So this revert fixes all of this by calling
persistent_ram_zap always.
Signed-off-by: Joel Fernandes (Google)
---
fs/pstore/ram_core.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/fs/pstore/ram_core.c b/fs/pstore/ram_core.c
index
pstore currently calls persistent_ram_save_old even if a buffer is
empty. While this appears to work, it is simply not the right thing to
do and could lead to bugs so lets avoid that. It also prevent misleading
prints in the logs which claim the buffer is valid.
Signed-off-by: Joel Fernandes
this boot and the other parts will be from
previous boots. So this revert fixes all of this by calling
persistent_ram_zap always.
Signed-off-by: Joel Fernandes (Google)
---
fs/pstore/ram_core.c | 1 -
1 file changed, 1 deletion(-)
diff --git a/fs/pstore/ram_core.c b/fs/pstore/ram_core.c
index
In later patches we will need to map types to names, so create a table
for that which can also be used and reused in different parts of old and
new code. Also use it to save the type in the PRZ which will be useful
in later patches.
Signed-off-by: Joel Fernandes (Google)
---
fs/pstore/inode.c
In later patches we will need to map types to names, so create a table
for that which can also be used and reused in different parts of old and
new code. Also use it to save the type in the PRZ which will be useful
in later patches.
Signed-off-by: Joel Fernandes (Google)
---
fs/pstore/inode.c
write passed as expected
future-write seal now active
write failed as expected due to future-write seal
map 2 prot-write failed as expected due to seal
: Permission denied
map 3 prot-read passed as expected
Cc: jr...@google.com
Cc: john.stu...@linaro.org
Cc: tk...@google.com
Cc: gre...@linuxf
write passed as expected
future-write seal now active
write failed as expected due to future-write seal
map 2 prot-write failed as expected due to seal
: Permission denied
map 3 prot-read passed as expected
Cc: jr...@google.com
Cc: john.stu...@linaro.org
Cc: tk...@google.com
Cc: gre...@linuxf
Add tests to verify sealing memfds with the F_SEAL_FS_WRITE works as
expected.
Cc: dan...@google.com
Cc: minc...@kernel.org
Reviewed-by: John Stultz
Signed-off-by: Joel Fernandes (Google)
---
tools/testing/selftests/memfd/memfd_test.c | 74 ++
1 file changed, 74 insertions
Add tests to verify sealing memfds with the F_SEAL_FS_WRITE works as
expected.
Cc: dan...@google.com
Cc: minc...@kernel.org
Reviewed-by: John Stultz
Signed-off-by: Joel Fernandes (Google)
---
tools/testing/selftests/memfd/memfd_test.c | 74 ++
1 file changed, 74 insertions
From: Pierre Yves MORDRET
commit e57cb3b3f10d005410f09d4598cc6d62b833f2b0 upstream.
When in cyclic mode, the configuration is updated after having started the
DMA hardware (STM32_DMA_SCR_EN) leading to incomplete configuration of
SMxAR registers.
Signed-off-by: Pierre-Yves MORDRET
From: Pierre Yves MORDRET
commit e57cb3b3f10d005410f09d4598cc6d62b833f2b0 upstream.
When in cyclic mode, the configuration is updated after having started the
DMA hardware (STM32_DMA_SCR_EN) leading to incomplete configuration of
SMxAR registers.
Signed-off-by: Pierre-Yves MORDRET
The code listing under this section has a quick quiz that says line 19
uses rcu_access_pointer, but the code listing itself does not. Fix this.
Signed-off-by: Joel Fernandes (Google)
---
.../RCU/Design/Requirements/Requirements.html| 2 +-
kernel/sys.c
The code listing under this section has a quick quiz that says line 19
uses rcu_access_pointer, but the code listing itself does not. Fix this.
Signed-off-by: Joel Fernandes (Google)
---
.../RCU/Design/Requirements/Requirements.html| 2 +-
kernel/sys.c
f the memfd.
This is not something we do in Android so it does not affect us, however
I have mentioned this behavior of the seal in the manpage.
Cc: jr...@google.com
Cc: john.stu...@linaro.org
Cc: tk...@google.com
Cc: gre...@linuxfoundation.org
Signed-off-by: Joel Fernandes (Google)
---
v1->v
Add tests to verify sealing memfds with the F_SEAL_FS_WRITE works as
expected.
Cc: dan...@google.com
Cc: minc...@google.com
Signed-off-by: Joel Fernandes (Google)
---
tools/testing/selftests/memfd/memfd_test.c | 51 +-
1 file changed, 50 insertions(+), 1 deletion(-)
diff
f the memfd.
This is not something we do in Android so it does not affect us, however
I have mentioned this behavior of the seal in the manpage.
Cc: jr...@google.com
Cc: john.stu...@linaro.org
Cc: tk...@google.com
Cc: gre...@linuxfoundation.org
Signed-off-by: Joel Fernandes (Google)
---
v1->v
Add tests to verify sealing memfds with the F_SEAL_FS_WRITE works as
expected.
Cc: dan...@google.com
Cc: minc...@google.com
Signed-off-by: Joel Fernandes (Google)
---
tools/testing/selftests/memfd/memfd_test.c | 51 +-
1 file changed, 50 insertions(+), 1 deletion(-)
diff
and arm64.
Cc: minc...@google.com
Cc: hu...@google.com
Cc: lokeshgi...@google.com
Cc: kernel-t...@android.com
Signed-off-by: Joel Fernandes (Google)
---
mm/mremap.c | 62 +
1 file changed, 62 insertions(+)
diff --git a/mm/mremap.c b/mm/mremap.c
index
and arm64.
Cc: minc...@google.com
Cc: hu...@google.com
Cc: lokeshgi...@google.com
Cc: kernel-t...@android.com
Signed-off-by: Joel Fernandes (Google)
---
mm/mremap.c | 62 +
1 file changed, 62 insertions(+)
diff --git a/mm/mremap.c b/mm/mremap.c
index
From: Pierre Yves MORDRET
Having 0 in item counter register is valid and stands for a "No or Ended
transfer". Therefore valid transfer starts from @+0 to @+0xFFFE leading to
unaligned scatter gather at boundary. Thus it's safer to round down this
value on its FIFO size (16 Bytes).
From: Pierre Yves MORDRET
Having 0 in item counter register is valid and stands for a "No or Ended
transfer". Therefore valid transfer starts from @+0 to @+0xFFFE leading to
unaligned scatter gather at boundary. Thus it's safer to round down this
value on its FIFO size (16 Bytes).
From: Pierre Yves MORDRET
A single register of the controller holds the information for four dma
channels.
The functions stm32_dma_irq_status() don't mask the relevant bits after
the shift, thus adjacent channel's status is also reported in the returned
value.
Fixed by masking the value before
From: Pierre Yves MORDRET
A single register of the controller holds the information for four dma
channels.
The functions stm32_dma_irq_status() don't mask the relevant bits after
the shift, thus adjacent channel's status is also reported in the returned
value.
Fixed by masking the value before
From: Pierre Yves MORDRET
This patch improves memory burst capability using best burst size
according to transferred buffer size from/to memory.
>From now on, memory burst is not necessarily same as with peripheral
burst one and fifo threshold is directly managed by this driver in order
to fit
From: Pierre Yves MORDRET
This patch improves memory burst capability using best burst size
according to transferred buffer size from/to memory.
>From now on, memory burst is not necessarily same as with peripheral
burst one and fifo threshold is directly managed by this driver in order
to fit
From: Pierre Yves MORDRET
Fix typo in a comment and solved reported checkpatch warnings.
Signed-off-by: Pierre-Yves MORDRET
Signed-off-by: Vinod Koul
---
drivers/dma/stm32-dma.c | 11 ++-
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/drivers/dma/stm32-dma.c
From: Pierre Yves MORDRET
Update the way Transfer Complete and Half Transfer Complete status are
acknowledge. Even if HTI is not enabled its status is shown when reading
registers, driver has to clear it gently and not raise an error.
Signed-off-by: Pierre-Yves MORDRET
Signed-off-by: Vinod
From: Pierre Yves MORDRET
Fix typo in a comment and solved reported checkpatch warnings.
Signed-off-by: Pierre-Yves MORDRET
Signed-off-by: Vinod Koul
---
drivers/dma/stm32-dma.c | 11 ++-
1 file changed, 6 insertions(+), 5 deletions(-)
diff --git a/drivers/dma/stm32-dma.c
From: Pierre Yves MORDRET
Update the way Transfer Complete and Half Transfer Complete status are
acknowledge. Even if HTI is not enabled its status is shown when reading
registers, driver has to clear it gently and not raise an error.
Signed-off-by: Pierre-Yves MORDRET
Signed-off-by: Vinod
From: Pierre Yves MORDRET
When in cyclic mode, the configuration is updated after having started the
DMA hardware (STM32_DMA_SCR_EN) leading to incomplete configuration of
SMxAR registers.
Signed-off-by: Pierre-Yves MORDRET
Signed-off-by: Hugues Fruchet
Signed-off-by: Vinod Koul
---
Hi Greg,
While looking at android-4.14, I found a NULL pointer deref with
stm32-dma driver using Coccicheck errors. I found that upstream had a
bunch of patches on stm32-dma that have fixed this and other issues, I
applied these patches cleanly onto Android 4.14. I believe these should
goto
From: Pierre Yves MORDRET
>From now on, DMA bitfield is to manage DMA FIFO Threshold.
Signed-off-by: Pierre-Yves MORDRET
Signed-off-by: Vinod Koul
---
drivers/dma/stm32-dma.c | 19 ---
1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/drivers/dma/stm32-dma.c
From: Pierre Yves MORDRET
When in cyclic mode, the configuration is updated after having started the
DMA hardware (STM32_DMA_SCR_EN) leading to incomplete configuration of
SMxAR registers.
Signed-off-by: Pierre-Yves MORDRET
Signed-off-by: Hugues Fruchet
Signed-off-by: Vinod Koul
---
Hi Greg,
While looking at android-4.14, I found a NULL pointer deref with
stm32-dma driver using Coccicheck errors. I found that upstream had a
bunch of patches on stm32-dma that have fixed this and other issues, I
applied these patches cleanly onto Android 4.14. I believe these should
goto
From: Pierre Yves MORDRET
>From now on, DMA bitfield is to manage DMA FIFO Threshold.
Signed-off-by: Pierre-Yves MORDRET
Signed-off-by: Vinod Koul
---
drivers/dma/stm32-dma.c | 19 ---
1 file changed, 16 insertions(+), 3 deletions(-)
diff --git a/drivers/dma/stm32-dma.c
ret=3
map 0 passed
write passed
map 1 prot-write passed as expected
fs-write seal now active
write failed as expected due to fs-write seal
map 2 prot-write failed as expected due to seal
: Permission denied
map 3 prot-read passed as expected
Cc: jr...@google.com
Cc: john.stu...@linaro.org
Cc: t
ret=3
map 0 passed
write passed
map 1 prot-write passed as expected
fs-write seal now active
write failed as expected due to fs-write seal
map 2 prot-write failed as expected due to seal
: Permission denied
map 3 prot-read passed as expected
Cc: jr...@google.com
Cc: john.stu...@linaro.org
Cc: t
locking. So I would like to be added to the MAINTAINERS
file for android drivers for review and maintenance of ashmem and other
Android drivers.
Cc: tk...@google.com
Cc: gre...@linuxfoundation.org
Signed-off-by: Joel Fernandes (Google)
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git
locking. So I would like to be added to the MAINTAINERS
file for android drivers for review and maintenance of ashmem and other
Android drivers.
Cc: tk...@google.com
Cc: gre...@linuxfoundation.org
Signed-off-by: Joel Fernandes (Google)
---
MAINTAINERS | 1 +
1 file changed, 1 insertion(+)
diff --git
>
> 1 lock held by syz-executor900/4483:
> #0: 25208078 (ashmem_mutex){+.+.}, at:
> ashmem_shrink_scan+0xb4/0x630 drivers/staging/android/ashmem.c:448
Reported-by: syzbot
Cc: wi...@infradead.org
Cc: sta...@vger.kernel.org
Cc: pet...@infradead.org
Suggested-by: Neil Brown
Sign
>
> 1 lock held by syz-executor900/4483:
> #0: 25208078 (ashmem_mutex){+.+.}, at:
> ashmem_shrink_scan+0xb4/0x630 drivers/staging/android/ashmem.c:448
Reported-by: syzbot
Cc: wi...@infradead.org
Cc: sta...@vger.kernel.org
Cc: pet...@infradead.org
Suggested-by: Neil Brown
Sign
the
other benefits and clean ups of the patch being partially reverted.
Based on Steve's original Partial revert patch. I added directly calling
irqsoff tracer probes as well.
Fixes: c3bc8fd637a9 ("tracing: Centralize preemptirq tracepoints and unify
their usage")
Signed-off-by: Joel
the
other benefits and clean ups of the patch being partially reverted.
Based on Steve's original Partial revert patch. I added directly calling
irqsoff tracer probes as well.
Fixes: c3bc8fd637a9 ("tracing: Centralize preemptirq tracepoints and unify
their usage")
Signed-off-by: Joel
ate SRCU node for tracepoints called
from in_nmi(). This is needed to also make tracepoints work while CPU is
offline.
Fixes: c3bc8fd637a9 ("tracing: Centralize preemptirq tracepoints and
unify their usage")
Reported-by: Masami Hiramatsu
Signed-off-by: Joel
ate SRCU node for tracepoints called
from in_nmi(). This is needed to also make tracepoints work while CPU is
offline.
Fixes: c3bc8fd637a9 ("tracing: Centralize preemptirq tracepoints and
unify their usage")
Reported-by: Masami Hiramatsu
Signed-off-by: Joel
even after !cpu_online. I thought of just using SRCU for all tracepoints
however that may mean we can't use tracepoints from NMI..
Tries-to-Fix: c3bc8fd637a9 ("tracing: Centralize preemptirq tracepoints and
unify their usage")
Reported-by: Masami Hiramatsu
Signed-of
even after !cpu_online. I thought of just using SRCU for all tracepoints
however that may mean we can't use tracepoints from NMI..
Tries-to-Fix: c3bc8fd637a9 ("tracing: Centralize preemptirq tracepoints and
unify their usage")
Reported-by: Masami Hiramatsu
Signed-of
oints
and unify their usage")
Fixes: e6753f23d961 ("tracepoint: Make rcuidle tracepoint callers use SRCU")
Reported-by: Masami Hiramatsu
Signed-off-by: Joel Fernandes (Google)
---
kernel/trace/trace_irqsoff.c | 26 ++
1 file changed, 26 insertions(+)
diff
oints
and unify their usage")
Fixes: e6753f23d961 ("tracepoint: Make rcuidle tracepoint callers use SRCU")
Reported-by: Masami Hiramatsu
Signed-off-by: Joel Fernandes (Google)
---
kernel/trace/trace_irqsoff.c | 26 ++
1 file changed, 26 insertions(+)
diff
] ? start_kernel+0x49d/0x4bd
[ 282.093987] ? secondary_startup_64+0xa5/0xb0
Reported-by: Masami Hiramatsu
Fixes: e6753f23d961 ("tracepoint: Make rcuidle tracepoint callers use SRCU")
Signed-off-by: Joel Fernandes (Google)
---
kernel/trace/trace_events.c | 4 ++--
1 file changed, 2 insert
] ? start_kernel+0x49d/0x4bd
[ 282.093987] ? secondary_startup_64+0xa5/0xb0
Reported-by: Masami Hiramatsu
Fixes: e6753f23d961 ("tracepoint: Make rcuidle tracepoint callers use SRCU")
Signed-off-by: Joel Fernandes (Google)
---
kernel/trace/trace_events.c | 4 ++--
1 file changed, 2 insert
Commit-ID: fc91a3c4c27acdca0bc13af6fbb68c35cfd519f2
Gitweb: https://git.kernel.org/tip/fc91a3c4c27acdca0bc13af6fbb68c35cfd519f2
Author: Joel Fernandes (Google)
AuthorDate: Mon, 23 Jul 2018 14:25:31 -0700
Committer: Thomas Gleixner
CommitDate: Mon, 30 Jul 2018 21:36:37 +0200
Commit-ID: fc91a3c4c27acdca0bc13af6fbb68c35cfd519f2
Gitweb: https://git.kernel.org/tip/fc91a3c4c27acdca0bc13af6fbb68c35cfd519f2
Author: Joel Fernandes (Google)
AuthorDate: Mon, 23 Jul 2018 14:25:31 -0700
Committer: Thomas Gleixner
CommitDate: Mon, 30 Jul 2018 21:36:37 +0200
t...@linaro.org>
Cc: Patrick Bellasi <patrick.bell...@arm.com>
Cc: Rohit Jain <rohit.k.j...@oracle.com>
Cc: kernel-t...@android.com
Signed-off-by: Joel Fernandes (Google) <j...@joelfernandes.org>
---
v1->v2: Resending without "XXX" in subject since otherwise LKML thinks
its
fix the comment.
Cc: Dietmar Eggemann
Cc: Morten Ramussen
Cc: Ingo Molnar
Cc: Peter Zijlstra
Cc: Juri Lelli
Cc: Vincent Guittot
Cc: Patrick Bellasi
Cc: Rohit Jain
Cc: kernel-t...@android.com
Signed-off-by: Joel Fernandes (Google)
---
v1->v2: Resending without "XXX" in subject
santannapisa.it>
CC: Todd Kjos <tk...@google.com>
CC: clau...@evidence.eu.com
CC: kernel-t...@android.com
CC: linux...@vger.kernel.org
Signed-off-by: Joel Fernandes (Google) <j...@joelfernandes.org>
---
I split this into separate patch, because this race can also happen in
mainline.
Rafael J. Wysocki
CC: Peter Zijlstra
CC: Ingo Molnar
CC: Patrick Bellasi
CC: Juri Lelli
Cc: Luca Abeni
CC: Todd Kjos
CC: clau...@evidence.eu.com
CC: kernel-t...@android.com
CC: linux...@vger.kernel.org
Signed-off-by: Joel Fernandes (Google)
---
I split this into separate patch, because this
From: "Joel Fernandes (Google)" <j...@joelfernandes.org>
Currently there is a chance of a schedutil cpufreq update request to be
dropped if there is a pending update request. This pending request can
be delayed if there is a scheduling delay of the irq_work and the wake
up
From: "Joel Fernandes (Google)"
Currently there is a chance of a schedutil cpufreq update request to be
dropped if there is a pending update request. This pending request can
be delayed if there is a scheduling delay of the irq_work and the wake
up of the schedutil governor kthread.
sami Hiramatsu <mhira...@kernel.org>
Cc: Todd Kjos <tk...@google.com>
Cc: Erick Reyes <erickre...@google.com>
Cc: Julia Cartwright <ju...@ni.com>
Cc: kernel-t...@android.com
Signed-off-by: Joel Fernandes (Google) <j...@joelfernandes.org>
---
tools/testing/selfte
Feng
Cc: Paul McKenney
Cc: Masami Hiramatsu
Cc: Todd Kjos
Cc: Erick Reyes
Cc: Julia Cartwright
Cc: kernel-t...@android.com
Signed-off-by: Joel Fernandes (Google)
---
tools/testing/selftests/ftrace/config | 3 +
.../test.d/preemptirq/irqsoff_tracer.tc | 74 +++
2
dhat.com>
Cc: Luca Abeni <luca.ab...@santannapisa.it>
CC: Joel Fernandes <joe...@google.com>
CC: linux...@vger.kernel.org
Signed-off-by: Joel Fernandes (Google) <j...@joelfernandes.org>
---
Claudio,
Could you also test this patch for your usecase?
kernel/sched/cpufreq_sch
://patchwork.kernel.org/patch/10384261/
CC: Viresh Kumar
CC: Rafael J. Wysocki
CC: Peter Zijlstra
CC: Ingo Molnar
CC: Patrick Bellasi
CC: Juri Lelli
Cc: Luca Abeni
CC: Joel Fernandes
CC: linux...@vger.kernel.org
Signed-off-by: Joel Fernandes (Google)
---
Claudio,
Could you also test this patch for your usecase
I'm able to reproduce a lockdep splat with config options:
CONFIG_PROVE_LOCKING=y,
CONFIG_DEBUG_LOCK_ALLOC=y and
CONFIG_PREEMPTIRQ_EVENTS=y
$ echo 1 > /d/tracing/events/preemptirq/preempt_enable/enable
---
kernel/softirq.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git
adead.org>
Cc: Masami Hiramatsu <mhira...@kernel.org>
Cc: Fenguang Wu <fengguang...@intel.com>
Cc: Baohong Liu <baohong@intel.com>
Cc: Vedang Patel <vedang.pa...@intel.com>
Cc: kernel-t...@android.com
Reviewed-by: Steven Rostedt (VMware) <rost...@goodmis.org&g
: Baohong Liu
Cc: Vedang Patel
Cc: kernel-t...@android.com
Reviewed-by: Steven Rostedt (VMware)
Signed-off-by: Paul McKenney
Signed-off-by: Joel Fernandes (Google)
---
include/linux/srcu.h | 17 +
1 file changed, 17 insertions(+)
diff --git a/include/linux/srcu.h b/include
I'm able to reproduce a lockdep splat with config options:
CONFIG_PROVE_LOCKING=y,
CONFIG_DEBUG_LOCK_ALLOC=y and
CONFIG_PREEMPTIRQ_EVENTS=y
$ echo 1 > /d/tracing/events/preemptirq/preempt_enable/enable
---
kernel/softirq.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git
.com>
Cc: Randy Dunlap <rdun...@infradead.org>
Cc: Masami Hiramatsu <mhira...@kernel.org>
Cc: Fenguang Wu <fengguang...@intel.com>
Cc: Baohong Liu <baohong@intel.com>
Cc: Vedang Patel <vedang.pa...@intel.com>
Cc: kernel-t...@android.com
Signed-off-b
: Frederic Weisbecker
Cc: Randy Dunlap
Cc: Masami Hiramatsu
Cc: Fenguang Wu
Cc: Baohong Liu
Cc: Vedang Patel
Cc: kernel-t...@android.com
Signed-off-by: Joel Fernandes (Google)
---
kernel/trace/trace_irqsoff.c | 22 +++---
1 file changed, 19 insertions(+), 3 deletions(-)
diff --git
Commit be4b8beed87d ("rcu: Move RCU's grace-period-change code to ->gp_seq")
removed the cpuend grace period trace point. This patch adds it back.
Signed-off-by: Joel Fernandes (Google) <j...@joelfernandes.org>
---
kernel/rcu/tree.c | 6 --
1 file changed, 4 inserti
Commit be4b8beed87d ("rcu: Move RCU's grace-period-change code to ->gp_seq")
removed the cpuend grace period trace point. This patch adds it back.
Signed-off-by: Joel Fernandes (Google)
---
kernel/rcu/tree.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git
up patch, no logical change.
Signed-off-by: Joel Fernandes (Google) <j...@joelfernandes.org>
---
include/trace/events/rcu.h | 15 ++--
kernel/rcu/tree.c | 47 ++
2 files changed, 35 insertions(+), 27 deletions(-)
diff --git a/include
up patch, no logical change.
Signed-off-by: Joel Fernandes (Google)
---
include/trace/events/rcu.h | 15 ++--
kernel/rcu/tree.c | 47 ++
2 files changed, 35 insertions(+), 27 deletions(-)
diff --git a/include/trace/events/rcu.h b/include/trace
rcu_seq_snap may be tricky for someone looking at it for the first time.
Lets document how it works with an example to make it easier.
Signed-off-by: Joel Fernandes (Google) <j...@joelfernandes.org>
---
kernel/rcu/rcu.h | 24 +++-
1 file changed, 23 insertions(+), 1 de
rcu_seq_snap may be tricky for someone looking at it for the first time.
Lets document how it works with an example to make it easier.
Signed-off-by: Joel Fernandes (Google)
---
kernel/rcu/rcu.h | 24 +++-
1 file changed, 23 insertions(+), 1 deletion(-)
diff --git a/kernel
Currently the tree RCU clean up code records a CleanupMore trace event
even if the GP was already in progress. This makes CleanupMore show up
twice for no reason. Avoid it.
Signed-off-by: Joel Fernandes (Google) <j...@joelfernandes.org>
---
kernel/rcu/tree.c | 2 +-
1 file changed, 1 ins
Recently we had a discussion about cond_resched unconditionally
recording a voluntary context switch [1].
Lets add a comment clarifying that how this API is to be used.
[1]
https://lkml.kernel.org/r/1526027434-21237-1-git-send-email-byungchul.p...@lge.com
Signed-off-by: Joel Fernandes (Google
assign it at that time.
Just a clean up patch, no logical change.
Signed-off-by: Joel Fernandes (Google) <j...@joelfernandes.org>
---
kernel/rcu/tree.c | 34 ++
1 file changed, 18 insertions(+), 16 deletions(-)
diff --git a/kernel/rcu/tree.c b/kernel/rcu/
Recently we had a discussion about cond_resched unconditionally
recording a voluntary context switch [1].
Lets add a comment clarifying that how this API is to be used.
[1]
https://lkml.kernel.org/r/1526027434-21237-1-git-send-email-byungchul.p...@lge.com
Signed-off-by: Joel Fernandes (Google
assign it at that time.
Just a clean up patch, no logical change.
Signed-off-by: Joel Fernandes (Google)
---
kernel/rcu/tree.c | 34 ++
1 file changed, 18 insertions(+), 16 deletions(-)
diff --git a/kernel/rcu/tree.c b/kernel/rcu/tree.c
index 9f5679ba413b
Currently the tree RCU clean up code records a CleanupMore trace event
even if the GP was already in progress. This makes CleanupMore show up
twice for no reason. Avoid it.
Signed-off-by: Joel Fernandes (Google)
---
kernel/rcu/tree.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff
cpustart shows a stale gp_seq. This is because rdp->gp_seq is updated
only at the end of the __note_gp_changes function. For this reason, use
rnp->gp_seq instead. I believe we can't update rdp->gp_seq too early so
lets just use the gp_seq from rnp instead.
Signed-off-by: Joel Fernande
/20180513190906.gl26...@linux.vnet.ibm.com
Signed-off-by: Joel Fernandes (Google) <j...@joelfernandes.org>
---
include/trace/events/rcu.h | 4 ++--
kernel/rcu/tree.c | 11 ++-
2 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/include/trace/events/rcu.h b/include
Hi,
Here are some fixes, clean ups and some code comments changes mostly
for the new funnel locking, gp_seq changes and some tracing. Its based
on latest rcu/dev branch.
thanks,
- Joel
Joel Fernandes (Google) (8):
rcu: Add comment documenting how rcu_seq_snap works
rcu: Clarify usage
cpustart shows a stale gp_seq. This is because rdp->gp_seq is updated
only at the end of the __note_gp_changes function. For this reason, use
rnp->gp_seq instead. I believe we can't update rdp->gp_seq too early so
lets just use the gp_seq from rnp instead.
Signed-off-by: Joel Fernande
/20180513190906.gl26...@linux.vnet.ibm.com
Signed-off-by: Joel Fernandes (Google)
---
include/trace/events/rcu.h | 4 ++--
kernel/rcu/tree.c | 11 ++-
2 files changed, 12 insertions(+), 3 deletions(-)
diff --git a/include/trace/events/rcu.h b/include/trace/events/rcu.h
index
Hi,
Here are some fixes, clean ups and some code comments changes mostly
for the new funnel locking, gp_seq changes and some tracing. Its based
on latest rcu/dev branch.
thanks,
- Joel
Joel Fernandes (Google) (8):
rcu: Add comment documenting how rcu_seq_snap works
rcu: Clarify usage
rcu_seq_snap may be tricky for someone looking at it for the first time.
Lets document how it works with an example to make it easier.
Signed-off-by: Joel Fernandes (Google) <j...@joelfernandes.org>
---
v2 changes: Corrections as suggested by Randy.
kernel/rcu/rcu.
401 - 500 of 555 matches
Mail list logo