Messages in this thread | | | Date | Fri, 28 Aug 2020 18:13:41 +0900 | From | Masami Hiramatsu <> | Subject | Re: [RFC][PATCH 7/7] kprobes: Replace rp->free_instance with freelist |
| |
On Fri, 28 Aug 2020 10:48:51 +0200 peterz@infradead.org wrote:
> On Thu, Aug 27, 2020 at 06:12:44PM +0200, Peter Zijlstra wrote: > > struct kretprobe_instance { > > union { > > + /* > > + * Dodgy as heck, this relies on not clobbering freelist::refs. > > + * llist: only clobbers freelist::next. > > + * rcu: clobbers both, but only after rp::freelist is gone. > > + */ > > + struct freelist_node freelist; > > struct llist_node llist; > > - struct hlist_node hlist; > > struct rcu_head rcu; > > }; > > Masami, make sure to make this something like: > > union { > struct freelist_node freelist; > struct rcu_head rcu; > }; > struct llist_node llist; > > for v4, because after some sleep I'm fairly sure what I wrote above was > broken. > > We'll only use RCU once the freelist is gone, so sharing that storage > should still be okay.
Hmm, would you mean there is a chance that an instance belongs to both freelist and llist?
Thank you,
-- Masami Hiramatsu <mhiramat@kernel.org>
| |