[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20171023142555.GF3165@worktop.lehotels.local>
Date:   Mon, 23 Oct 2017 16:25:55 +0200
From:   Peter Zijlstra <peterz@...radead.org>
To:     David Miller <davem@...emloft.net>
Cc:     fw@...len.de, netdev@...r.kernel.org
Subject: problem with rtnetlink 'reference' count
Hi,
I just ran across commit:
  019a316992ee ("rtnetlink: add reference counting to prevent module unload while dump is in progress")
And that commit is _completely_ broken.
 1) it not in fact a refcount, so using refcount_t is silly
 2) there is a distinct lack of memory barriers, so we can easily
    observe the decrement while the msg_handler is still in progress.
 3) waiting with a schedule()/yield() loop is complete crap and subject
    life-locks, imagine doing that rtnl_unregister_all() from a RT task.
Please fix..
Powered by blists - more mailing lists
 
