)]}'
{
  "log": [
    {
      "commit": "855c603d61ede7e2810217f15f0d574b4f29c891",
      "tree": "fb5c1ad387a48fb659da98aff66058a7d94fa4c0",
      "parents": [
        "15803478fdea964e5f76079851fcd13068208d5d"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Feb 27 22:14:27 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Mar 02 12:35:46 2008 +0100"
      },
      "message": "firewire: fix crash in automatic module unloading\n\n\"modprobe firewire-ohci; sleep .1; modprobe -r firewire-ohci\" used to\nresult in crashes like this:\n\n    BUG: unable to handle kernel paging request at ffffffff8807b455\n    IP: [\u003cffffffff8807b455\u003e]\n    PGD 203067 PUD 207063 PMD 7c170067 PTE 0\n    Oops: 0010 [1] PREEMPT SMP\n    CPU 0\n    Modules linked in: i915 drm cpufreq_ondemand acpi_cpufreq freq_table applesmc input_polldev led_class coretemp hwmon eeprom snd_seq_oss snd_seq_midi_event snd_seq snd_seq_device snd_pcm_oss snd_mixer_oss button thermal processor sg snd_hda_intel snd_pcm snd_timer snd snd_page_alloc sky2 i2c_i801 rtc [last unloaded: crc_itu_t]\n    Pid: 9, comm: events/0 Not tainted 2.6.25-rc2 #3\n    RIP: 0010:[\u003cffffffff8807b455\u003e]  [\u003cffffffff8807b455\u003e]\n    RSP: 0018:ffff81007dcdde88  EFLAGS: 00010246\n    RAX: ffff81007dc95040 RBX: ffff81007dee5390 RCX: 0000000000005e13\n    RDX: 0000000000008c8b RSI: 0000000000000001 RDI: ffff81007dee5388\n    RBP: ffff81007dc5eb40 R08: 0000000000000002 R09: ffffffff8022d05c\n    R10: ffffffff8023b34c R11: ffffffff8041a353 R12: ffff81007dee5388\n    R13: ffffffff8807b455 R14: ffffffff80593bc0 R15: 0000000000000000\n    FS:  0000000000000000(0000) GS:ffffffff8055a000(0000) knlGS:0000000000000000\n    CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b\n    CR2: ffffffff8807b455 CR3: 0000000000201000 CR4: 00000000000006e0\n    DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n    DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n    Process events/0 (pid: 9, threadinfo ffff81007dcdc000, task ffff81007dc95040)\n    Stack:  ffffffff8023b396 ffffffff88082524 0000000000000000 ffffffff8807d9ae\n    ffff81007dc5eb40 ffff81007dc9dce0 ffff81007dc5eb40 ffff81007dc5eb80\n    ffff81007dc9dce0 ffffffffffffffff ffffffff8023be87 0000000000000000\n    Call Trace:\n    [\u003cffffffff8023b396\u003e] ? run_workqueue+0xdf/0x1df\n    [\u003cffffffff8023be87\u003e] ? worker_thread+0xd8/0xe3\n    [\u003cffffffff8023e917\u003e] ? autoremove_wake_function+0x0/0x2e\n    [\u003cffffffff8023bdaf\u003e] ? worker_thread+0x0/0xe3\n    [\u003cffffffff8023e813\u003e] ? kthread+0x47/0x74\n    [\u003cffffffff804198e0\u003e] ? trace_hardirqs_on_thunk+0x35/0x3a\n    [\u003cffffffff8020c008\u003e] ? child_rip+0xa/0x12\n    [\u003cffffffff8020b6e3\u003e] ? restore_args+0x0/0x3d\n    [\u003cffffffff8023e68a\u003e] ? kthreadd+0x14c/0x171\n    [\u003cffffffff8023e68a\u003e] ? kthreadd+0x14c/0x171\n    [\u003cffffffff8023e7cc\u003e] ? kthread+0x0/0x74\n    [\u003cffffffff8020bffe\u003e] ? child_rip+0x0/0x12\n\n    Code:  Bad RIP value.\n    RIP  [\u003cffffffff8807b455\u003e]\n    RSP \u003cffff81007dcdde88\u003e\n    CR2: ffffffff8807b455\n    ---[ end trace c7366c6657fe5bed ]---\n\nNote that this crash happened _after_ firewire-core was unloaded.  The\nshared workqueue tried to run firewire-core\u0027s device initialization jobs\nor similar jobs.\n\nThe fix makes sure that firewire-ohci and hence firewire-core is not\nunloaded before all device shutdown jobs have been completed.  This is\ndetermined by the count of device initializations minus device releases.\n\nAlso skip useless retries in the node initialization job if the node is\nto be shut down.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "15803478fdea964e5f76079851fcd13068208d5d",
      "tree": "153bc372845c2223ec798ff4c0f3896221fe4e97",
      "parents": [
        "f8436158b1d76e6842856048f287799468b56eb2"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Feb 24 18:57:23 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Mar 02 12:35:46 2008 +0100"
      },
      "message": "firewire: potentially invalid pointers used in fw_card_bm_work\n\nThe bus management workqueue job was in danger to dereference NULL\npointers.  Also, after having temporarily lifted card-\u003elock, a few node\npointers and a device pointer may have become invalid.\n\nAdd NULL pointer checks and get the necessary references.  Also, move\ncard-\u003elocal_node out of fw_card_bm_work\u0027s sight during shutdown of the\ncard.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "f8436158b1d76e6842856048f287799468b56eb2",
      "tree": "45f1b707668819b83fee5a8d82a7c5333b989f0f",
      "parents": [
        "d395991c117d43bfca97101a931a41d062a93852"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Feb 26 23:30:02 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Mar 02 12:35:46 2008 +0100"
      },
      "message": "firewire: fw-sbp2: better fix for NULL pointer dereference in scsi_remove_device\n\nPatch \"firewire: fw-sbp2: fix NULL pointer deref. in scsi_remove_device\"\nhad the unintended effect that firewire-sbp2 could not be unloaded\nanymore until all SBP-2 devices were unplugged.\n\nWe now fix the NULL pointer bug by reacquiring a reference to the sdev\ninstead of holding a reference to the sdev (and to the module) all the\ntime.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nTested-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "fae603121428ba83b7343c88e68a7144525ab3eb",
      "tree": "41283a905b089cee26103187e54935abffb88207",
      "parents": [
        "09d7328e62e3b4cefe4bf3eeeeacb54f62a7ae5c"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Feb 20 21:10:06 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Feb 21 19:05:56 2008 +0100"
      },
      "message": "firewire: fix NULL pointer deref. and resource leak\n\nBy supplying ioctl()s in the wrong order, a userspace client was able to\ntrigger NULL pointer dereferences.  Furthermore, by calling\nioctl_create_iso_context more than once, new contexts could be created\nwithout ever freeing the previously created contexts.\n\nThanks to Anders Blomdell for the report.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "33f1c6c3529f5f279e2e98e5cca0c5bac152153b",
      "tree": "5eceff887057fb621e4e96c1eb51665ff6d91669",
      "parents": [
        "5513c5f6f9bd8c8ad3727130910fa288c62526a7"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Feb 19 09:05:49 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Feb 19 19:57:23 2008 +0100"
      },
      "message": "firewire: fw-sbp2: fix NULL pointer deref. in scsi_remove_device\n\nFix a kernel bug when unplugging an SBP-2 device after having its\nscsi_device already removed via the \"delete\" sysfs attribute.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "5513c5f6f9bd8c8ad3727130910fa288c62526a7",
      "tree": "0212d6211a5d8e6429b340c19448c2654efc50f1",
      "parents": [
        "2e2705bdcb959372d54bf7f79dd9a555ec2adfb4"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Feb 17 14:56:19 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Feb 19 19:57:23 2008 +0100"
      },
      "message": "firewire: fw-sbp2: fix NULL pointer deref. in slave_alloc\n\nFix a kernel bug when running rescan-scsi-bus while a FireWire disk is\nconnected:  http://bugzilla.kernel.org/show_bug.cgi?id\u003d10008\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "2e2705bdcb959372d54bf7f79dd9a555ec2adfb4",
      "tree": "18d08c5282e2cd6de52df89944bc874508d51fb6",
      "parents": [
        "e80de3704ac30ddb7f9a12447a2ecee32ccd7880"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 16:37:28 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Feb 19 19:57:23 2008 +0100"
      },
      "message": "firewire: fw-sbp2: (try to) avoid I/O errors during reconnect\n\nWhile fw-sbp2 takes the necessary time to reconnect to a logical unit\nafter bus reset, the SCSI core keeps sending new commands.  They are all\nimmediately completed with host busy status, and application clients or\nfilesystems will break quickly.  The SCSI device might even be taken\noffline:  http://bugzilla.kernel.org/show_bug.cgi?id\u003d9734\n\nThe only remedy seems to be to block the SCSI device until reconnect.\nAlas the SCSI core has no useful API to block only one logical unit i.e.\nthe scsi_device, therefore we block the entire Scsi_Host.  This\ncurrently corresponds to an SBP-2 target.  In case of targets with\nmultiple logical units, we need to satisfy the dependencies between\nlogical units by carefully tracking the blocking state of the target and\nits units.  We block all logical units of a target as soon as one of\nthem needs to be blocked, and keep them blocked until all of them are\nready to be unblocked.\n\nFurthermore, as the history of the old sbp2 driver has shown, the\nscsi_block_requests() API is a minefield with high potential of\ndeadlocks.  We therefore take extra measures to keep logical units\nunblocked during __scsi_add_device() and during shutdown.\n\nThis avoids I/O errors during reconnect in many but alas not in all\ncases.  There may still be errors after a re-login had to be performed.\nAlso, some bridges have been seen to cease fetching management ORBs if\nI/O went on up until a bus reset.  In these cases, all management ORBs\ntime out after mgt_orb_timeout.  The old sbp2 driver is less vulnerable\nor maybe not vulnerable to this, for as yet unknown reasons.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "e80de3704ac30ddb7f9a12447a2ecee32ccd7880",
      "tree": "87ffc83df0d904b48af17177266ba604c2a3fd86",
      "parents": [
        "7bb6bf7c8ba0b4ccfecaa00d6faea51b0bd42c8c"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Feb 15 21:29:02 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:35 2008 +0100"
      },
      "message": "firewire: fw-sbp2: enforce a retry of __scsi_add_device if bus generation changed\n\nfw-sbp2 is unable to reconnect while performing __scsi_add_device\nbecause there is only a single workqueue thread context available for\nboth at the moment.  This should be fixed eventually.\n\nAn actual failure of __scsi_add_device is easy to handle, but an\nincomplete execution of __scsi_add_device with an sdev returned would\nremain undetected and leave the SBP-2 target unusable.\n\nTherefore we use a workaround:  If there was a bus reset during\n__scsi_add_device (i.e. during the SCSI probe), we remove the new sdev\nimmediately, log out, and attempt login and SCSI probe again.\n\nTested-by: Jarod Wilson \u003cjwilson@redhat.com\u003e (earlier version)\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "7bb6bf7c8ba0b4ccfecaa00d6faea51b0bd42c8c",
      "tree": "874194df5775c8409ab8e7cb3f8d52d87f0f992e",
      "parents": [
        "ce896d95cc7886ae05859c5b409a7b2f3b606ec1"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Feb 03 23:12:17 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:35 2008 +0100"
      },
      "message": "firewire: fw-sbp2: sort includes\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "ce896d95cc7886ae05859c5b409a7b2f3b606ec1",
      "tree": "c380b8830e1fbeea6eb91f5dc892cccdad5f796b",
      "parents": [
        "0fa6dfdb0a2768541e998a5dab10b368de56c60a"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Feb 03 23:11:39 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:35 2008 +0100"
      },
      "message": "firewire: fw-sbp2: logout and login after failed reconnect\n\nIf fw-sbp2 was too late with requesting the reconnect, the target would\nreject this.  In this case, log out before attempting the reconnect.\nElse several firmwares will deny the re-login because they somehow\ndidn\u0027t invalidate the old login.\n\nAlso, don\u0027t retry reconnects in this situation.  The retries won\u0027t\nsucceed either.\n\nThese changes improve chances for successful re-login and shorten the\nperiod during which the logical unit is inaccessible.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "0fa6dfdb0a2768541e998a5dab10b368de56c60a",
      "tree": "3fac0c712c15107247c029f1802673e6553e57b7",
      "parents": [
        "48f18c761c001a66ef1928b42799c717368b1d64"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Feb 03 23:10:47 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:35 2008 +0100"
      },
      "message": "firewire: fw-sbp2: don\u0027t add scsi_device twice\n\nWhen a reconnect failed but re-login succeeded, __scsi_add_device was\ncalled again.\n\nIn those cases, __scsi_add_device succeeded and returned the pointer to\nthe existing scsi_device.  fw-sbp2 then continued orderly, except that\nit missed to call sbp2_cancel_orbs.  SCSI core would call fw-sbp2\u0027s\neh_abort_handler eventually if there had been an outstanding command.\n\nThis patch avoids the needless lookups and temporary allocations in SCSI\ncore and I/O stall and timeout until eh_abort_handler hits.\n\nAlso, __scsi_add_device tolerating calls for devices which already exist\nis undocumented behavior on which we shouldn\u0027t rely.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "48f18c761c001a66ef1928b42799c717368b1d64",
      "tree": "ccbc2567ea6974b45bd6b265fe1b5ac1b6f75563",
      "parents": [
        "e0e60215552d4d40caf581a8d3247203fe948fe7"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Feb 03 23:09:50 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:34 2008 +0100"
      },
      "message": "firewire: fw-sbp2: log bus_id at management request failures\n\nfor easier readable logs if more than one SBP-2 device is present.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "e0e60215552d4d40caf581a8d3247203fe948fe7",
      "tree": "654aa22d8d13692fe8aa30ea9cd7301fccdb5e67",
      "parents": [
        "d94a983526cb868658c958ab689410dc1c6a31f3"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Feb 03 23:08:58 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:34 2008 +0100"
      },
      "message": "firewire: fw-sbp2: wait for completion of fetch agent reset\n\nLike the old sbp2 driver, wait for the write transaction to the\nAGENT_RESET to complete before proceeding (after login, after reconnect,\nor in SCSI error handling).\n\nThere is one occasion where AGENT_RESET is written to from atomic\ncontext when getting DEAD status for a command ORB.  There we still\ncontinue without waiting for the transaction to complete because this\nis more difficult to fix...\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "9220f1946209a5b3335ea2d28f8462695885791b",
      "tree": "0d581c7ffca745158b9a15095f5b5a6f209ba066",
      "parents": [
        "fa6e697b85d705d37b3b03829095c22bcbe95ab6"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Feb 03 23:04:38 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:34 2008 +0100"
      },
      "message": "firewire: fw-sbp2: add INQUIRY delay workaround\n\nSeveral different SBP-2 bridges accept a login early while the IDE\ndevice is still powering up.  They are therefore unable to respond to\nSCSI INQUIRY immediately, and the SCSI core has to retry the INQUIRY.\nOne of these retries is typically successful, and all is well.\n\nBut in case of Momobay FX-3A, the INQUIRY retries tend to fail entirely.\nThis can usually be avoided by waiting a little while after login before\nletting the SCSI core send the INQUIRY.  The old sbp2 driver handles\nthis more gracefully for as yet unknown reasons (perhaps because it\nwaits for fetch agent resets to complete, unlike fw-sbp2 which quickly\nproceeds after requesting the agent reset).  Therefore the workaround is\nnot as much necessary for sbp2.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "fa6e697b85d705d37b3b03829095c22bcbe95ab6",
      "tree": "97a04a835efb45646391e265c8e5ea17b3b9a384",
      "parents": [
        "be6f48b0174584c9c415012ca14803c7e941e27e"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Feb 03 23:03:00 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:34 2008 +0100"
      },
      "message": "firewire: log GUID of new devices\n\nThis should help to interpret user reports.  E.g. one can look up the\nvendor OUI (first three bytes of the GUID) and thus tell what is what.\n\nAlso simplifies the math in the GUID sysfs attribute.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "be6f48b0174584c9c415012ca14803c7e941e27e",
      "tree": "cb9d0ee9363ee2782cc17dac772c767d77ab8c8e",
      "parents": [
        "96b19062e741b715cf399312c30e0672d8889569"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jan 27 19:14:44 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:33 2008 +0100"
      },
      "message": "firewire: fw-sbp2: don\u0027t retry login or reconnect after unplug\n\nIf a device is being unplugged while fw-sbp2 had a login or reconnect on\nschedule, it would take about half a minute to shut the fw_unit down:\n\n    Jan 27 18:34:54 stein firewire_sbp2: logged in to fw2.0 LUN 0000 (0 retries)\n    \u003cunplug\u003e\n    Jan 27 18:34:59 stein firewire_sbp2: sbp2_scsi_abort\n    Jan 27 18:34:59 stein scsi 25:0:0:0: Device offlined - not ready after error recovery\n    Jan 27 18:35:01 stein firewire_sbp2: orb reply timed out, rcode\u003d0x11\n    Jan 27 18:35:06 stein firewire_sbp2: orb reply timed out, rcode\u003d0x11\n    Jan 27 18:35:12 stein firewire_sbp2: orb reply timed out, rcode\u003d0x11\n    Jan 27 18:35:17 stein firewire_sbp2: orb reply timed out, rcode\u003d0x11\n    Jan 27 18:35:22 stein firewire_sbp2: orb reply timed out, rcode\u003d0x11\n    Jan 27 18:35:27 stein firewire_sbp2: orb reply timed out, rcode\u003d0x11\n    Jan 27 18:35:32 stein firewire_sbp2: orb reply timed out, rcode\u003d0x11\n    Jan 27 18:35:32 stein firewire_sbp2: failed to login to fw2.0 LUN 0000\n    Jan 27 18:35:32 stein firewire_sbp2: released fw2.0\n\nAfter this patch, typically only a few seconds spent in __scsi_add_device\nremain:\n\n    Jan 27 19:05:50 stein firewire_sbp2: logged in to fw2.0 LUN 0000 (0 retries)\n    \u003cunplug\u003e\n    Jan 27 19:05:56 stein firewire_sbp2: sbp2_scsi_abort\n    Jan 27 19:05:56 stein scsi 33:0:0:0: Device offlined - not ready after error recovery\n    Jan 27 19:05:56 stein firewire_sbp2: released fw2.0\n\nThe benefit of this is less noise in the syslog.  It furthermore avoids\na few wasted CPU cycles and needlessly prolonged lifetime of a few\ndriver objects.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "96b19062e741b715cf399312c30e0672d8889569",
      "tree": "b0e2197ab7380590bdff00e02dde19e81952a33f",
      "parents": [
        "1b9c12ba2fdf802a23630f70eddb0e821296634e"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 02 15:01:09 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:33 2008 +0100"
      },
      "message": "firewire: fix \"kobject_add failed for fw* with -EEXIST\"\n\nThere is a race between shutdown and creation of devices:  fw-core may\nattempt to add a device with the same name of an already existing\ndevice.  http://bugzilla.kernel.org/show_bug.cgi?id\u003d9828\n\nImpact of the bug:  Happens rarely (when shutdown of a device coincides\nwith creation of another), forces the user to unplug and replug the new\ndevice to get it working.\n\nThe fix is obvious:  Free the minor number *after* instead of *before*\ndevice_unregister().  This requires to take an additional reference of\nthe fw_device as long as the IDR tree points to it.\n\nAnd while we are at it, we fix an additional race condition:\nfw_device_op_open() took its reference of the fw_device a little bit too\nlate, hence was in danger to access an already invalid fw_device.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "1b9c12ba2fdf802a23630f70eddb0e821296634e",
      "tree": "f581394b4d7b297619f4f0a62c490e57480fd3ec",
      "parents": [
        "05cca7381429e12d66c5b5c8b5c5848055b88bf7"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jan 26 17:43:23 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:32 2008 +0100"
      },
      "message": "firewire: fw-sbp2: fix logout before login retry\n\nThis fixes a \"can\u0027t recognize device\" kind of bug.\n\nIf the SCSI INQUIRY failed and hence __scsi_add_device failed due to a\nbus reset, we tried a logout and then waited for the already scheduled\nlogin work to happen.  So far so good, but the generation used for the\nlogout was outdated, hence the logout never reached the target.  The\ntarget might therefore deny the subsequent relogin attempt, which would\nalso leave the target inaccessible.\n\nTherefore fetch a fresh device-\u003egeneration for the logout.  Use memory\nbarriers to prevent our plan being foiled by compiler or hardware\noptimizations.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "05cca7381429e12d66c5b5c8b5c5848055b88bf7",
      "tree": "b2f0bf8edbb902dc14813441ea9f3600ed410c2d",
      "parents": [
        "19af35546de68c872dcb687613e0902a602cb20e"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jan 26 17:42:45 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Feb 16 15:40:32 2008 +0100"
      },
      "message": "firewire: fw-sbp2: unsigned int vs. unsigned\n\nStandardize on \"unsigned int\" style.\nSort some struct members thematically.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "384170da9384b7bb3650c0c9b9d17ba0f7bde4ff",
      "tree": "93d92b0d68a37a8b7785b0da5f7f477df851f2ef",
      "parents": [
        "a4c379c1979fbc417099cd22ba16735bc3625bbf"
      ],
      "author": {
        "name": "Jarod Wilson",
        "email": "jwilson@redhat.com",
        "time": "Fri Jan 25 23:31:12 2008 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:29 2008 +0100"
      },
      "message": "firewire: fw-sbp2: Use sbp2 device-provided mgt orb timeout for logins\n\nTo be more compliant with section 7.4.8 of the SBP-2 specification,\nuse the mgt_ORB_timeout specified in the SBP-2 device\u0027s config rom\nfor login ORB attempts (though with some sanity checks). A happy\nside-effect is that certain device and controller combinations that\nsometimes take more than 20 seconds to get synced up (like my laptop\nwith just about any SBP-2 device) now function more reliably.\n\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e (silenced sparse)\n"
    },
    {
      "commit": "a4c379c1979fbc417099cd22ba16735bc3625bbf",
      "tree": "e77b9dfbb1339d4867f62eeebc4798c0edd6e8f6",
      "parents": [
        "8f9f963e5d9853dbc5fa5091f15ae64f423d3d89"
      ],
      "author": {
        "name": "Jarod Wilson",
        "email": "jwilson@redhat.com",
        "time": "Sat Jan 19 13:15:05 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:28 2008 +0100"
      },
      "message": "firewire: fw-sbp2: increase login orb reply timeout, fix \"failed to login\"\n\nIncrease (and rename) the login orb reply timeout value to 20s\nto match that of the old firewire stack. 2s simply didn\u0027t give\nmany devices enough time to spin up and reply.\n\nFixes inability to recognize some devices.\nFailure mode was \"orb reply timed out\"/\"failed to login\".\n\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e (style, comments, changelog)\n"
    },
    {
      "commit": "8f9f963e5d9853dbc5fa5091f15ae64f423d3d89",
      "tree": "7b12f078f358d88e846e9e6e8e9b271d1bcb3db5",
      "parents": [
        "f8d2dc39389d6ccc0def290dc4b7eb71d68645a2"
      ],
      "author": {
        "name": "Jarod Wilson",
        "email": "jwilson@redhat.com",
        "time": "Wed Jan 23 16:05:45 2008 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:28 2008 +0100"
      },
      "message": "firewire: replace subtraction with bitwise and\n\nReplace an unnecessary subtraction with a bitwise AND when determining the\nvalue of ext_tcode in fw_fill_transaction() to save a cpu cycle or two in a\nsomewhat critical path.\n\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "f8d2dc39389d6ccc0def290dc4b7eb71d68645a2",
      "tree": "7576ee70223a9ad550b8dd7dbad339d9f6b03052",
      "parents": [
        "b5d2a5e04e6a26cb3f77af8cbc31e74c361d706c"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Jan 25 17:53:49 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:28 2008 +0100"
      },
      "message": "firewire: fw-core: react on bus resets while the config ROM is being fetched\n\nread_rom() obtained a fresh new fw_device.generation for each read\ntransaction.  Hence it was able to continue reading in the middle of the\nROM even if a bus reset happened.  However the device may have modified\nthe ROM during the reset.  We would end up with a corrupt fetched ROM\nimage then.\n\nAlthough all of this is quite unlikely, it is not impossible.\nTherefore we now restart reading the ROM if the bus generation changed.\n\nNote, the memory barrier in read_rom() is still necessary according to\ntests by Jarod Wilson, despite of the -\u003egeneration access being moved up\nin the call chain.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n\nThis is essentially what I\u0027ve been beating on locally, and I\u0027ve yet to hit\nanother config rom read failure with it.\n\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "b5d2a5e04e6a26cb3f77af8cbc31e74c361d706c",
      "tree": "cfc3b2dc141f643bcf6ef065cca802340b335799",
      "parents": [
        "cf5a56ac8083dd04ffe8b9b2ec7895e9bcff44bc"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Jan 25 18:57:41 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:27 2008 +0100"
      },
      "message": "firewire: enforce access order between generation and node ID, fix \"giving up on config rom\"\n\nfw_device.node_id and fw_device.generation are accessed without mutexes.\nWe have to ensure that all readers will get to see node_id updates\nbefore generation updates.\n\nFixes an inability to recognize devices after \"giving up on config rom\",\nhttps://bugzilla.redhat.com/show_bug.cgi?id\u003d429950\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n\nReviewed by Nick Piggin \u003cnickpiggin@yahoo.com.au\u003e.\n\nVerified to fix \u0027giving up on config rom\u0027 issues on multiple system and\ndrive combinations that were previously affected.\n\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "cf5a56ac8083dd04ffe8b9b2ec7895e9bcff44bc",
      "tree": "7b6afe0a4d4236a6c22acf5b724979c30d158090",
      "parents": [
        "5a8a1bcd15dfb9f177f3605fe6b9ba2bef2bf55a"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Jan 24 01:53:51 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:27 2008 +0100"
      },
      "message": "firewire: fw-cdev: use device generation, not card generation\n\nWe have to use the fw_device.generation here, not the fw_card.generation,\nbecause the generation must never be newer than the node ID when we emit\na transaction.  This cannot be guaranteed with fw_card.generation.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n\nVerified in concert with subsequent memory barriers patch to fix \u0027giving\nup on config rom\u0027 issues on multiple system and drive combinations that\nwere previously affected.\n\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "5a8a1bcd15dfb9f177f3605fe6b9ba2bef2bf55a",
      "tree": "f74aad717dc774991e866400179c90064e6eaa0d",
      "parents": [
        "14dc992aa782f8759c6d117d4322db62f62600ce"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Jan 24 01:53:19 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:26 2008 +0100"
      },
      "message": "firewire: fw-sbp2: use device generation, not card generation\n\nThere was a small window where a login or reconnect job could use an\nalready updated card generation with an outdated node ID.  We have to\nuse the fw_device.generation here, not the fw_card.generation, because\nthe generation must never be newer than the node ID when we emit a\ntransaction.  This cannot be guaranteed with fw_card.generation.\n\nFurthermore, the target\u0027s and initiator\u0027s node IDs can be obtained from\nfw_device and fw_card.  Dereferencing their underlying topology objects\nis not necessary.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n\nVerified in concert with subsequent memory barriers patch to fix \u0027giving\nup on config rom\u0027 issues on multiple system and drive combinations that\nwere previously affected.\n\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "14dc992aa782f8759c6d117d4322db62f62600ce",
      "tree": "5f29e0420fd3a310ee86c4222bfa79c70f4d06ae",
      "parents": [
        "4dccd020d7ca5e673d7804cc4ff80fbf58d8a37e"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jan 20 01:25:31 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:26 2008 +0100"
      },
      "message": "firewire: fw-sbp2: try to increase reconnect_hold (speed up reconnection)\n\nAsk the target to grant 4 seconds instead of the standard and minimum of\n1 second window after bus reset for reconnection.  This accelerates\nreconnection if there are more than one targets on the bus:  If a login\nand inquiry to one target blocks the fw-sbp2 workqueue for more than 1s\nafter bus reset, we now still can reconnect to the other target.\n\nBefore that, fw-sbp2\u0027s reconnect attempts would be rejected with \"error\nstatus: 0:9\" (function rejected), and fw-sbp2 would finally re-login.\nAll those futile reconnect attemps cost extra time until the target\nwhich needs re-login is ready for I/O again.\n\nThe reconnect timeout field in the login ORB doesn\u0027t have to be honored\nby the target though.  I found that we could get up to\n  - allegedly 32768s from an old OXFW911 firmware\n  - 256s from LSI bridges\n  - 4s from OXUF922 and OXFW912 bridges,\n  - 2s from TI bridges,\n  - only the standard 1s from Initio and Prolific bridges and from\n    Apple OpenFirmware in target mode.\n\nWe just try to get 4 seconds which already covers the case of a few\nHDDs on the same bus quite nicely.\n\nA minor drawback occurs in the following (rare and impractical) border\ncase:\n  - two initiators are there, initiator 1 holds an exclusive login to\n    a target,\n  - initiator 1 goes off the bus,\n  - target refuses login attempts from initiator 2 until reconnect_hold\n    seconds after bus reset.\n\nAn alternative approach to the issue at hand would be to parallelize\nfw-sbp2\u0027s reconnect and login work.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nAcked-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "4dccd020d7ca5e673d7804cc4ff80fbf58d8a37e",
      "tree": "d9d1c5a6c218b8d8aeb35ce7c0a3848298d8c490",
      "parents": [
        "f148e20cef696e30a370d4f7cb9aeb46273fdd6e"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jan 20 01:24:26 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:26 2008 +0100"
      },
      "message": "firewire: fw-sbp2: skip unnecessary logout\n\nDon\u0027t attempt to send a logout ORB if the target was already unplugged\nor had its link switched off.  If two targets are attached, this\nenhances the chance to quickly reconnect to the remaining target when\none target is plugged out.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nAcked-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n"
    },
    {
      "commit": "fe5ca63430d640c3a922e5d7c6dd411ab6a2e077",
      "tree": "7124dc3af55c7b66da44449fdab56a93a0e10403",
      "parents": [
        "bb9f2206b60ace29e49a057fbd9be86d79d86200"
      ],
      "author": {
        "name": "David Moore",
        "email": "dcm@MIT.EDU",
        "time": "Sun Jan 06 17:21:41 2008 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:24 2008 +0100"
      },
      "message": "firewire: fw-ohci: Dynamically allocate buffers for DMA descriptors\n\nPreviously, the fw-ohci driver used fixed-length buffers for storing\ndescriptors for isochronous receive DMA programs.  If an application\n(such as libdc1394) generated a DMA program that was too large, fw-ohci\nwould reach the limit of its fixed-sized buffer and return an error to\nuserspace.\n\nThis patch replaces the fixed-length ring-buffer with a linked-list of\npage-sized buffers.  Additional buffers can be dynamically allocated and\nappended to the list when necessary.  For a particular context, buffers\nare kept around after use and reused as necessary, so there is no\nallocation taking place after the DMA program is generated for the first\ntime.\n\nIn addition, the buffers it uses are coherent for DMA so there is no\nsyncing required before and after writes.  This syncing wasn\u0027t properly\ndone in the previous version of the code.\n\n-\n\nThis is the fourth version of my patch that replaces a fixed-length\nbuffer for DMA descriptors with a dynamically allocated linked-list of\nbuffers.\n\nAs we discovered with the last attempt, new context programs are\nsometimes queued from interrupt context, making it unacceptable to call\ntasklet_disable() from context_get_descriptors().\n\nThis version of the patch uses ohci-\u003elock for all locking needs instead\nof tasklet_disable/enable.  There is a new requirement that\ncontext_get_descriptors() be called while holding ohci-\u003elock.  It was\nalready held for the AT context, so adding the requirement for the iso\ncontext did not seem particularly onerous.  In addition, this has the\nside benefit of allowing iso queue to be safely called from concurrent\nuser-space threads, which previously was not safe.\n\nSigned-off-by: David Moore \u003cdcm@acm.org\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\n\n-\n\nFixes the following issues:\n  - Isochronous reception stopped prematurely if an application used a\n    larger buffer.  (Reproduced with coriander.)\n  - Isochronous reception stopped after one or a few frames on VT630x\n    in OHCI 1.0 mode.  (Fixes reception in coriander, but dvgrab still\n    doesn\u0027t work with these chips.)\n\nPatch update: struct member alignment, whitespace nits\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "bb9f2206b60ace29e49a057fbd9be86d79d86200",
      "tree": "588dcd6a1b8ae1c3fecbf2d6c210c7f7d8bfc820",
      "parents": [
        "478b233eda81bfe41307512b8336fd688c6553e0"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Dec 22 22:14:52 2007 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:24 2008 +0100"
      },
      "message": "firewire: fw-ohci: CycleTooLong interrupt management\n\nThe firewire-ohci driver so far lacked the ability to resume cycle\nmaster duty after that condition happened, as added to ohci1394 in Linux\n2.6.18 by commit 57fdb58fa5a140bdd52cf4c4ffc30df73676f0a5.  This ports\nthis patch to fw-ohci.\n\nThe \"cycle too long\" condition has been seen in practice\n  - with IIDC cameras if a mode with packets too large for a speed is\n    chosen,\n  - sporadically when capturing DV on a VIA VT6306 card with ohci1394/\n    ieee1394/ raw1394/ dvgrab 2.\n    https://bugzilla.redhat.com/show_bug.cgi?id\u003d415841#c7\n(This does not fix Fedora bug 415841.)\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "478b233eda81bfe41307512b8336fd688c6553e0",
      "tree": "3c6b6802c79ffa1a981028d4adece60e27aa2c36",
      "parents": [
        "bcee893c6cba88badd292b636f33a8677c0dd962"
      ],
      "author": {
        "name": "Rabin Vincent",
        "email": "rabin@rab.in",
        "time": "Fri Dec 21 23:02:15 2007 +0530"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:24 2008 +0100"
      },
      "message": "firewire: Fix extraction of source node id\n\nFix extraction of the source node id from the packet header.\n\nSigned-off-by: Rabin Vincent \u003crabin@rab.in\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "bcee893c6cba88badd292b636f33a8677c0dd962",
      "tree": "f315048cf38e30d016d0ea50aa06989327b2f235",
      "parents": [
        "0642b6577f1d455ed99e2da4a4d9216a866d2449"
      ],
      "author": {
        "name": "David Moore",
        "email": "dcm@MIT.EDU",
        "time": "Wed Dec 19 15:26:38 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:23 2008 +0100"
      },
      "message": "firewire: fw-ohci: Bug fixes for packet-per-buffer support\n\nThis patch corrects a number of bugs in the current OHCI 1.0\npacket-per-buffer support:\n\n1. Correctly deal with payloads that cross a page boundary.  The\nprevious version would not split the descriptor at such a boundary,\npotentially corrupting unrelated memory.\n\n2. Allow user-space to specify multiple packets per struct\nfw_cdev_iso_packet in the same way that dual-buffer allows.  This is\nsignaled by header_length being a multiple of header_size.  This\nmultiple determines the number of packets.  The payload size allocated\nper packet is determined by dividing the total payload size by the\nnumber of packets.\n\n3. Make sync support work properly for packet-per-buffer.\n\nI have tested this patch with libdc1394 by forcing my OHCI 1.1\ncontroller to use the packet-per-buffer support instead of dual-buffer.\n\nI would greatly appreciate testing by those who have a DV devices and\nother types of iso streamers to make sure I didn\u0027t cause any\nregressions.\n\nStefan, with this patch, I\u0027m hoping that libdc1394 will work with all\nyour OHCI 1.0 controllers now.\n\nThe one bit of future work that remains for packet-per-buffer support is\nthe automatic compaction of short payloads that I discussed with\nKristian.\n\nSigned-off-by: David Moore \u003cdcm@acm.org\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "0642b6577f1d455ed99e2da4a4d9216a866d2449",
      "tree": "35ae292471403cfe0f1a6ef9dc4c7d24b16ff340",
      "parents": [
        "4b11ea96a08a0f97a16edba55a615354c6d846b5"
      ],
      "author": {
        "name": "David Moore",
        "email": "dcm@MIT.EDU",
        "time": "Wed Dec 19 03:09:18 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:23 2008 +0100"
      },
      "message": "firewire: fw-ohci: Fix for dualbuffer three-or-more buffers\n\nThis patch fixes the problem where different OHCI 1.1 controllers behave\ndifferently when a received iso packet straddles three or more buffers\nwhen using the dual-buffer receive mode.  Two changes are made in order\nto handle this situation:\n\n1. The packet sync DMA descriptor is given a non-zero header length and\nnon-zero payload length.  This is because zero-payload descriptors are\nnot discussed in the OHCI 1.1 specs and their behavior is thus\nundefined.  Instead we use a header size just large enough for a single\nheader and a payload length of 4 bytes for this first descriptor.\n\n2. As we process received packets in the context\u0027s tasklet, read the\npacket length out of the headers.  Keep track of the running total of\nthe packet length as \"excess_bytes\", so we can ignore any descriptors\nwhere no packet starts or ends.  These descriptors may not have had\ntheir first_res_count or second_res_count fields updated by the\ncontroller so we cannot rely on those values.\n\nThe main drawback of this patch is that the excess_bytes value might get\n\"out of sync\" with the packet descriptors if something strange happens\nto the DMA program.  I\u0027m not if such a thing could ever happen, but I\nappreciate any suggestions in making it more robust.\n\nAlso, the packet-per-buffer support may need a similar fix to deal with\nissue 1, but I haven\u0027t done any work on that yet.\n\nStefan, I\u0027m hoping that with this patch, all your OHCI 1.1 controllers\nwill work properly with an unmodified version of libdc1394.\n\nSigned-off-by: David Moore \u003cdcm@acm.org\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "4b11ea96a08a0f97a16edba55a615354c6d846b5",
      "tree": "110366f1241ae8cc023653d1e9b0cd2cf0a3f900",
      "parents": [
        "b7811da2d94d8e1f77015ec9afa4575ddc9981a4"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Dec 16 17:32:11 2007 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:22 2008 +0100"
      },
      "message": "firewire: fw-sbp2: remove unused misleading macro\n\nSBP2_MAX_SECTORS is nowhere used in fw-sbp2.\nIt merely got copied over from sbp2 where it played a role in the past.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "b7811da2d94d8e1f77015ec9afa4575ddc9981a4",
      "tree": "4f748f80416635303fbe9d82e19aa65d7777e847",
      "parents": [
        "285838eb22ef0db77b464da70b7352cdbfffc939"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jan 15 21:10:50 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:22 2008 +0100"
      },
      "message": "firewire: fw-sbp2: prepare for s/g chaining\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "285838eb22ef0db77b464da70b7352cdbfffc939",
      "tree": "c346c7bbc284622bbf76e9f30f05a65ad8859067",
      "parents": [
        "85c5798b09e9248f29edbc42f10b99842661e85c"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Nov 07 01:12:51 2007 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jan 30 22:22:21 2008 +0100"
      },
      "message": "firewire: fw-sbp2: refactor workq and kref handling\n\nThis somewhat reduces the size of firewire-sbp2.ko.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "465ff3185e0cb76d46137335a4d21d0d9d3ac8a2",
      "tree": "171068cd7d99600cd094c2eb72bac712649fd9eb",
      "parents": [
        "11c3e689f1c3a73e3af7b0ea767b1b0626da8033"
      ],
      "author": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Tue Jan 01 10:00:10 2008 -0600"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@HansenPartnership.com",
        "time": "Fri Jan 11 18:29:22 2008 -0600"
      },
      "message": "[SCSI] relax scsi dma alignment\n\nThis patch relaxes the default SCSI DMA alignment from 512 bytes to 4\nbytes.  I remember from previous discussions that usb and firewire have\nsector size alignment requirements, so I upped their alignments in the\nrespective slave allocs.\n\nThe reason for doing this is so that we don\u0027t get such a huge amount of\ncopy overhead in bio_copy_user() for udev.  (basically all inquiries it\nissues can now be directly mapped).\n\nAcked-by: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\n"
    },
    {
      "commit": "a186b4a6b22fdc96a1ed63da483d267b5d00839e",
      "tree": "3d609e60aa00a921475b94c7b133e44068d15a99",
      "parents": [
        "41f81e88e01eb959f439f8537c58078e4bfc5291"
      ],
      "author": {
        "name": "Jarod Wilson",
        "email": "jwilson@redhat.com",
        "time": "Mon Dec 03 13:43:12 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Dec 10 21:55:19 2007 +0100"
      },
      "message": "firewire: OHCI 1.0 Isochronous Receive support\n\nThird rendition of FireWire OHCI 1.0 Isochronous Receive support, using a\nzer-copy method similar to OHCI 1.1 which puts the IR data payload directly\ninto the userspace buffer. The zero-copy implementation eliminates the\nvideo artifacts, audio popping, and buffer underrun problems seen with\nversion 1 of this patch, as well as fixing a regression in OHCI 1.1 support\nintroduced by version 2 of this patch.\n\nSuccessfully tested in OHCI 1.1 mode on the following chipsets:\n\n- NEC uPD72847 (rev 01), OHCI 1.1 (PCI)\n- Ti XIO2200(A) (rev 01), OHCI 1.1 (PCIe)\n- Ti TSB41AB2 (rev 01), OHCI 1.1 (PCI on SB Audigy)\n- Apple UniNorth 2 (rev 81), OHCI 1.1 (PowerBook G4 onboard)\n\nSuccessfully tested in OHCI 1.0 mode on the following chipsets:\n\n- Agere FW323 (rev 06), OHCI 1.0 (Mac Mini onboard)\n- Agere FW323 (rev 06), OHCI 1.0 (PCI)\n- Via VT6306 (rev 46), OHCI 1.0 (PCI)\n- NEC OrangeLink (rev 01), OHCI 1.0 (PCI)\n- NEC uPD72847 (rev 01), OHCI 1.1 (PCI)\n- Ti XIO2200(A) (rev 01), OHCI 1.1 (PCIe)\n\nThe bulk of testing was done in an x86_64 system, but was also successfully\nsanity-tested on other systems, including a PPC(32) PowerBook G4 and an i686\nEPIA M10k. Crude benchmarking (watching top during capture) puts the cpu\nutilization during capture on the EPIA\u0027s 1GHz Via C3 processor around 13%,\nwhich is down from 30% with the v1 code.\n\nSome implementation details:\n\nTo maintain the same userspace API as dual-buffer mode, we set up two\ndescriptors for every incoming packet. The first is an INPUT_MORE descriptor,\npointing to a buffer large enough to hold just the packet\u0027s iso headers,\nimmediately followed by an INPUT_LAST descriptor, pointing to a chunk of the\nuserspace buffer big enough for the packet\u0027s data payload. With this setup,\neach incoming packet fills in these two descriptors in a manner that very\nclosely emulates dual-buffer receive, to the point where the bulk of the\nhandle_ir_* code is now identical between the two (and probably primed for\nsome restructuring to share code between them).\n\nThe only caveat I have at the moment is that neither of my OHCI 1.0 Via\nVT6307-based FireWire controllers work particularly well with this code\nfor reasons I have yet to figure out.\n\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "7c45d1913f0a1d597eb4bc3b2c962bc2967da9ea",
      "tree": "49a6bd70e0d221ba6456d6a3c2e403e7d5f5bfaf",
      "parents": [
        "dbeeb816e805091e7cfc03baf36dc40b4adb2bbd"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Nov 07 01:11:56 2007 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Nov 07 01:59:28 2007 +0100"
      },
      "message": "firewire: fw-sbp2: fix refcounting\n\nSince patch \"fw-sbp2: use an own workqueue (fix system responsiveness)\"\nincreased parallelism between fw-sbp2 and fw-core, it was possible that\nfw-sbp2 didn\u0027t release the SCSI device when the FireWire device was\ndisconnected.\n\nThis happened if sbp2_update() ran during sbp2_login(), because a bus\nreset occurred during sbp2_login().  The sbp2_login() work would [try\nto] reschedule itself because it failed due to the bus reset, and it\nwould _not_ drop its reference on the target.  However, sbp2_update()\nwould schedule sbp2_login() too before sbp2_login() rescheduled itself\nand hence sbp2_update() would take an additional reference.  And then\nwe would have one reference too many.\n\nThe fix is to _always_ drop the reference when leaving the sbp2_login()\nwork.  If the sbp2_login() work reschedules itself, it takes a\nreference, but only if it wasn\u0027t already rescheduled by sbp2_update().\n\nDitto in the sbp2_reconnect() work.\n\nThe resulting code is actually simpler than before:  We _always_ take\na reference when successfully scheduling work.  And we _always_ drop\na reference when leaving a workqueue job.  No exceptions.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "0bd243c4d93583cd8e1786c0bd6982f6f9f94ab6",
      "tree": "4302c298abed38b0ff866a66390a7f434a612db0",
      "parents": [
        "5307cc1aa53850f017c8053db034cf950b670ac9"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Tue Jun 05 19:27:05 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 31 19:02:19 2007 +0100"
      },
      "message": "firewire: Fix pci resume to not pass in a __be32 config rom.\n\nThe ohci_enable() function shared between pci_probe and pci_resume\ntakes a host endian config rom, but ohci-\u003econfig_rom is __be32.  This\nsets up the config rom in the wrong endian on little endian machine,\nspecifically, BusOptions will be initialized to a 0 max receive size.\n\nThis patch changes the way we reuse the config rom so that we avoid\nthis problem.\n\nSigned-off-by: Kristian Hoegsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "4b6d51ec62d9c57432430528d6293605794a9f1b",
      "tree": "5612302d7f53db9caa7297f1041e1d7785e62f2f",
      "parents": [
        "c74e92c209cf30ae6003e042e7c017eb6c370b64"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Oct 21 11:20:07 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Oct 22 19:48:56 2007 +0200"
      },
      "message": "firewire: fw-ohci: shut up a superfluous compiler warning\n\nNew warning since commit ab88ca488b8af66c3defa165874e81e695319a19,\n\"firewire: fw-ohci: missing dma_unmap_single\":\ndrivers/firewire/fw-ohci.c: In function \u0027at_context_transmit\u0027:\ndrivers/firewire/fw-ohci.c:609: warning: \u0027payload_bus\u0027 may be used\n uninitialized in this function\n\nAccess to payload_bus is conditional on packet-\u003epayload_length \u003e 0,\nand that won\u0027t change while in at_context_queue_packet.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "c74e92c209cf30ae6003e042e7c017eb6c370b64",
      "tree": "8448c05baad9d41d42f792441eceb5d2ac2a04b7",
      "parents": [
        "55b70a0300b873c0ec7ea6e33752af56f41250ce"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Oct 21 10:43:11 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Oct 22 19:48:55 2007 +0200"
      },
      "message": "firewire: fw-ohci: log a note about unsupported features\n\nbecause there seems to be more time needed to implement this.\nAlso, change related error return values to more appropriate ones.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "dbe7f76dd6e7ed4991870f0c779d758b605d9787",
      "tree": "5c915198932698906ed689d495f8ec88c087d729",
      "parents": [
        "94547426db2f4f2aad2f640ca074ccb1c6f7e660"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "ukleinek@informatik.uni-freiburg.de",
        "time": "Sat Oct 20 01:55:04 2007 +0200"
      },
      "committer": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Sat Oct 20 01:55:04 2007 +0200"
      },
      "message": "fix typo \"insted\" -\u003e \"instead\"\n\nSigned-off-by: Uwe Kleine-König \u003cukleinek@informatik.uni-freiburg.de\u003e\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\n"
    },
    {
      "commit": "83431cba3d847fc2296d3f38ce7feb623a1cfc45",
      "tree": "c5ce3bb5ea97d624c15331f63087b8373fad4040",
      "parents": [
        "c1b91ce49158d607666dbef5b8d53cd77d397589"
      ],
      "author": {
        "name": "Jay Fenlason",
        "email": "fenlason@redhat.com",
        "time": "Mon Oct 08 17:00:29 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:10 2007 +0200"
      },
      "message": "firewire: fw-cdev: reorder wakeup vs. spinlock\n\nSigned-off-by: Jay Fenlason \u003cfenlason@redhat.com\u003e\n\nPrompted by https://bugzilla.redhat.com/show_bug.cgi?id\u003d323411\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "c1b91ce49158d607666dbef5b8d53cd77d397589",
      "tree": "9eba555701cc09c376fa0f6c5059e90e6ccc1529",
      "parents": [
        "e5f84f82bdc5f8a5ce3d33aa6a2cc727fc08bda6"
      ],
      "author": {
        "name": "Yann Dirson",
        "email": "ydirson@altern.org",
        "time": "Sun Oct 07 02:21:29 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:09 2007 +0200"
      },
      "message": "firewire: in-code doc updates.\n\nSigned-off-by: Yann Dirson \u003cydirson@altern.org\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e (update)\n"
    },
    {
      "commit": "e5f84f82bdc5f8a5ce3d33aa6a2cc727fc08bda6",
      "tree": "f3b165f1971dd2d6ca3c3819656dc55d0dd7256d",
      "parents": [
        "a64408b96b5f67c2778958a230b5cfa3408a4a81"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Oct 07 02:10:11 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:09 2007 +0200"
      },
      "message": "firewire: a header cleanup\n\nfw_node() is not used (and not useful) outside fw-topology.c.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "a64408b96b5f67c2778958a230b5cfa3408a4a81",
      "tree": "5dbd798b626f3693fa9950fa2a3b37e489aa6bbd",
      "parents": [
        "02ff8f8ee151e880414b99a11f67cae0cecd4977"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Sep 29 10:41:58 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:08 2007 +0200"
      },
      "message": "firewire: adopt read cycle timer ABI from raw1394\n\nThis duplicates the read cycle timer feature of raw1394 (added in Linux\n2.6.21) in firewire-core\u0027s userspace ABI.  The argument to the ioctl is\nreordered though to ensure 32/64 bit compatibility.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "02ff8f8ee151e880414b99a11f67cae0cecd4977",
      "tree": "bafdb5af973e0010fb46ea21a2c4f4550a5d8a4d",
      "parents": [
        "ab88ca488b8af66c3defa165874e81e695319a19"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Aug 30 00:11:40 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:08 2007 +0200"
      },
      "message": "firewire: fw-ohci: check for misconfigured bus (phyID \u003d\u003d 63)\n\nCheck NodeID.nodeNumber as per OHCI 1.1 clause 7.2.3.2.  See also IEEE\n1394a table 5B-1.\n\nAlso, demote the \"node ID not valid\" message from error to notification\nas it is not an error condition.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "ab88ca488b8af66c3defa165874e81e695319a19",
      "tree": "0f798dacb2c16317a15b043697ae2e74384ff319",
      "parents": [
        "e524f616f59722bc7f93eb1fd79d3bbdcdf4f894"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Aug 29 19:40:28 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:07 2007 +0200"
      },
      "message": "firewire: fw-ohci: missing dma_unmap_single\n\nat_context_queue_packet() didn\u0027t clean up in an early exit path.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "e524f616f59722bc7f93eb1fd79d3bbdcdf4f894",
      "tree": "172b6ad47b63b282083726722e695a3b09c769a9",
      "parents": [
        "a7fb60db711fce56e372f0bb8a733c0ad1743525"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Aug 20 21:58:30 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:06 2007 +0200"
      },
      "message": "firewire: fw-ohci: log posted write errors\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "a7fb60db711fce56e372f0bb8a733c0ad1743525",
      "tree": "ef310098a8e064e05bea8526c0f194ac4fc798bc",
      "parents": [
        "c26f02340e89c55390c9044ea65d9aef610b38f5"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Aug 20 21:41:22 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:06 2007 +0200"
      },
      "message": "firewire: fw-ohci: reorder includes\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "c26f02340e89c55390c9044ea65d9aef610b38f5",
      "tree": "13b299e18b0000ce6bbbc0ba83706b638b82ad9a",
      "parents": [
        "ee71c2f9ee85117e41ef87357ed8f75d29369b98"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Aug 20 21:40:30 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:05 2007 +0200"
      },
      "message": "firewire: fw-ohci: fix includes\n\nAdd used includes, remove unused includes.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "ee71c2f9ee85117e41ef87357ed8f75d29369b98",
      "tree": "9bb749909370ec732ed730ca80553908913156af",
      "parents": [
        "df8ec2490fed5dd23316bbb2c2e90e59e7d37126"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Aug 25 14:08:19 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:05 2007 +0200"
      },
      "message": "firewire: fw-ohci: enforce read order for selfID generation\n\nIt seems unlikely, but access to self_id_cpu[0] could at least in theory\nbe deferred until after the loop over self_id_cpu[1..n] or even after\nthe subsequent reg_read.  Enforce the desired order by a read barrier.\n\nAlso prevent the reg_read from being reordered relative to the for loop.\nThis isn\u0027t necessary if the loop\u0027s conditional printk counts as an\nimplicit barrier, but better make it explicit.\n\n(self_id_cpu[] is a coherent DMA buffer.)\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "df8ec2490fed5dd23316bbb2c2e90e59e7d37126",
      "tree": "398b8a3e8ab2e1de31a17104b92981b9960c3e39",
      "parents": [
        "2df222b8f8fe9e18c9c9fdfd46f60dad55f5ac14"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Aug 12 12:51:18 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:04 2007 +0200"
      },
      "message": "firewire: fw-sbp2: use an own workqueue (fix system responsiveness)\n\nFirewire-sbp2 did very uncooperative things in the kernel\u0027s shared\nworkqueue:  Sleeping until reception of management status from the\ntarget for up to 2 seconds, and performing SCSI inquiry and all of the\nsetup of SCSI command set drivers via scsi_add_device.  If there were\ntransient or permanent error conditions, this caused long blockage of\nthe kernel\u0027s events process, noticeable e.g. by blocked keyboard input.\n\nWe now allocate a workqueue process exclusive to fw-sbp2.  As a side\neffect, this also increases parallelism of fw-sbp2\u0027s login and reconnect\nwork versus fw-core\u0027s device discovery and device update work which is\nperformed in the shared workqueue.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "2df222b8f8fe9e18c9c9fdfd46f60dad55f5ac14",
      "tree": "d01c8f5a5840c8e975d50ca84d20bb581876030e",
      "parents": [
        "5a3c2be6c9a5641a06c71c906645d676fa4d3fdc"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Aug 13 17:48:25 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:03 2007 +0200"
      },
      "message": "firewire: fw-sbp2: expose module parameter for workarounds\n\nOn rare occasions, the ability to set one of the workaround flags at\nruntime may save the day.\n\nPeople who experience I/O errors with firewire-sbp2 while the old sbp2\ndriver worked for them should try workarounds\u003d1 and report to the devel\nmailinglist whether that improves things.  Firewire-sbp2 defaults to the\nSCSI stack\u0027s maximum transfer size per command, while sbp2 limits them\nto 128 kBytes.  Flag 1 accomplishes just that.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "5a3c2be6c9a5641a06c71c906645d676fa4d3fdc",
      "tree": "6c639fecc4f8e7b613e79065b5edb4a3293287d8",
      "parents": [
        "1b34e97441384d527c438a6ee597bfc800373bce"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Aug 25 14:05:28 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:03 2007 +0200"
      },
      "message": "firewire: fw-sbp2: add support for multiple logical units per target\n\nFixes \"New firewire stack only recognizing half of a chain of drives\",\nhttps://bugzilla.redhat.com/bugzilla/show_bug.cgi?id\u003d242254\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "1b34e97441384d527c438a6ee597bfc800373bce",
      "tree": "2a4bacf54f5615babbf31a850ccc31781620c375",
      "parents": [
        "930e4b7fe3b4e1c4e14b9c22e4c9c74dc8db75f3"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Aug 25 10:40:42 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:02 2007 +0200"
      },
      "message": "firewire: fw-sbp2: always enable IRQs before calling command ORB callback\n\nOn IOMMU-less noncoherent architectures, orb-\u003ecallback will memcpy the\nwhole SCSI command buffer for READ-like SCSI commands.  It is therefore\nfriendlier to enable IRQs before the call, like before patch \"Add\nref-counting for sbp2 orbs\".\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nAcked-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "930e4b7fe3b4e1c4e14b9c22e4c9c74dc8db75f3",
      "tree": "08a19760d9e2d2ad7d2784e30016ef92f807fd51",
      "parents": [
        "1415d9189e8c59aa9c77a3bba419dcea062c145f"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Aug 03 20:56:31 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:01 2007 +0200"
      },
      "message": "firewire: fw-core: local variable shadows a global one\n\nSparse warned about it although it was apparently harmless:\n\ndrivers/firewire/fw-cdev.c:624:23: warning: symbol \u0027interrupt\u0027 shadows an earlier one\ninclude/asm/hw_irq.h:29:13: originally declared here\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "1415d9189e8c59aa9c77a3bba419dcea062c145f",
      "tree": "9253dc4ea24ab55194babeba52f830485c05da2c",
      "parents": [
        "002a98f14720f90b107e8c44b7733f9bd5dff728"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 17 02:10:16 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Oct 17 00:00:00 2007 +0200"
      },
      "message": "firewire: optimize fw_core_add_address_handler\n\nPotentially avoids unnecessary loop runs.\nGuarantee quadlet-aligned starts of address regions.\nDocument the return values.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "1ccc9147f6a063c42fef67acff34de18435a4a6b",
      "tree": "cd64f70d98174ff8a9079362af37ef47ba61746c",
      "parents": [
        "a39f9d028a48c9dfbc98e8c1504bf96578c65164"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Sun Oct 14 19:34:40 2007 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Oct 14 12:41:51 2007 -0700"
      },
      "message": "fw-cdev __user annotations\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7eff2e7a8b65c25920207324e56611150eb1cd9a",
      "tree": "02a0eeba9d25d996233e30c18f258dfae0ae2139",
      "parents": [
        "8380770c842faef3001e44662953d64ad9a93663"
      ],
      "author": {
        "name": "Kay Sievers",
        "email": "kay.sievers@vrfy.org",
        "time": "Tue Aug 14 15:15:12 2007 +0200"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 12 14:51:01 2007 -0700"
      },
      "message": "Driver core: change add_uevent_var to use a struct\n\nThis changes the uevent buffer functions to use a struct instead of a\nlong list of parameters. It does no longer require the caller to do the\nproper buffer termination and size accounting, which is currently wrong\nin some places. It fixes a known bug where parts of the uevent\nenvironment are overwritten because of wrong index calculations.\n\nMany thanks to Mathieu Desnoyers for finding bugs and improving the\nerror handling.\n\nSigned-off-by: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Mathieu Desnoyers \u003cmathieu.desnoyers@polymtl.ca\u003e\nCc: Cornelia Huck \u003ccornelia.huck@de.ibm.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n\n"
    },
    {
      "commit": "a1134dd48d59e532b801659163539bf01cae7673",
      "tree": "fd9a613730e9e6c92687b2d906ef626b92ded9f5",
      "parents": [
        "fc8b28a65d81a6fdf58ef81ce5b8ac7a35304e68"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Oct 07 12:31:22 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Oct 07 13:48:41 2007 +0200"
      },
      "message": "firewire: point to migration document\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "5511142870046a7bed947d51ec9b320856ee120a",
      "tree": "288105167ab620dddca35e35b20a4c94431387ca",
      "parents": [
        "b21010ed6498391c0f359f2a89c907533fe07fec"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Sep 06 09:50:30 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Sep 07 18:44:35 2007 +0200"
      },
      "message": "firewire: fw-ohci: ignore failure of pci_set_power_state (fix suspend regression)\n\nFixes (papers over) \"Sleep problems with kernels \u003e\u003d 2.6.21 on powerpc\",\nhttp://lkml.org/lkml/2007/8/25/155.  The issue is that the FireWire\ncontroller\u0027s pci_dev.current_state of iBook G3 and presumably older\nPowerBooks is still in PCI_UNKNOWN instead of PCI_D0 when the firewire\ndriver\u0027s .suspend method is called.\n\nLike it was suggested earlier in http://lkml.org/lkml/2006/10/24/13, we\ndo not fail .suspend anymore if pci_set_power_state failed.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "e57d2011a6276d55a87f26653a0395f302ce0d51",
      "tree": "36392a46eaa7d0697b233c6da151e3ca1034f9f1",
      "parents": [
        "8a2d9ed3210464d22fccb9834970629c1c36fa36"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Fri Aug 24 18:59:58 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Aug 25 18:00:27 2007 +0200"
      },
      "message": "firewire: Add ref-counting for sbp2 orbs (fix command abortion)\n\nThis handles the case where we get the status write before getting the\ncomplete_transaction callback (\"status write for unknown orb\").  In\nthis case, we just assume that the initial orb pointer transaction\nsucceeded and finish the orb.  To prevent the transaction callback\nfrom touching freed memory, we ref-count the orb structures.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "8a2d9ed3210464d22fccb9834970629c1c36fa36",
      "tree": "20c8f95275658d53a38b608412bbcdd485400c7a",
      "parents": [
        "a2ee3f9bbb0ce57102dad8928d54f59acdc4b8f7"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Aug 21 01:05:14 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Aug 25 18:00:27 2007 +0200"
      },
      "message": "firewire: fix unloading of fw-ohci while devices are attached\n\nFix panic in run_timer_softirq right after \"modprobe -r firewire-ohci\"\nif a FireWire disk was attached and firewire-sbp2 loaded.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "ae57988f68acdc9fbee649765148f15eb7a1b991",
      "tree": "d312b4a82b16dd019547139e2c74fca3bab21131",
      "parents": [
        "4eaff7d63052d781732de9eff4d2287c8e00348f"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Aug 02 20:34:17 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Aug 02 20:34:17 2007 +0200"
      },
      "message": "firewire: fw-core: make two variables static\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "4eaff7d63052d781732de9eff4d2287c8e00348f",
      "tree": "ce7461a475a8d76c8a6e516d7e157f54851155e7",
      "parents": [
        "25659f7183376c6b37661da6141d5eaa21479061"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jul 25 19:18:08 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Aug 02 20:34:17 2007 +0200"
      },
      "message": "firewire: fw-ohci: dma_free_coherent needs IRQs enabled\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "25659f7183376c6b37661da6141d5eaa21479061",
      "tree": "7ac9590d43a3c2b7760a88c00a39c1eb0f231745",
      "parents": [
        "e4f8cac5e07528f7e0bc21d3682c16c9de993ecb"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jul 21 22:43:05 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Aug 02 20:34:16 2007 +0200"
      },
      "message": "firewire: fw-sbp2: set correct maximum payload (fixes CardBus adapters)\n\nAs far as I know, all CardBus FireWire 400 adapters have a maximum\npayload of 1024 bytes which is less than the speed-dependent limit of\n2048 bytes.  Fw-sbp2 has to take the host adapter\u0027s limit into account.\n\nThis apparently fixes Juju\u0027s incompatibility with my CardBus cards, a\nNEC based card and a VIA based card.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nAcked-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "e6f194d8f6f50da6837af637b2fd839c34185f7a",
      "tree": "f3c479a2bc24d49a150ff183e2614ee0f76cb366",
      "parents": [
        "7578634990fb47cc30083fbd812689aa6deacfc0",
        "b91421749a1840148d8c81637c03c0ace3f35269"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Jul 22 11:36:49 2007 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Sun Jul 22 11:36:49 2007 -0700"
      },
      "message": "Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (60 commits)\n  [SCSI] libsas: make ATA functions selectable by a config option\n  [SCSI] bsg: unexport sg v3 helper functions\n  [SCSI] bsg: fix bsg_unregister_queue\n  [SCSI] bsg: make class backlinks\n  [SCSI] 3w-9xxx: add support for 9690SA\n  [SCSI] bsg: fix bsg_register_queue error path\n  [SCSI] ESP: Increase ESP_BUS_TIMEOUT to 275.\n  [SCSI] libsas: fix scr_read/write users and update the libata documentation\n  [SCSI] mpt fusion: update Kconfig help\n  [SCSI] scsi_transport_sas: add destructor for bsg\n  [SCSI] iscsi_tcp: buggered kmalloc()\n  [SCSI] qla2xxx: Update version number to 8.02.00-k2.\n  [SCSI] qla2xxx: Add ISP25XX support.\n  [SCSI] qla2xxx: Use pci_try_set_mwi().\n  [SCSI] qla2xxx: Use PCI-X/PCI-Express read control interfaces.\n  [SCSI] qla2xxx: Re-factor isp_operations to static structures.\n  [SCSI] qla2xxx: Validate mid-layer \u0027underflow\u0027 during check-condition handling.\n  [SCSI] qla2xxx: Correct setting of \u0027current\u0027 and \u0027supported\u0027 speeds during FDMI registration.\n  [SCSI] qla2xxx: Generalize iIDMA support.\n  [SCSI] qla2xxx: Generalize FW-Interface-2 support.\n  ...\n"
    },
    {
      "commit": "b02b6bc46571b21a545c9e697df1e226ff22bc81",
      "tree": "4088bb8494b057ecbee2a360556eb90600121755",
      "parents": [
        "b4e44590f0811e629faf2de4aea15e752d83ce3d"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Wed May 09 19:23:12 2007 -0400"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jejb@mulgrave.localdomain",
        "time": "Thu Jul 19 12:06:26 2007 -0500"
      },
      "message": "[SCSI] Make scsi_host_template::proc_name const char * instead of char *.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n\ncollapsed with fw-sbp2 patch \"Drop cast to non-const char * in host\ntemplate initialization.\" from Kristian HÃ¸gsberg\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@SteelEye.com\u003e\n"
    },
    {
      "commit": "412edf654a04138805fcda2b46a842f681023eeb",
      "tree": "4f920eea62646900f3c6606c15cbea75ebaf9e14",
      "parents": [
        "9c9bdf4d50730fd04b06077e22d7a83b585f26b5"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Jul 16 21:05:41 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jul 18 23:53:28 2007 +0200"
      },
      "message": "firewire: fw-sbp2: convert to new SCSI data buffer accessors\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "9c9bdf4d50730fd04b06077e22d7a83b585f26b5",
      "tree": "a7d78a732aa2502a4e43d5a5c56966b17b51a4c8",
      "parents": [
        "5d59a6f1ba90f15132d55d9d4d5a632f15a43d84"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 17 02:15:36 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jul 18 23:53:28 2007 +0200"
      },
      "message": "firewire: fix memory leak of fw_request instances\n\nFound and debugged by Jay Fenlason \u003cfenlason@redhat.com\u003e.\nThe bug was especially noticeable with direct I/O over fw-sbp2.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "5d59a6f1ba90f15132d55d9d4d5a632f15a43d84",
      "tree": "41482875bd19d9568f2f3af7be8d912f05e5e2fd",
      "parents": [
        "b980f5a224f3df6c884dbf5ae48797ce352ba139"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 17 02:13:48 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jul 18 23:53:27 2007 +0200"
      },
      "message": "firewire: remove bogus check in fw_core_handle_request\n\nThis check is bogus:\n  - Maximum asynchronous payload size for S800...S3200 is 4096.\n  - The p-\u003epayload_length is totally uninteresting.  Only the\n    request-\u003elength of the subsequently allocated and initialized\n    struct fw_request is of significance.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "b980f5a224f3df6c884dbf5ae48797ce352ba139",
      "tree": "72aa1bf66946172d58e2e72634a65f8126c91834",
      "parents": [
        "362e901c65123e0e72a764fcbe6c3d6a2505c7a6"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Jul 12 22:25:14 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jul 18 23:53:27 2007 +0200"
      },
      "message": "firewire: fw-ohci: fix \"scheduling while atomic\"\n\ncontext_stop is called by bus_reset_tasklet, among else.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "362e901c65123e0e72a764fcbe6c3d6a2505c7a6",
      "tree": "8d9fd6ea38bd90b20c70a2276c86c1eaf7116ca0",
      "parents": [
        "5bae7ac9feba925fd0099057f6b23d7be80b7b41"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Jul 12 22:24:19 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Jul 18 23:53:27 2007 +0200"
      },
      "message": "firewire: fw-ohci: flush MMIO write before msleep\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "7aa484815f8c4defd01366f239b71da5e6b8a791",
      "tree": "63bf30875b700b603fdbaa317a523cbfe6d57496",
      "parents": [
        "8526392ae816a2c69f57097ba032865523019caa"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Jul 02 21:04:44 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:49 2007 +0200"
      },
      "message": "firewire: fw-sbp2: fix DMA mapping of management ORBs\n\nThe CPU must not touch the buffer after it was DMA-mapped.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "8526392ae816a2c69f57097ba032865523019caa",
      "tree": "7f8b8e9e9298297bfd77740dbbe4e08d1c691ba3",
      "parents": [
        "b4be016ad81af5a83f0be820edf106de883e6ade"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Jul 02 21:04:08 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:48 2007 +0200"
      },
      "message": "firewire: fw-sbp2: fix DMA mapping of command ORBs\n\nThe CPU must not touch the buffer after it was DMA-mapped.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "b4be016ad81af5a83f0be820edf106de883e6ade",
      "tree": "f15e6577aee7b098ba52bb3f8dfeaa2af61c3716",
      "parents": [
        "332ef3310bc37ff29fd4382d6dfb38a787078091"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Jul 02 22:07:34 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:48 2007 +0200"
      },
      "message": "firewire: fw-sbp2: fix DMA mapping of S/G tables\n\n  - The CPU must not touch the buffer after it was DMA-mapped.\n  - The size argument of dma_unmap_single(...page_table...) was bogus.\n  - Move a comment closer to the code to which it refers to.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "332ef3310bc37ff29fd4382d6dfb38a787078091",
      "tree": "63313482ee19fffea5900bacf52c1c660528f72a",
      "parents": [
        "9fb2dd12c019965ffd15e5a0727af14488b3a772"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jul 01 13:56:03 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:47 2007 +0200"
      },
      "message": "firewire: fw-sbp2: add a boundary check\n\nAdd rudimentary check for the case that the page table overflows due to\nmerging of s/g elements by the IOMMU.  This would have lead to\noverwriting of arbitrary memory.\n\nAfter this change I expect that an offending command will be\nunsuccessfully retried until the scsi_device is taken offline by SCSI\ncore.  It\u0027s a border case and not worth to implement a recovery\nstrategy.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nAcked-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "9fb2dd12c019965ffd15e5a0727af14488b3a772",
      "tree": "4d0209e6b3cbfd0d683235abb92dd3740ca0ebe5",
      "parents": [
        "e7cdf237b2a8b4b566721cfb08e448b454c74ada"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jul 01 13:55:31 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:47 2007 +0200"
      },
      "message": "firewire: fw-sbp2: correctly align page tables\n\nThis is required per SBP-2 clause 5.2.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nAcked-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "e7cdf237b2a8b4b566721cfb08e448b454c74ada",
      "tree": "feb815707653f5b208ab90b57d16a61831c80893",
      "parents": [
        "ffd0db26ddc32cd87097ece9725921f43ad487ee"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jul 01 13:54:57 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:47 2007 +0200"
      },
      "message": "firewire: fw-sbp2: memset wants string.h\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nAcked-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "ffd0db26ddc32cd87097ece9725921f43ad487ee",
      "tree": "4fbdf85f62c2ed09ae9bec79f3c2f7092e8acc02",
      "parents": [
        "6f061487f7d31427d7e8f420f366e5537ae16f43"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jul 01 13:54:24 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:46 2007 +0200"
      },
      "message": "firewire: fw-sbp2: use correct speed in sbp2_agent_reset\n\nnoticed by Jay Fenlason\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nAcked-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "6f061487f7d31427d7e8f420f366e5537ae16f43",
      "tree": "bba76e89a1ef9585f8105f61d2b72251b518701c",
      "parents": [
        "7ada60e367640fa8a4a349d9b105f235f346238b"
      ],
      "author": {
        "name": "Jay Fenlason",
        "email": "fenlason@redhat.com",
        "time": "Wed Jun 27 16:04:33 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:46 2007 +0200"
      },
      "message": "firewire: fw-sbp2: correctly dereference by container_of\n\nReplace a cast with a container_of().  As long as nobody reorders the\nstructure elements, they do the same thing, but container_of() is more\nreadable.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e (added complete_command_orb)\nAcked-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "5cd54c94b0ba45033c126237d3d70c6e7ab52c3f",
      "tree": "accad6fabda5c58bd7dc728470f0f56edcba6a3f",
      "parents": [
        "79352e9f94cff4078f2ffefac4a41b7f14046fb6"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jun 17 23:55:41 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:45 2007 +0200"
      },
      "message": "firewire: fw-sbp2: implement nonexclusive login\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "79352e9f94cff4078f2ffefac4a41b7f14046fb6",
      "tree": "906bf0c06e5bab125a157b45791b29014d912931",
      "parents": [
        "cf47c7a26ca13b944900dce208890c5b6d5f3a14"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Jun 18 18:46:49 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:44 2007 +0200"
      },
      "message": "firewire: fw-sbp2: let SCSI shutdown commands through before logout\n\nThis affects of course only the \"soft shutdown\" case, e.g. \"modprobe -r\nfirewire-sbp2\", while it doesn\u0027t matter for hot unplug.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "cf47c7a26ca13b944900dce208890c5b6d5f3a14",
      "tree": "b0351b1c0124ad80ea09631ccfc9e1c3ba6b9dd2",
      "parents": [
        "dae1a3aa8ebdd30fbba56a8d4e22f92455fb0861"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jun 17 23:52:08 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:44 2007 +0200"
      },
      "message": "firewire: fw-sbp2: implement max sectors limit for some old bridges\n\nThis currently only affects one bridge in the hardwired blacklist.\nI don\u0027t own one of those, hence haven\u0027t tested it.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "dae1a3aa8ebdd30fbba56a8d4e22f92455fb0861",
      "tree": "4c2ce5c4943a41545f30eed31f3498b659056afc",
      "parents": [
        "f1397490017e337446c6a8b0562b584679a604a6"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jun 17 23:39:58 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:44 2007 +0200"
      },
      "message": "firewire: simplify a struct type\n\ncleanup after \"firewire: support S100B...S400B and link slower than PHY\"\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "f1397490017e337446c6a8b0562b584679a604a6",
      "tree": "073c65b0fe78e02b529285ec1bffe5a5c7612e69",
      "parents": [
        "24d40125f1f59a6de9d9e6e046676bd60532596c"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jun 10 21:31:36 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:43 2007 +0200"
      },
      "message": "firewire: support S100B...S400B and link slower than PHY\n\nUse a speed probe to determine the speed over 1394b buses and of nodes\nwhich report a link speed less than their PHY speed.\n\nLog the effective maximum speed of newly created nodes in dmesg.\n\nAlso, read the config ROM (except bus info block) at the maximum speed\nrather than S100.  This isn\u0027t a real optimization though because we\nstill only use quadlet read requests for the entire ROM.\n\nThe patch also adds support for S1600 and S3200, although such hardware\ndoes not exist yet.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "24d40125f1f59a6de9d9e6e046676bd60532596c",
      "tree": "312fb396c7b5987313ce20ca033947faf54a273c",
      "parents": [
        "25d83f583b334ac671fbb905c97c374ba34a597a"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Jun 18 19:44:12 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:43 2007 +0200"
      },
      "message": "firewire: optimize gap count with 1394b leaf nodes\n\nTable-based gap count optimization cannot be used if 1394b repeater PHYs\nare present.  But it does work with 1394b leaf nodes.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "25d83f583b334ac671fbb905c97c374ba34a597a",
      "tree": "041e4dee89317bef038e349419f4727ef2f61c86",
      "parents": [
        "8a8cea2734808522f02941ea16125810ee42c9c7"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jun 09 19:27:07 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:42 2007 +0200"
      },
      "message": "firewire: remove unused macro\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "8a8cea2734808522f02941ea16125810ee42c9c7",
      "tree": "f1cbb4e92c1a4b55cfd9d82d8a82c24827168717",
      "parents": [
        "b8f106570f20a7a98a18a14c2d11d65f581c2808"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jun 09 19:26:22 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:42 2007 +0200"
      },
      "message": "firewire: missing newline in printk\n\nAlso remove some errno printouts which will be shown by infrastructure\ncode anyway.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "b8f106570f20a7a98a18a14c2d11d65f581c2808",
      "tree": "64b7fe1a8093de7009dac380c7fc78fb29a18e13",
      "parents": [
        "53c96b41742a2dadd14e65c23fc119f2a2fd9f05"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri May 11 23:04:08 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jul 10 00:07:42 2007 +0200"
      },
      "message": "firewire: fw-sbp2: remove unused struct member\n\ncleanup after support of single-buffer requests was dropped\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Hoegsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "fe77d4f283e840879f0e23b86a5d6a486823fdef",
      "tree": "b8829aa5a8d04da635638b7fbaab92bfbc95b52b",
      "parents": [
        "0a9972baa7454c747fd5f67ce864420dff99d383"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Jun 25 22:18:40 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Jun 29 17:32:07 2007 +0200"
      },
      "message": "firewire: add Kconfig help on building both stacks\n\nAlas that won\u0027t work so good, because nobody reads help texts.\n\nI thought about adding some crude multiple choice selection (build the\nold stack, build the new stack, build both stacks).  It\u0027s possible, but\nit would introduce awkward dummy config variables.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "0a9972baa7454c747fd5f67ce864420dff99d383",
      "tree": "b7e85d0d47e05f35b3c4c5fa4ffe9c97a35a134c",
      "parents": [
        "0471448f4d017470995d8a2272dc8c06dbed3b77"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jun 23 20:28:17 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Jun 29 17:32:07 2007 +0200"
      },
      "message": "firewire: fix async reception on big endian machines\n\ndescriptor.data_address is little endian\n\nTested-by: Olaf Hering \u003colh@suse.de\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "24315c5e6f508edd84e996d67daef3d1bcc72f8b",
      "tree": "02ea28b57eac01929dd8b7bcb761527b92941af5",
      "parents": [
        "18b461796b737f94286f73710debc8649467161b"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Wed Jun 20 17:48:07 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Jun 21 00:09:41 2007 +0200"
      },
      "message": "firewire: Only set client-\u003eiso_context if allocation was successful.\n\nThis patch fixes an OOPS on cdev release for an fd where iso context\ncreation failed.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "a515958d6f77fdff1a40f8b08a9a95ac223c5d48",
      "tree": "24204825fc5c37e4ee38c0755cb8441ed2c192e8",
      "parents": [
        "de7f928ca460005086a8296be07c217aac4b625d"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jun 09 19:31:14 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jun 16 12:43:20 2007 +0200"
      },
      "message": "firewire: fix hang after card ejection\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "1ca31ae7cfed3e2a8e48fbf6ed6cac06495b6158",
      "tree": "931d04e229f78091308d544f50717e547fb26318",
      "parents": [
        "2aef469a35a273609beaa7094d5a07c1f6d75285"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Thu May 31 11:16:43 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu May 31 21:40:15 2007 +0200"
      },
      "message": "firewire: Change struct fw_cdev_iso_packet to not use bitfields.\n\nThe struct is part of the userspace interface and can not use\nbitfields.  This patch replaces the bitfields with a __u32 \u0027control\u0027\nword and provides access macros to set the bits.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "2aef469a35a273609beaa7094d5a07c1f6d75285",
      "tree": "3aad939f26bee97a7998b67a634478d081192cee",
      "parents": [
        "b32744751e751e0abb184cf3b7359c9387a4bdf8"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Wed May 30 19:06:35 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu May 31 21:40:14 2007 +0200"
      },
      "message": "firewire: Implement suspend/resume PCI driver hooks.\n\nIt\u0027s a low-impact design, that just makes suspend/resume look like\na bus reset to the upper level drivers, but it should be sufficient.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "14e2198646d92ef52a69d20269580a3fbe7c996b",
      "tree": "ff9522f74da61ade0ab3739a35ea90b85fd91fea",
      "parents": [
        "d7794c86686a05276de42f145e485099426aca68"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun May 27 13:18:27 2007 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu May 31 21:40:13 2007 +0200"
      },
      "message": "firewire: fw-sbp2: implement sysfs ieee1394_id\n\nThe attribute /sys/bus/scsi/devices/*:*:*:*/ieee1394_id, as generated by\nthe old sbp2 driver, is typically used to create persistently named\nlinks in /dev/disk/by-id.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "350958f984268dcf0f087aac78c5b9fe2846aeff",
      "tree": "9093fb2aaaea2e1f5cf078cb9c9c6aec9591c419",
      "parents": [
        "9a60731d0036a6c6c265acd4248c17fd24fc8e13"
      ],
      "author": {
        "name": "Jeff Garzik",
        "email": "jeff@garzik.org",
        "time": "Sun May 27 07:09:18 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun May 27 23:21:01 2007 +0200"
      },
      "message": "firewire: fix return code\n\nFix this warning on x86-64\n\ndrivers/firewire/fw-cdev.c:798: warning: initialization from incompatible pointer type\n\nby making the return code of ioctl_send_request() the same as all the\nother ioctl_xxx() return codes.\n\nSigned-off-by: Jeff Garzik \u003cjeff@garzik.org\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    }
  ],
  "next": "9a60731d0036a6c6c265acd4248c17fd24fc8e13"
}
