Commit:     33583c3657ef30cd7f4cb563071ac23cb6ff69a0
Parent:     74521c28e550c4ec265cda14114bd9b908e9de34
Author:     Heiko Carstens <[EMAIL PROTECTED]>
AuthorDate: Mon Nov 5 11:10:07 2007 +0100
Committer:  Martin Schwidefsky <[EMAIL PROTECTED]>
CommitDate: Mon Nov 5 11:10:16 2007 +0100

    [S390] cio: use INIT_WORK to initialize struct work.
    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: Heiko Carstens <[EMAIL PROTECTED]>
    Signed-off-by: Martin Schwidefsky <[EMAIL PROTECTED]>
 drivers/s390/cio/device.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/drivers/s390/cio/device.c b/drivers/s390/cio/device.c
index 7ee57f0..74f6b53 100644
--- a/drivers/s390/cio/device.c
+++ b/drivers/s390/cio/device.c
@@ -738,7 +738,7 @@ static int io_subchannel_initialize_dev(struct subchannel 
        atomic_set(&cdev->private->onoff, 0);
        cdev->dev.parent = &sch->dev;
        cdev->dev.release = ccw_device_release;
-       INIT_LIST_HEAD(&cdev->private->kick_work.entry);
+       INIT_WORK(&cdev->private->kick_work, NULL);
        cdev->dev.groups = ccwdev_attr_groups;
        /* Do first half of device_register. */
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at

Reply via email to