Re: [PATCH v8 0/10] More device removal fixes

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

 



On Tue, 5 Feb 2013, Bart Van Assche wrote:

> Fix a few race conditions that can be triggered by removing a device:
> - Fix a race between starved list processing and device removal.
> - Avoid that a SCSI LLD callback can get invoked after
>   scsi_remove_host() finished.
> - Speed up device removal by stopping error handling as soon as
>   the SHOST_DEL or SHOST_DEL_RECOVERY state has been reached.
> - Save and restore the host_scribble field during error handling
> 
> These patches have been tested on top of kernel v3.8-rc6 and are also
> available here: http://github.com/bvanassche/linux/tree/device-removal-fixes.

Hi Bart,

I gave your patchset a spin on our ftServer, which supports hotplug of PCI
devices.  Before attempting a surprise HW removal of an LSI Fusion SAS-2
SCSI controller, I issued an orderly removal through our hotplug driver.
The device removal appeared to hang (this does not occur with vanilla
3.8.0-rc6):
 
  PID: 3331   TASK: ffff88083e968000  CPU: 28  COMMAND: "java"
   #0 [ffff88084fd5da48] __schedule at ffffffff8165e8f4
   #1 [ffff88084fd5dac0] schedule at ffffffff8165f0d9
   #3 [ffff88084fd5db30] _scsih_remove at ffffffffa008416d [mpt2sas]
   #4 [ffff88084fd5db80] pci_device_remove at ffffffff81335e66
   #5 [ffff88084fd5dbb0] __device_release_driver at ffffffff813fd23c
   #6 [ffff88084fd5dbd0] device_release_driver at ffffffff813fd57c
   #7 [ffff88084fd5dbf0] bus_remove_device at ffffffff813fccde
   #8 [ffff88084fd5dc20] device_del at ffffffff813fa0ba
   #9 [ffff88084fd5dc50] device_unregister at ffffffff813fa172
  #10 [ffff88084fd5dc70] pci_stop_bus_device at ffffffff8132fce4
  #11 [ffff88084fd5dca0] pci_stop_bus_device at ffffffff8132fc8d
  #12 [ffff88084fd5dcd0] pci_stop_bus_device at ffffffff8132fc8d
  #13 [ffff88084fd5dd00] pci_stop_bus_device at ffffffff8132fc8d
  #14 [ffff88084fd5dd30] pci_stop_bus_device at ffffffff8132fc8d
  #15 [ffff88084fd5dd60] pci_stop_and_remove_bus_device at ffffffff8132fe46

And to further pin down where we are...

  crash> sym _scsih_remove
  ffffffffa0084010 (t) _scsih_remove [mpt2sas]
  crash> p/x 0xffffffffa008416d - 0xffffffffa0084010
  $9 = 0x15d
  
  crash> dis -l _scsih_remove
    <_scsih_remove+0x140>:  callq  0xffffffffa0011ea0 <sas_remove_host>
    <_scsih_remove+0x145>:  mov    %r13,%rdi
    <_scsih_remove+0x148>:  callq  0xffffffffa00766c0 <mpt2sas_base_detach>
    <_scsih_remove+0x14d>:  mov    %r13,%rdi
    <_scsih_remove+0x150>:  callq  0xffffffff8131b930 <list_del>
    <_scsih_remove+0x155>:  mov    %r12,%rdi
    <_scsih_remove+0x158>:  callq  0xffffffff8141dcf0 <scsi_remove_host>
    <_scsih_remove+0x15d>:  mov    %r12,%rdi
    <_scsih_remove+0x160>:  callq  0xffffffff8141d770 <scsi_host_put>
    <_scsih_remove+0x165>:  add    $0x18,%rsp

We're stuck in the mpt2sas driver's call to scsi_remove_host(), which
"[PATCH v8 07/10] Make scsi_remove_host() wait for device removal"
modifies.

I re-ran the test with some additional debugging so I could figure out the
Scsi_Host it was operating on and found:

  crash> struct Scsi_Host 0xffff8808513a4290 | grep eh_active
    eh_active = 0

However, its __devices list was not empty:

  crash> struct Scsi_Host 0xffff8808513a4290 | grep __devices -A3
    __devices = {
      next = 0xffff880851232530, 
      prev = 0xffff880851235398
    },

So scsi_remove_host loops while the __devices list is never cleared. 

See a complete dump of Scsi_Host and the __devices_list scsi_devices
below.

Regards,

-- Joe


crash> struct Scsi_Host 0xffff8808513a4290 > shost

