On Tue, 2015-09-01 at 21:00 +0800, Herbert Xu wrote:
On Tue, Sep 01, 2015 at 02:46:48PM +0200, Phil Sutter wrote:
> This is not an inherent behaviour of the implementation but general
> agreement. The insertion may fail non-permanently (returning -EBUSY),
> users are expected to handle this by retrying the operation.
Absolutely not. The only reason for an insertion to fail is if we
can't allocate enough memory. Unless the user is also looping its
kmalloc calls it definitely shouldn't be retrying the insert.
If an expansion fails it means either that the system is suffering
a catastrophic memory shortage, or the user of rhashtable is doing
-EBUSY does not sound as a memory allocation error.