Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1460041
| From | Tejun Heo <tj@kernel.org> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v2 1/1] percpu-refcount: do not forget to rcu_barrier() just before freeing |
| Date | 2016-08-11 00:10 +0200 |
| Message-ID | <s4JRf-2Dd-7@gated-at.bofh.it> (permalink) |
| References | <s4HPt-16w-45@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Wed, Aug 10, 2016 at 09:55:39PM +0200, Roman Pen wrote: > percpu issues some RCU callbacks to synchronize its state, so before > freeing we have to wait all those callbacks to finish. > > E.g. the following simple sequence on stack causes nasty crash: > > struct percpu_ref ref; > > percpu_ref_init(&ref, release, 0, GFP_KERNEL); > percpu_ref_kill(&ref); > percpu_ref_exit(&ref); Hmmm... that's just an illegal sequence of operations. You can't exit a ref which hasn't completed killing yet (the kill callback hasn't been called). Thanks. -- tejun
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH v2 1/1] percpu-refcount: do not forget to rcu_barrier() just before freeing Roman Pen <roman.penyaev@profitbricks.com> - 2016-08-10 22:00 +0200
Re: [PATCH v2 1/1] percpu-refcount: do not forget to rcu_barrier() just before freeing Tejun Heo <tj@kernel.org> - 2016-08-11 00:10 +0200
Re: [PATCH v2 1/1] percpu-refcount: do not forget to rcu_barrier() just before freeing Roman Penyaev <roman.penyaev@profitbricks.com> - 2016-08-11 11:10 +0200
Re: [PATCH v2 1/1] percpu-refcount: do not forget to rcu_barrier() just before freeing Tejun Heo <tj@kernel.org> - 2016-08-11 18:30 +0200
Re: [PATCH v2 1/1] percpu-refcount: do not forget to rcu_barrier() just before freeing Roman Penyaev <roman.penyaev@profitbricks.com> - 2016-08-11 19:40 +0200
csiph-web