1. 12 Sep, 2018 3 commits
    • jim warner's avatar
      top: a tweak to the forest view collapsed code (again) · b3b7a350
      jim warner authored
      From the outset, top has tried to provide some minimal
      garbage collection in support of forest view collapse.
      For example, with every 'v' keystroke, a check is made
      of the currently targeted pids.  If all were negative,
      which means expanded, that Hide_pid array was emptied.
      
      Recently, yet another efficiency was added wherein the
      continuing scan for a targeted pid was terminated when
      a match was found. But, one more inefficiency existed.
      
      When a task which was subject to collapse under forest
      view mode has disappeared (ended), repeatedly scanning
      for such a pid with each iteration makes little sense.
      
      So this commit will negate such targeted pids and thus
      avoid scanning every current task looking for a match.
      Then, if 'v' is ever stuck at some point in the future
      there will be a chance to empty that Hide_pid[] array.
      
      [ hopefully this will be a final tweak of the forest ]
      [ view collapse stuff, but cross your fingers anyway ]
      Signed-off-by: jim warner's avatarJim Warner <james.warner@comcast.net>
      b3b7a350
    • jim warner's avatar
      top: the '#define PRETEND2_5_X' was found to be broken · 2b82cbfc
      jim warner authored
      Our newlib branch has already dropped support for such
      old kernels. However, the master branch still supports
      them. So this patch will correct a broken #define that
      is used to influence the top Summary Area information.
      Signed-off-by: jim warner's avatarJim Warner <james.warner@comcast.net>
      2b82cbfc
    • jim warner's avatar
      top: the '#define SCROLLVAR_NO' is bent but not broken · 86611b46
      jim warner authored
      This patch simply avoids an 'unused' variable warning.
      Signed-off-by: jim warner's avatarJim Warner <james.warner@comcast.net>
      86611b46
  2. 13 Aug, 2018 2 commits
  3. 08 Aug, 2018 5 commits
  4. 01 Aug, 2018 3 commits
  5. 18 Jul, 2018 3 commits
  6. 17 Jul, 2018 3 commits
    • jim warner's avatar
    • jim warner's avatar
      top: parent total cpu includes collapsed children, pgm · 3da73186
      jim warner authored
      Now, when a parent's children have been collapsed, the
      cpu used by those unseen tasks will disappear no more.
      Instead such tics will be added to the parent's total.
      
      [ if one wished a return to the 'land of lost tics', ]
      [ the '#define TREE_VCPUOFF' directive is available. ]
      
      ------------------------------------------------------
      Note: With collapsible parents now displaying children
      cpu usage, it will eventually be noticed the cpu stats
      for the summary area and task areas often vary widely.
      
      It's worth a reminder that for top's summary area each
      individual cpu and the cpu summary is limited to 100%,
      regardless of how many tics a linux kernel may export.
      
      An individual task is limited to 100% times the number
      of threads. But, in no case will cpu usage ever exceed
      100% times total number of processors. Such limits are
      further reduced under 'Solaris' mode ('I' toggle off).
      In this mode, a task cpu usage will never exceed 100%.
      These limits will now also apply to collapsed parents.
      
      In addition to those influences, results are subjected
      to kernel timer sampling anomalies and the distortions
      inherent in a small sample size, made worse by smaller
      delay intervals. Often there is just 1 or 2 tics for a
      few tasks at smaller intervals such as: 1/10th second.
      
      Anyway, should questions on this subject arise, a good
      starting point, beyond the reminders above, is the 1st
      link listed below. Those other links were derivatives.
      
      Reference(s):
      . from the kernel documentation
      https://www.kernel.org/doc/Documentation/cpu-load.txt
      . as mentioned in the above kernel documentation
      https://lkml.org/lkml/2007/2/12/6
      . from above, with many more links on the subject
      https://www.boblycat.org/~malc/apc/Signed-off-by: jim warner's avatarJim Warner <james.warner@comcast.net>
      
      top: parent total cpu includes collapsed children, pgm
      3da73186
    • jim warner's avatar
      top: a refactor to prepare for including collapsed cpu · e66c3679
      jim warner authored
      So that the impact (minimal) of the next commit can be
      isolated, this commit just involves a little renaming,
      reformat plus a refactor of some proc_t pointer logic.
      
      [ renaming, relocation and changes to 'user_matched' ]
      [ wasn't strictly necessary, but now mirrors newlib. ]
      Signed-off-by: jim warner's avatarJim Warner <james.warner@comcast.net>
      e66c3679
  7. 26 Jun, 2018 1 commit
    • jim warner's avatar
      top: a few tweaks for those scrolling (mostly) changes · c6e68e2f
      jim warner authored
      This patch just addresses some edge cases with respect
      to 'unseen' tasks. Given the ability to preserve other
      filters in the rcfile, it's entirely possible the very
      first task(s) may not be visible at top startup. Also,
      when switching between windows ('a'/'w') we should try
      to always position its row #1 on some visible process.
      
      Lastly, a window might have *NO* visible tasks at all.
      Therefore, protect 'window_hlp' from an infinite loop.
      Signed-off-by: jim warner's avatarJim Warner <james.warner@comcast.net>
      c6e68e2f
  8. 23 Jun, 2018 15 commits
  9. 13 Jun, 2018 5 commits