)]}'
{
  "log": [
    {
      "commit": "75cb71f3184f3dd5b78d991d5e0e047774865f5d",
      "tree": "d58ce30b5466e9b36433ffcc886ad383fcbadafb",
      "parents": [
        "43ae8a1b32735c662ba7ebf3509c4f670f75e3d5"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Tue Apr 14 15:36:22 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Apr 14 15:37:24 2009 +0200"
      },
      "message": "[S390] qdio: remove dead timeout handler\n\nThe QDIO ccw devices are started by ccw_device_start so no timeout\ncan occur for the interrupt handler. Remove the dead code.\n\nIn case of an I/O error set the device state to error and wake up\na possibly running qdio_shutdown waiter.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "99f6a570eedc885675b6aa36b7acdbdcc3a7f55b",
      "tree": "5695c53060a59c00a2ba093264b2342ed56835d1",
      "parents": [
        "b5cd99e6b002776c0e946f38292adbb0258b7983"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Tue Mar 31 19:16:07 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Mar 31 19:17:07 2009 +0200"
      },
      "message": "[S390] cio: online_store - trigger recognition for boxed devices\n\nStart a new device recognition if someone writes to sysfs online attribute\nof a boxed ccw device. The current test will fail, since cu_type !\u003d 0\nfor devices which were recognized before.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "b5cd99e6b002776c0e946f38292adbb0258b7983",
      "tree": "5ab63d9d5ee4e325b6221107873b1c32573682b0",
      "parents": [
        "47593bfa1056d306fde067b28dd8617009be4121"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Tue Mar 31 19:16:06 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Mar 31 19:17:06 2009 +0200"
      },
      "message": "[S390] cio: disallow online setting of device in transient state\n\nReturn -EAGAIN on writes to sysfs online attribute if the corresponding\nccw device is in transient state.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "47593bfa1056d306fde067b28dd8617009be4121",
      "tree": "3bbad2e48bb773ac4b6f8e0efb4214c75cede7f5",
      "parents": [
        "c4621a62649a56f155a96dfc5de479be226f0768"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Tue Mar 31 19:16:05 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Mar 31 19:17:06 2009 +0200"
      },
      "message": "[S390] cio: introduce notifier for boxed state\n\nIf a ccw device did not respond in time during internal io, we set it\ninto boxed state. With this patch we have the following behaviour:\n * the ccw driver will get a notification if the device was online and\n   goes into the boxed state\n * if the device was disconnected and got boxed nothing special is to be\n   done (it will be handled in reprobing later)\n * if the device got boxed while initial sensing it will be unregistered\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "c4621a62649a56f155a96dfc5de479be226f0768",
      "tree": "76812f021dc4eec912f67a4662abed6ec8e8f626",
      "parents": [
        "156013ffd1225ef862853a4340b46f76845f8db1"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Tue Mar 31 19:16:04 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Mar 31 19:17:05 2009 +0200"
      },
      "message": "[S390] cio: introduce ccw_device_schedule_sch_unregister\n\nIntroduce ccw_device_schedule_sch_unregister as a wrapper for queuing\nccw_device_call_sch_unregister on the slow_path_wq. This wrapper\nwill be used in the next patch.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "156013ffd1225ef862853a4340b46f76845f8db1",
      "tree": "0e6b202a111a483b9f44961508b3694dc0022df9",
      "parents": [
        "33b26d7951619e4debf3a82f30a03423a36a1412"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Tue Mar 31 19:16:03 2009 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Mar 31 19:17:03 2009 +0200"
      },
      "message": "[S390] cio: wake up on failed recognition\n\nWake up even on failed device recognition, since this may be triggered\nfrom a user trying to force a device online. With this patch a write\nto the online sysfs attribute will not block for ever but return with\n-EAGAIN in this case.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "21cdbc1378e8aa96e1ed4a606dce1a8e7daf7fdf",
      "tree": "55b6c294b912ccdc3eede15960b0ece53a69d902",
      "parents": [
        "86d9c070175de65890794fa227b68297da6206d8",
        "ef3500b2b2955af4fa6b0564b51c0c604e38c571"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 16:04:22 2009 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 26 16:04:22 2009 -0700"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.marist.edu/pub/scm/linux-2.6: (81 commits)\n  [S390] remove duplicated #includes\n  [S390] cpumask: use mm_cpumask() wrapper\n  [S390] cpumask: Use accessors code.\n  [S390] cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits.\n  [S390] cpumask: remove cpu_coregroup_map\n  [S390] fix clock comparator save area usage\n  [S390] Add hwcap flag for the etf3 enhancement facility\n  [S390] Ensure that ipl panic notifier is called late.\n  [S390] fix dfp elf hwcap/facility bit detection\n  [S390] smp: perform initial cpu reset before starting a cpu\n  [S390] smp: fix memory leak on __cpu_up\n  [S390] ipl: Improve checking logic and remove switch defaults.\n  [S390] s390dbf: Remove needless check for NULL pointer.\n  [S390] s390dbf: Remove redundant initilizations.\n  [S390] use kzfree()\n  [S390] BUG to BUG_ON changes\n  [S390] zfcpdump: Prevent zcore from beeing built as a kernel module.\n  [S390] Use csum_partial in checksum.h\n  [S390] cleanup lowcore.h\n  [S390] eliminate ipl_device from lowcore\n  ...\n"
    },
    {
      "commit": "7b4684880dfc6c45bc56039ca5eada771d7643ab",
      "tree": "f572dc77a13e56a417616a9b49f74a68ed1dc99a",
      "parents": [
        "2938af534d47891ddbced552e5d29f7b90bec609"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:42 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:26 2009 +0100"
      },
      "message": "[S390] eliminate cpuinfo_S390 structure\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "9c8a08d7a74b07ab2c47e259231d9d0f0047a3c1",
      "tree": "44222f7c11283a4aba13c33a75b5634929084a8e",
      "parents": [
        "d303b6fd858370c22d5c70c313669e3521a5f758"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:32 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:22 2009 +0100"
      },
      "message": "[S390] qdio: merge inbound and outbound handler functions\n\nThe inbound and outbound handlers are nearly identical if the outbound\nhandler uses first_to_check as end index instead of last_move. Since both\nvalues are identical at that point the handlers can be merged.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d303b6fd858370c22d5c70c313669e3521a5f758",
      "tree": "3c8dd573bc3ea48af8f12c41e5f00358c09a579a",
      "parents": [
        "9e890ad880be1dd98483313b2ec0e23fbd4e3792"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:31 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:22 2009 +0100"
      },
      "message": "[S390] qdio: report SIGA errors directly\n\nErrors from SIGA instructions are stored in the per queue qdio_error\nand reported back when the queue handler is called. That opens a race\nwhen multiple error conditions occur simultanously.\n\nReport SIGA errors immediately in the return value of do_QDIO so the\nupper layer can react and SIGA errors no longer interfere with other\nerrors.\n\nMove the SIGA error handling in qeth from the outbound handler to\nqeth_flush_buffers.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "9e890ad880be1dd98483313b2ec0e23fbd4e3792",
      "tree": "30c45a05b7d00ed418e5bfa2fe355fc68916f075",
      "parents": [
        "e85dea0e415617b5c5627f38c71b33fbc7f94a85"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:30 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:21 2009 +0100"
      },
      "message": "[S390] qdio: tasklet termination in case of module unload\n\nIf the qdio module is unloaded the tiqdio tasklet must be terminated\nby tasklet_kill. Move the tasklet_kill after the unregistration of\nthe adapter interrupt so the tiqdio tasklet will not be scheduled\nanymore before calling tasklet_kill.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e85dea0e415617b5c5627f38c71b33fbc7f94a85",
      "tree": "59400d25cb978f66e3b2906dbed01813b617e0ba",
      "parents": [
        "3fdf1e18cbc7c58f2d5604315ddae3596725bc6a"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:29 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:21 2009 +0100"
      },
      "message": "[S390] qdio: seperate last move index and polling index\n\nThe index value that indicated that the input queue moved was also used to\nstore the index of the first acknowledged buffer. For non-qebsm only the\nnewest buffer is acknowledged which may be different from the last move index\nso two seperate values are needed to track the input queue.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "3fdf1e18cbc7c58f2d5604315ddae3596725bc6a",
      "tree": "b5c145145d55b278b7ae4fcbf544518895a00ca7",
      "parents": [
        "700e982f28f5e13cef8eea93ac8c6702f699d894"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:28 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:21 2009 +0100"
      },
      "message": "[S390] qdio: move ACK to newest buffer for devices without QEBSM\n\nThe ACKnowledgement state should be set on the newest SBAL so an\nadapter interrupt surpression check needs to scan fewer SBALs.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "700e982f28f5e13cef8eea93ac8c6702f699d894",
      "tree": "c91163f8972c0e1226d6db3c90ea31578f229c2b",
      "parents": [
        "c38f96080955854e54df9cb392bc674e1ae330e1"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:27 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:20 2009 +0100"
      },
      "message": "[S390] qdio: call qdio_free also if qdio_shutdown fails\n\nqdio_cleanup is a wrapper function that should call qdio_shutdown and\nqdio_free. qdio_free was not called if an error occured in qdio_shutdown\nresulting in a missing free of allocated resources.\n\nCall qdio_free regardless of the return value of qdio_shutdown.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "c38f96080955854e54df9cb392bc674e1ae330e1",
      "tree": "8bfc4019e8c52aaf40c9e76ca0372915c76c3a27",
      "parents": [
        "e4c14e2085cd32f61e9ffc47d5b20d4f5f7639f3"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:26 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:20 2009 +0100"
      },
      "message": "[S390] qdio: proper kill of qdio tasklets\n\nThe queue tasklets were stopped with tasklet_disable. Although tasklet_disable\nprevents the tasklet from beeing executed it is still possible that a tasklet\nis scheduled on a CPU at that point. A following qdio_establish calls\ntasklet_init which clears the tasklet count and the tasklet state leading to\nthe following Oops:\n\n    \u003c2\u003ekernel BUG at kernel/softirq.c:392!\n    \u003c4\u003eillegal operation: 0001 [#1] SMP\n    \u003c4\u003eModules linked in: iptable_filter ip_tables x_tables dm_round_robin dm_multipath scsi_dh sg sd_mod crc_t10dif nfs lockd nfs\n_acl sunrpc fuse loop dm_mod qeth_l3 ipv6 zfcp qeth scsi_transport_fc qdio scsi_tgt scsi_mod chsc_sch ccwgroup dasd_eckd_mod dasdm\nod ext3 mbcache jbd\n    \u003c4\u003eSupported: Yes\n    \u003c4\u003eCPU: 0 Not tainted 2.6.27.13-1.1.mz13-default #1\n    \u003c4\u003eProcess blast.LzS_64 (pid: 16445, task: 000000006cc02538, ksp: 000000006cb67998)\n    \u003c4\u003eKrnl PSW : 0704c00180000000 00000000001399f4 (tasklet_action+0xc8/0x1d4)\n    \u003c4\u003e           R:0 T:1 IO:1 EX:1 Key:0 M:1 W:0 P:0 AS:3 CC:0 PM:0 EA:3\n    \u003c4\u003eKrnl GPRS: ffffffff00000030 0000000000000002 0000000000000002 fffffffffffffffe\n    \u003c4\u003e           000000000013aabe 00000000003b6a18 fffffffffffffffd 0000000000000000\n    \u003c4\u003e           00000000006705a8 000000007d0914a8 000000007d0914b0 000000007fecfd30\n    \u003c4\u003e           0000000000000000 00000000003b63e8 000000007fecfd90 000000007fecfd30\n    \u003c4\u003eKrnl Code: 00000000001399e8: b9200021            cgr     %r2,%r1\n    \u003c4\u003e           00000000001399ec: a7740004            brc     7,1399f4\n    \u003c4\u003e           00000000001399f0: a7f40001            brc     15,1399f2\n    \u003c4\u003e          \u003e00000000001399f4: c0100027e8ee        larl    %r1,636bd0\n    \u003c4\u003e           00000000001399fa: bf1f1008            icm     %r1,15,8(%r1)\n    \u003c4\u003e           00000000001399fe: a7840019            brc     8,139a30\n    \u003c4\u003e           0000000000139a02: c0300027e8ef        larl    %r3,636be0\n    \u003c4\u003e           0000000000139a08: e3c030000004        lg      %r12,0(%r3)\n    \u003c4\u003eCall Trace:\n    \u003c4\u003e([\u003c0000000000139c12\u003e] tasklet_hi_action+0x112/0x1d4)\n    \u003c4\u003e [\u003c000000000013aabe\u003e] __do_softirq+0xde/0x1c4\n    \u003c4\u003e [\u003c000000000010fa2e\u003e] do_softirq+0x96/0xb0\n    \u003c4\u003e [\u003c000000000013a8d8\u003e] irq_exit+0x70/0xcc\n    \u003c4\u003e [\u003c000000000010d1d8\u003e] do_extint+0xf0/0x110\n    \u003c4\u003e [\u003c0000000000113b10\u003e] ext_no_vtime+0x16/0x1a\n    \u003c4\u003e [\u003c000003e0000a3662\u003e] ext3_dirty_inode+0xe6/0xe8 [ext3]\n    \u003c4\u003e([\u003c00000000001f6cf2\u003e] __mark_inode_dirty+0x52/0x1d4)\n    \u003c4\u003e [\u003c000003e0000a44f0\u003e] ext3_ordered_write_end+0x138/0x190 [ext3]\n    \u003c4\u003e [\u003c000000000018d5ec\u003e] generic_perform_write+0x174/0x230\n    \u003c4\u003e [\u003c0000000000190144\u003e] generic_file_buffered_write+0xb4/0x194\n    \u003c4\u003e [\u003c0000000000190864\u003e] __generic_file_aio_write_nolock+0x418/0x454\n    \u003c4\u003e [\u003c0000000000190ee2\u003e] generic_file_aio_write+0x76/0xe4\n    \u003c4\u003e [\u003c000003e0000a05c2\u003e] ext3_file_write+0x3e/0xc8 [ext3]\n    \u003c4\u003e [\u003c00000000001cc2fe\u003e] do_sync_write+0xd6/0x120\n    \u003c4\u003e [\u003c00000000001ccfc8\u003e] vfs_write+0xac/0x184\n    \u003c4\u003e [\u003c00000000001cd218\u003e] SyS_write+0x68/0xe0\n    \u003c4\u003e [\u003c0000000000113402\u003e] sysc_noemu+0x10/0x16\n    \u003c4\u003e [\u003c0000020000043188\u003e] 0x20000043188\n    \u003c4\u003eLast Breaking-Event-Address:\n    \u003c4\u003e [\u003c00000000001399f0\u003e] tasklet_action+0xc4/0x1d4\n    \u003c6\u003eqdio: 0.0.c61b ZFCP on SC f67 using AI:1 QEBSM:0 PCI:1 TDD:1 SIGA: W AOP\n    \u003c4\u003e \u003c0\u003eKernel panic - not syncing: Fatal exception in interrupt\n\nUse tasklet_kill instead of tasklet_disbale. Since tasklet_schedule must not be\ncalled after tasklet_kill use the QDIO_IRQ_STATE_STOPPED to inidicate that a\nqueue is going down and prevent further tasklet schedules in that case.\n\nRemove superflous tasklet_schedule from input queue setup, at that time\nthe queues are not ready so the schedule results in a NOP.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e4c14e2085cd32f61e9ffc47d5b20d4f5f7639f3",
      "tree": "d20047f2f8424dfc15238e562402e931fc49ba07",
      "parents": [
        "b454740246d14b0a9c00220696f9020eaa15ca12"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:25 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:20 2009 +0100"
      },
      "message": "[S390] qdio: Dont call qdio_shutdown in case qdio_activate fails\n\nRemove the call to qdio_shutdown from qdio_activate since the upper-layer\ndrivers are responsible to call qdio_shutdown when qdio_activate returns\nwith an error.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "b454740246d14b0a9c00220696f9020eaa15ca12",
      "tree": "8d0deb7de94992548aae364ef39f34c4c67cf096",
      "parents": [
        "feed9b62da6e2997612143ae4b857ec7f33c810d"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:24 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:19 2009 +0100"
      },
      "message": "[S390] qdio: add missing tiq_list locking\n\nAdd a mutex to protect the tiq_list. Although reading the list is done\nusing RCU adding and removing elements from the list must still\nhappen locked since multiple qdio devices may change the list in parallel\notherwise.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "56e25e9777bf15365293e27a3256eb9214a11edf",
      "tree": "832f5944f20379e33855cb55418b6407c81141a3",
      "parents": [
        "0cc110651bed4612074eeb445a23418a5ee34cd0"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Thu Mar 26 15:24:20 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:18 2009 +0100"
      },
      "message": "[S390] cio: prevent workqueue deadlock\n\nSubchannel reprobing can block the kslowcrw workqueue indefinitely\nwhile waiting for device recognition to finish which is also scheduled\nto run on kslowcrw. Prevent this deadlock by moving the waiting\nportion of subchannel reprobing to the cio workqueue.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "0cc110651bed4612074eeb445a23418a5ee34cd0",
      "tree": "aa20769d0d918c9bae7227d16fb355edc0bffc32",
      "parents": [
        "7a968f0565dc5d0518c784465cc8ce32408102b7"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:19 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:17 2009 +0100"
      },
      "message": "[S390] cio: remove unused local variable\n\nRemove unused subchannel pointer in io_subchannel_recog_done.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "7a968f0565dc5d0518c784465cc8ce32408102b7",
      "tree": "01b009632b10e00283832d57dbd4ff49367b8432",
      "parents": [
        "17e7d87d9f88480a75fc9c5978ab38131a074277"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Thu Mar 26 15:24:18 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:17 2009 +0100"
      },
      "message": "[S390] cio: incorrect status check in interrogate function\n\nFix incorrect check for active I/O in interrogate function.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "17e7d87d9f88480a75fc9c5978ab38131a074277",
      "tree": "7dfaa416a1d620c2112c0bb34c099b0a730442e9",
      "parents": [
        "94cbc203bee4ea87bd49ad56f6c5381bc10d8b6b"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:17 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:16 2009 +0100"
      },
      "message": "[S390] cio: fix rc generation after chsc call\n\nIn some situations a rc in __chsc_do_secm will be overwritten\nby another one. This shouldn\u0027t do harm since todays callers\ndon\u0027t check for _specific_ errors but fix it for the sake of\ncorrectness.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "94cbc203bee4ea87bd49ad56f6c5381bc10d8b6b",
      "tree": "0ca9d98b1137056d783b25bf8a5d1f69b2ff7a47",
      "parents": [
        "e909074bb91773680c0b2e49ea8af9f85c6f59bd"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:16 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:16 2009 +0100"
      },
      "message": "[S390] cio: fix wrong buffer access in cio_ignore_write\n\nWriting only spaces to /proc/cio_ignore will cause a buffer overflow\nsince the size_t value i will not become negative and so buf[-1UL] is\naccessed. Change the value of i to ssize_t.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e909074bb91773680c0b2e49ea8af9f85c6f59bd",
      "tree": "6d37028d4fdd85fe9ec429257fd7136cefa98118",
      "parents": [
        "50f1548399b7bd00ceb38c84a84463a89c82afe8"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:15 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:16 2009 +0100"
      },
      "message": "[S390] cio: ccw group fix unbind behaviour.\n\nFor a ccw group device unbinding it from its driver should do the\nsame as a call to ungroup, since this virtual device can not exist\nwithout a driver.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "50f1548399b7bd00ceb38c84a84463a89c82afe8",
      "tree": "c1d334bb49b1fc9cbeef9761dea1eb8ec979e4f8",
      "parents": [
        "40c9f9992bc1caa1bb890bd8163361dbf2eefa86"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:14 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:15 2009 +0100"
      },
      "message": "[S390] cio: fix sanity checks in ccwgroup driver.\n\nSome sanity checks in the ccw group driver test the output of\ncontainer_of macros to be !NULL. Test the input parameters instead.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "40c9f9992bc1caa1bb890bd8163361dbf2eefa86",
      "tree": "30f8617e481178dcf55dbe43d5c27fdb7d4baaa7",
      "parents": [
        "a1f640734ab57d548a3fdadad6b869da534d4ecb"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:13 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:15 2009 +0100"
      },
      "message": "[S390] cio: ccw group online store - report rcs to the caller.\n\nIn case the ccw group driver refuses to set a device [on|off]line,\nwe should transmit the return code to the caller.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "a1f640734ab57d548a3fdadad6b869da534d4ecb",
      "tree": "05b02b7afedc9b8f3bfbc6e8c11d46ba4247c0c7",
      "parents": [
        "90ac24a5aeb8d4bef001bd3589564a52846d0eee"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:12 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:14 2009 +0100"
      },
      "message": "[S390] cio: airq - fix array boundary\n\nMAX_ISC is a valid isc number, so arrays with an index of isc\nneed to have a length of MAX_ISC+1\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "90ac24a5aeb8d4bef001bd3589564a52846d0eee",
      "tree": "f57ed4032783a546507d244d147ce56f69b4c751",
      "parents": [
        "87fa5af80cdd5053b27a546725948c2b74ec82b2"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:11 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:14 2009 +0100"
      },
      "message": "[S390] cio: device scan oom fallback.\n\nSince some callers rely on for_each_subchannel_staged to not fail,\nfall back to brute force scanning using get_subchannel_by_schid in\ncase of a oom situation.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "87fa5af80cdd5053b27a546725948c2b74ec82b2",
      "tree": "1546f9e8ef711d5559638e7f9c570e2be242bb14",
      "parents": [
        "98c1c6825247c71e3d8a9a5439ba21fce7563014"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Mar 26 15:24:10 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:14 2009 +0100"
      },
      "message": "[S390] cio: ensure single load of irq handler pointer\n\nAdd barrier to prevent compiler from reloading pointer to irq handler.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "98c1c6825247c71e3d8a9a5439ba21fce7563014",
      "tree": "6e2311aff5eefba2aaad2f09b1c11b7b2b0eceae",
      "parents": [
        "e74fe0cec92439115630b51195444b89b910800a"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Mar 26 15:24:09 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:13 2009 +0100"
      },
      "message": "[S390] cio/crw: add/fix locking\n\nThe crw_unregister_handler uses xchg + synchronize_sched when\nunregistering a crw_handler.\nThis doesn\u0027t protect crw_collect_info to potentially jump to NULL since\nit has unlocked code like this:\n\nif (crw_handlers[i])\n        crw_handlers[i](NULL, NULL, 1);\n\nSo add a mutex which protects the crw handler array for changes.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e74fe0cec92439115630b51195444b89b910800a",
      "tree": "32ae9fd3fabbf59a50268234b73d3271974fdb91",
      "parents": [
        "c08f294a14cb4c2abbd1a9a619c2d8d07afd41e3"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Mar 26 15:24:08 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:13 2009 +0100"
      },
      "message": "[S390] cio: ccw device online store - report rc from ccw driver.\n\nIn case the ccw driver refuses to set a device offline, we should\ntransmit the return code to the caller.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "c08f294a14cb4c2abbd1a9a619c2d8d07afd41e3",
      "tree": "f736a186e9866365304afed40f4b723d89702867",
      "parents": [
        "ed04b892e28ae96662fbb3f4c961df5ff3385d28"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Mar 26 15:24:07 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:13 2009 +0100"
      },
      "message": "[S390] cio: Use ccw_device_set_notoper().\n\nUse ccw_device_set_notoper() (which also deletes the device\ntimer and disables the subchannel) instead of simply setting\nthe state to DEV_STATE_NOT_OPER in the generic not operational\nhandling code. This prevents unexpected interrupts popping up\nfor devices that are deemed not operational.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "ed04b892e28ae96662fbb3f4c961df5ff3385d28",
      "tree": "0cdfe7d22f306157eaa91162dd04b722ffe1bbeb",
      "parents": [
        "eb32ae8d0e052d1a287f99f93130ea2ad9af317e"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Mar 26 15:24:06 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:12 2009 +0100"
      },
      "message": "[S390] cio: Try harder to disable subchannel.\n\nActing upon the assumption that cio_disable_subchannel()\nis only called when we really want to disable the subchannel\n(a) remove the check for activity (it is already done in\n    ccw_device_offline(), which is the place where it matters)\n(b) collect pending status via tsch() and ignore it (it\n    can\u0027t matter anymore since the subchannel will be disabled).\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "eb32ae8d0e052d1a287f99f93130ea2ad9af317e",
      "tree": "a2841ecbe3768fe248b798a311fa2ebdd6aa0907",
      "parents": [
        "1485c5c88483d200c9c4c71ed7e8eef1a1e317a1"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Mar 26 15:24:05 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:12 2009 +0100"
      },
      "message": "[S390] cio: Use unbind/bind instead of unregister/register.\n\nThe common I/O layer may encounter a situation where the\ndevice number of a ccw device has changed or a device\ndriver doesn\u0027t want to keep a formerly disconnected device\nbecoming operational again. Instead of using device_del()/\ndevice_add() as now, we can just unbind the driver from the\ndevice and rebind it to get the desired effect (rebinding)\nwith less overhead.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "f5daba1d4116d964435ddd99f32b6c80448a496b",
      "tree": "0c4ace40971e9cc455b556a3d5691b64a24044b5",
      "parents": [
        "70193af9188113c9b4ff3dde1aed9f9c8f7c4f93"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Mar 26 15:24:01 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Mar 26 15:24:10 2009 +0100"
      },
      "message": "[S390] split/move machine check handler code\n\nSplit machine check handler code and move it to cio and kernel code\nwhere it belongs to. No functional change.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "669420644c79c207f83fdf9105ae782867e2991f",
      "tree": "668491b3700bcc65e45d5ff9471f6fde5d5743af",
      "parents": [
        "ffa6a7054d172a2f57248dff2de600ca795c5656"
      ],
      "author": {
        "name": "Alex Chiang",
        "email": "achiang@hp.com",
        "time": "Fri Mar 13 12:07:36 2009 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:26 2009 -0700"
      },
      "message": "sysfs: only allow one scheduled removal callback per kobj\n\nThe only way for a sysfs attribute to remove itself (without\ndeadlock) is to use the sysfs_schedule_callback() interface.\n\nVegard Nossum discovered that a poorly written sysfs -\u003estore\ncallback can repeatedly schedule remove callbacks on the same\ndevice over and over, e.g.\n\n\t$ while true ; do echo 1 \u003e /sys/devices/.../remove ; done\n\nIf the \u0027remove\u0027 attribute uses the sysfs_schedule_callback API\nand also does not protect itself from concurrent accesses, its\ncallback handler will be called multiple times, and will\neventually attempt to perform operations on a freed kobject,\nleading to many problems.\n\nInstead of requiring all callers of sysfs_schedule_callback to\nimplement their own synchronization, provide the protection in\nthe infrastructure.\n\nNow, sysfs_schedule_callback will only allow one scheduled\ncallback per kobject. On subsequent calls with the same kobject,\nreturn -EAGAIN.\n\nThis is a short term fix. The long term fix is to allow sysfs\nattributes to remove themselves directly, without any of this\ncallback hokey pokey.\n\n[cornelia.huck@de.ibm.com: s390 ccwgroup bits]\n\nReported-by: vegard.nossum@gmail.com\nSigned-off-by: Alex Chiang \u003cachiang@hp.com\u003e\nAcked-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "ffa6a7054d172a2f57248dff2de600ca795c5656",
      "tree": "f93c6234bb90295c52fcef09e367ed77ff6c3645",
      "parents": [
        "60530afe1ee8a5532cb09d0ab5bc3f1a6495b780"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Wed Mar 04 12:44:00 2009 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:26 2009 -0700"
      },
      "message": "Driver core: Fix device_move() vs. dpm list ordering, v2\n\ndpm_list currently relies on the fact that child devices will\nbe registered after their parents to get a correct suspend\norder. Using device_move() however destroys this assumption, as\nan already registered device may be moved under a newly registered\none.\n\nThis patch adds a new argument to device_move(), allowing callers\nto specify how dpm_list should be adapted.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f67f129e519fa87f8ebd236b6336fe43f31ee141",
      "tree": "e2832f6d012044f5d05c6130416832235c7d2730",
      "parents": [
        "4995f8ef9d3aac72745e12419d7fbaa8d01b1d81"
      ],
      "author": {
        "name": "Ming Lei",
        "email": "tom.leiming@gmail.com",
        "time": "Sun Mar 01 21:10:49 2009 +0800"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Tue Mar 24 16:38:26 2009 -0700"
      },
      "message": "Driver core: implement uevent suppress in kobject\n\nThis patch implements uevent suppress in kobject and removes it\nfrom struct device, based on the following ideas:\n\n1,Uevent sending should be one attribute of kobject, so suppressing it\nin kobject layer is more natural than in device layer. By this way,\nwe can do it for other objects embedded with kobject.\n\n2,It may save several bytes for each instance of struct device.(On my\nomap3(32bit ARM) based box, can save 8bytes per device object)\n\nThis patch also introduces dev_set|get_uevent_suppress() helpers to\nset and query uevent_suppress attribute in case to help kobject\nas private part of struct device in future.\n\n[This version is against the latest driver-core patch set of Greg,please\nignore the last version.]\n\nSigned-off-by: Ming Lei \u003ctom.leiming@gmail.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "19cdd08ba155dd87ebb87bb39ed097dbee671e0e",
      "tree": "480c3dd45ecda6b692637168b4aea7ddde6bfaae",
      "parents": [
        "81ffa0415b7ac9215c2030e2b15b8efff46605a0"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Fri Jan 09 12:14:55 2009 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Jan 09 12:15:07 2009 +0100"
      },
      "message": "[S390] qdio: fix broken pointer in case of CONFIG_DEBUG_FS is disabled\n\nIf CONFIG_DEBUG_FS is disabled debugfs_create_file returns -ENODEV instead\nof zero. Since the return value is stored and used at shutdown to remove\nexisting entries an OOPS may be triggered.\n\nAdd a check of the debugfs_create_file return value and in case of an error\nset the entry to NULL so it will be ignored at shutdown.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "73ac36ea14fd18ea3dc057e41b16ff31a3c0bd5a",
      "tree": "7f187cade83d9ca9bd180273c25e1216a1dff506",
      "parents": [
        "da2bdf9a6ff40b10d77620d0d76b02a738c103cb"
      ],
      "author": {
        "name": "Coly Li",
        "email": "coyli@suse.de",
        "time": "Wed Jan 07 18:09:16 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Jan 08 08:31:15 2009 -0800"
      },
      "message": "fix similar typos to successfull\n\nWhen I review ocfs2 code, find there are 2 typos to \"successfull\".  After\ndoing grep \"successfull \" in kernel tree, 22 typos found totally -- great\nminds always think alike :)\n\nThis patch fixes all the similar typos. Thanks for Randy\u0027s ack and comments.\n\nSigned-off-by: Coly Li \u003ccoyli@suse.de\u003e\nAcked-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nAcked-by: Roland Dreier \u003crolandd@cisco.com\u003e\nCc: Jeremy Kerr \u003cjk@ozlabs.org\u003e\nCc: Jeff Garzik \u003cjeff@garzik.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: Theodore Ts\u0027o \u003ctytso@mit.edu\u003e\nCc: Mark Fasheh \u003cmfasheh@suse.com\u003e\nCc: Vlad Yasevich \u003cvladislav.yasevich@hp.com\u003e\nCc: Sridhar Samudrala \u003csri@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9cfb9b3c3a7361c793c031e9c3583b177ac5debd",
      "tree": "b735c71e6fee3fd1464c21ce53f93d98ceddf90d",
      "parents": [
        "6f43092441bda528dd38f2dc6c1e2522c5079fb7"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Dec 31 15:11:41 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Wed Dec 31 15:11:48 2008 +0100"
      },
      "message": "[PATCH] improve idle cputime accounting\n\nDistinguish the cputime of the idle process where idle is actually using\ncpu cycles from the cputime where idle is sleeping on an enabled wait psw.\nThe former is accounted as system time, the later as idle time.\n\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "e6d5a428e01b1387852f17b3dd7934239a0be0d4",
      "tree": "2b8325b4e90d43918195022cdc4c4c1726bda477",
      "parents": [
        "80a5c36d1dae15520aa0df0eff713c6c41c46035"
      ],
      "author": {
        "name": "Michael Ernst",
        "email": "mernst@de.ibm.com",
        "time": "Thu Dec 25 13:39:36 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:20 2008 +0100"
      },
      "message": "[S390] convert cio printks to pr_xxx macros.\n\nSigned-off-by: Michael Ernst \u003cmernst@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d36f0c66389eb5e4dbd9b095eea252230ba3273e",
      "tree": "c6c8e470455544d6f7472b86d8b2f97741257c90",
      "parents": [
        "f444cc0e52523560a8dfc12f5374e5d5ecf5375b"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:39:15 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:11 2008 +0100"
      },
      "message": "[S390] cio: use pim to check for multipath.\n\nTo check if multipath is available we count the bits set in lpm,\nwhich could change over time (via configure [on|off] of a path).\n\nThe following patch uses the pim (which is persistent) for this\ndecision.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "f444cc0e52523560a8dfc12f5374e5d5ecf5375b",
      "tree": "b2e9e3bf7ac0d15353cc8a26616a354e889370da",
      "parents": [
        "13952ec12dfeea793ff83c2a96139ed57eb0b897"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:39:14 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:10 2008 +0100"
      },
      "message": "[S390] cio: commit all pmcw changes.\n\nSometimes we change the pmcw configuration but don\u0027t call msch\nto transmit these changes to the channel subsystem.\n\nThe patch fixes this by calling cio_commit_config in such cases.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "13952ec12dfeea793ff83c2a96139ed57eb0b897",
      "tree": "3311df62a1794bf95f78b2c57f25f0a79dc84523",
      "parents": [
        "cdb912a40df8b8507ab60b3d52f9980c0ba1f44d"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:39:13 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:10 2008 +0100"
      },
      "message": "[S390] cio: introduce cio_commit_config\n\nTo change the configuration of a subchannel we alter the modifiable\nbits of the subchannel\u0027s schib field and issue a modify subchannel.\nThere can be the case that not all changes were applied -or worse-\nquietly overwritten by the hardware. With the next store subchannel\nwe obtain the current state of the hardware but lose our target\nconfiguration.\n\nWith this patch we introduce a subchannel_config structure which\ncontains the target subchannel configuration. Additionally the msch\nwrapper cio_modify is replaced with cio_commit_config which\ncopies the desired changes to a temporary schib. msch is then\ncalled with the temporary schib. This schib is only written back\nto the subchannel if all changes were applied.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "cdb912a40df8b8507ab60b3d52f9980c0ba1f44d",
      "tree": "52d693b3515b71b4f84b539d41571facb75498db",
      "parents": [
        "d6a30761d8116b8de8a5b5e79e68cce81d36414b"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:39:12 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:10 2008 +0100"
      },
      "message": "[S390] cio: introduce cio_update_schib\n\nThere is the chance that we get condition code 0 for a stsch but\nthe resulting schib is not vaild. In the current code there are\n2 cases:\n* we do a check for validity of the schib after stsch, but at this\n  time we have already stored the invaild schib in the subchannel\n  structure. This may lead to problems.\n* we don\u0027t do a check for validity, which is not that good either.\n\nThe patch addresses both issues by introducing the stsch wrapper\ncio_update_schib which performs stsch on a local schib. This schib\nis only written back to the subchannel if it\u0027s valid.\n\nside note: For some functions (chp_events) the return codes are\ndifferent now (-ENXIO vs -ENODEV) but this shouldn\u0027t do harm\nsince the caller doesn\u0027t check for _specific_ errors.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d6a30761d8116b8de8a5b5e79e68cce81d36414b",
      "tree": "0b8a95f531f5352833d6915acb43ca46942747bd",
      "parents": [
        "283fdd0b8ab102080dbffe4bcaae245f9ceda184"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Dec 25 13:39:11 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:09 2008 +0100"
      },
      "message": "[S390] cio: Use device_is_registered().\n\nCheck if a ccw device is registered via device_is_registered()\nand not via the old kludge of checking the membership in driver\ncore internal klists.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "283fdd0b8ab102080dbffe4bcaae245f9ceda184",
      "tree": "fb78943c1fbee185c35864613ad13fbda8a74e71",
      "parents": [
        "90ed2b692fa75272d7395c4e4c2de4423d52f506"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Dec 25 13:39:10 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:09 2008 +0100"
      },
      "message": "[S390] cio: Dont call -\u003erelease directly.\n\nJust put the cdev\u0027s reference count to give up our reference.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "90ed2b692fa75272d7395c4e4c2de4423d52f506",
      "tree": "62b2d1a0595b73718dd0d39d331a4c3c9fa91f81",
      "parents": [
        "5fb6b8544d9ccd2ed478af777f9e99e342eb8886"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Dec 25 13:39:09 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:08 2008 +0100"
      },
      "message": "[S390] cio: Dont fail probe for I/O subchannels.\n\nIf we fail the probe for an I/O subchannel, we won\u0027t be able\nto unregister it again since there are no sch_event()\ncallbacks for unbound subchannels. Just succeed the probe in\nany case and schedule unregistering the subchannel.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "5fb6b8544d9ccd2ed478af777f9e99e342eb8886",
      "tree": "21d3819588970ea7e0421d79df088332fcadbb17",
      "parents": [
        "6eff208f479d6fe99fd92c0e6bf7e930bb45cd30"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Dec 25 13:39:08 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:08 2008 +0100"
      },
      "message": "[S390] cio: Only register ccw_device for registered subchannel.\n\nThere is a race between io_subchannel_register() and\nio_subchannel_sch_event() which may cause a subchannel to be\nunregistered because it is no longer operational before\nio_subchannel_register() had run. We need to check whether the\nsubchannel is still registered before the ccw device can be\nregistered and just bail out if it is not.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "6eff208f479d6fe99fd92c0e6bf7e930bb45cd30",
      "tree": "9dd40942bd0083873471f91e21d07b865a228414",
      "parents": [
        "9cd67421977a701272820987ff9e6f197b1b97b7"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Dec 25 13:39:07 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:08 2008 +0100"
      },
      "message": "[S390] cio: Fix I/O subchannel refcounting.\n\nSubchannel refcounting was incorrect in some places, especially\na refcount was missing when ccw_device_call_sch_unregister()\nwas called and the refcount was not correctly switched after\nmoving devices.\n\nFix this by establishing the following rules:\n- The ccw_device obtains a reference on its parent subchannel\n  when dev.parent is set and gives it up in its release\n  function. This is needed because we need a parent reference\n  for correct refcounting even before the ccw device is (if at\n  all) registered.\n- When calling device_move(), obtain a reference on the new\n  subchannel before moving the ccw device and give up the\n  reference on the old parent after moving. This brings the\n  refcount in line with the first rule.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "9cd67421977a701272820987ff9e6f197b1b97b7",
      "tree": "3d29b739749d6aeb0d3f427b23678d71d080c307",
      "parents": [
        "97166f52fc84c0bc49c7dbba2a26720110acb458"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Dec 25 13:39:06 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:07 2008 +0100"
      },
      "message": "[S390] cio: Fix reference counting for online/offline.\n\nThe current code attempts to get an extra reference count\nfor online devices by doing a get_device() in ccw_device_online()\nand a put_device() in ccw_device_done(). However, this\n- incorrectly obtains an extra reference for disconnected\n  devices becoming available again (since they are already\n  online)\n- needs special checks for css_init_done in order to handle\n  the console device\n- is not obvious and\n- may incorretly drop a reference count in ccw_device_done() if\n  that function is called after path verification for a device\n  that just became not operational.\n\nSo let\u0027s just get the reference in ccw_device_set_online() and\ndrop it in ccw_device_set_offline(). (Unfortunately, we still\nneed the special case in io_subchannel_probe().)\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "97166f52fc84c0bc49c7dbba2a26720110acb458",
      "tree": "423e66c022de260ae6a5f664969783e43336a236",
      "parents": [
        "c619d4223eaa063dd15ce44235b04487235f8cb7"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Dec 25 13:39:05 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:07 2008 +0100"
      },
      "message": "[S390] cio: Put referernce on correct device after moving.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "c619d4223eaa063dd15ce44235b04487235f8cb7",
      "tree": "3ffc818d3681b467b362f854977a546e12b41d49",
      "parents": [
        "111e95a4cae01d6dadbbd1d8ab28dcd10fa5619c"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Thu Dec 25 13:39:04 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:06 2008 +0100"
      },
      "message": "[S390] cio: fix ccwgroup online vs. ungroup race condition\n\nEnsure atomicity of ungroup operation to prevent concurrent ungroup\nand online processing which may lead to use-after-release situations.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "111e95a4cae01d6dadbbd1d8ab28dcd10fa5619c",
      "tree": "635b0c09a894f977273a47def739b488782e750b",
      "parents": [
        "d7b604891b7ce7de93e3758ec6b3b7b7964e1884"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:39:03 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:06 2008 +0100"
      },
      "message": "[S390] cio: move irritating comment.\n\nDue to former patches a comment and device id initialization were\nsplit from the addressed function call in io_subchannel_probe.\n\nMove it back to where it belongs.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "191fd44c11e10daf9d2cabd16935952e9c735949",
      "tree": "320f6344ccc07e265d5b902ed2a2cffa1838bca6",
      "parents": [
        "547e3cec4f7a4846707db19cba43aa58eb07f48f"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Dec 25 13:39:01 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:05 2008 +0100"
      },
      "message": "[S390] cio: get rid of compile warning\n\nMove cio_tpi() to the rest of the CONFIG_CCW_CONSOLE functions to\nget rid of this one:\n\ndrivers/s390/cio/cio.c:115: warning: \u0027cio_tpi\u0027 defined but not used\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "98df67b324a2a986987ce29986e44ae9156b6698",
      "tree": "13cd3c37116c115761c54184cdd8e41e164a6c84",
      "parents": [
        "0cd4bd4754d51bdc8f9cd880c29910d0d52337bb"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Thu Dec 25 13:38:55 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:03 2008 +0100"
      },
      "message": "[S390] struct device - replace bus_id with dev_name(), dev_set_name()\n\nAcked-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nAcked-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "7a0b4cbc7d7d99763511b488b08bbc2607ddd1e3",
      "tree": "96344f73eb9d802b0f488b7d086c8094b93635f8",
      "parents": [
        "50f769df1c4bea766c4eb927eae35728fb93e305"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:38:48 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:39:00 2008 +0100"
      },
      "message": "[S390] qdio: fix error reporting for hipersockets\n\nHipersocket connections can encounter temporary busy conditions.\nIn case of the busy bit set we retry the SIGA operation immediatelly.\nIf the busy condition still persists after 100 ms we fail and report\nthe error to the upper layer. The second stage retry logic is removed.\nIn case of ongoing busy conditions the upper layer needs to reset the\nconnection.\n\nThe reporting of a SIGA error is now done synchronously to allow the\nnetwork driver to requeue the buffers. Also no error trace is created\nfor the temporary SIGA errors so the error message view is not flooded.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "50f769df1c4bea766c4eb927eae35728fb93e305",
      "tree": "c86228e6965de0ea84bddc2104d7dfa339e2a187",
      "parents": [
        "22f9934767f49012ffbae753b28b8055bd28348f"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:38:47 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:38:59 2008 +0100"
      },
      "message": "[S390] qdio: improve inbound buffer acknowledgement\n\n- Use automatic acknowledgement of incoming buffers in QEBSM mode\n- Move ACK for non-QEBSM mode always to the newest buffer to prevent\n  a race with qdio_stop_polling\n- Remove the polling spinlock, the upper layer drivers return new buffers\n  in the same code path and could not run in parallel\n- Don\u0027t flood the error log in case of no-target-buffer-empty\n- In handle_inbound we check if we would overwrite an ACK\u0027ed buffer, if so\n  advance the pointer to the oldest ACK\u0027ed buffer so we don\u0027t overwrite an\n  empty buffer in qdio_stop_polling\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "22f9934767f49012ffbae753b28b8055bd28348f",
      "tree": "7cb58ceff25b9c6b5ade5646b6444b7689621f81",
      "parents": [
        "9a1ce28aeb7a8b1666eaa9f104c1a2f5a149f9df"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:38:46 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:38:59 2008 +0100"
      },
      "message": "[S390] qdio: rework debug feature logging\n\n- make qdio_trace a per device view\n- remove s390dbf exceptions\n- remove CONFIG_QDIO_DEBUG, not needed anymore if we check for the level\n  before calling sprintf\n- use snprintf for dbf entries\n- add start markers to see if the dbf view wrapped\n- add a global error view for all queues\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "9a1ce28aeb7a8b1666eaa9f104c1a2f5a149f9df",
      "tree": "6fddd41384459790b5addfe70a3725cfcba30e29",
      "parents": [
        "23589d057ac2da81e456d4a9dcdd9135fd96f493"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:38:45 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:38:58 2008 +0100"
      },
      "message": "[S390] qdio: fix compile warning under 31 bit\n\nThe QEBSM instructions are only available for CONFIG_64BIT, they are not\nused under 31 bit. Make compiler happy about the false positive:\n\ndrivers/s390/cio/qdio_main.c: In function ?qdio_inbound_q_done?:\ndrivers/s390/cio/qdio_main.c:532: warning: ?state? may be used uninitialized in this function\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "23589d057ac2da81e456d4a9dcdd9135fd96f493",
      "tree": "756fb6034f953689100ad0d9efaa90565295ebf5",
      "parents": [
        "bbd50e172f75b1d12ef9b1bcf593b51a44199016"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:38:44 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:38:58 2008 +0100"
      },
      "message": "[S390] qdio: add eqbs/sqbs instruction counters\n\nAdd counters for the eqbs and sqbs instructions that indicate how often\nwe issued the instructions and how often the instructions returned with\nless buffers than specified.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "bbd50e172f75b1d12ef9b1bcf593b51a44199016",
      "tree": "85cffdd66bb9f4da36d604d857959964736f3fde",
      "parents": [
        "43c207e6e5b7e591b59294ee4fc9860b0e3de3b8"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Dec 25 13:38:43 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Dec 25 13:38:58 2008 +0100"
      },
      "message": "[S390] qdio: fix qeth port count detection\n\nqeth needs to get the port count information before\nqdio has allocated a page for the chsc operation.\nExtend qdio_get_ssqd_desc() to store the data in the\nspecified structure.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "85acc407bf1c49fb40b8f461c2c7526af736d87e",
      "tree": "356a407f2f621fc50cba45d0453958e7143738a1",
      "parents": [
        "50bec4ce5d36ebf96189dcc54e20c7fce4bf61bf"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Fri Nov 14 18:18:06 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Nov 14 18:18:54 2008 +0100"
      },
      "message": "[S390] cio: Fix refcount after moving devices.\n\nIn ccw_device_move_to_orphanage(), a replacing ccw_device\nis searched via get_{disc,orphaned}_ccwdev_by_dev_id()\nwhich obtain a reference on the returned ccw_device.\nThis reference must be given up again after the device\nhas been moved to its new parent.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "2c78091405d6f54748b1fac78c45f2a799e3073a",
      "tree": "89c319b25ad32a0994ae473ac6e817e2ac28f7b3",
      "parents": [
        "7c045aa2c8eb731996b0c5c6552356b8946e6894"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Tue Oct 28 11:10:14 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Oct 28 11:12:03 2008 +0100"
      },
      "message": "[S390] qdio: remove incorrect memset\n\nRemove the memset since zeroing the string is not needed and use\nsnprintf instead of sprintf.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "7c045aa2c8eb731996b0c5c6552356b8946e6894",
      "tree": "3f9ce7a8afba1d2ba263dc564a08b52106cb9179",
      "parents": [
        "49fdf6785fd660e18a1eb4588928f47e9fa29a9a"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Tue Oct 28 11:10:13 2008 +0100"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Oct 28 11:12:02 2008 +0100"
      },
      "message": "[S390] qdio: prevent double qdio shutdown in case of I/O errors\n\nIn case of I/O errors on a qdio subchannel qdio_shutdown may be\ncalled twice by the qdio driver and by zfcp. Remove the\nsuperfluous shutdown from qdio and let the upper layer driver\nhandle the error condition.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "5a0d0e65379256b4da2c9092e197a2c761f51c01",
      "tree": "4dbac2b5498ad7ce1bd88d8bdfe6303169b9560c",
      "parents": [
        "b2300b9efe1b8174833e17f37e975c9da00c388a"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Oct 10 21:33:22 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:58 2008 +0200"
      },
      "message": "[S390] Move private simple udelay function to arch/s390/lib/delay.c.\n\nMove cio\u0027s private simple udelay function to lib/delay.c and turn it\ninto something much more readable. So we have all implementations\nat one place.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "7a0f475513fa573bc8e072021960313da32f0ee3",
      "tree": "397d3d7862d793261a08c7a742101672fd3d7980",
      "parents": [
        "b1e766137fe2462fd110e2930f74ef5636adb436"
      ],
      "author": {
        "name": "Klaus-Dieter Wacker",
        "email": "kdwacker@de.ibm.com",
        "time": "Fri Oct 10 21:33:18 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:55 2008 +0200"
      },
      "message": "[S390] qdio enhanced SIGA (iqdio) support.\n\nAdd support for z10 HiperSockets multiwrite SBALs on output\nqueues. This is used on LPAR with EDDP enabled devices.\n\nSigned-off-by: Klaus-Dieter Wacker \u003ckdwacker@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "b1e766137fe2462fd110e2930f74ef5636adb436",
      "tree": "197c28473c402877597821ddc3736a51a34f8ebf",
      "parents": [
        "b2bbb642ac2829006a81ae164e2f06ebc22f81dd"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Oct 10 21:33:17 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:55 2008 +0200"
      },
      "message": "[S390] cio: fix cio_tpi.\n\nIn cio_tpi only disable bottom halves when not in interrupt context.\nOtherwise a WARN_ON gets triggered. Besides that, when we are in\ninterrupt context bottom halves are disabled anyway.\nFixes this one:\n\nBadness at kernel/softirq.c:77\nModules linked in:\nCPU: 2 Not tainted 2.6.26 #4\nProcess swapper (pid: 0, task: 000000003fe83db0, ksp: 000000003fea7d28)\nKrnl PSW : 0404c00180000000 0000000000053f4e (__local_bh_disable+0xbe/0xcc)\n           R:0 T:1 IO:0 EX:0 Key:0 M:1 W:0 P:0 AS:3 CC:0 PM:0 EA:3\nKrnl GPRS: 0000000000008ee0 00000000005f95e0 0000000000000000 0000000000000001\n           000000000020be92 0000000000000000 0000000000000210 00000000005d36c0\n           000000003fb5f4d8 0000000000000000 000000000020bed0 000000003fb5f3c8\n           00000000009be920 0000000000364898 000000003fb5f408 000000003fb5f3c8\nKrnl Code: 0000000000053f42: bf2f1000           icm     %r2,15,0(%r1)\n           0000000000053f46: a774ffc5           brc     7,53ed0\n           0000000000053f4a: a7f40001           brc     15,53f4c\n          \u003e0000000000053f4e: a7280001           lhi     %r2,1\n           0000000000053f52: 50201000           st      %r2,0(%r1)\n           0000000000053f56: a7f4ffbd           brc     15,53ed0\n           0000000000053f5a: 0707               bcr     0,%r7\n           0000000000053f5c: a7f13fc0           tmll    %r15,16320\nCall Trace:\n([\u003c0000000000000210\u003e] 0x210)\n [\u003c0000000000053f86\u003e] local_bh_disable+0x2a/0x38\n [\u003c000000000020bed0\u003e] wait_cons_dev+0xd4/0x154\n [\u003c0000000000247cb2\u003e] raw3215_make_room+0x6a/0x1a8\n [\u003c000000000024861a\u003e] raw3215_write+0x86/0x28c\n [\u003c00000000002488a0\u003e] con3215_write+0x80/0x110\n [\u003c000000000004c3e0\u003e] __call_console_drivers+0xc8/0xe4\n [\u003c000000000004c47e\u003e] _call_console_drivers+0x82/0xc4\n [\u003c000000000004c744\u003e] release_console_sem+0x218/0x2c0\n [\u003c000000000004cf64\u003e] vprintk+0x3c0/0x504\n [\u003c0000000000354a4a\u003e] printk+0x52/0x64\n [\u003c0000000000088004\u003e] __print_symbol+0x40/0x50\n [\u003c0000000000071dbc\u003e] print_stack_trace+0x78/0xac\n [\u003c0000000000079e78\u003e] print_lock_dependencies+0x148/0x208\n [\u003c000000000007a050\u003e] print_irq_inversion_bug+0x118/0x15c\n [\u003c000000000007a106\u003e] check_usage_forwards+0x72/0x84\n [\u003c000000000007a36e\u003e] mark_lock+0x1d2/0x594\n [\u003c000000000007baca\u003e] __lock_acquire+0x886/0xf48\n [\u003c000000000007c234\u003e] lock_acquire+0xa8/0xe0\n [\u003c0000000000350316\u003e] _write_lock+0x56/0x98\n [\u003c000000000026cd92\u003e] zfcp_erp_adapter_reopen+0x4e/0x8c\n [\u003c000000000026f1e8\u003e] zfcp_qdio_int_resp+0x2e4/0x2f4\n [\u003c00000000002210f4\u003e] qdio_int_handler+0x274/0x888\n [\u003c00000000002177b6\u003e] ccw_device_call_handler+0x6e/0xd8\n [\u003c0000000000215336\u003e] ccw_device_irq+0xd6/0x160\n [\u003c0000000000212f88\u003e] io_subchannel_irq+0x8c/0x118\n [\u003c000000000020c120\u003e] do_IRQ+0x1d0/0x1fc\n [\u003c00000000000270b2\u003e] io_return+0x0/0x8\n [\u003c000000000001c8a4\u003e] cpu_idle+0x178/0x21c\n([\u003c000000000001c884\u003e] cpu_idle+0x158/0x21c)\n [\u003c00000000003483a2\u003e] start_secondary+0xb6/0xc8\nINFO: lockdep is turned off.\nLast Breaking-Event-Address:\n [\u003c0000000000053f4a\u003e] __local_bh_disable+0xba/0xcc\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "b2bbb642ac2829006a81ae164e2f06ebc22f81dd",
      "tree": "c76cca05a39a1525f6e7978ac338d410ffdbd54f",
      "parents": [
        "f9c9fe3ecfc0c5ff17728d0c5ee95a4e269ec190"
      ],
      "author": {
        "name": "Julia Lawall",
        "email": "julia@diku.dk",
        "time": "Fri Oct 10 21:33:16 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:54 2008 +0200"
      },
      "message": "[S390] cio: Correct use of ! and \u0026\n\nIn commit e6bafba5b4765a5a252f1b8d31cbf6d2459da337, a bug was fixed that\ninvolved converting !x \u0026 y to !(x \u0026 y).  The code below shows the same\npattern, and thus should perhaps be fixed in the same way.  In particular,\nthe result of !scsw_stctl(\u0026request-\u003eirb.scsw) \u0026 SCSW_STCTL_STATUS_PEND is\nalways just !scsw_stctl(\u0026request-\u003eirb.scsw).\n\nThe semantic patch that makes this change is as follows:\n(http://www.emn.fr/x-info/coccinelle/)\n\n// \u003csmpl\u003e\n@@ expression E; constant C; @@\n(\n  !E \u0026 !C\n|\n- !E \u0026 C\n+ !(E \u0026 C)\n)\n// \u003c/smpl\u003e\n\nSigned-off-by: Julia Lawall \u003cjulia@diku.dk\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "f9c9fe3ecfc0c5ff17728d0c5ee95a4e269ec190",
      "tree": "470a7db33fa868234f4f01d4fa768c95fdc6c5cc",
      "parents": [
        "1f4e7edabc4071cdff0133e7e04db2d7287d0e36"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Fri Oct 10 21:33:15 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:53 2008 +0200"
      },
      "message": "[S390] cio: inline assembly cleanup\n\nFix incorrect in- and output constraints, remove volatile declaration\nof inline assembly parameters and reformat constraint declarations to\nbe more consistent.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "1f4e7edabc4071cdff0133e7e04db2d7287d0e36",
      "tree": "751f447ad52286205502e255d46106e68cb20bf0",
      "parents": [
        "9286b7ed682615c1508210f85d26e4c9a5cbf126"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Fri Oct 10 21:33:14 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:53 2008 +0200"
      },
      "message": "[S390] bus_id -\u003e dev_set_name() for css and ccw busses\n\nConvert remaining s390 users setting bus_id to dev_set_name()\nor init_name.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "9286b7ed682615c1508210f85d26e4c9a5cbf126",
      "tree": "d7ef646fd411b7e0a755c343a9013f896db9cbd2",
      "parents": [
        "37f1c012f0f23b52df3a0d7850212b336fc9e595"
      ],
      "author": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:13 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:52 2008 +0200"
      },
      "message": "[S390] bus_id -\u003edev_name() conversions in qdio\n\nUse dev_name() in the new qdio driver.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "b9d3aed7e1e50183085fcd2af643bf42d6b4bd95",
      "tree": "0ae98b89d8c22d64e38694cce0ec713ef64b23de",
      "parents": [
        "1bf5b2853925cf92bfc5f0eddb68a8ed18782845"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Fri Oct 10 21:33:11 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:50 2008 +0200"
      },
      "message": "[S390] more bus_id -\u003e dev_name conversions\n\nSome further bus_id -\u003e dev_name() conversions in s390 code.\n\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "1bf5b2853925cf92bfc5f0eddb68a8ed18782845",
      "tree": "acc51c9017ea2c8f155be805f49cfe68a23c6a9b",
      "parents": [
        "2a0217d5c7d22d6dd28f8ae5d20b06d24dc426b8"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Fri Oct 10 21:33:10 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:50 2008 +0200"
      },
      "message": "[S390] bus_id -\u003e dev_set_name() changes\n\nConvert most s390 users setting bus_id to dev_set_name().\ncss and ccw busses are deferred since they need some special\ntreatment.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "2a0217d5c7d22d6dd28f8ae5d20b06d24dc426b8",
      "tree": "0a7d60ac06dbc234d48da5a5b2ce8fa186a20182",
      "parents": [
        "e4a1afaeb1d9ebc09f46d8b229ac96116974b1b8"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Fri Oct 10 21:33:09 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:49 2008 +0200"
      },
      "message": "[S390] bus_id -\u003e dev_name conversions\n\nbus_id -\u003e dev_name() conversions in s390 code.\n\n[cornelia.huck@de.ibm.com: minor adaptions]\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "ecf5d9ef68b868b293b40b89615a92de7310d065",
      "tree": "ec92f05f79e222075e2425129e15b0ee9131364e",
      "parents": [
        "46fbe4e46ddb88805245a24f684400b50ead68a7"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Fri Oct 10 21:33:06 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:47 2008 +0200"
      },
      "message": "[S390] cio: introduce purge function for /proc/cio_ignore\n\nAllow users to remove blacklisted ccw devices by using the\n/proc/cio_ignore interface:\n\n  echo purge \u003e /proc/cio_ignore\n\nwill remove all devices which are offline and blacklisted.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "46fbe4e46ddb88805245a24f684400b50ead68a7",
      "tree": "0a8257d7802a8b15567bc8275b770a6b79e69a9d",
      "parents": [
        "4bcb3a37180ee4dffaef8298f373b334a7bedabb"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Fri Oct 10 21:33:05 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:47 2008 +0200"
      },
      "message": "[S390] cio: move device unregistration to dedicated work queue\n\nUse dedicated slow path work queue when unregistering a device due to\na user action. This ensures serialialization of other register/\nunregister requests.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "4bcb3a37180ee4dffaef8298f373b334a7bedabb",
      "tree": "ed8621d5a3763aff53475742d60e9db3cbb4de1d",
      "parents": [
        "f6bccf695431da0e9bd773550ae91b8cb9ffb227"
      ],
      "author": {
        "name": "Ursula Braun",
        "email": "ursula.braun@de.ibm.com",
        "time": "Fri Oct 10 21:33:04 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 10 21:33:46 2008 +0200"
      },
      "message": "[S390] qdio: speed up multicast traffic on full HiperSocket queue\n\nIf an asynchronous HiperSockets queue runs full, no further packet\ncan be sent. In this case the next initiative to give transmitted\nskbs back to the stack is triggered only by a 10-seconds qdio timer.\nThis timer has been introduced for low multicast traffic scenarios\nto guarantee freeing of skbs in a limited amount of time. For high\nHiperSocket multicast traffic scenarios progress checking on the\noutbound queue should be enforced by tasklet rescheduling.\n\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "75f6276187e5ce5a312a0619fba2fe56c9290b48",
      "tree": "f6cc29b847e2e2c22bf75190fafb430fc5740ea9",
      "parents": [
        "d3d238c7744d08c36a114a59cb537d4c0c6c9a86"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Fri Oct 03 21:55:00 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Oct 03 21:55:55 2008 +0200"
      },
      "message": "[S390] qdio: prevent stack clobber\n\nDon\u0027t print more information than fits into the string on the\nstack. Combine the informational output of qdio to fit into\none line.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "9adb8c1d4f0ac78b3469e377ce5f8a846cbaedaf",
      "tree": "7ee39444979acfc3a838d15c911a3735c4ddd869",
      "parents": [
        "f26fd5d6e5006eae75a389c7ce74ed16761d094b"
      ],
      "author": {
        "name": "Stefan Weinhuber",
        "email": "wein@de.ibm.com",
        "time": "Tue Sep 16 09:32:19 2008 -0700"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@skybook.(none)",
        "time": "Tue Sep 16 09:34:32 2008 -0700"
      },
      "message": "[S390] cio: fix orb initialization in cio_start_key\n\nThe functions cio_tm_start_key and cio_start_key use the same private\norb structure of a subchannel, so the orb needs to be cleared of old\ndata before it is used again. A respective memset is missing from\ncio_start_key and hereby added.\n\nSigned-off-by: Stefan Weinhuber \u003cwein@de.ibm.com\u003e\nAcked-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "f26fd5d6e5006eae75a389c7ce74ed16761d094b",
      "tree": "0d8f90e4a54d983c4cb49bd751df03d4973e40cf",
      "parents": [
        "bc45eb8950b8c14487385cfd2bda1613ca8d9703"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Tue Sep 16 09:32:18 2008 -0700"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "sky@skybook.(none)",
        "time": "Tue Sep 16 09:34:31 2008 -0700"
      },
      "message": "[S390] cio: Fix driver_data handling for ccwgroup devices.\n\nSince 16f7f9564c3ae190954f2ec55f385a268b93ac4d, we\u0027ve seen\noopses when grouping/ungrouping devices:\n\nUnable to handle kernel pointer dereference at virtual kernel address 0000000000\n114000\nOops: 0004 [#1] PREEMPT SMP\nModules linked in: bonding qeth_l2 dm_multipath sunrpc qeth_l3 dm_mod qeth chsc_\nsch ccwgroup\nCPU: 1 Not tainted 2.6.26-29.x.20080815-s390xdefault #1\nProcess iperf (pid: 24412, task: 000000003f446038, ksp: 000000003c929e08)\nKrnl PSW : 0404d00180000000 000003e00006f6e6 (qeth_irq+0xda/0xb28 [qeth])\n           R:0 T:1 IO:0 EX:0 Key:0 M:1 W:0 P:0 AS:3 CC:1 PM:0 EA:3\nKrnl GPRS: 0000000000000000 000003e000000003 0000000000000000 0000000000114ccc\n           000000003fb82e48 000003e00006f60c 000000000000000c 000000003ce72100\n           0000000000114944 000000003fb82e48 0000000000114ccc 000000003fe8fd28\n           000003e000066000 000003e000076128 000000003fe8fdb8 000000003fe8fd28\nKrnl Code: 000003e00006f6da: bf3f2024            icm     %r3,15,36(%r2)\n           000003e00006f6de: a774023c            brc     7,3e00006fb56\n           000003e00006f6e2: a7280000            lhi     %r2,0\n          \u003e000003e00006f6e6: 5020a1a0            st      %r2,416(%r10)\n           000003e00006f6ea: 58109000            l       %r1,0(%r9)\n           000003e00006f6ee: a7111000            tmll    %r1,4096\n           000003e00006f6f2: a77400f9            brc     7,3e00006f8e4\n           000003e00006f6f6: 8810000c            srl     %r1,12\nCall Trace:\n([\u003c000000003fe8fd20\u003e] 0x3fe8fd20)\n [\u003c000000000033bf2a\u003e] ccw_device_call_handler+0xb2/0xd8\n [\u003c0000000000339e1c\u003e] ccw_device_irq+0x124/0x164\n [\u003c0000000000339758\u003e] io_subchannel_irq+0x8c/0x118\n [\u003c00000000003309ba\u003e] do_IRQ+0x192/0x1bc\n [\u003c0000000000114f66\u003e] io_return+0x0/0x8\n [\u003c00000000001149cc\u003e] sysc_do_svc+0x0/0x22\n([\u003c0000000000114a18\u003e] sysc_noemu+0x10/0x16)\n [\u003c00000200002e047c\u003e] 0x200002e047c\nLast Breaking-Event-Address:\n [\u003c000003e00006f6d6\u003e] qeth_irq+0xca/0xb28 [qeth]\n\nThe problem is that dev-\u003edriver_data for a ccw device is NULL,\nwhile it should point to the ccwgroup device it is a member of.\nThis happened due to incorrect cleanup if creating a ccwgroup\ndevice failed because the ccw devices were already grouped.\n\nFix this by setting cdev[i] to NULL in the error handling of\nccwgroup_create_from_string() after we give up our reference and\nby checking if the driver_data points to the ccwgroup device in\nccwgroup_release() just to be really sure.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "b301ea8c81b13123761772f344faf606c76ba174",
      "tree": "1fe42d0b308dc613b8b518fed09849a9242e027c",
      "parents": [
        "c91ebe496120e05301465fff31094bfecf798e9f"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Tue Sep 09 12:38:59 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Sep 09 12:39:07 2008 +0200"
      },
      "message": "[S390] cio: allow offline processing for disconnected devices\n\nWhen disconnected ccw devices are removed, the device has to be set\noffline, otherwise there will be side effects including a reference\ncount imbalance. This patch modifies ccw_device_offline to work for\ndevices in disconnecte/not operational state. ccw_device_offline is\ncalled by cio for devices which are online during device removal.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "c91ebe496120e05301465fff31094bfecf798e9f",
      "tree": "684d5fe1b335ea669256fb6a3c2ee2efc5c996d1",
      "parents": [
        "a2164b8174f13b7315c3f45c0b48dec619285096"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Tue Sep 09 12:38:58 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Sep 09 12:39:07 2008 +0200"
      },
      "message": "[S390] cio: handle ssch() return codes correctly.\n\nssch() has two classes of return codes:\n- condition codes (0-3) which need to be translated to Linux\n  error codes\n- Linux error codes (-EIO on exceptions) which should be passed\n  to the caller (instead of erronously being handled like\n  condition code 3)\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "a2164b8174f13b7315c3f45c0b48dec619285096",
      "tree": "d3e943b5c8be1d999331879c002b9c26081c48fe",
      "parents": [
        "3d6e48f43340343d97839eadb1ab7b6a3ea98797"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Tue Sep 09 12:38:57 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Tue Sep 09 12:39:07 2008 +0200"
      },
      "message": "[S390] cio: Correct cleanup on error.\n\nFix cleanup on error in chp_new() and init_channel_subsystem()\n(must not call kfree() on structures that had been registered).\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "91c36919a456589f4f073671474a1f899e0d3c2b",
      "tree": "63cb2ee1afd9b00bf2ea4959482d58f402bb21f3",
      "parents": [
        "49fd38bdaa96f093fcad3176a781a4d0de8f8602"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Thu Aug 21 19:46:39 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Aug 21 19:46:41 2008 +0200"
      },
      "message": "[S390] cio: call ccw driver notify function with lock held\n\nCalling a ccw driver\u0027s notify function without the ccw device lock\nheld opens up a race window between discovery and handling of a change\nin the device operational state. As a result, the device driver may\nencounter unexpected device malfunction, leading to out-of-retry\nsituations or similar.\n\nRemove race by extending the ccw device lock from state change\ndiscovery to the calling of the notify function.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "16f7f9564c3ae190954f2ec55f385a268b93ac4d",
      "tree": "ce1cfe665c047e39a5ae67840a00074267efb38d",
      "parents": [
        "0686e402c365c92396d4c7abfaa24810f9cb77cc"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Thu Aug 21 19:46:36 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Aug 21 19:46:40 2008 +0200"
      },
      "message": "[S390] cio: fix ccw group device cleanup\n\nFix ccw group device initialization: initialize device object before\nusing reference counting during cleanup.\n\nFixes the following message when group device initialization fails\n(e.g. because too few devices where specified):\n\n  kobject: \u0027\u003cNULL\u003e\u0027 (..): is not initialized, yet kobject_put() is\n           being called.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "0686e402c365c92396d4c7abfaa24810f9cb77cc",
      "tree": "34737bfe43c8e747ca3b769ce9e90fbc7a785110",
      "parents": [
        "58eb27cd7f4f1de2932b3e0e39ea54a27e9fef43"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Aug 21 19:46:35 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Aug 21 19:46:40 2008 +0200"
      },
      "message": "[S390] qdio: remove the module_get \u0026 module_put pair\n\nIncreasing the qdio reference count for every used subchannel\nis unnecessary since unloading qdio (if build as a module) is\nonly possible if other modules that use qdio are unloaded.\nUnloading modules that use qdio in turn requires that these\nmodules shut down all qdio subchannels. Therefore the additional\nmodule_get reference is not needed.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "58eb27cd7f4f1de2932b3e0e39ea54a27e9fef43",
      "tree": "897aa1c65b635106016bf0032528c59cc072ab20",
      "parents": [
        "53b41ba7ce4563c33a0449fbcbbd70665477d654"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Aug 21 19:46:34 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Aug 21 19:46:40 2008 +0200"
      },
      "message": "[S390] qdio: improve s390 debug feature usage\n\nImprove s390 debug feature usage:\n- log busy bit in dbf\n- increase size of dbf views\n- consistent logging of qdio api calls to setup view\n- print subchannel number so one can associate the interface\n  with the dbf data\n- only log events to one view\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "53b41ba7ce4563c33a0449fbcbbd70665477d654",
      "tree": "78aa9a9bb1675aea597bc2b88a3d0ca1a18de129",
      "parents": [
        "8853e505a15f31fe608cb50e038ba2f794eed923"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Aug 21 19:46:33 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Thu Aug 21 19:46:39 2008 +0200"
      },
      "message": "[S390] qdio: prevent oopsing if qdio_establish fails\n\nIf qdio_establish fails we call qdio_shutdown to cleanup the\nqdio subchannel. The tiq_list entry may not be valid at that\ntime, therefore we must ignore queues with an invalid list entry\nin tiqdio_remove_input_queues.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "3f1934bc1a0dcc2b7c31c8fd4f41ea2dd6522c3e",
      "tree": "c315531d86ee7a48954c99a5cfd8989ff64676f2",
      "parents": [
        "8f8470032570988af2eeff520ca01a32fd908b2b"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Fri Aug 01 16:39:20 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Aug 01 16:39:35 2008 +0200"
      },
      "message": "[S390] qdio: fix section mismatch bug.\n\nFix the two section mismatch warnings below.\nThis fixes two real bugs since the code which has __exit annotations\nmay already be gone when it is called.\n\nWARNING: vmlinux.o(.init.text+0x1cc4a): Section mismatch in reference from the function init_QDIO() to the function .exit.text:qdio_setup_exit()\nThe function __init init_QDIO() references\na function __exit qdio_setup_exit().\nThis is often seen when error handling in the init function\nuses functionality in the exit path.\nThe fix is often to remove the __exit annotation of\nqdio_setup_exit() so it may be used outside an exit section.\n\nWARNING: vmlinux.o(.init.text+0x1cc7a): Section mismatch in reference from the function init_QDIO() to the function .exit.text:qdio_remove_perf_stats()\nThe function __init init_QDIO() references\na function __exit qdio_remove_perf_stats().\nThis is often seen when error handling in the init function\nuses functionality in the exit path.\nThe fix is often to remove the __exit annotation of\nqdio_remove_perf_stats() so it may be used outside an exit section.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "3b8e3004aea95c687e8991583e7b150ec1416ff3",
      "tree": "61a4ccda07eac7e71f1e3dbf98694dc3c020b48f",
      "parents": [
        "7e9238fbc10373effc2c3b0b516b0bdc8fefc27b"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Fri Aug 01 16:39:17 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Aug 01 16:39:34 2008 +0200"
      },
      "message": "[S390] qdio: make sure qdr is aligned to page size\n\nkzalloc does not guarantee the required alignment of qdr to page size,\nuse get_zeroed_page instead.\n\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\n"
    },
    {
      "commit": "883e512c99fc398d1b2b5e8e92b6bacff2551756",
      "tree": "c4de376fef2e0881b345601527a3b44799f9fe9c",
      "parents": [
        "683d718a893575a88c551ad71ea2c382eedbf67e"
      ],
      "author": {
        "name": "Michael Ernst",
        "email": "mernst@de.ibm.com",
        "time": "Fri Aug 01 16:39:14 2008 +0200"
      },
      "committer": {
        "name": "Martin Schwidefsky",
        "email": "schwidefsky@de.ibm.com",
        "time": "Fri Aug 01 16:39:31 2008 +0200"
      },
      "message": "[S390] cio: Memory allocation for idset changed.\n\nMemory allocation for the quite huge idset changed from\nkzalloc to vmalloc.\n\nSigned-off-by: Michael Ernst \u003cmernst@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "779e6e1c724d30e0fd1baca78b852e41e3a23c1d",
      "tree": "b7fc4f0f01b66c3c65226cc627edd501e00ab44f",
      "parents": [
        "dae39843f478d181da5b5e1c2c703dfcaaf838c1"
      ],
      "author": {
        "name": "Jan Glauber",
        "email": "jang@linux.vnet.ibm.com",
        "time": "Thu Jul 17 17:16:48 2008 +0200"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Jul 17 17:22:10 2008 +0200"
      },
      "message": "[S390] qdio: new qdio driver.\n\nList of major changes:\n- split qdio driver into several files\n- seperation of thin interrupt code\n- improved handling for multiple thin interrupt devices\n- inbound and outbound processing now always runs in tasklet context\n- significant less tasklet schedules per interrupt needed\n- merged qebsm with non-qebsm handling\n- cleanup qdio interface and added kerneldoc\n- coding style\n\nReviewed-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nReviewed-by: Utz Bacher \u003cutz.bacher@de.ibm.com\u003e\nReviewed-by: Ursula Braun \u003cbraunu@de.ibm.com\u003e\nSigned-off-by: Jan Glauber \u003cjang@linux.vnet.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "dae39843f478d181da5b5e1c2c703dfcaaf838c1",
      "tree": "2f546e519c5378ebb99a9953a4323f3ee7a1a78f",
      "parents": [
        "b9993a38a9b491a9df48a5bc82d2e03ab44e352a"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Thu Jul 17 17:16:47 2008 +0200"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Thu Jul 17 17:22:10 2008 +0200"
      },
      "message": "[S390] cio: Export chsc_error_from_response().\n\nMake chsc_error_from_response() available to chsc callers outside\nof chsc.c (namely qdio) to avoid duplicating error checking code.\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "c78aa6cbace460081ddc6227f02b6d3203a21585",
      "tree": "ca4847b11a5a80e9e6794c46338a7df2bafba909",
      "parents": [
        "23d1742179170b69e61ac9166248ffd64857e55a"
      ],
      "author": {
        "name": "Michael Ernst",
        "email": "mernst@de.ibm.com",
        "time": "Mon Jul 14 09:59:22 2008 +0200"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Jul 14 10:02:18 2008 +0200"
      },
      "message": "[S390] Cleanup cio printk messages.\n\nUnnecessary dev_info, dev_warn and printk messages are removed.\n\nSigned-off-by: Michael Ernst \u003cmernst@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "ef60cd13ecee0ccf2439d63013cbfc798aea2bb9",
      "tree": "1d0dff750b0c031a1476d14a4fc2dd5071a08aaf",
      "parents": [
        "e0bc24958e1305efe176adc9d5f23a09e84c0058"
      ],
      "author": {
        "name": "Sebastian Ott",
        "email": "sebott@linux.vnet.ibm.com",
        "time": "Mon Jul 14 09:59:20 2008 +0200"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Jul 14 10:02:17 2008 +0200"
      },
      "message": "[S390] cio: fix double unregistering of subchannels\n\nIn some cases where the channel subsystem decides to drop a subchannel\ndevice device_unregister may be called twice, which results in an oops.\nThe patch prevents this by only unregistering registered devices.\n\nSigned-off-by: Sebastian Ott \u003csebott@linux.vnet.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "d9cef21af03eb56473db5bb20d8754f377a498e7",
      "tree": "6d4fde0ab8bbd16d4e12fdc95e9570fe957af5bf",
      "parents": [
        "7785857a5a4f3e2093ced12568744a205e164d59"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Mon Jul 14 09:59:15 2008 +0200"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Jul 14 10:02:15 2008 +0200"
      },
      "message": "[S390] s390/cio: use memory_read_from_buffer()\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nCc: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\n"
    },
    {
      "commit": "9d92a7e1b0d095c8be96ce5e592c6c5541684631",
      "tree": "22cfca810de07a7d7f87f17a89de0ae10d462038",
      "parents": [
        "683c5418e6ac9f40f925dab6f547a5b0a4ad43c6"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Mon Jul 14 09:59:05 2008 +0200"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Jul 14 10:02:12 2008 +0200"
      },
      "message": "[S390] cio: Add chsc subchannel driver.\n\nThis patch adds a driver for subchannels of type chsc.\n\nA device /dev/chsc is created which may be used to issue ioctls to:\n- obtain information about the machine\u0027s I/O configuration\n- dynamically change the machine\u0027s I/O configuration via\n  asynchronous chsc commands\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "683c5418e6ac9f40f925dab6f547a5b0a4ad43c6",
      "tree": "19dab2a72ba392f13c1c99eb24831107134149d4",
      "parents": [
        "f08adc008d84f6b03d377ede951e29ed169e76e2"
      ],
      "author": {
        "name": "Peter Oberparleiter",
        "email": "peter.oberparleiter@de.ibm.com",
        "time": "Mon Jul 14 09:59:04 2008 +0200"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Jul 14 10:02:12 2008 +0200"
      },
      "message": "[S390] cio: suppress chpid event in case of configure error\n\nDo not send CHP_ONLINE/CHP_OFFLINE events to subchannel drivers when a\nchannel-path configure request failed.\n\nSigned-off-by: Peter Oberparleiter \u003cpeter.oberparleiter@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    },
    {
      "commit": "f08adc008d84f6b03d377ede951e29ed169e76e2",
      "tree": "5c8c90f6b3710a4f04f23d25e735ce4108fdc553",
      "parents": [
        "99611f87176b2a908d8c66ab19a5fc550a3cd13a"
      ],
      "author": {
        "name": "Cornelia Huck",
        "email": "cornelia.huck@de.ibm.com",
        "time": "Mon Jul 14 09:59:03 2008 +0200"
      },
      "committer": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Jul 14 10:02:12 2008 +0200"
      },
      "message": "[S390] css: Use css_device_id for bus matching.\n\ncss_device_id exists, so use it for determining the right driver\n(and add a match_flags which is always 1 for valid types).\n\nSigned-off-by: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\n"
    }
  ],
  "next": "99611f87176b2a908d8c66ab19a5fc550a3cd13a"
}
