Files
Al Viro 9a06842935 UPSTREAM: new inode method: ->free_inode()
A lot of ->destroy_inode() instances end with call_rcu() of a callback
that does RCU-delayed part of freeing.  Introduce a new method for
doing just that, with saner signature.

Rules:
->destroy_inode		->free_inode
	f			g		immediate call of f(),
						RCU-delayed call of g()
	f			NULL		immediate call of f(),
						no RCU-delayed calls
	NULL			g		RCU-delayed call of g()
	NULL			NULL		RCU-delayed default freeing

IOW, NULL ->free_inode gives the same behaviour as now.

Note that NULL, NULL is equivalent to NULL, free_inode_nonrcu; we could
mandate the latter form, but that would have very little benefit beyond
making rules a bit more symmetric.  It would break backwards compatibility,
require extra boilerplate and expected semantics for (NULL, NULL) pair
would have no use whatsoever...

Change-Id: I828dd519b381a1f25013ec3d1eae0b6835eb9c26
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2025-09-20 03:19:44 +01:00
..
2017-10-15 00:47:23 -04:00
2018-01-28 17:00:36 +11:00
2024-06-02 20:01:37 +01:00
2018-03-20 17:11:45 +01:00
2019-09-23 14:11:54 -07:00
2018-04-04 14:05:48 -04:00
2019-09-21 07:55:26 +02:00
2019-12-18 09:03:30 +01:00
2018-08-30 17:08:35 +02:00