[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#2092: procps needs an update for kernels > 1.3.53



> 
> Package: procps
> 
> Kernel 1.3.53 seems to have changed the way memory use is reported (I
> think it reports a new value in /proc/meminfo, "cached:", referring to
> cached VM pages) and also has an internal process "kernel bdflush" that
> has a space in its name. The result is that "top" and "ps" can dump
> core with floating exceptions (divide by 0, I think) or bus errors.
> Patches for ps are floating around on the kernel mailing list.
> 
> 1.3.53 is significantly faster than previous kernels because of page
> cacheing.
> 
For most of these problems, patches already can be found on sunsite.
Nevertheless this isn't all we need to cover. psupdate cannot be run on
ELF compiled kernels and really is deprecated when you have access to 
the System.map file.
I have sent several patches to the procps maintainer several months ago 
and he promised to release a new version RSN. As this didn't happen,
I have put together a procps suite including the patches from sunsite
and some other fixes (e.g. the signal and cmd handling are broken in 
procps as well).

 As I do not have current ncurses (needed for top and pstree) and the 
system should be tested before releasing it, I didn't make
any binary package. The source package procps-test.tar.gz has been 
uploaded to ftp.debian.org. THIS IS NO PACKAGE MEANT FOR INSTALLING 
right now, please test it and tell me how yopu like it.

The package relies on /boot/System.map existing. This is not currently 
done in /sbin/installkernel.  Putting
if [ $map ]
then
  cp $map /boot/System.map-$ver
  ln -sf System.map-$ver /boot/System.map
fi
into installkernel and removing the psupdate stuff is all you have to do.

There are two versions of top, one the original and a new one, resembling 
the kmem top. ps -s has two possible output formats, one the classical
and the changed one as done in kmem-ps.

If you are testing this, please tell me (beside any bugs) about which 
signal format for ps and which top you prefer.

	Helmut Geyer


>From the CHANGES file of procps:

Changes from 0.97-1.3.53 (more precisely from 0.97) -> current:

  By Helmut Geyer (Helmut.Geyer@iwr.uni-heidelberg.de)

  __LIBPROC__
    snarfed the System.map handling routines from kmem ps 1.2.7 (update_db)
    removed unneeded parts from update_db.c and snap.c, as a lot got deprecated
    This is needed for ELF kernels that are not readable by psupdate / ps -U
    cleaned up the psdatabase routines.
    Removed psupdate completely.
    fixed the signal and cmd display bugs (in snap.c)

  __FUSER__
    brushed up output format, don't display fuser process.

  __PS__
    Added new signal format from kmem ps. (the old one still can be used
    when defining OLD_SIG_FMT while compiling).
    some minor fixes due to ELF programs behaving differently (e.g. the
    SIZE fields are no longer near equivalent, use ps -m for exact info).
    I still haven't found a way to do the lrs (shared Library) field when using
    ELF. The way it is done for a.outs is not portable to ELF at all.

  __TOP__
    new top, more like the kmem one, configurable fields, ... run it and
    type h for more info.
    I like this better (who would've guessed), but it generates higher load,
    so YMMV. The old one is still available as oldtop.
    some fixes as to ps to make it do something useful when running ELF
    programs on a ELF kernels.


Changes from 0.97-1.3.48 -> 0.97-1.3.53:

   By: Andrew Kieschnick (andrewk@mail.utexas.edu)

   needed changes to /proc/meminfo handling

Changes from 0.97-1.3.39 ->  0.97-1.3.48:

   By: ??? (from sunsite)

 This patch fixes a 'nice' related bug in procps-0.97-1.3.39, and also get
the signal names from /usr/include/asm/signal.h since this is where they are
in newer kernels.

Changes to 0.97-1.3.39:
   By: Henry Shieh (hanky@Henry.Dorm10.nctu.edu.tw)

      This patch file is for 256 ptys to let 'ps' show
      correct tty info that uses the new pty major number.
      Use the shell script "mknewpty" to create 256 ptys
      using the new major number.

Changes from 0.97 --> 0.97-1.3.39:

   By: Karl Keyte (kkeyte@koft.rhein-main.de)

   o  Changed some symbols to get rid of reserved name conflicts
   o  Changed Makefile to pick up kernel definitions for those
      modules which require it.  Also changed default optimisation
      and binary stripping.
   o  Changed process default priority default to be consistent
      with version 1.3.39
   o  Added a check to 'fuser.c' to stop it SEGVing


------------------------------------------------------------------------------
Helmut Geyer                                Helmut.Geyer@iwr.uni-heidelberg.de


Reply to: