mdb multilist walker should be a layered walker

Review Request #2508 — Created Jan. 31, 2020 and submitted

jbk
illumos-gate
12269
general

The mdb multilist walker should use mdb_layered_walk

Ran ::walk multilist against one of the multilist_ts in ARC_mru, both with and without the change and compared the output (was identical).

  • 0
  • 0
  • 1
  • 1
  • 2
Description From Last Updated
kkantor
  1. 
      
  2. I forget - do we need a newline in mdb_warn? Previous uses around this change include a newline.

  3. 
      
jbk
  1. 
      
  2. No -- a rather subtle bit of behavior with mdb_warn is that if the first argument (it's a printf() style function) doesn't end with a newline, it does the mdb equivalent of printf(" : %s\n", strerror(errno)) to append an error string. However if a newline is present, it doesn't do that.

    In this instance, mdb_layered_walk should have set some sort of error value when it failed, so we'd want to set that (vs. the other uses in the function where that wouldn't be the case).

    1. Err we'd want to print that..

    2. Ah okay. I remember this being explained to me previously now. I knew there was something special about this. Thanks.

  3. 
      
jjelinek
  1. Ship It!
  2. 
      
jbk
Review request changed

Status: Closed (submitted)

Loading...