Messages in this thread | | | From | Dmitriy V\'jukov <> | Subject | Re: SRCU: Number of outstanding callbacks | Date | Wed, 11 Mar 2009 17:13:47 +0000 (UTC) |
| |
Paul E. McKenney <paulmck <at> linux.vnet.ibm.com> writes:
> The short answer is, as you guessed, because it is not (yet) worth doing. > This is at least in part because SRCU is not heavily used. > > The philosophy behind the limitation is that the memory overhead of > the blocks is a small fraction of the memory required to represent > a thread. As you say, there are a number of other strategies that can > be pursued, but the current strategy has the advantage of simplicity. > In particular, the current strategy does not require a failure return > from an as-yet-nonexistent call_srcu(). Handling such a failure return > is certainly possible, but someone would have to show me an extremely > good reason for putting up with this.
Yes, I've noticed the extreme simplicity of the current synchronize_srcu(). As for failure return from call_srcu(), I think it's possible to just call synchronize_srcu() from inside call_srcu() if the latter encounters any errors. Anyway call_srcu() will be "sometimes blocking" because of the limit on number of outstanding callbacks, so this must not be a problem.
-- Best regards, Dmitriy V'jukov
| |