struct Scsi_Host {
  __devices = {
    next = 0xffff880851232530, 
    prev = 0xffff880851235398
  }, 
  __targets = {
    next = 0xffff881054377980, 
    prev = 0xffff88084ed99528
  }, 
  cmd_pool = 0xffffffff81c956c0, 
  free_list_lock = {
    {
      rlock = {
        raw_lock = {
          {
            head_tail = 0x2e2e, 
            tickets = {
              head = 0x2e, 
              tail = 0x2e
            }
          }
        }
      }
    }
  }, 
  free_list = {
    next = 0xffff88084fb6c008, 
    prev = 0xffff88084fb6c008
  }, 
  starved_list = {
    next = 0xffff8808513a42d0, 
    prev = 0xffff8808513a42d0
  }, 
  default_lock = {
    {
      rlock = {
        raw_lock = {
          {
            head_tail = 0xe5e5, 
            tickets = {
              head = 0xe5, 
              tail = 0xe5
            }
          }
        }
      }
    }
  }, 
  host_lock = 0xffff8808513a42e0, 
  scan_mutex = {
    count = {
      counter = 0x1
    }, 
    wait_lock = {
      {
        rlock = {
          raw_lock = {
            {
              head_tail = 0x0, 
              tickets = {
                head = 0x0, 
                tail = 0x0
              }
            }
          }
        }
      }
    }, 
    wait_list = {
      next = 0xffff8808513a42f8, 
      prev = 0xffff8808513a42f8
    }, 
    owner = 0x0
  }, 
  eh_cmd_q = {
    next = 0xffff8808513a4310, 
    prev = 0xffff8808513a4310
  }, 
  ehandler = 0xffff8808512d1890, 
  eh_action = 0x0, 
  eh_active = 0x0, 
  host_wait = {
    lock = {
      {
        rlock = {
          raw_lock = {
            {
              head_tail = 0x0, 
              tickets = {
                head = 0x0, 
                tail = 0x0
              }
            }
          }
        }
      }
    }, 
    task_list = {
      next = 0xffff8808513a4340, 
      prev = 0xffff8808513a4340
    }
  }, 
  remove_host = {
    lock = {
      {
        rlock = {
          raw_lock = {
            {
              head_tail = 0x101, 
              tickets = {
                head = 0x1, 
                tail = 0x1
              }
            }
          }
        }
      }
    }, 
    task_list = {
      next = 0xffff88103712faa8, 
      prev = 0xffff88103712faa8
    }
  }, 
  hostt = 0xffffffffa00cc1c0, 
  transportt = 0xffff880850c233d8, 
  bqt = 0x0, 
  host_busy = 0x0, 
  host_failed = 0x0, 
  host_eh_scheduled = 0x0, 
  host_no = 0x0, 
  resetting = 0x0, 
  last_reset = 0x0, 
  max_id = 0xffffffff, 
  max_lun = 0x41ff, 
  max_channel = 0x0, 
  unique_id = 0x0, 
  max_cmd_len = 0x20, 
  this_id = 0xffffffff, 
  can_queue = 0xdfb, 
  cmd_per_lun = 0x7, 
  sg_tablesize = 0x80, 
  sg_prot_tablesize = 0x0, 
  max_sectors = 0x7fff, 
  dma_boundary = 0xffffffff, 
  cmd_serial_number = 0x152f, 
  active_mode = 0x1, 
  unchecked_isa_dma = 0x0, 
  use_clustering = 0x1, 
  use_blk_tcq = 0x0, 
  host_self_blocked = 0x0, 
  reverse_ordering = 0x0, 
  ordered_tag = 0x0, 
  tmf_in_progress = 0x0, 
  async_scan = 0x0, 
  eh_noresume = 0x0, 
  work_q_name = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000", 
  work_q = 0x0, 
  host_blocked = 0x0, 
  max_host_blocked = 0x7, 
  prot_capabilities = 0x7, 
  prot_guard_type = 0x1, 
  uspace_req_q = 0x0, 
  base = 0x0, 
  io_port = 0x0, 
  n_io_port = 0x0, 
  dma_channel = 0xff, 
  irq = 0x0, 
  shost_state = SHOST_DEL, 
  shost_gendev = {
    parent = 0xffff881053a92328, 
    p = 0xffff880850ccca28, 
    kobj = {
      name = 0xffff88084fa2e220 "host0", 
      entry = {
        next = 0xffff8808513a46c8, 
        prev = 0xffff880851225498
      }, 
      parent = 0xffff881053a92338, 
      kset = 0xffff88085f878b98, 
      ktype = 0xffffffff81c92240, 
      sd = 0xffff88084fb65658, 
      kref = {
        refcount = {
          counter = 0xe
        }
      }, 
      state_initialized = 0x1, 
      state_in_sysfs = 0x1, 
      state_add_uevent_sent = 0x1, 
      state_remove_uevent_sent = 0x0, 
      uevent_suppress = 0x0
    }, 
    init_name = 0x0, 
    type = 0xffffffff81c95780, 
    mutex = {
      count = {
        counter = 0x1
      }, 
      wait_lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0x0, 
                tickets = {
                  head = 0x0, 
                  tail = 0x0
                }
              }
            }
          }
        }
      }, 
      wait_list = {
        next = 0xffff8808513a4498, 
        prev = 0xffff8808513a4498
      }, 
      owner = 0x0
    }, 
    bus = 0xffffffff81c95960, 
    driver = 0x0, 
    platform_data = 0x0, 
    power = {
      power_state = {
        event = 0x0
      }, 
      can_wakeup = 0x0, 
      async_suspend = 0x1, 
      is_prepared = 0x0, 
      is_suspended = 0x0, 
      ignore_children = 0x0, 
      early_init = 0x1, 
      lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0xf0f, 
                tickets = {
                  head = 0xf, 
                  tail = 0xf
                }
              }
            }
          }
        }
      }, 
      entry = {
        next = 0xffff8808513a4750, 
        prev = 0xffff880851225520
      }, 
      completion = {
        done = 0x7fffffff, 
        wait = {
          lock = {
            {
              rlock = {
                raw_lock = {
                  {
                    head_tail = 0x101, 
                    tickets = {
                      head = 0x1, 
                      tail = 0x1
                    }
                  }
                }
              }
            }
          }, 
          task_list = {
            next = 0xffff8808513a44f0, 
            prev = 0xffff8808513a44f0
          }
        }
      }, 
      wakeup = 0x0, 
      wakeup_path = 0x0, 
      syscore = 0x0, 
      suspend_timer = {
        entry = {
          next = 0x0, 
          prev = 0x0
        }, 
        expires = 0x0, 
        base = 0xffff880854090000, 
        function = 0xffffffff814092d0 <pm_suspend_timer_fn>, 
        data = 0xffff8808513a4430, 
        slack = 0xffffffff, 
        start_pid = 0xffffffff, 
        start_site = 0x0, 
        start_comm = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
      }, 
      timer_expires = 0x0, 
      work = {
        data = {
          counter = 0x10200
        }, 
        entry = {
          next = 0xffff8808513a4570, 
          prev = 0xffff8808513a4570
        }, 
        func = 0xffffffff8140a6b0 <pm_runtime_work>
      }, 
      wait_queue = {
        lock = {
          {
            rlock = {
              raw_lock = {
                {
                  head_tail = 0x303, 
                  tickets = {
                    head = 0x3, 
                    tail = 0x3
                  }
                }
              }
            }
          }
        }, 
        task_list = {
          next = 0xffff8808513a4590, 
          prev = 0xffff8808513a4590
        }
      }, 
      usage_count = {
        counter = 0x1
      }, 
      child_count = {
        counter = 0x0
      }, 
      disable_depth = 0x0, 
      idle_notification = 0x0, 
      request_pending = 0x0, 
      deferred_resume = 0x0, 
      run_wake = 0x0, 
      runtime_auto = 0x1, 
      no_callbacks = 0x0, 
      irq_safe = 0x0, 
      use_autosuspend = 0x0, 
      timer_autosuspends = 0x0, 
      request = RPM_REQ_NONE, 
      runtime_status = RPM_ACTIVE, 
      runtime_error = 0x0, 
      autosuspend_delay = 0x0, 
      last_busy = 0x0, 
      active_jiffies = 0x119, 
      suspended_jiffies = 0x199ea, 
      accounting_timestamp = 0xfffd2888, 
      subsys_data = 0x0, 
      qos = 0x0
    }, 
    pm_domain = 0x0, 
    numa_node = 0xffffffff, 
    dma_mask = 0x0, 
    coherent_dma_mask = 0x0, 
    dma_parms = 0x0, 
    dma_pools = {
      next = 0xffff8808513a4618, 
      prev = 0xffff8808513a4618
    }, 
    dma_mem = 0x0, 
    archdata = {
      dma_ops = 0x0, 
      iommu = 0x0
    }, 
    of_node = 0x0, 
    acpi_node = {
      handle = 0x0
    }, 
    devt = 0x0, 
    id = 0x0, 
    devres_lock = {
      {
        rlock = {
          raw_lock = {
            {
              head_tail = 0x0, 
              tickets = {
                head = 0x0, 
                tail = 0x0
              }
            }
          }
        }
      }
    }, 
    devres_head = {
      next = 0xffff8808513a4660, 
      prev = 0xffff8808513a4660
    }, 
    knode_class = {
      n_klist = 0x0, 
      n_node = {
        next = 0x0, 
        prev = 0x0
      }, 
      n_ref = {
        refcount = {
          counter = 0x0
        }
      }
    }, 
    class = 0x0, 
    groups = 0x0, 
    release = 0, 
    iommu_group = 0x0
  }, 
  shost_dev = {
    parent = 0xffff8808513a4430, 
    p = 0xffff880850cccc30, 
    kobj = {
      name = 0xffff88084fa2dce0 "host0", 
      entry = {
        next = 0xffff88084fb87448, 
        prev = 0xffff8808513a4448
      }, 
      parent = 0xffff8808513e31b0, 
      kset = 0xffff88085f878b98, 
      ktype = 0xffffffff81c92240, 
      sd = 0xffff88084fb78370, 
      kref = {
        refcount = {
          counter = 0x3
        }
      }, 
      state_initialized = 0x1, 
      state_in_sysfs = 0x1, 
      state_add_uevent_sent = 0x1, 
      state_remove_uevent_sent = 0x0, 
      uevent_suppress = 0x0
    }, 
    init_name = 0x0, 
    type = 0x0, 
    mutex = {
      count = {
        counter = 0x1
      }, 
      wait_lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0x0, 
                tickets = {
                  head = 0x0, 
                  tail = 0x0
                }
              }
            }
          }
        }
      }, 
      wait_list = {
        next = 0xffff8808513a4718, 
        prev = 0xffff8808513a4718
      }, 
      owner = 0x0
    }, 
    bus = 0x0, 
    driver = 0x0, 
    platform_data = 0x0, 
    power = {
      power_state = {
        event = 0x0
      }, 
      can_wakeup = 0x0, 
      async_suspend = 0x1, 
      is_prepared = 0x0, 
      is_suspended = 0x0, 
      ignore_children = 0x0, 
      early_init = 0x1, 
      lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0x0, 
                tickets = {
                  head = 0x0, 
                  tail = 0x0
                }
              }
            }
          }
        }
      }, 
      entry = {
        next = 0xffff88084fb874d0, 
        prev = 0xffff8808513a44d0
      }, 
      completion = {
        done = 0x7fffffff, 
        wait = {
          lock = {
            {
              rlock = {
                raw_lock = {
                  {
                    head_tail = 0x101, 
                    tickets = {
                      head = 0x1, 
                      tail = 0x1
                    }
                  }
                }
              }
            }
          }, 
          task_list = {
            next = 0xffff8808513a4770, 
            prev = 0xffff8808513a4770
          }
        }
      }, 
      wakeup = 0x0, 
      wakeup_path = 0x0, 
      syscore = 0x0, 
      suspend_timer = {
        entry = {
          next = 0x0, 
          prev = 0x0
        }, 
        expires = 0x0, 
        base = 0xffff880854090000, 
        function = 0xffffffff814092d0 <pm_suspend_timer_fn>, 
        data = 0xffff8808513a46b0, 
        slack = 0xffffffff, 
        start_pid = 0xffffffff, 
        start_site = 0x0, 
        start_comm = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
      }, 
      timer_expires = 0x0, 
      work = {
        data = {
          counter = 0x10200
        }, 
        entry = {
          next = 0xffff8808513a47f0, 
          prev = 0xffff8808513a47f0
        }, 
        func = 0xffffffff8140a6b0 <pm_runtime_work>
      }, 
      wait_queue = {
        lock = {
          {
            rlock = {
              raw_lock = {
                {
                  head_tail = 0x0, 
                  tickets = {
                    head = 0x0, 
                    tail = 0x0
                  }
                }
              }
            }
          }
        }, 
        task_list = {
          next = 0xffff8808513a4810, 
          prev = 0xffff8808513a4810
        }
      }, 
      usage_count = {
        counter = 0x0
      }, 
      child_count = {
        counter = 0x0
      }, 
      disable_depth = 0x1, 
      idle_notification = 0x0, 
      request_pending = 0x0, 
      deferred_resume = 0x0, 
      run_wake = 0x0, 
      runtime_auto = 0x1, 
      no_callbacks = 0x0, 
      irq_safe = 0x0, 
      use_autosuspend = 0x0, 
      timer_autosuspends = 0x0, 
      request = RPM_REQ_NONE, 
      runtime_status = RPM_SUSPENDED, 
      runtime_error = 0x0, 
      autosuspend_delay = 0x0, 
      last_busy = 0x0, 
      active_jiffies = 0x0, 
      suspended_jiffies = 0x0, 
      accounting_timestamp = 0xfffb8d5b, 
      subsys_data = 0x0, 
      qos = 0x0
    }, 
    pm_domain = 0x0, 
    numa_node = 0xffffffff, 
    dma_mask = 0x0, 
    coherent_dma_mask = 0x0, 
    dma_parms = 0x0, 
    dma_pools = {
      next = 0xffff8808513a4898, 
      prev = 0xffff8808513a4898
    }, 
    dma_mem = 0x0, 
    archdata = {
      dma_ops = 0x0, 
      iommu = 0x0
    }, 
    of_node = 0x0, 
    acpi_node = {
      handle = 0x0
    }, 
    devt = 0x0, 
    id = 0x0, 
    devres_lock = {
      {
        rlock = {
          raw_lock = {
            {
              head_tail = 0x0, 
              tickets = {
                head = 0x0, 
                tail = 0x0
              }
            }
          }
        }
      }
    }, 
    devres_head = {
      next = 0xffff8808513a48e0, 
      prev = 0xffff8808513a48e0
    }, 
    knode_class = {
      n_klist = 0xffff880853dc8730, 
      n_node = {
        next = 0xffff8808513a27b0, 
        prev = 0xffff880853dc8738
      }, 
      n_ref = {
        refcount = {
          counter = 0x1
        }
      }
    }, 
    class = 0xffffffff81c957c0, 
    groups = 0xffffffff81c959e0, 
    release = 0, 
    iommu_group = 0x0
  }, 
  sht_legacy_list = {
    next = 0x0, 
    prev = 0x0
  }, 
  shost_data = 0xffff8808513e3008, 
  dma_dev = 0xffff881053a92328, 
  hostdata = 0xffff8808513a4950
}


