Linux-2.5.17
Thanks for pointing me in the right direction; I found the same code in my copy of libgtop (1.0.9) and see the problem. Maybe now I can hack something together to make it work.
In comparing /proc/meminfo in 2.4.19-pre8 and 2.5.17 I see that there is very little difference except that the information gtop relies upon is missing. The lines it needs aren't changed or rearranged, just gone altogether. Was there any particular purpose for that, other than breaking programs like gtop? I'm a firm believer that adding something new to a system should never break existing functionality unless absolutely necessary. Was it necessary in this case, or was it done because someone was offended that it wasn't "clean" enough?
[email protected] (Nick Holloway) on 05/22/2002 06:49:59 AM
To: [email protected]
cc: (bcc: Wayne Brown/Corporate/Altec)
Subject: Re: Linux-2.5.17
Quoted 3 lines · In <[email protected]> [email protected] writes:
I can live with not building, crashing, or even eating filesystems. Those things will be fixed sooner or later. But breaking userspace programs -- that may well be permanent.
Looking at the source code to libgtop-1.0.6 (the version I have easy access to), the parser used to extract the swap information from /proc/meminfo is extremely fragile (read: broken). Rather than looking at the tag at the start of each line for the one it requires, it assumes that the "Swap:" details are on the 3rd line (and doesn't even verify the label).
You can't expect the kernel to keep compatability for such poor user-space code (especially during a development cycle).
The change to /proc/meminfo came about in 2.5.1, and this removed the first two lines from the old, inflexible layout (that has been deprecated for a while, and should probably been removed during the 2.1.x development cycle).
--
`O O' | [email protected]
// ^ \\ | http://www.pyrites.org.uk/
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Quoted 4 lines · In <[email protected]> [email protected] writes:
In comparing
/proc/meminfoin 2.4.19-pre8 and 2.5.17 I see that there is very little difference except that the information gtop relies upon is missing. The lines it needs aren't changed or rearranged, just gone altogether. Was there any particular purpose for that, other than breaking programs like gtop?
I confess to submitting the patch to Linus to remove the compatability lines when 2.5.0 was created.
The change that made the first two lines redundant was originally made in 1.3.68[1], and the intention was that they would removed -- the comment in get_meminfo had:
Tagged format, for easy grepping and expansion. The above will go away eventually, once the tools have been updated.
As I had an application that parsed /proc/meminfo around the time of the change, I wrote the parser to handle the new format in preparation for the old format going away. Others would have done the same.
Someone mentioned that this compatability was still present during 2.4 development, so I made a mental note to submit a patch when 2.5 development started.
Quoted 4 lines
I'm a firm believer that adding something new to a system should never break existing functionality unless absolutely necessary. Was it necessary in this case, or was it done because someone was offended that it wasn't "clean" enough?
Where possible, interfaces should not be changed for the sake of change, but you shouldn't keep old interfaces because that way lies bloat.
One of the beauties of Linux (IMO) is that broken interfaces don't have to be maintained ad-infinitum. It should be expected that interfaces may be broken during the development series of kernels, and the tools have a chance to catch up during this cycle.
The interface that gtop (implicitly) required is that "Swap:" should be the 3rd line in /proc/meminfo. You'll never get anyone to admit that this is the interface to /proc/meminfo that should be maintained.
-
[1] http://groups.google.com/groups?selm=4glagm%24pno%40treflan.shout.net
Signature · 2 lines
`O O' | [email protected] // ^ \\ | http://www.pyrites.org.uk/