-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 12/13/2010 07:57 AM, Balbir Singh wrote:* Dan Carpenter<error27@xxxxxxxxx> [2010-12-13 14:37:45]:In your February response and again in September, you did suggest a
Iotop uses hardcoded offsets to find the taskstats struct members.Thanks for the report, looks like the change did not even bump the
This got changed in 2.6.37 so it now iotop doesn't work on amd64. The
offending commit is:
commit 85893120699f8bae8caa12a8ee18ab5fceac978e
Author: Jeff Mahoney<jeffm@xxxxxxxx>
Date: Wed Oct 27 15:34:43 2010 -0700
delayacct: align to 8 byte boundary on 64-bit systems
Brian Rogers gets the reported-by tag. The bugzilla entry is:
https://bugzilla.kernel.org/show_bug.cgi?id=24272
version field. Sorry, its my fault, I should have caught it earlier.
iotop hard coding member offsets is not bad as long as we don't break
ABI (expected from us). Any chance you could dump the offsets before
and after the change?
version bump. I'm not sure why that didn't get integrated but I still
don't see how it's necessary for code that actually follows the interface.
iotop doesn't. It's broken. It doesn't even honor that version field and
worse yet, it doesn't even honor the packet format which specifically
doesn't define hard offsets. Rather it defines a protocol that tags
fields and supplies the offsets in the packet.
The getdelays.c code that ships with the kernel even demonstrates this,
so there's no excuse for half-assing it like this.