)]}'
{
  "log": [
    {
      "commit": "459f79235d8faa0050180c7e0c7bb4b2b52cbdfd",
      "tree": "97847b1b06ded6c136cdba73bc961a46a3e39a30",
      "parents": [
        "2147ef204f57191e0fff6d5d3d1a0336afa6cfae"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat May 24 16:50:22 2008 +0200"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Jul 14 13:06:03 2008 +0200"
      },
      "message": "firewire: clean up fw_card reference counting\n\nThis is a functionally equivalent replacement of the current reference\ncounting of struct fw_card instances.  It only converts it to common\nidioms as suggested by Kristian Høgsberg:\n  - struct kref replaces atomic_t as the counter.\n  - wait_for_completion is used to wait for all card users to complete.\n\nBTW, it may make sense to count card-\u003eflush_timer and card-\u003ework as\ncard users too.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "6188e10d38b8d7244ee7776d5f1f88c837b4b93f",
      "tree": "6675e02c47fb684a613e10513816b5dcc5de28a9",
      "parents": [
        "d7b1acd3b524b39f418e463e836b48ac041954d6"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Fri Apr 18 22:21:05 2008 -0400"
      },
      "committer": {
        "name": "Matthew Wilcox",
        "email": "willy@linux.intel.com",
        "time": "Fri Apr 18 22:22:54 2008 -0400"
      },
      "message": "Convert asm/semaphore.h users to linux/semaphore.h\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\n"
    },
    {
      "commit": "cca6097713c62eac43aef27b31e7f1553dde4f94",
      "tree": "5e712188b9a23674cc32cbd1356ea3dedb686dba",
      "parents": [
        "c9755e14a01987ada4063e8b4c50c2b6738d879e"
      ],
      "author": {
        "name": "Jarod Wilson",
        "email": "jwilson@redhat.com",
        "time": "Sat Mar 08 12:52:03 2008 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Apr 18 17:55:36 2008 +0200"
      },
      "message": "firewire: replace more hex values with defined csr constants\n\nTrivial change to replace more meaningless (to the untrained eye) hex\nvalues with defined CSR constants.\n\nSigned-off-by: Jarod Wilson \u003cjwilson@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "c9755e14a01987ada4063e8b4c50c2b6738d879e",
      "tree": "41a593c4b9ac10ccc4ad031510438e4551e51b5b",
      "parents": [
        "1dadff71d6356ebb804c3f4f1d3049247e16111c"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Mar 24 20:54:28 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Apr 18 17:55:36 2008 +0200"
      },
      "message": "firewire: reread config ROM when device reset the bus\n\nWhen a device changes its configuration ROM, it announces this with a\nbus reset.  firewire-core has to check which node initiated a bus reset\nand whether any unit directories went away or were added on this node.\n\nTested with an IOI FWB-IDE01AB which has its link-on bit set if bus\npower is available but does not respond to ROM read requests if self\npower is off.  This implements\n  - recognition of the units if self power is switched on after fw-core\n    gave up the initial attempt to read the config ROM,\n  - shutdown of the units when self power is switched off.\n\nAlso tested with a second PC running Linux/ieee1394.  When the eth1394\ndriver is inserted and removed on that node, fw-core now notices the\naddition and removal of the IPv4 unit on the ieee1394 node.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "1dadff71d6356ebb804c3f4f1d3049247e16111c",
      "tree": "103cab576092528c4820436028ac6cc3bfbc5652",
      "parents": [
        "d34316a4bdcd4fef050da584401c7f4ed22482f2"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Mar 02 19:35:42 2008 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Apr 18 17:55:35 2008 +0200"
      },
      "message": "firewire: replace static ROM cache by allocated cache\n\nread_bus_info_block() is repeatedly called by workqueue jobs.\nThese will step on each others toes eventually if there are multiple\nworkqueue threads, and we end up with corrupt config ROM images.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "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": "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": "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": "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": "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": "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": "2d826cc5c791bdc5f5651324c485746be9492be0",
      "tree": "7c46ff209d06f1f8949aa2c3e10491594d10e203",
      "parents": [
        "213d7bbd76673fb1b26f1786af180bac07e57652"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Wed May 09 19:23:14 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu May 10 18:24:14 2007 +0200"
      },
      "message": "firewire: Always use parens with sizeof.\n\nSigned-off-by: Kristian Hoegsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "c781c06d119d04601727f2fbc30151e6760d536d",
      "tree": "1faf19acc6bc2a2a3b3bdae8368e395e75cd7518",
      "parents": [
        "e175569c4639872b5cf242c9d4a71cc40c5f3c29"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Mon May 07 20:33:32 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu May 10 18:24:13 2007 +0200"
      },
      "message": "firewire: Clean up comment style.\n\nDrop filenames from file preamble, drop editor annotations and\nuse standard indent style for block comments.\n\nSigned-off-by: Kristian Hoegsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e (fixed typo)\n"
    },
    {
      "commit": "0b6aa3d0537104e86d80cde66192a0aa569e0bf4",
      "tree": "ff4e5203923be86183ad111866c752f6ccfbb0b2",
      "parents": [
        "3e1dcb00d59473d52d4ca80a57408b3d953e4573"
      ],
      "author": {
        "name": "Randy Dunlap",
        "email": "randy.dunlap@oracle.com",
        "time": "Wed Apr 25 22:43:16 2007 -0700"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Apr 27 01:39:03 2007 +0200"
      },
      "message": "firewire: don\u0027t use extern on public symbols\n\nMake firewire entry points not \u0027extern\u0027:\n\ndrivers/firewire/fw-device.c:160:25: warning: function \u0027fw_device_get\u0027 with external linkage has definition\ndrivers/firewire/fw-device.c:167:13: warning: function \u0027fw_device_put\u0027 with external linkage has definition\n\nSigned-off-by: Randy Dunlap \u003crandy.dunlap@oracle.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "3e1dcb00d59473d52d4ca80a57408b3d953e4573",
      "tree": "0eeef8b995e319b0f6481d8b026342ba4a1631d1",
      "parents": [
        "dde2b954302d143deee6dbd931ba2aa21413bb0a"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Thu Apr 26 00:16:04 2007 -0700"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Apr 27 01:28:47 2007 +0200"
      },
      "message": "firewire: fw-device printk fix\n\nYou don\u0027t know what type is used to implement u64.\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "dde2b954302d143deee6dbd931ba2aa21413bb0a",
      "tree": "783ecd8fffecaae521540ad533c5aeb343778ac0",
      "parents": [
        "0fc7d6e4f4c243b49077b29466c9e135e3401938"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Tue Apr 17 11:51:57 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Apr 17 21:14:32 2007 +0200"
      },
      "message": "firewire: Don\u0027t use subsystem rwsem, it\u0027s going away.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "c5dfd0a5b09bf20adf26b3242258679e305c39c8",
      "tree": "13bcdf65831086637e7e6adada7ecc5516842859",
      "parents": [
        "93e4fd455c62085cdceea3af4c56d95758d3cb74"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Tue Mar 27 01:43:43 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Mar 28 21:30:16 2007 +0200"
      },
      "message": "firewire: Increase the number of config rom retries and the retry delay.\n\nSome devices have a really long power-on cycle, and we fail to\nsuccessfully probe these if they\u0027re plugged in and then turned on.\n\nThere\u0027s really no down-side to bumping the number of retries and the\nretry delay, and most devices will get picked up within the first couple\nof retries anyway.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "6f2e53d5135a861d3ee8afdacac5cde13c49a05d",
      "tree": "d36dcf30cc2bc1909d4f12c1a6ff77c960a92027",
      "parents": [
        "ecab413359541b1dbe8e8c91cb5fa8eafa662c05"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Tue Mar 27 19:35:13 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Wed Mar 28 21:30:13 2007 +0200"
      },
      "message": "firewire: Use device-\u003egroups for adding device attributes.\n\nWe dynamically create an attribute group for the key present on the\ndevice in hand and point device-\u003egroup to it.  This way the device\ncore adds the sysfs attributes for us as the device is added.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "bbd1494580462fa35bdd2073dba3902fb53981bf",
      "tree": "8d3a4c46e67bdfb543531c7a2ecb2f19afa0ffe0",
      "parents": [
        "7feb9cce2d07bea635256a2e226d7ca7a9f4585f"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Tue Mar 20 20:58:35 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Mar 22 00:48:50 2007 +0100"
      },
      "message": "firewire: Export GUID as sysfs attribute.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "7feb9cce2d07bea635256a2e226d7ca7a9f4585f",
      "tree": "6744b7ac22604b6f5fec22c7b80d804d306d8e51",
      "parents": [
        "21351dbe4e61270f28cf61c685c745416554a4f1"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Wed Mar 21 10:55:19 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Mar 22 00:48:50 2007 +0100"
      },
      "message": "firewire: Add sysfs attributes for config rom directory values.\n\nWe export the entire config rom, so this is technically redundant,\nbut should make udev rules and HAL integration easier.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "21351dbe4e61270f28cf61c685c745416554a4f1",
      "tree": "fa9d847085be5aaf4478c7c5115cb7ec2c018034",
      "parents": [
        "945ac22253a09574da4ed568b426aef03722bfb6"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Tue Mar 20 20:58:33 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Thu Mar 22 00:48:49 2007 +0100"
      },
      "message": "firewire: Make use of struct device_type.\n\nThe device_type struct is useful for setting attributes for a device\nand overriding .release and .uevent for a group of devices.  This patch\nuses it this way to clean up the sysfs code a bit.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "d84702a5d7b500ead8db129ddea789c88764f357",
      "tree": "64a8fecec334a554517d0183b6b7c647e6448edc",
      "parents": [
        "633c52dccd73d83eabbe1fb23e3822b695a2718b"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Mar 20 19:42:15 2007 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Mar 20 23:27:19 2007 +0100"
      },
      "message": "firewire: fix compiler warnings on 64bit\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "633c52dccd73d83eabbe1fb23e3822b695a2718b",
      "tree": "5801d7923dfd506b4ba7ae9c5175f637173e9a8c",
      "parents": [
        "015b066f4e5dbd301144c2de1c53329178f67a01"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Mon Mar 19 11:37:16 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Mar 20 23:27:19 2007 +0100"
      },
      "message": "firewire: add includes for sem and rw_sem\n\nas a precaution.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "015b066f4e5dbd301144c2de1c53329178f67a01",
      "tree": "60a6d5125eb9601df50f358e518f6ac92decf0b3",
      "parents": [
        "11f494ee25dd81af90255b1d61abc6f5508db4d0"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Mon Mar 19 11:37:16 2007 -0400"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Mar 20 23:27:19 2007 +0100"
      },
      "message": "firewire: Grab dev-\u003esem when doing the update callback.\n\nThis serializes the update callback with the probe and remove callback from\nthe driver core and prevents remove from being called while update is\nrunning for the same device.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "2603bf219e9bef3396b96b65326de7db27958c95",
      "tree": "1e18057a1a7e4f22c0b7eaec1b3330ad426cdb72",
      "parents": [
        "2aaad97be6b58ae865f402fcd27d138e7346ff81"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Wed Mar 07 12:12:48 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:03:11 2007 +0100"
      },
      "message": "firewire: Use only a wait queue and terminate poll and read on device removal.\n\nDrop the event list semaphore and only use the wait queue and the list\nto synchronize queue access.  Break out of a poll or read whenever\nthe device is disconnected.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "048961ef90b584d00ec79c75cb7c7b28403f0c87",
      "tree": "4a89a4c77bbc21e90e0a4dfabd017562c90ad3e0",
      "parents": [
        "5c5539d8cdfd13fdb080357fe79f94a7e11a6ef6"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Wed Mar 07 12:12:46 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:03:10 2007 +0100"
      },
      "message": "firewire: Add rom_index attribute for unit sysfs directories.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "a3aca3dabbcf00f2088d472f27755c29acaa992e",
      "tree": "c6b23c1d51a7eab5bee4137d344264974ddfc432",
      "parents": [
        "344bbc4de14e70d03f09bff04bb7d161b8a0d28c"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Wed Mar 07 12:12:44 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:03:09 2007 +0100"
      },
      "message": "firewire: Switch cdev code over to use register_chrdev and keep a list of devices.\n\nThe old mechanism kept a struct cdev for each fw device, but fops-\u003erelease\nwould reference this struct after the device got freed in some cases.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "97bd9efa5a4d8a70b3bafe0d1e3e1a814fdac5bc",
      "tree": "7f405323e9b6ccd690b7673cc4495d35e5926a06",
      "parents": [
        "1da0c93b31bb8f374a22f4e20dab02fd79f6c7e6"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Wed Mar 07 12:12:41 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:03:08 2007 +0100"
      },
      "message": "firewire: Add a bus reset event type for fw-device-cdev.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "5f48047756339065df3e6fead381978abb0bc557",
      "tree": "c13766ebd8900e6662e7117beea67da80363e28a",
      "parents": [
        "e254a4b45f265d9df120b83d5c2c9437902b601b"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Wed Mar 07 12:12:39 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:03:07 2007 +0100"
      },
      "message": "firewire: Iterate through units in a keventd callback for update callbacks.\n\nWe can\u0027t take the klist lock for the child device list in interrupt\ncontext.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "373b2edd864b8753419521b715bd1ddafd2f2af3",
      "tree": "5908784cbb43e49161c0fc16cecbd9043201d9c0",
      "parents": [
        "98b6cbe83b6e8db54638746c9040c7962d96b322"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Mar 04 14:45:18 2007 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:03:04 2007 +0100"
      },
      "message": "firewire: adjust whitespace\n\nRemove space before tab and trailing whitespace.\nUnify indentation of goto target labels.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "bbf19db37e8be3fa6d6fe3e26e50da068b44a0e8",
      "tree": "d324cb9e52aeea485ce1c6293c51800bb4e4deeb",
      "parents": [
        "362c2c8ca4a2f33f6e23a85c3b4caf64f1ce4bf9"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Tue Feb 06 14:49:38 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:02:54 2007 +0100"
      },
      "message": "firewire: Use atomic_t\u0027s for serial numbers.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n\nUse atomic_inc_return.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "362c2c8ca4a2f33f6e23a85c3b4caf64f1ce4bf9",
      "tree": "96624086e1ab373d7b323355a4856f2615ef74d9",
      "parents": [
        "374a00392853db6fac4ec4c93139873a368a78af"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Tue Feb 06 14:49:37 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:02:54 2007 +0100"
      },
      "message": "firewire: Spell out fw as firewire in sysfs.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "641f8791f031d6133e5c3e9ce036b3e942416e9d",
      "tree": "f65db59e8cedd09da36a956234a93b73e42aab89",
      "parents": [
        "0edeefd99fd31f74432aba5860f6ebcbde874dbf"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sat Jan 27 10:34:55 2007 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:02:49 2007 +0100"
      },
      "message": "firewire: use atomic type for fw_device.state\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "931c4834c8d1e1bf0dcc256b89449a01711f970d",
      "tree": "2d1b26b4418a034528acc98d38e179b57e2b3a56",
      "parents": [
        "9fc82689bf2920e9b3a8cc1766bcb6ad6454a7c4"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Fri Jan 26 00:38:45 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:02:48 2007 +0100"
      },
      "message": "firewire: Implement compliant bus management.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "e636fe2576be552252a5b63e9287915e810b37d8",
      "tree": "35aadb0e66dc316863fe1570d1a2827f10b4786d",
      "parents": [
        "2639a6fb268e1f2a7700fe3d31cbca9b39aa3ad9"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Fri Jan 26 00:38:04 2007 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:02:46 2007 +0100"
      },
      "message": "firewire: Loop requests to the host controller back into the stack.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "907293d78872ee492ce6a114258dd853ec5082ae",
      "tree": "9384ac58621706b7d3846b34944fa5475f084502",
      "parents": [
        "366f5f4fa31cd3f3d5901f5edfe255a48906505d"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Tue Jan 23 21:11:43 2007 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:02:43 2007 +0100"
      },
      "message": "firewire: consistent usage of node_id\n\nDefinitions as per IEEE 1212 and IEEE 1394:\n\n     Node ID: Concatenation of bus ID and local ID. 16 bits long.\n      Bus ID: Identifies a particular bus within a group of buses\n              interconnected by bus bridges.\n    Local ID: Identifies a particular node on a bus.\n      PHY ID: Local ID of IEEE 1394 nodes. 6 bits long.\n\nNever ever use a variable called node_id for anything else than a node ID.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "5af4e5eab30d481f76b89a2167c873dfad960acb",
      "tree": "eb958f6afd26bb382de66156feb8f64fe8646f73",
      "parents": [
        "5e20c282184fd5794661b6688883231ff5348abc"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jan 21 20:45:32 2007 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:02:41 2007 +0100"
      },
      "message": "firewire: comma after last enum item or initializer\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "5e20c282184fd5794661b6688883231ff5348abc",
      "tree": "d9ea9b86d5e2bcc4ef4d8def27102a76ac4b05ef",
      "parents": [
        "95688e97cdf7453cde22eaa73cc2ab6b113c1853"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jan 21 20:44:09 2007 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:02:40 2007 +0100"
      },
      "message": "firewire: whitespace adjustments\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\n"
    },
    {
      "commit": "21ebcd1224d05c8673053e1e93ab9ec7ef3e0b84",
      "tree": "1f6f1c05bc8c0fa814a2265ca8dbb24e92bdcab9",
      "parents": [
        "227e7d8194bd147484f6ae135a082ce22112b5b3"
      ],
      "author": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Sun Jan 14 15:29:07 2007 +0100"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:02:39 2007 +0100"
      },
      "message": "firewire: mark some structs const\n\nInstances of struct file_operations and struct fw_card_driver can be\nqualified as \"const\".  Ditto with struct fw_descriptor.data, struct\nfw_device_id, and predefined instances of struct fw_address_region,\nat least in the current implementation.\n\nData qualified as const is placed into the .rodata section which won\u0027t\nbe mixed with dirty data.\n\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    },
    {
      "commit": "19a15b937b26638933307bb02f7b1801310d6eb2",
      "tree": "817efaa8c1d2f4633fa811ba27fa1aee7f00c352",
      "parents": [
        "3038e353cfaf548eb94f02b172b9dbe412abd24c"
      ],
      "author": {
        "name": "Kristian Høgsberg",
        "email": "krh@redhat.com",
        "time": "Tue Dec 19 19:58:31 2006 -0500"
      },
      "committer": {
        "name": "Stefan Richter",
        "email": "stefanr@s5r6.in-berlin.de",
        "time": "Fri Mar 09 22:02:33 2007 +0100"
      },
      "message": "firewire: Add device probing and sysfs integration.\n\nSigned-off-by: Kristian Høgsberg \u003ckrh@redhat.com\u003e\nSigned-off-by: Stefan Richter \u003cstefanr@s5r6.in-berlin.de\u003e\n"
    }
  ]
}
