> > However, researching the net, users currently interpret iowait entirely as > > blkio wait. Furthermore, io_schedule() calls delayacct_blkio_{start|end}() which > > worked fine for my tests with I2C but might show that iowait was really meant as > > blkiowait? So, should other subsystems use it? > > I don't think so. The traditional Unix use of I/O wait is block I/O wait, > in order to account for paging/swapping in "uptime". I see. > The other problem is that if you change the way it behaves you'll get > lots of hate mail from people running server farms as all their load > balancing and cluster management changes behaviour, plus baffled users > wondering why their system is now busy and it wasn't in the last release. I was fearing something like that. On the other hand, it might have been more correct. That's why I asked. > The other question you have to solve is that people are adding i2c and > SPI slave support both in Android space and now perhaps upstream. How do > you I/O account those transactions ? I implemented I2C slave support for upstream [1] and I don't think it needs to be acocunted. While a master transaction gets kicked off and then waits for success using a completion, slave support is more like serving an interrupt and then getting or putting a byte immediately. Thanks for your answers, I'll simply keep I2C away from iowait. Wolfram [1] http://thread.gmane.org/gmane.linux.kernel/1783295
Attachment:
signature.asc
Description: Digital signature