Search for a value and print information about matching locations (detailedsearch)

The detailedsearch command takes most of the same arguments as the normal search command. Unlike normal search, detailedsearch also provides information about the found location such as the slab and slab object, or the PID of the task for stack locations. For example:

crash> search ffff8addd2b92700
ffff8addd2b92c70: ffff8addd2b92700

compared to:

crash> detailedsearch ffff8addd2b92700
ffff8addd2b92c70: ffff8addd2b92700  slab:blkdev_queue state:alloc obj:ffff8addd2b92700 size:2496

Options provided by ‘detailedsearch’:

usage: detailedsearch [-h] [-m MASK] [-s START] [-l LENGTH] [-k] [-K] [-u]
                      [-c] [-w] [--slab-only] params

positional arguments:
  params       address to search for

optional arguments:
  -h, --help   show this help message and exit
  -m MASK      Mask of bits with values that do not matter
  -s START     address to start search from
  -l LENGTH    length of area to search
  -k           search kernelspace
  -K           search kernelspace but exclude vmap
  -u           search start at userspace
  -c           search for a string
  -w           search for a 32bit value
  --slab-only  Provide details only for slab objects