)]}'
{
  "log": [
    {
      "commit": "99cb233d60cbe644203f19938c729ea2bb004d70",
      "tree": "20fb5b9194982ff50d6795dc435dd8e09264233e",
      "parents": [
        "a94c248113b86bbbc47d027a4004b70f2be298b1"
      ],
      "author": {
        "name": "Benjamin Li",
        "email": "benli@broadcom.com",
        "time": "Wed Jul 02 10:59:04 2008 -0700"
      },
      "committer": {
        "name": "Jesse Barnes",
        "email": "jbarnes@virtuousgeek.org",
        "time": "Wed Jul 02 11:25:54 2008 -0700"
      },
      "message": "PCI: Limit VPD read/write lengths for Broadcom 5706, 5708, 5709 rev.\n\nFor Broadcom 5706, 5708, 5709 rev. A nics, any read beyond the\nVPD end tag will hang the device.  This problem was initially\nobserved when a vpd entry was created in sysfs\n(\u0027/sys/bus/pci/devices/\u003cid\u003e/vpd\u0027).   A read to this sysfs entry\nwill dump 32k of data.  Reading a full 32k will cause an access\nbeyond the VPD end tag causing the device to hang.  Once the device\nis hung, the bnx2 driver will not be able to reset the device.\nWe believe that it is legal to read beyond the end tag and\ntherefore the solution is to limit the read/write length.\n\nA majority of this patch is from Matthew Wilcox who gave code for\nreworking the PCI vpd size information.  A PCI quirk added for the\nBroadcom NIC\u0027s to limit the read/write\u0027s.\n\nSigned-off-by: Benjamin Li \u003cbenli@broadcom.com\u003e\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nSigned-off-by: Jesse Barnes \u003cjbarnes@virtuousgeek.org\u003e\n"
    },
    {
      "commit": "94e6108803469a37ee1e3c92dafdd1d59298602f",
      "tree": "7f3ee30721411cca238f8eea5971d5bebbb70a55",
      "parents": [
        "5e0d2a6fc094a9b5047998deefeb1254c66856ee"
      ],
      "author": {
        "name": "Ben Hutchings",
        "email": "bhutchings@solarflare.com",
        "time": "Wed Mar 05 16:52:39 2008 +0000"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Sun Apr 20 21:47:07 2008 -0700"
      },
      "message": "PCI: Expose PCI VPD through sysfs\n\nVital Product Data (VPD) may be exposed by PCI devices in several\nways.  It is generally unsafe to read this information through the\nexisting interfaces to user-land because of stateful interfaces.\n\nThis adds:\n- abstract operations for VPD access (struct pci_vpd_ops)\n- VPD state information in struct pci_dev (struct pci_vpd)\n- an implementation of the VPD access method specified in PCI 2.2\n  (in access.c)\n- a \u0027vpd\u0027 binary file in sysfs directories for PCI devices with VPD\n  operations defined\n\nIt adds a probe for PCI 2.2 VPD in pci_scan_device() and release of\nVPD state in pci_release_dev().\n\nSigned-off-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "f6a570333e554b48ad589e7137c77c57809eee81",
      "tree": "68dd6d5c8fe537a19a84a4189202f5cf70925c17",
      "parents": [
        "2b5f6dcce5bf94b9b119e9ed8d537098ec61c3d2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Wed Oct 18 01:47:25 2006 -0400"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Dec 04 02:00:22 2006 -0500"
      },
      "message": "[PATCH] severing module.h-\u003esched.h\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7ea7e98fd8d02351c43ef4ab35d70f3aaa26c31d",
      "tree": "cb37b18402c2b82cc227ad6bd1ab3d57cf677ff3",
      "parents": [
        "50bf14b3ff05fb6e10688021b96f95d30a300f8d"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Thu Oct 19 09:41:28 2006 -0600"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Dec 01 14:36:58 2006 -0800"
      },
      "message": "PCI: Block on access to temporarily unavailable pci device\n\nThe existing implementation of pci_block_user_cfg_access() was recently\ncriticised for providing out of date information and for returning errors\non write, which applications won\u0027t be expecting.\n\nThis reimplementation uses a global wait queue and a bit per device.\nI\u0027ve open-coded prepare_to_wait() / finish_wait() as I could optimise\nit significantly by knowing that the pci_lock protected us at all points.\n\nIt looked a bit funny to be doing a spin_unlock_irqsave(); schedule(),\nso I used spin_lock_irq() for the _user versions of pci_read_config and\npci_write_config.  Not carrying a flags pointer around made the code\nmuch less nasty.\n\nAttempts to block an already blocked device hit a BUG() and attempts to\nunblock an already unblocked device hit a WARN().  If we need to block\naccess to a device from userspace, it\u0027s because it\u0027s unsafe for even\nanother bit of the kernel to access the device.  An attempt to block\na device for a second time means we\u0027re about to access the device to\nperform some other operation, which could provoke undefined behaviour\nfrom the device.\n\nSigned-off-by: Matthew Wilcox \u003cmatthew@wil.cx\u003e\nAcked-by: Adam Belay \u003cabelay@novell.com\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n"
    },
    {
      "commit": "48b19148733b4826eeedfd8be9f19b61c8d010b1",
      "tree": "808f72f581b3076fd2474baa2ecc8cd0c9f42461",
      "parents": [
        "26205e026cf2b3bb039d6169978ae520973f4141"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@stusta.de",
        "time": "Sun Nov 06 01:45:08 2005 +0100"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Thu Nov 10 16:09:18 2005 -0800"
      },
      "message": "[PATCH] PCI: drivers/pci/: small cleanups\n\nThis patch contains the following cleanups:\n- access.c should #include \"pci.h\" for getting the prototypes of it\u0027s\n  global functions\n- hotplug/shpchp_pci.c: make the needlessly global function\n  program_fw_provided_values() static\n\nSigned-off-by: Adrian Bunk \u003cbunk@stusta.de\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n"
    },
    {
      "commit": "e04b0ea2e0f9c1bb0d874db4493fc7f7a623116b",
      "tree": "75937e50de883f69e906a4c8bc9f119d86c14411",
      "parents": [
        "2cea752f683af1be58ee8f25717c0a8118e0ac5b"
      ],
      "author": {
        "name": "Brian King",
        "email": "brking@us.ibm.com",
        "time": "Tue Sep 27 01:21:55 2005 -0700"
      },
      "committer": {
        "name": "Greg Kroah-Hartman",
        "email": "gregkh@suse.de",
        "time": "Fri Oct 28 15:36:58 2005 -0700"
      },
      "message": "[PATCH] PCI: Block config access during BIST\n\nSome PCI adapters (eg.  ipr scsi adapters) have an exposure today in that they\nissue BIST to the adapter to reset the card.  If, during the time it takes to\ncomplete BIST, userspace attempts to access PCI config space, the host bus\nbridge will master abort the access since the ipr adapter does not respond on\nthe PCI bus for a brief period of time when running BIST.  On PPC64 hardware,\nthis master abort results in the host PCI bridge isolating that PCI device\nfrom the rest of the system, making the device unusable until Linux is\nrebooted.  This patch is an attempt to close that exposure by introducing some\nblocking code in the PCI code.  When blocked, writes will be humored and reads\nwill return the cached value.  Ben Herrenschmidt has also mentioned that he\nplans to use this in PPC power management.\n\nSigned-off-by: Brian King \u003cbrking@us.ibm.com\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@osdl.org\u003e\nSigned-off-by: Greg Kroah-Hartman \u003cgregkh@suse.de\u003e\n\n drivers/pci/access.c    |   89 ++++++++++++++++++++++++++++++++++++++++++++++++\n drivers/pci/pci-sysfs.c |   20 +++++-----\n drivers/pci/pci.h       |    7 +++\n drivers/pci/proc.c      |   28 +++++++--------\n drivers/pci/syscall.c   |   14 +++----\n include/linux/pci.h     |    7 +++\n 6 files changed, 134 insertions(+), 31 deletions(-)\n"
    },
    {
      "commit": "1da177e4c3f41524e886b7f1b8a0c1fc7321cac2",
      "tree": "0bba044c4ce775e45a88a51686b5d9f90697ea9d",
      "parents": [],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@ppc970.osdl.org",
        "time": "Sat Apr 16 15:20:36 2005 -0700"
      },
      "message": "Linux-2.6.12-rc2\n\nInitial git repository build. I\u0027m not bothering with the full history,\neven though we have it. We can create a separate \"historical\" git\narchive of that later if we want to, and in the meantime it\u0027s about\n3.2GB when imported into git - space that would just make the early\ngit days unnecessarily complicated, when we don\u0027t have a lot of good\ninfrastructure for it.\n\nLet it rip!\n"
    }
  ]
}
