For some kernel clocksources (eg acpi_pm), it has been observed that there is an excessively high CPU utilization which correlates with the linearstore's flush timeout being set to a very low value (100us). This is a problem for some customers which require almost instant flush to obtain pseudo-synchronous store behavior (hence the 100us flush timer) and run many brokers (up to hundreds) on a single machine. In these cases, the CPU is 100% utilized.
A check of the source shows that the flush timer is firing continuously, irrespective of whether any disk I/O has taken place.
It is proposed that a change to linearstore be made which will only run the timer when needed (ie while there is content in the write buffers that needs flushing).