Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1309992

Re: [PATCH RT] net: move xmit_recursion to per-task variable on -RT

From Hannes Frederic Sowa <hannes@stressinduktion.org>
Newsgroups linux.kernel
Subject Re: [PATCH RT] net: move xmit_recursion to per-task variable on -RT
Date 2016-01-15 10:40 +0100
Message-ID <qR91o-49P-17@gated-at.bofh.it> (permalink)
References (2 earlier) <qQRxx-8vf-29@gated-at.bofh.it> <qQYfF-533-21@gated-at.bofh.it> <qQYz2-5b5-59@gated-at.bofh.it> <qQZbI-5Fp-13@gated-at.bofh.it> <qR7VE-3qX-21@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


On 15.01.2016 09:21, Thomas Gleixner wrote:
> On Fri, 15 Jan 2016, Hannes Frederic Sowa wrote:
>> On 14.01.2016 23:20, Eric Dumazet wrote:
>>> On Thu, 2016-01-14 at 23:02 +0100, Hannes Frederic Sowa wrote:
>>>
>>>> We are just adding a second recursion limit solely to openvswitch which
>>>> has the same problem:
>>>>
>>>> https://patchwork.ozlabs.org/patch/566769/
>>>>
>>>> This time also we depend on rcu_read_lock marking the section being
>>>> nonpreemptible. Nice would be a more generic solution here which doesn't
>>>> need to always add something to *current.
>>>
>>>
>>> Note that rcu_read_lock() does not imply that preemption is disabled.
>>
>> Exactly, it is conditional on CONFIG_PREEMPT_CPU/CONFIG_PREMPT_COUNT but
>> haven't thought about exactly that in this moment.
>
> Wrong. CONFIG_PREEMPT_RCU makes RCU preemptible.
>
> If that is not set then it fiddles with preempt_count when
> CONFIG_PREEMPT_COUNT=y. If CONFIG_PREEMPT_COUNT=n then you have a non
> preemptible system anyway.
>
> So you cannot assume that rcu_read_lock() disables preemption.

Sorry for maybe writing it misleading but that is exactly what I wanted 
to say here. Yes, I agree, I didn't really check because of _bh and 
rcu_read_lock. This was a mistake. ;)

I already send out an updated patch with added preemption guards.

Thanks,
Hannes

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[PATCH RT] net: move xmit_recursion to per-task variable on -RT Sebastian Andrzej Siewior <bigeasy@linutronix.de> - 2016-01-13 16:30 +0100
  Re: [PATCH RT] net: move xmit_recursion to per-task variable on  -RT Thomas Gleixner <tglx@linutronix.de> - 2016-01-13 18:40 +0100
    Re: [PATCH RT] net: move xmit_recursion to per-task variable on -RT Sebastian Andrzej Siewior <bigeasy@linutronix.de> - 2016-01-14 16:00 +0100
      Re: [PATCH RT] net: move xmit_recursion to per-task variable on -RT Hannes Frederic Sowa <hannes@stressinduktion.org> - 2016-01-14 23:10 +0100
        Re: [PATCH RT] net: move xmit_recursion to per-task variable on -RT Eric Dumazet <eric.dumazet@gmail.com> - 2016-01-14 23:30 +0100
          Re: [PATCH RT] net: move xmit_recursion to per-task variable on -RT Hannes Frederic Sowa <hannes@stressinduktion.org> - 2016-01-15 00:10 +0100
            Re: [PATCH RT] net: move xmit_recursion to per-task variable on  -RT Thomas Gleixner <tglx@linutronix.de> - 2016-01-15 09:30 +0100
              Re: [PATCH RT] net: move xmit_recursion to per-task variable on -RT Hannes Frederic Sowa <hannes@stressinduktion.org> - 2016-01-15 10:40 +0100

csiph-web