crash> list scsi_device.siblings -H 0xffff8808513a4290 -s scsi_device

ffff880851232520
struct scsi_device {
  host = 0xffff8808513a4290, 
  request_queue = 0xffff88085107ad78, 
  siblings = {
    next = 0xffff880851235398, 
    prev = 0xffff8808513a4290
  }, 
  same_target_siblings = {
    next = 0xffff881054377990, 
    prev = 0xffff881054377990
  }, 
  device_busy = 0x0, 
  list_lock = {
    {
      rlock = {
        raw_lock = {
          {
            head_tail = 0x2626, 
            tickets = {
              head = 0x26, 
              tail = 0x26
            }
          }
        }
      }
    }
  }, 
  cmd_list = {
    next = 0xffff880851232558, 
    prev = 0xffff880851232558
  }, 
  starved_entry = {
    next = 0xdead000000100100, 
    prev = 0xdead000000200200
  }, 
  current_cmnd = 0x0, 
  queue_depth = 0xfe, 
  max_queue_depth = 0xfe, 
  last_queue_full_depth = 0x0, 
  last_queue_full_count = 0x0, 
  last_queue_full_time = 0x0, 
  queue_ramp_up_period = 0x1d4c0, 
  last_queue_ramp_up = 0x0, 
  id = 0x0, 
  lun = 0x0, 
  channel = 0x0, 
  manufacturer = 0x0, 
  sector_size = 0x200, 
  hostdata = 0x0, 
  type = 0x0, 
  scsi_level = 0x7, 
  inq_periph_qual = 0x0, 
  inquiry_len = 0x90, 
  inquiry = 0xffff88084ec2e8a0 "", 
  vendor = 0xffff88084ec2e8a8 "SEAGATE ST9300653SS     00026XN020GG", 
  model = 0xffff88084ec2e8b0 "ST9300653SS     00026XN020GG", 
  rev = 0xffff88084ec2e8c0 "00026XN020GG", 
  current_tag = 0x0, 
  sdev_target = 0xffff881054377978, 
  sdev_bflags = 0x0, 
  writeable = 0x1, 
  removable = 0x0, 
  changed = 0x0, 
  busy = 0x0, 
  lockable = 0x0, 
  locked = 0x0, 
  borken = 0x0, 
  disconnect = 0x0, 
  soft_reset = 0x0, 
  sdtr = 0x0, 
  wdtr = 0x0, 
  ppr = 0x1, 
  tagged_supported = 0x1, 
  simple_tags = 0x0, 
  ordered_tags = 0x0, 
  was_reset = 0x0, 
  expecting_cc_ua = 0x0, 
  use_10_for_rw = 0x1, 
  use_10_for_ms = 0x0, 
  no_report_opcodes = 0x0, 
  no_write_same = 0x0, 
  use_16_for_rw = 0x0, 
  skip_ms_page_8 = 0x0, 
  skip_ms_page_3f = 0x0, 
  skip_vpd_pages = 0x0, 
  use_192_bytes_for_3f = 0x0, 
  no_start_on_add = 0x0, 
  allow_restart = 0x0, 
  manage_start_stop = 0x0, 
  start_stop_pwr_cond = 0x0, 
  no_uld_attach = 0x0, 
  select_no_atn = 0x0, 
  fix_capacity = 0x0, 
  guess_capacity = 0x0, 
  retry_hwerror = 0x0, 
  last_sector_bug = 0x0, 
  no_read_disc_info = 0x0, 
  no_read_capacity_16 = 0x0, 
  try_rc_10_first = 0x0, 
  is_visible = 0x1, 
  can_power_off = 0x0, 
  wce_default_on = 0x0, 
  no_dif = 0x0, 
  supported_events = {0x0}, 
  event_list = {
    next = 0xffff880851232610, 
    prev = 0xffff880851232610
  }, 
  event_work = {
    data = {
      counter = 0x10200
    }, 
    entry = {
      next = 0xffff880851232628, 
      prev = 0xffff880851232628
    }, 
    func = 0xffffffff81426020 <scsi_evt_thread>
  }, 
  device_blocked = 0x0, 
  max_device_blocked = 0x3, 
  iorequest_cnt = {
    counter = 0x1313
  }, 
  iodone_cnt = {
    counter = 0x1313
  }, 
  ioerr_cnt = {
    counter = 0x0
  }, 
  sdev_gendev = {
    parent = 0xffff8810543779a0, 
    p = 0xffff88084edab6d8, 
    kobj = {
      name = 0xffff88084ec48540 "0:0:0:0", 
      entry = {
        next = 0xffff880851232670, 
        prev = 0xffff880851232670
      }, 
      parent = 0x0, 
      kset = 0xffff88085f878b98, 
      ktype = 0xffffffff81c92240, 
      sd = 0x0, 
      kref = {
        refcount = {
          counter = 0x2
        }
      }, 
      state_initialized = 0x1, 
      state_in_sysfs = 0x0, 
      state_add_uevent_sent = 0x1, 
      state_remove_uevent_sent = 0x1, 
      uevent_suppress = 0x0
    }, 
    init_name = 0x0, 
    type = 0xffffffff81c95ac0, 
    mutex = {
      count = {
        counter = 0x1
      }, 
      wait_lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0x0, 
                tickets = {
                  head = 0x0, 
                  tail = 0x0
                }
              }
            }
          }
        }
      }, 
      wait_list = {
        next = 0xffff8808512326c0, 
        prev = 0xffff8808512326c0
      }, 
      owner = 0x0
    }, 
    bus = 0xffffffff81c95960, 
    driver = 0x0, 
    platform_data = 0x0, 
    power = {
      power_state = {
        event = 0xffffffff
      }, 
      can_wakeup = 0x0, 
      async_suspend = 0x1, 
      is_prepared = 0x0, 
      is_suspended = 0x0, 
      ignore_children = 0x0, 
      early_init = 0x1, 
      lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0x2b2b, 
                tickets = {
                  head = 0x2b, 
                  tail = 0x2b
                }
              }
            }
          }
        }
      }, 
      entry = {
        next = 0xffff8808512326f8, 
        prev = 0xffff8808512326f8
      }, 
      completion = {
        done = 0xfffffffe, 
        wait = {
          lock = {
            {
              rlock = {
                raw_lock = {
                  {
                    head_tail = 0x202, 
                    tickets = {
                      head = 0x2, 
                      tail = 0x2
                    }
                  }
                }
              }
            }
          }, 
          task_list = {
            next = 0xffff880851232718, 
            prev = 0xffff880851232718
          }
        }
      }, 
      wakeup = 0x0, 
      wakeup_path = 0x0, 
      syscore = 0x0, 
      suspend_timer = {
        entry = {
          next = 0x0, 
          prev = 0x0
        }, 
        expires = 0x0, 
        base = 0xffff8808546f4000, 
        function = 0xffffffff814092d0 <pm_suspend_timer_fn>, 
        data = 0xffff880851232658, 
        slack = 0xffffffff, 
        start_pid = 0xffffffff, 
        start_site = 0x0, 
        start_comm = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
      }, 
      timer_expires = 0x0, 
      work = {
        data = {
          counter = 0x10200
        }, 
        entry = {
          next = 0xffff880851232798, 
          prev = 0xffff880851232798
        }, 
        func = 0xffffffff8140a6b0 <pm_runtime_work>
      }, 
      wait_queue = {
        lock = {
          {
            rlock = {
              raw_lock = {
                {
                  head_tail = 0x0, 
                  tickets = {
                    head = 0x0, 
                    tail = 0x0
                  }
                }
              }
            }
          }
        }, 
        task_list = {
          next = 0xffff8808512327b8, 
          prev = 0xffff8808512327b8
        }
      }, 
      usage_count = {
        counter = 0x3
      }, 
      child_count = {
        counter = 0x0
      }, 
      disable_depth = 0x1, 
      idle_notification = 0x0, 
      request_pending = 0x0, 
      deferred_resume = 0x0, 
      run_wake = 0x0, 
      runtime_auto = 0x0, 
      no_callbacks = 0x0, 
      irq_safe = 0x0, 
      use_autosuspend = 0x0, 
      timer_autosuspends = 0x0, 
      request = RPM_REQ_NONE, 
      runtime_status = RPM_SUSPENDED, 
      runtime_error = 0x0, 
      autosuspend_delay = 0x0, 
      last_busy = 0x0, 
      active_jiffies = 0x0, 
      suspended_jiffies = 0x0, 
      accounting_timestamp = 0xfffd24fd, 
      subsys_data = 0x0, 
      qos = 0x0
    }, 
    pm_domain = 0x0, 
    numa_node = 0xffffffff, 
    dma_mask = 0x0, 
    coherent_dma_mask = 0x0, 
    dma_parms = 0x0, 
    dma_pools = {
      next = 0xffff880851232840, 
      prev = 0xffff880851232840
    }, 
    dma_mem = 0x0, 
    archdata = {
      dma_ops = 0x0, 
      iommu = 0x0
    }, 
    of_node = 0x0, 
    acpi_node = {
      handle = 0x0
    }, 
    devt = 0x0, 
    id = 0x0, 
    devres_lock = {
      {
        rlock = {
          raw_lock = {
            {
              head_tail = 0x202, 
              tickets = {
                head = 0x2, 
                tail = 0x2
              }
            }
          }
        }
      }
    }, 
    devres_head = {
      next = 0xffff880851232888, 
      prev = 0xffff880851232888
    }, 
    knode_class = {
      n_klist = 0x0, 
      n_node = {
        next = 0x0, 
        prev = 0x0
      }, 
      n_ref = {
        refcount = {
          counter = 0x0
        }
      }
    }, 
    class = 0x0, 
    groups = 0x0, 
    release = 0, 
    iommu_group = 0x0
  }, 
  sdev_dev = {
    parent = 0xffff880851232658, 
    p = 0xffff88084edab2c8, 
    kobj = {
      name = 0xffff88084ec48a80 "kkkkkkk\245\273\273\273\273\273\273\273\273p\216\304N\b\210\377\377\261\222\060\201\377\377\377\377y\216e\201\377\377\377\377?\356\030\201\377\377\377\377{U1\201\377\377\377\377\261\222\060\201\377\377\377\377\241\221?\201\377\377\377\377\250\245B\201\377\377\377\377\256fB\201\377\377\377\377\247kB\201\377\377\377\377\201{B\201\377\377\377\377", 
      entry = {
        next = 0xffff8808512328f0, 
        prev = 0xffff8808512328f0
      }, 
      parent = 0x0, 
      kset = 0xffff88085f878b98, 
      ktype = 0xffffffff81c92240, 
      sd = 0x0, 
      kref = {
        refcount = {
          counter = 0x0
        }
      }, 
      state_initialized = 0x1, 
      state_in_sysfs = 0x0, 
      state_add_uevent_sent = 0x1, 
      state_remove_uevent_sent = 0x1, 
      uevent_suppress = 0x0
    }, 
    init_name = 0x0, 
    type = 0x0, 
    mutex = {
      count = {
        counter = 0x1
      }, 
      wait_lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0x0, 
                tickets = {
                  head = 0x0, 
                  tail = 0x0
                }
              }
            }
          }
        }
      }, 
      wait_list = {
        next = 0xffff880851232940, 
        prev = 0xffff880851232940
      }, 
      owner = 0x0
    }, 
    bus = 0x0, 
    driver = 0x0, 
    platform_data = 0x0, 
    power = {
      power_state = {
        event = 0xffffffff
      }, 
      can_wakeup = 0x0, 
      async_suspend = 0x1, 
      is_prepared = 0x0, 
      is_suspended = 0x0, 
      ignore_children = 0x0, 
      early_init = 0x1, 
      lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0x101, 
                tickets = {
                  head = 0x1, 
                  tail = 0x1
                }
              }
            }
          }
        }
      }, 
      entry = {
        next = 0xffff880851232978, 
        prev = 0xffff880851232978
      }, 
      completion = {
        done = 0xfffffffe, 
        wait = {
          lock = {
            {
              rlock = {
                raw_lock = {
                  {
                    head_tail = 0x202, 
                    tickets = {
                      head = 0x2, 
                      tail = 0x2
                    }
                  }
                }
              }
            }
          }, 
          task_list = {
            next = 0xffff880851232998, 
            prev = 0xffff880851232998
          }
        }
      }, 
      wakeup = 0x0, 
      wakeup_path = 0x0, 
      syscore = 0x0, 
      suspend_timer = {
        entry = {
          next = 0x0, 
          prev = 0x0
        }, 
        expires = 0x0, 
        base = 0xffff8808546f4000, 
        function = 0xffffffff814092d0 <pm_suspend_timer_fn>, 
        data = 0xffff8808512328d8, 
        slack = 0xffffffff, 
        start_pid = 0xffffffff, 
        start_site = 0x0, 
        start_comm = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
      }, 
      timer_expires = 0x0, 
      work = {
        data = {
          counter = 0x10200
        }, 
        entry = {
          next = 0xffff880851232a18, 
          prev = 0xffff880851232a18
        }, 
        func = 0xffffffff8140a6b0 <pm_runtime_work>
      }, 
      wait_queue = {
        lock = {
          {
            rlock = {
              raw_lock = {
                {
                  head_tail = 0x0, 
                  tickets = {
                    head = 0x0, 
                    tail = 0x0
                  }
                }
              }
            }
          }
        }, 
        task_list = {
          next = 0xffff880851232a38, 
          prev = 0xffff880851232a38
        }
      }, 
      usage_count = {
        counter = 0x0
      }, 
      child_count = {
        counter = 0x0
      }, 
      disable_depth = 0x2, 
      idle_notification = 0x0, 
      request_pending = 0x0, 
      deferred_resume = 0x0, 
      run_wake = 0x0, 
      runtime_auto = 0x1, 
      no_callbacks = 0x0, 
      irq_safe = 0x0, 
      use_autosuspend = 0x0, 
      timer_autosuspends = 0x0, 
      request = RPM_REQ_NONE, 
      runtime_status = RPM_SUSPENDED, 
      runtime_error = 0x0, 
      autosuspend_delay = 0x0, 
      last_busy = 0x0, 
      active_jiffies = 0x0, 
      suspended_jiffies = 0x0, 
      accounting_timestamp = 0xfffb8e97, 
      subsys_data = 0x0, 
      qos = 0x0
    }, 
    pm_domain = 0x0, 
    numa_node = 0xffffffff, 
    dma_mask = 0x0, 
    coherent_dma_mask = 0x0, 
    dma_parms = 0x0, 
    dma_pools = {
      next = 0xffff880851232ac0, 
      prev = 0xffff880851232ac0
    }, 
    dma_mem = 0x0, 
    archdata = {
      dma_ops = 0x0, 
      iommu = 0x0
    }, 
    of_node = 0x0, 
    acpi_node = {
      handle = 0x0
    }, 
    devt = 0x0, 
    id = 0x0, 
    devres_lock = {
      {
        rlock = {
          raw_lock = {
            {
              head_tail = 0x101, 
              tickets = {
                head = 0x1, 
                tail = 0x1
              }
            }
          }
        }
      }
    }, 
    devres_head = {
      next = 0xffff880851232b08, 
      prev = 0xffff880851232b08
    }, 
    knode_class = {
      n_klist = 0x0, 
      n_node = {
        next = 0xdead000000100100, 
        prev = 0xdead000000200200
      }, 
      n_ref = {
        refcount = {
          counter = 0x0
        }
      }
    }, 
    class = 0xffffffff81c95a40, 
    groups = 0x0, 
    release = 0, 
    iommu_group = 0x0
  }, 
  ew = {
    work = {
      data = {
        counter = 0x0
      }, 
      entry = {
        next = 0x0, 
        prev = 0x0
      }, 
      func = 0
    }
  }, 
  requeue_work = {
    data = {
      counter = 0x10200
    }, 
    entry = {
      next = 0xffff880851232b80, 
      prev = 0xffff880851232b80
    }, 
    func = 0xffffffff814257c0 <scsi_requeue_run_queue>
  }, 
  scsi_dh_data = 0x0, 
  sdev_state = SDEV_DEL, 
  sdev_data = 0xffff880851232ba8
}
ffff880851235388
struct scsi_device {
  host = 0xffff8808513a4290, 
  request_queue = 0xffff88085107b690, 
  siblings = {
    next = 0xffff8808513a4290, 
    prev = 0xffff880851232530
  }, 
  same_target_siblings = {
    next = 0xffff88084ed99538, 
    prev = 0xffff88084ed99538
  }, 
  device_busy = 0x0, 
  list_lock = {
    {
      rlock = {
        raw_lock = {
          {
            head_tail = 0x3636, 
            tickets = {
              head = 0x36, 
              tail = 0x36
            }
          }
        }
      }
    }
  }, 
  cmd_list = {
    next = 0xffff8808512353c0, 
    prev = 0xffff8808512353c0
  }, 
  starved_entry = {
    next = 0xdead000000100100, 
    prev = 0xdead000000200200
  }, 
  current_cmnd = 0x0, 
  queue_depth = 0xfe, 
  max_queue_depth = 0xfe, 
  last_queue_full_depth = 0x0, 
  last_queue_full_count = 0x0, 
  last_queue_full_time = 0x0, 
  queue_ramp_up_period = 0x1d4c0, 
  last_queue_ramp_up = 0x0, 
  id = 0x1, 
  lun = 0x0, 
  channel = 0x0, 
  manufacturer = 0x0, 
  sector_size = 0x200, 
  hostdata = 0x0, 
  type = 0x0, 
  scsi_level = 0x7, 
  inq_periph_qual = 0x0, 
  inquiry_len = 0x90, 
  inquiry = 0xffff88084eda8410 "", 
  vendor = 0xffff88084eda8418 "SEAGATE ST9146853SS     00026XM02L18", 
  model = 0xffff88084eda8420 "ST9146853SS     00026XM02L18", 
  rev = 0xffff88084eda8430 "00026XM02L18", 
  current_tag = 0x0, 
  sdev_target = 0xffff88084ed99520, 
  sdev_bflags = 0x0, 
  writeable = 0x1, 
  removable = 0x0, 
  changed = 0x0, 
  busy = 0x0, 
  lockable = 0x0, 
  locked = 0x0, 
  borken = 0x0, 
  disconnect = 0x0, 
  soft_reset = 0x0, 
  sdtr = 0x0, 
  wdtr = 0x0, 
  ppr = 0x1, 
  tagged_supported = 0x1, 
  simple_tags = 0x0, 
  ordered_tags = 0x0, 
  was_reset = 0x0, 
  expecting_cc_ua = 0x0, 
  use_10_for_rw = 0x1, 
  use_10_for_ms = 0x0, 
  no_report_opcodes = 0x0, 
  no_write_same = 0x0, 
  use_16_for_rw = 0x0, 
  skip_ms_page_8 = 0x0, 
  skip_ms_page_3f = 0x0, 
  skip_vpd_pages = 0x0, 
  use_192_bytes_for_3f = 0x0, 
  no_start_on_add = 0x0, 
  allow_restart = 0x0, 
  manage_start_stop = 0x0, 
  start_stop_pwr_cond = 0x0, 
  no_uld_attach = 0x0, 
  select_no_atn = 0x0, 
  fix_capacity = 0x0, 
  guess_capacity = 0x0, 
  retry_hwerror = 0x0, 
  last_sector_bug = 0x0, 
  no_read_disc_info = 0x0, 
  no_read_capacity_16 = 0x0, 
  try_rc_10_first = 0x0, 
  is_visible = 0x1, 
  can_power_off = 0x0, 
  wce_default_on = 0x0, 
  no_dif = 0x0, 
  supported_events = {0x0}, 
  event_list = {
    next = 0xffff880851235478, 
    prev = 0xffff880851235478
  }, 
  event_work = {
    data = {
      counter = 0x10200
    }, 
    entry = {
      next = 0xffff880851235490, 
      prev = 0xffff880851235490
    }, 
    func = 0xffffffff81426020 <scsi_evt_thread>
  }, 
  device_blocked = 0x0, 
  max_device_blocked = 0x3, 
  iorequest_cnt = {
    counter = 0x21b
  }, 
  iodone_cnt = {
    counter = 0x21b
  }, 
  ioerr_cnt = {
    counter = 0x0
  }, 
  sdev_gendev = {
    parent = 0xffff88084ed99548, 
    p = 0xffff88084eda8e38, 
    kobj = {
      name = 0xffff88084eda0540 "0:0:1:0", 
      entry = {
        next = 0xffff8808512354d8, 
        prev = 0xffff8808512354d8
      }, 
      parent = 0x0, 
      kset = 0xffff88085f878b98, 
      ktype = 0xffffffff81c92240, 
      sd = 0x0, 
      kref = {
        refcount = {
          counter = 0x2
        }
      }, 
      state_initialized = 0x1, 
      state_in_sysfs = 0x0, 
      state_add_uevent_sent = 0x1, 
      state_remove_uevent_sent = 0x1, 
      uevent_suppress = 0x0
    }, 
    init_name = 0x0, 
    type = 0xffffffff81c95ac0, 
    mutex = {
      count = {
        counter = 0x1
      }, 
      wait_lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0x0, 
                tickets = {
                  head = 0x0, 
                  tail = 0x0
                }
              }
            }
          }
        }
      }, 
      wait_list = {
        next = 0xffff880851235528, 
        prev = 0xffff880851235528
      }, 
      owner = 0x0
    }, 
    bus = 0xffffffff81c95960, 
    driver = 0x0, 
    platform_data = 0x0, 
    power = {
      power_state = {
        event = 0xffffffff
      }, 
      can_wakeup = 0x0, 
      async_suspend = 0x1, 
      is_prepared = 0x0, 
      is_suspended = 0x0, 
      ignore_children = 0x0, 
      early_init = 0x1, 
      lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0xc4c4, 
                tickets = {
                  head = 0xc4, 
                  tail = 0xc4
                }
              }
            }
          }
        }
      }, 
      entry = {
        next = 0xffff880851235560, 
        prev = 0xffff880851235560
      }, 
      completion = {
        done = 0xfffffffe, 
        wait = {
          lock = {
            {
              rlock = {
                raw_lock = {
                  {
                    head_tail = 0x202, 
                    tickets = {
                      head = 0x2, 
                      tail = 0x2
                    }
                  }
                }
              }
            }
          }, 
          task_list = {
            next = 0xffff880851235580, 
            prev = 0xffff880851235580
          }
        }
      }, 
      wakeup = 0x0, 
      wakeup_path = 0x0, 
      syscore = 0x0, 
      suspend_timer = {
        entry = {
          next = 0x0, 
          prev = 0x0
        }, 
        expires = 0x0, 
        base = 0xffff8808546f4000, 
        function = 0xffffffff814092d0 <pm_suspend_timer_fn>, 
        data = 0xffff8808512354c0, 
        slack = 0xffffffff, 
        start_pid = 0xffffffff, 
        start_site = 0x0, 
        start_comm = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
      }, 
      timer_expires = 0x0, 
      work = {
        data = {
          counter = 0x10200
        }, 
        entry = {
          next = 0xffff880851235600, 
          prev = 0xffff880851235600
        }, 
        func = 0xffffffff8140a6b0 <pm_runtime_work>
      }, 
      wait_queue = {
        lock = {
          {
            rlock = {
              raw_lock = {
                {
                  head_tail = 0x0, 
                  tickets = {
                    head = 0x0, 
                    tail = 0x0
                  }
                }
              }
            }
          }
        }, 
        task_list = {
          next = 0xffff880851235620, 
          prev = 0xffff880851235620
        }
      }, 
      usage_count = {
        counter = 0x3
      }, 
      child_count = {
        counter = 0x0
      }, 
      disable_depth = 0x1, 
      idle_notification = 0x0, 
      request_pending = 0x0, 
      deferred_resume = 0x0, 
      run_wake = 0x0, 
      runtime_auto = 0x0, 
      no_callbacks = 0x0, 
      irq_safe = 0x0, 
      use_autosuspend = 0x0, 
      timer_autosuspends = 0x0, 
      request = RPM_REQ_NONE, 
      runtime_status = RPM_SUSPENDED, 
      runtime_error = 0x0, 
      autosuspend_delay = 0x0, 
      last_busy = 0x0, 
      active_jiffies = 0x0, 
      suspended_jiffies = 0x0, 
      accounting_timestamp = 0xfffd2515, 
      subsys_data = 0x0, 
      qos = 0x0
    }, 
    pm_domain = 0x0, 
    numa_node = 0xffffffff, 
    dma_mask = 0x0, 
    coherent_dma_mask = 0x0, 
    dma_parms = 0x0, 
    dma_pools = {
      next = 0xffff8808512356a8, 
      prev = 0xffff8808512356a8
    }, 
    dma_mem = 0x0, 
    archdata = {
      dma_ops = 0x0, 
      iommu = 0x0
    }, 
    of_node = 0x0, 
    acpi_node = {
      handle = 0x0
    }, 
    devt = 0x0, 
    id = 0x0, 
    devres_lock = {
      {
        rlock = {
          raw_lock = {
            {
              head_tail = 0x202, 
              tickets = {
                head = 0x2, 
                tail = 0x2
              }
            }
          }
        }
      }
    }, 
    devres_head = {
      next = 0xffff8808512356f0, 
      prev = 0xffff8808512356f0
    }, 
    knode_class = {
      n_klist = 0x0, 
      n_node = {
        next = 0x0, 
        prev = 0x0
      }, 
      n_ref = {
        refcount = {
          counter = 0x0
        }
      }
    }, 
    class = 0x0, 
    groups = 0x0, 
    release = 0, 
    iommu_group = 0x0
  }, 
  sdev_dev = {
    parent = 0xffff8808512354c0, 
    p = 0xffff88084eda9248, 
    kobj = {
      name = 0xffff88084eda3870 "kkkkkkk\245\273\273\273\273\273\273\273\273\060\063\332N\b\210\377\377\261\222\060\201\377\377\377\377y\216e\201\377\377\377\377?\356\030\201\377\377\377\377{U1\201\377\377\377\377\261\222\060\201\377\377\377\377\241\221?\201\377\377\377\377\250\245B\201\377\377\377\377\256fB\201\377\377\377\377\247kB\201\377\377\377\377\201{B\201\377\377\377\377", 
      entry = {
        next = 0xffff880851235758, 
        prev = 0xffff880851235758
      }, 
      parent = 0x0, 
      kset = 0xffff88085f878b98, 
      ktype = 0xffffffff81c92240, 
      sd = 0x0, 
      kref = {
        refcount = {
          counter = 0x0
        }
      }, 
      state_initialized = 0x1, 
      state_in_sysfs = 0x0, 
      state_add_uevent_sent = 0x1, 
      state_remove_uevent_sent = 0x1, 
      uevent_suppress = 0x0
    }, 
    init_name = 0x0, 
    type = 0x0, 
    mutex = {
      count = {
        counter = 0x1
      }, 
      wait_lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0x0, 
                tickets = {
                  head = 0x0, 
                  tail = 0x0
                }
              }
            }
          }
        }
      }, 
      wait_list = {
        next = 0xffff8808512357a8, 
        prev = 0xffff8808512357a8
      }, 
      owner = 0x0
    }, 
    bus = 0x0, 
    driver = 0x0, 
    platform_data = 0x0, 
    power = {
      power_state = {
        event = 0xffffffff
      }, 
      can_wakeup = 0x0, 
      async_suspend = 0x1, 
      is_prepared = 0x0, 
      is_suspended = 0x0, 
      ignore_children = 0x0, 
      early_init = 0x1, 
      lock = {
        {
          rlock = {
            raw_lock = {
              {
                head_tail = 0x101, 
                tickets = {
                  head = 0x1, 
                  tail = 0x1
                }
              }
            }
          }
        }
      }, 
      entry = {
        next = 0xffff8808512357e0, 
        prev = 0xffff8808512357e0
      }, 
      completion = {
        done = 0xfffffffe, 
        wait = {
          lock = {
            {
              rlock = {
                raw_lock = {
                  {
                    head_tail = 0x202, 
                    tickets = {
                      head = 0x2, 
                      tail = 0x2
                    }
                  }
                }
              }
            }
          }, 
          task_list = {
            next = 0xffff880851235800, 
            prev = 0xffff880851235800
          }
        }
      }, 
      wakeup = 0x0, 
      wakeup_path = 0x0, 
      syscore = 0x0, 
      suspend_timer = {
        entry = {
          next = 0x0, 
          prev = 0x0
        }, 
        expires = 0x0, 
        base = 0xffff8808546f4000, 
        function = 0xffffffff814092d0 <pm_suspend_timer_fn>, 
        data = 0xffff880851235740, 
        slack = 0xffffffff, 
        start_pid = 0xffffffff, 
        start_site = 0x0, 
        start_comm = "\000\000\000\000\000\000\000\000\000\000\000\000\000\000\000"
      }, 
      timer_expires = 0x0, 
      work = {
        data = {
          counter = 0x10200
        }, 
        entry = {
          next = 0xffff880851235880, 
          prev = 0xffff880851235880
        }, 
        func = 0xffffffff8140a6b0 <pm_runtime_work>
      }, 
      wait_queue = {
        lock = {
          {
            rlock = {
              raw_lock = {
                {
                  head_tail = 0x0, 
                  tickets = {
                    head = 0x0, 
                    tail = 0x0
                  }
                }
              }
            }
          }
        }, 
        task_list = {
          next = 0xffff8808512358a0, 
          prev = 0xffff8808512358a0
        }
      }, 
      usage_count = {
        counter = 0x0
      }, 
      child_count = {
        counter = 0x0
      }, 
      disable_depth = 0x2, 
      idle_notification = 0x0, 
      request_pending = 0x0, 
      deferred_resume = 0x0, 
      run_wake = 0x0, 
      runtime_auto = 0x1, 
      no_callbacks = 0x0, 
      irq_safe = 0x0, 
      use_autosuspend = 0x0, 
      timer_autosuspends = 0x0, 
      request = RPM_REQ_NONE, 
      runtime_status = RPM_SUSPENDED, 
      runtime_error = 0x0, 
      autosuspend_delay = 0x0, 
      last_busy = 0x0, 
      active_jiffies = 0x0, 
      suspended_jiffies = 0x0, 
      accounting_timestamp = 0xfffb8e9a, 
      subsys_data = 0x0, 
      qos = 0x0
    }, 
    pm_domain = 0x0, 
    numa_node = 0xffffffff, 
    dma_mask = 0x0, 
    coherent_dma_mask = 0x0, 
    dma_parms = 0x0, 
    dma_pools = {
      next = 0xffff880851235928, 
      prev = 0xffff880851235928
    }, 
    dma_mem = 0x0, 
    archdata = {
      dma_ops = 0x0, 
      iommu = 0x0
    }, 
    of_node = 0x0, 
    acpi_node = {
      handle = 0x0
    }, 
    devt = 0x0, 
    id = 0x0, 
    devres_lock = {
      {
        rlock = {
          raw_lock = {
            {
              head_tail = 0x101, 
              tickets = {
                head = 0x1, 
                tail = 0x1
              }
            }
          }
        }
      }
    }, 
    devres_head = {
      next = 0xffff880851235970, 
      prev = 0xffff880851235970
    }, 
    knode_class = {
      n_klist = 0x0, 
      n_node = {
        next = 0xdead000000100100, 
        prev = 0xdead000000200200
      }, 
      n_ref = {
        refcount = {
          counter = 0x0
        }
      }
    }, 
    class = 0xffffffff81c95a40, 
    groups = 0x0, 
    release = 0, 
    iommu_group = 0x0
  }, 
  ew = {
    work = {
      data = {
        counter = 0x0
      }, 
      entry = {
        next = 0x0, 
        prev = 0x0
      }, 
      func = 0
    }
  }, 
  requeue_work = {
    data = {
      counter = 0x10200
    }, 
    entry = {
      next = 0xffff8808512359e8, 
      prev = 0xffff8808512359e8
    }, 
    func = 0xffffffff814257c0 <scsi_requeue_run_queue>
  }, 
  scsi_dh_data = 0x0, 
  sdev_state = SDEV_DEL, 
  sdev_data = 0xffff880851235a10
}
--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux