1. 05 Nov, 2007 3 commits
    • Gerald Schaefer's avatar
      [S390] device_schedule_callback() for dcssblk. · 931bb68b
      Gerald Schaefer authored
      Unregistering a device from within a device attribute handler leads to
      a deadlock. Need to use device_schedule_callback() to unregister device
      in error path.
      Signed-off-by: default avatarGerald Schaefer <geraldsc@de.ibm.com>
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      931bb68b
    • Christian Borntraeger's avatar
      [S390] Fix smsgiucv init on no iucv machines · 0fc3ddd6
      Christian Borntraeger authored
      smsgiucv is a driver that relies on iucv to work properly. If
      iucv ans smsgiucv are compiled into the kernel and run on an
      lpar the following scenario happens:
      iucv is initialized early as a subsystem. It checks for z/VM and
      returns with EPROTONOTSUPPORT. Later smsgiucv tries to run
      driver_register with iucv_bus as bus. As this bus is not
      initialized the driver core and list debugging issue several
      warnings and oopses.
      
      Solution is to let smsgiucv also check for z/VM and return
      EPROTONOTSUPPORT as well.
      Signed-off-by: default avatarChristian Borntraeger <borntraeger@de.ibm.com>
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      0fc3ddd6
    • Heiko Carstens's avatar
      [S390] cio: use INIT_WORK to initialize struct work. · 33583c36
      Heiko Carstens authored
      Use INIT_WORK to initialize struct work and don't initialize a
      struct work partial by explicitly initializing its private structures.
      Fixes the following lockdep bug because no key was assigned:
      
      INFO: trying to register non-static key.
      the code is fine but needs lockdep annotation.
      turning off the locking correctness validator.
      0000000001f07bb8 0000000001f07bf8 0000000000000002 0000000000000000
             0000000001f07c98 0000000001f07c10 0000000001f07c10 0000000000015406
             0000000000000000 0000000000000002 0000000000000000 0000000000000000
             0000000001f07bf8 000000000000000c 0000000001f07bf8 0000000001f07c68
             000000000039ae60 0000000000015406 0000000001f07bf8 0000000001f07c48
      Call Trace:
      ([<0000000000015376>] show_trace+0xda/0x104)
       [<0000000000015460>] show_stack+0xc0/0xf8
       [<00000000000154c6>] dump_stack+0x2e/0x3c
       [<000000000006a71e>] __lock_acquire+0x47e/0x11a0
       [<000000000006b4f0>] lock_acquire+0xb0/0xd8
       [<00000000000555a6>] run_workqueue+0x1aa/0x24c
       [<00000000000556de>] worker_thread+0x96/0xf4
       [<000000000005c210>] kthread+0x90/0xb4
       [<000000000001947a>] kernel_thread_starter+0x6/0xc
       [<0000000000019474>] kernel_thread_starter+0x0/0xc
      Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      33583c36
  2. 03 Nov, 2007 4 commits
  3. 02 Nov, 2007 32 commits
  4. 01 Nov, 2007 1 commit