)]}'
{
  "log": [
    {
      "commit": "7c9c684160bc2c6668abbd2701b440e18bb9ef35",
      "tree": "fa6e51cecf7a6661de6352ce4f3c28b96f660f14",
      "parents": [
        "c6b21c93c1794113c68f3d43f321968191d87b1b"
      ],
      "author": {
        "name": "Bart Van Assche",
        "email": "bvanassche@acm.org",
        "time": "Fri Jan 13 17:26:25 2012 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Mon Jan 16 12:46:31 2012 +0400"
      },
      "message": "[SCSI] fcoe: Move fcoe_debug_logging from fcoe.h to fcoe.c\n\nMove the definition of the global variable fcoe_debug_logging\nfrom fcoe.h to fcoe.c. Avoid that sparse complains about missing\ndeclarations for local functions or variables by declaring these\nstatic.\n\nSigned-off-by: Bart Van Assche \u003cbvanassche@acm.org\u003e\nReviewed-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "a762dce41cb5742a143f6aa2d80ee1aac7e1f5eb",
      "tree": "173bd7ca3d621f073d8a8ed887c39c7c0dd926f3",
      "parents": [
        "19b628dfc60eda4459b65e4b6b7a748932d28929"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Jan 13 17:26:15 2012 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Mon Jan 16 12:44:28 2012 +0400"
      },
      "message": "[SCSI] fcoe: fix regression on offload em matching function for initiator/target\n\nThis is a regression introduced by commit\n1ff9918b625457ce20d450d00f9ed0a12ba191b7 The else statement here is breaking\nthe initiator logic of allocating xid from the offloaded em xid pool for READ\nI/O only to use DDP, as shown by the snippet of trace below, where the WRITE\nis using xid 0x5 from the offloaded em xid pool:\n\nProtocol VID Len S_ID        D_ID     OX_ID  RX_ID  Summary\n..\n*FCP     228 96  0b.08.01 -\u003e 01.0f.00 0x0005 0xffff SCSI: Write(10) LUN: 0x00\n FCP     228 76  01.0f.00 -\u003e 0b.08.01 0x0005 0x828d XFER_RDY\n...\n\nThe bug is in the else statement, for both initiator and target, the\nnew command will have FC frame header bit 23 (FC_FC_EX_CTX) cleared as it was\noriginated from the initiator. Also, this is assuming the frame header is\nalready filled up, which is only true for target since for initiator, this is a\nnew frame and oem_match gets called when em tries get xid for this i/o before\nit is filled up and sent out.\n\nThe fix is to check if there is a fc_fcp_pkt associated w/ this frame from\nfr_fsp(fp), since fr_fsp(fp) is NULL for tcm_fc target and non-I/O frame in\ninitiator. This should also return true for target only if it is an\nFC_RCTL_DD_UNSOL_CMD and rx_id is not allocated.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "f1633011e4fcb65bf65aebeaf4024efdc4c49d6e",
      "tree": "04cae3ca39c606fdbca375328ab419a7f40a4d52",
      "parents": [
        "3a19cbf530648a63fb3f73630046c561f70c6b71"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri Dec 16 14:24:49 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Tue Jan 10 17:01:23 2012 -0600"
      },
      "message": "[SCSI] fcoe: remove double check if skb is nonlinear\n\nskb_linearize already has a check for skb_is_nonlinear,\nthere is no need to duplicate the check in fcoe.c. This\npatch simply removes the unnecessary check and calls\nskb_linearize unconditionally.\n\nReported-by: patrick kelle \u003cpatrick.kelle81@gmail.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nAcked-by: patrick kelle \u003cpatrick.kelle81@gmail.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "6f6c2aa33b915c574543f176dee89d7aefc115c1",
      "tree": "3c6907fe997727e92ed09c018abd8215ce26b6ba",
      "parents": [
        "a878185c3b93e692ace0d1628a47f3d75504ab4f"
      ],
      "author": {
        "name": "john fastabend",
        "email": "john.r.fastabend@intel.com",
        "time": "Fri Nov 18 13:35:56 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Thu Dec 15 11:02:07 2011 +0400"
      },
      "message": "[SCSI] fcoe: fix fcoe in a DCB environment by adding DCB notifiers to set skb priority\n\nUse DCB notifiers to set the skb priority to allow packets\nto be steered and tagged correctly over DCB enabled drivers\nthat setup traffic classes.\n\nThis allows queue_mapping() routines to be removed in these\ndrivers that were previously inspecting the ethertype of\nevery skb to mark FCoE/FIP frames.\n\nSigned-off-by: John Fastabend \u003cjohn.r.fastabend@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "7e1e7ead88dff75b11b86ee0d5232c4591be1326",
      "tree": "844559e1dd8a881db68a791508a66196d9e383f3",
      "parents": [
        "09b4402d2c8e36b8d4270c4da235fd7bb312118d"
      ],
      "author": {
        "name": "Thomas Gleixner",
        "email": "tglx@linutronix.de",
        "time": "Fri Nov 11 20:52:01 2011 +0100"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Wed Dec 14 15:40:03 2011 +0400"
      },
      "message": "[SCSI] fcoe: Fix preempt count leak in fcoe_filter_frames()\n\nThe error exit path leaks preempt count. Add the missing put_cpu().\n\nSigned-off-by: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nReviewed-by: Yi Zou \u003cyi.zou@intel.com\u003e\nCc: stable@kernel.org\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "907c07d45199f954ddcf66c2c9763c87d012cb15",
      "tree": "4d25bde865cc84feebf93d73c7dd186a6e15be2a",
      "parents": [
        "b6e3c84034b93e6acc895711f74730e235dfe9d2"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Oct 28 11:34:23 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Mon Oct 31 13:27:43 2011 +0400"
      },
      "message": "[SCSI] libfc: improve flogi retries to avoid lport stuck\n\nAdds more cases to do flogi retry, now also retry\non getting bad response due to either no ELS response\nor flogi response payload length not large enough.\nIn those cases flogi was not retried and that\nwas leaving lport offline.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nTested-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "ec7ae517537ae5c7b0b2cd7f562dfa3e7a05b954",
      "tree": "e6b0c64a51a7c0aa0efd09d4f7a80872e3b1657a",
      "parents": [
        "97d2eb13a019ec09cc1a7ea2d3705c0b117b3c0d",
        "590134fa78fbdbe5fea78c7ae0b2c3364bc9572f"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 28 16:44:18 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri Oct 28 16:44:18 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (204 commits)\n  [SCSI] qla4xxx: export address/port of connection (fix udev disk names)\n  [SCSI] ipr: Fix BUG on adapter dump timeout\n  [SCSI] megaraid_sas: Fix instance access in megasas_reset_timer\n  [SCSI] hpsa: change confusing message to be more clear\n  [SCSI] iscsi class: fix vlan configuration\n  [SCSI] qla4xxx: fix data alignment and use nl helpers\n  [SCSI] iscsi class: fix link local mispelling\n  [SCSI] iscsi class: Replace iscsi_get_next_target_id with IDA\n  [SCSI] aacraid: use lower snprintf() limit\n  [SCSI] lpfc 8.3.27: Change driver version to 8.3.27\n  [SCSI] lpfc 8.3.27: T10 additions for SLI4\n  [SCSI] lpfc 8.3.27: Fix queue allocation failure recovery\n  [SCSI] lpfc 8.3.27: Change algorithm for getting physical port name\n  [SCSI] lpfc 8.3.27: Changed worst case mailbox timeout\n  [SCSI] lpfc 8.3.27: Miscellanous logic and interface fixes\n  [SCSI] megaraid_sas: Changelog and version update\n  [SCSI] megaraid_sas: Add driver workaround for PERC5/1068 kdump kernel panic\n  [SCSI] megaraid_sas: Add multiple MSI-X vector/multiple reply queue support\n  [SCSI] megaraid_sas: Add support for MegaRAID 9360/9380 12GB/s controllers\n  [SCSI] megaraid_sas: Clear FUSION_IN_RESET before enabling interrupts\n  ...\n"
    },
    {
      "commit": "8a9ea3237e7eb5c25f09e429ad242ae5a3d5ea22",
      "tree": "a0a63398a9983667d52cbbbf4e2405b4f22b1d83",
      "parents": [
        "1be025d3cb40cd295123af2c394f7229ef9b30ca",
        "8b3408f8ee994973869d8ba32c5bf482bc4ddca4"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 13:25:22 2011 +0200"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue Oct 25 13:25:22 2011 +0200"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next: (1745 commits)\n  dp83640: free packet queues on remove\n  dp83640: use proper function to free transmit time stamping packets\n  ipv6: Do not use routes from locally generated RAs\n  |PATCH net-next] tg3: add tx_dropped counter\n  be2net: don\u0027t create multiple RX/TX rings in multi channel mode\n  be2net: don\u0027t create multiple TXQs in BE2\n  be2net: refactor VF setup/teardown code into be_vf_setup/clear()\n  be2net: add vlan/rx-mode/flow-control config to be_setup()\n  net_sched: cls_flow: use skb_header_pointer()\n  ipv4: avoid useless call of the function check_peer_pmtu\n  TCP: remove TCP_DEBUG\n  net: Fix driver name for mdio-gpio.c\n  ipv4: tcp: fix TOS value in ACK messages sent from TIME_WAIT\n  rtnetlink: Add missing manual netlink notification in dev_change_net_namespaces\n  ipv4: fix ipsec forward performance regression\n  jme: fix irq storm after suspend/resume\n  route: fix ICMP redirect validation\n  net: hold sock reference while processing tx timestamps\n  tcp: md5: add more const attributes\n  Add ethtool -g support to virtio_net\n  ...\n\nFix up conflicts in:\n - drivers/net/Kconfig:\n\tThe split-up generated a trivial conflict with removal of a\n\tstale reference to Documentation/networking/net-modules.txt.\n\tRemove it from the new location instead.\n - fs/sysfs/dir.c:\n\tFairly nasty conflicts with the sysfs rb-tree usage, conflicting\n\twith Eric Biederman\u0027s changes for tagged directories.\n"
    },
    {
      "commit": "9e903e085262ffbf1fc44a17ac06058aca03524a",
      "tree": "4acefc97ba38c1733474d25c0b2053b56af97db1",
      "parents": [
        "dd767856a36e00b631d65ebc4bb81b19915532d6"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Oct 18 21:00:24 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Oct 19 03:10:46 2011 -0400"
      },
      "message": "net: add skb frag size accessors\n\nTo ease skb-\u003etruesize sanitization, its better to be able to localize\nall references to skb frags size.\n\nDefine accessors : skb_frag_size() to fetch frag size, and\nskb_frag_size_{set|add|sub}() to manipulate it.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "814740d5f67ae5f205349019bfaae38bcd0c8732",
      "tree": "4c7de90af617916dc06d44a5b5504775f3ffb211",
      "parents": [
        "fd8fa9071e49a56cc91f739813ea88f16b7c1240"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Mon Oct 03 16:45:01 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Sun Oct 16 10:38:01 2011 -0500"
      },
      "message": "[SCSI] fcoe,libfcoe: Move common code for fcoe_get_lesb to fcoe_transport\n\nExcept for obtaining the netdev from lport, fcoe_get_lesb is the common code\nfor the LLDs.\n\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nAcked-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "860eca2b2bf90c513c1d6d9f889b3e0801e7ac08",
      "tree": "fd37ae422fa49ac3f14a390185205726b1ddc3d3",
      "parents": [
        "d1483bb90a01ec68c2f6dc8842ce2d449cd6d6d0"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Tue Sep 27 21:38:18 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Sun Oct 02 12:57:40 2011 -0500"
      },
      "message": "[SCSI] fcoe: setup default initial value for DDP threshold\n\nCurrently fcoe_ddp_min doesn\u0027t have default value\nso by default not used, so setting up default value\nas 4k as this works better by avoiding overhead\nof programing DDP for small IOs.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "d1483bb90a01ec68c2f6dc8842ce2d449cd6d6d0",
      "tree": "5e053e97351e55bc5cafc8c6694afc3c2f87647a",
      "parents": [
        "e17b4af7c7a6f5c24b0e6b856bb45a1a22be75f5"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Tue Sep 27 21:38:13 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Sun Oct 02 12:57:12 2011 -0500"
      },
      "message": "[SCSI] fcoe: use real dev in case of HW vlan acceleration\n\nUse real dev in case it has HW vlan acceleration\nsupport since in this case the real dev would\ndo needed vlan processing, this way unnecessary\nvlan layer processing avoided and it gives\nslightly better IOPS with 512B size IOs.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "5c609ff937a91cf09b1f8d7612cd00bc046c27f7",
      "tree": "5f5620257b243c61b28c555c770445cad819eaca",
      "parents": [
        "05a2a17317b48eb16a167c8c2932ba7b3cdee89e"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Tue Sep 27 21:37:52 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Sun Oct 02 12:53:40 2011 -0500"
      },
      "message": "[SCSI] fcoe: use kthread_create_on_node\n\nSince fcoe_percpu_thread_create() creates percpu kthread, it makes sense\nto use kthread_create_on_node() to get proper NUMA affinity for kthread\nstack.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "8decf868790b48a727d7e7ca164f2bcd3c1389c0",
      "tree": "b759a5f861f842af7ea76f9011b579d06e9d5508",
      "parents": [
        "3fc72370186be2f9d4d6ef06d99e1caa5d92c564",
        "d93dc5c4478c1fd5de85a3e8aece9aad7bbae044"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 22 03:23:13 2011 -0400"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 22 03:23:13 2011 -0400"
      },
      "message": "Merge branch \u0027master\u0027 of github.com:davem330/net\n\nConflicts:\n\tMAINTAINERS\n\tdrivers/net/Kconfig\n\tdrivers/net/ethernet/broadcom/bnx2x/bnx2x_link.c\n\tdrivers/net/ethernet/broadcom/tg3.c\n\tdrivers/net/wireless/iwlwifi/iwl-pci.c\n\tdrivers/net/wireless/iwlwifi/iwl-trans-tx-pcie.c\n\tdrivers/net/wireless/rt2x00/rt2800usb.c\n\tdrivers/net/wireless/wl12xx/main.c\n"
    },
    {
      "commit": "4bc71cb983fd2844e603bf633df2bb53385182d2",
      "tree": "067b6df32fda6c554b2b9263a94a585c2e5a832d",
      "parents": [
        "c5dac7c9984d8a034eb7ae149cedf23ec9259f98"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Sat Sep 03 03:34:30 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Thu Sep 15 17:32:26 2011 -0400"
      },
      "message": "net: consolidate and fix ethtool_ops-\u003eget_settings calling\n\nThis patch does several things:\n- introduces __ethtool_get_settings which is called from ethtool code and\n  from drivers as well. Put ASSERT_RTNL there.\n- dev_ethtool_get_settings() is replaced by __ethtool_get_settings()\n- changes calling in drivers so rtnl locking is respected. In\n  iboe_get_rate was previously -\u003eget_settings() called unlocked. This\n  fixes it. Also prb_calc_retire_blk_tmo() in af_packet.c had the same\n  problem. Also fixed by calling __dev_get_by_index() instead of\n  dev_get_by_index() and holding rtnl_lock for both calls.\n- introduces rtnl_lock in bnx2fc_vport_create() and fcoe_vport_create()\n  so bnx2fc_if_create() and fcoe_if_create() are called locked as they\n  are from other places.\n- use __ethtool_get_settings() in bonding code\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\n\nv2-\u003ev3:\n\t-removed dev_ethtool_get_settings()\n\t-added ASSERT_RTNL into __ethtool_get_settings()\n\t-prb_calc_retire_blk_tmo - use __dev_get_by_index() and lock\n\t around it and __ethtool_get_settings() call\nv1-\u003ev2:\n        add missing export_symbol\nReviewed-by: Ben Hutchings \u003cbhutchings@solarflare.com\u003e [except FCoE bits]\nAcked-by: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "e060c38434b2caa78efe7cedaff4191040b65a15",
      "tree": "407361230bf6733f63d8e788e4b5e6566ee04818",
      "parents": [
        "10e4ac572eeffe5317019bd7330b6058a400dfc2",
        "cc39c6a9bbdebfcf1a7dee64d83bf302bc38d941"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Thu Sep 15 15:08:05 2011 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Thu Sep 15 15:08:18 2011 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n\nFast-forward merge with Linus to be able to merge patches\nbased on more recent version of the tree.\n"
    },
    {
      "commit": "101ae14edc14efb0fe6ed8a77ed370cca670ffc8",
      "tree": "b30faae55e981a049880f52100b8244c6b3345a3",
      "parents": [
        "e5de063016ce838aff08683ce38ac40211c247d9"
      ],
      "author": {
        "name": "Jesper Juhl",
        "email": "jj@chaosbits.net",
        "time": "Mon Aug 01 23:27:12 2011 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Thu Sep 15 14:57:07 2011 +0200"
      },
      "message": "Remove unneeded version.h includes from drivers/scsi/\n\nIt was pointed out by \u0027make versioncheck\u0027 that some includes of\nlinux/version.h are not needed in drivers/scsi/.\nThis patch removes them.\n\nSigned-off-by: Jesper Juhl \u003cjj@chaosbits.net\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "848e7d5b46b9b0ee613a106bc460acf6a09a8546",
      "tree": "0695610dd1bc9ae207aa12c76013ab788b06d8ae",
      "parents": [
        "7ca3c803e85080afdff4097e60fefec865027809"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Thu Aug 25 12:40:47 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Sun Aug 28 19:38:43 2011 -0700"
      },
      "message": "[SCSI] fcoe: Fix deadlock between fip\u0027s recv_work and rtnl\n\nThe rtnl cannot be held durrng the fcoe_interface_put.\nIf it is the last reference on the fcoe_interface the\nfcoe_ctlr_destroy will be called as a part of the\ncleanup, ultimately calling cancel_work_sync(\u0026fip-\u003erecv_work);\n\nIf we are processing a flogi response we will be in\nthe recv_work context and we will lock the rtnl to\nadd a new unicast MAC address. This is how the deadlock\ncan occur.\n\nThe fix is simply to move the rtnl_lock/unlock into\nfcoe_interface_cleanup so that it can be unlocked before\nfcoe_interface_put is called.\n\nHere is the lockdep report:\n\nJul 21 11:26:35 bubba [  223.870702]\nul 21 11:26:35 bubba [  223.870704] \u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\nJul 21 11:26:35 bubba [  223.871255] [ INFO: possible circular locking dependency detected ]\nJul 21 11:26:35 bubba [  223.871530] 3.0.0-rc7+ #1\nJul 21 11:26:35 bubba [  223.871797] -------------------------------------------------------\nJul 21 11:26:35 bubba [  223.872072] lockdeptest.sh/3464 is trying to acquire lock:\nJul 21 11:26:35 bubba [  223.872345]  ((\u0026fip-\u003erecv_work)\nJul 21 11:26:35 bubba ){+.+.+.}\nJul 21 11:26:35 bubba , at:\nJul 21 11:26:35 bubba [\u003cffffffff810531f1\u003e] wait_on_work+0x0/0xbd\nJul 21 11:26:35 bubba [  223.873022]\nJul 21 11:26:35 bubba [  223.873023] but task is already holding lock:\nJul 21 11:26:35 bubba [  223.873555]  (rtnl_mutex\nJul 21 11:26:35 bubba ){+.+.+.}\nJul 21 11:26:35 bubba , at:\nJul 21 11:26:35 bubba [\u003cffffffff813e8233\u003e] rtnl_lock+0x12/0x14\nJul 21 11:26:35 bubba [  223.874229]\nJul 21 11:26:35 bubba [  223.874230] which lock already depends on the new lock.\nJul 21 11:26:35 bubba [  223.874231]\nJul 21 11:26:35 bubba [  223.875032]\nJul 21 11:26:35 bubba [  223.875033] the existing dependency chain (in reverse order) is:\nJul 21 11:26:35 bubba [  223.875573]\nJul 21 11:26:35 bubba [  223.875573] -\u003e #1\nJul 21 11:26:35 bubba (rtnl_mutex\nJul 21 11:26:35 bubba ){+.+.+.}\nJul 21 11:26:35 bubba :\nJul 21 11:26:35 bubba [  223.876301]\nJul 21 11:26:35 bubba [\u003cffffffff8106c14a\u003e] lock_acquire+0xd2/0xf7\nJul 21 11:26:35 bubba [  223.876645]\nJul 21 11:26:35 bubba [\u003cffffffff8151d975\u003e] __mutex_lock_common+0x47/0x30d\nJul 21 11:26:35 bubba [  223.876991]\nJul 21 11:26:35 bubba [\u003cffffffff8151dd36\u003e] mutex_lock_nested+0x3b/0x40\nJul 21 11:26:35 bubba [  223.877334]\nJul 21 11:26:35 bubba [\u003cffffffff813e8233\u003e] rtnl_lock+0x12/0x14\nJul 21 11:26:35 bubba [  223.877675]\nJul 21 11:26:35 bubba [\u003cffffffffa003d5a0\u003e] fcoe_update_src_mac+0x2b/0x80 [fcoe]\nJul 21 11:26:35 bubba [  223.878022]\nJul 21 11:26:35 bubba [\u003cffffffffa003d698\u003e] fcoe_flogi_resp+0x5e/0x79 [fcoe]\nJul 21 11:26:35 bubba [  223.878366]\nJul 21 11:26:35 bubba [\u003cffffffffa001566f\u003e] fc_exch_recv+0x7f5/0x9da [libfc]\nJul 21 11:26:35 bubba [  223.878713]\nJul 21 11:26:35 bubba [\u003cffffffffa00327d8\u003e] fcoe_ctlr_recv_work+0x71f/0x10dc [libfcoe]\nJul 21 11:26:35 bubba [  223.879258]\nJul 21 11:26:35 bubba [\u003cffffffff81053761\u003e] process_one_work+0x1d7/0x347\nJul 21 11:26:35 bubba [  223.879601]\nJul 21 11:26:35 bubba [\u003cffffffff81054ade\u003e] worker_thread+0xf8/0x17c\nJul 21 11:26:35 bubba [  223.879944]\nJul 21 11:26:35 bubba [\u003cffffffff81058184\u003e] kthread+0x7d/0x85\nJul 21 11:26:35 bubba [  223.880287]\nJul 21 11:26:35 bubba [\u003cffffffff81526414\u003e] kernel_thread_helper+0x4/0x10\nJul 21 11:26:35 bubba [  223.880634]\nJul 21 11:26:35 bubba [  223.880635] -\u003e #0\nJul 21 11:26:35 bubba ((\u0026fip-\u003erecv_work)\nJul 21 11:26:35 bubba ){+.+.+.}\nJul 21 11:26:35 bubba :\nJul 21 11:26:35 bubba [  223.881357]\nJul 21 11:26:35 bubba [\u003cffffffff8106b93e\u003e] __lock_acquire+0xb1d/0xe2c\nJul 21 11:26:35 bubba [  223.881695]\nJul 21 11:26:35 bubba [\u003cffffffff8106c14a\u003e] lock_acquire+0xd2/0xf7\nJul 21 11:26:35 bubba [  223.882033]\nJul 21 11:26:35 bubba [\u003cffffffff81053241\u003e] wait_on_work+0x50/0xbd\nJul 21 11:26:35 bubba [  223.882378]\nJul 21 11:26:35 bubba [\u003cffffffff81053b32\u003e] __cancel_work_timer+0xb6/0xf4\nJul 21 11:26:35 bubba [  223.882718]\nJul 21 11:26:35 bubba [\u003cffffffff81053b8a\u003e] cancel_work_sync+0xb/0xd\nJul 21 11:26:35 bubba [  223.883057]\nJul 21 11:26:35 bubba [\u003cffffffffa00317e6\u003e] fcoe_ctlr_destroy+0x1d/0x67 [libfcoe]\nJul 21 11:26:35 bubba [  223.883399]\nJul 21 11:26:35 bubba [\u003cffffffffa003e51e\u003e] fcoe_interface_release+0x21/0x45 [fcoe]\nJul 21 11:26:35 bubba [  223.883940]\nJul 21 11:26:35 bubba [\u003cffffffff811fbbe6\u003e] kref_put+0x43/0x4d\nJul 21 11:26:35 bubba [  223.884280]\nJul 21 11:26:35 bubba [\u003cffffffffa003ebba\u003e] fcoe_interface_put+0x17/0x19 [fcoe]\nJul 21 11:26:35 bubba [  223.884624]\nJul 21 11:26:35 bubba [\u003cffffffffa003f2a6\u003e] fcoe_interface_cleanup+0x188/0x193 [fcoe]\nJul 21 11:26:35 bubba [  223.885163]\nJul 21 11:26:35 bubba [\u003cffffffffa003f303\u003e] fcoe_destroy+0x52/0x72 [fcoe]\nJul 21 11:26:35 bubba [  223.885502]\nJul 21 11:26:35 bubba [\u003cffffffffa00340a4\u003e] fcoe_transport_destroy+0xab/0x110 [libfcoe]\nJul 21 11:26:35 bubba [  223.886045]\nJul 21 11:26:35 bubba [\u003cffffffff81056153\u003e] param_attr_store+0x43/0x62\nJul 21 11:26:35 bubba [  223.886385]\nJul 21 11:26:35 bubba [\u003cffffffff8105602d\u003e] module_attr_store+0x21/0x25\nJul 21 11:26:35 bubba [  223.886728]\nJul 21 11:26:35 bubba [\u003cffffffff8114c23d\u003e] sysfs_write_file+0x103/0x13f\nJul 21 11:26:35 bubba [  223.887068]\nJul 21 11:26:35 bubba [\u003cffffffff810f3e7b\u003e] vfs_write+0xa7/0xfa\nJul 21 11:26:35 bubba [  223.887406]\nJul 21 11:26:35 bubba [\u003cffffffff810f4073\u003e] sys_write+0x45/0x69\nJul 21 11:26:35 bubba [  223.887742]\nJul 21 11:26:35 bubba [\u003cffffffff815252bb\u003e] system_call_fastpath+0x16/0x1b\nJul 21 11:26:35 bubba [  223.888083]\nJul 21 11:26:35 bubba [  223.888084] other info that might help us debug this:\nJul 21 11:26:35 bubba [  223.888085]\nJul 21 11:26:35 bubba [  223.888879]  Possible unsafe locking scenario:\nJul 21 11:26:35 bubba [  223.888881]\nJul 21 11:26:35 bubba [  223.889411]        CPU0                    CPU1\nJul 21 11:26:35 bubba [  223.889683]        ----                    ----\nJul 21 11:26:35 bubba [  223.889955]   lock(\nJul 21 11:26:35 bubba rtnl_mutex\nJul 21 11:26:35 bubba );\nJul 21 11:26:35 bubba [  223.890349]                                lock(\nJul 21 11:26:35 bubba (\u0026fip-\u003erecv_work)\nJul 21 11:26:35 bubba );\nJul 21 11:26:35 bubba [  223.890751]                                lock(\nJul 21 11:26:35 bubba rtnl_mutex\nJul 21 11:26:35 bubba );\nJul 21 11:26:35 bubba [  223.891154]   lock(\nJul 21 11:26:35 bubba (\u0026fip-\u003erecv_work)\nJul 21 11:26:35 bubba );\nJul 21 11:26:35 bubba [  223.891549]\nJul 21 11:26:35 bubba [  223.891550]  *** DEADLOCK ***\nJul 21 11:26:35 bubba [  223.891551]\nJul 21 11:26:35 bubba [  223.892347] 6 locks held by lockdeptest.sh/3464:\nJul 21 11:26:35 bubba [  223.892621]  #0:\nJul 21 11:26:35 bubba (\u0026buffer-\u003emutex\nJul 21 11:26:35 bubba ){+.+.+.}\nJul 21 11:26:35 bubba , at:\nJul 21 11:26:35 bubba [\u003cffffffff8114c171\u003e] sysfs_write_file+0x37/0x13f\nJul 21 11:26:35 bubba [  223.893359]  #1:\nJul 21 11:26:35 bubba (s_active\nJul 21 11:26:35 bubba ){++++.+}\nJul 21 11:26:35 bubba , at:\nJul 21 11:26:35 bubba [\u003cffffffff8114c21c\u003e] sysfs_write_file+0xe2/0x13f\nJul 21 11:26:35 bubba [  223.894094]  #2:\nJul 21 11:26:35 bubba (param_lock\nJul 21 11:26:35 bubba ){+.+.+.}\nJul 21 11:26:35 bubba , at:\nJul 21 11:26:35 bubba [\u003cffffffff81056146\u003e] param_attr_store+0x36/0x62\nJul 21 11:26:35 bubba [  223.894835]  #3:\nJul 21 11:26:35 bubba (ft_mutex\nJul 21 11:26:35 bubba ){+.+.+.}\nJul 21 11:26:35 bubba , at:\nJul 21 11:26:35 bubba [\u003cffffffffa0034017\u003e] fcoe_transport_destroy+0x1e/0x110 [libfcoe]\nJul 21 11:26:35 bubba [  223.895574]  #4:\nJul 21 11:26:35 bubba (fcoe_config_mutex\nJul 21 11:26:35 bubba ){+.+.+.}\nJul 21 11:26:35 bubba , at:\nJul 21 11:26:35 bubba [\u003cffffffffa003f2c9\u003e] fcoe_destroy+0x18/0x72 [fcoe]\nJul 21 11:26:35 bubba [  223.896314]  #5:\nJul 21 11:26:35 bubba (rtnl_mutex\nJul 21 11:26:35 bubba ){+.+.+.}\nJul 21 11:26:35 bubba , at:\nJul 21 11:26:35 bubba [\u003cffffffff813e8233\u003e] rtnl_lock+0x12/0x14\nJul 21 11:26:35 bubba [  223.897047]\nJul 21 11:26:35 bubba [  223.897048] stack backtrace:\nJul 21 11:26:35 bubba [  223.897578] Pid: 3464, comm: lockdeptest.sh Not tainted 3.0.0-rc7+ #1\nJul 21 11:26:35 bubba [  223.897853] Call Trace:\nJul 21 11:26:35 bubba [  223.898128]  [\u003cffffffff81068e16\u003e] print_circular_bug+0x1f8/0x209\nJul 21 11:26:35 bubba [  223.898416]  [\u003cffffffff8106b93e\u003e] __lock_acquire+0xb1d/0xe2c\nJul 21 11:26:35 bubba [  223.898699]  [\u003cffffffff810531f1\u003e] ? wait_on_cpu_work+0xe6/0xe6\nJul 21 11:26:35 bubba [  223.898982]  [\u003cffffffff8106c14a\u003e] lock_acquire+0xd2/0xf7\nJul 21 11:26:35 bubba [  223.899263]  [\u003cffffffff810531f1\u003e] ? wait_on_cpu_work+0xe6/0xe6\nJul 21 11:26:35 bubba [  223.899547]  [\u003cffffffff8104a097\u003e] ? mod_timer+0x8f/0x98\nJul 21 11:26:35 bubba [  223.899827]  [\u003cffffffff81053241\u003e] wait_on_work+0x50/0xbd\nJul 21 11:26:35 bubba [  223.900108]  [\u003cffffffff810531f1\u003e] ? wait_on_cpu_work+0xe6/0xe6\nJul 21 11:26:35 bubba [  223.900390]  [\u003cffffffff81053b32\u003e] __cancel_work_timer+0xb6/0xf4\nJul 21 11:26:35 bubba [  223.900671]  [\u003cffffffff81053b8a\u003e] cancel_work_sync+0xb/0xd\nJul 21 11:26:35 bubba [  223.900953]  [\u003cffffffffa00317e6\u003e] fcoe_ctlr_destroy+0x1d/0x67 [libfcoe]\nJul 21 11:26:35 bubba [  223.901237]  [\u003cffffffffa003e51e\u003e] fcoe_interface_release+0x21/0x45 [fcoe]\nJul 21 11:26:35 bubba [  223.901522]  [\u003cffffffffa003e4fd\u003e] ? fcoe_enable+0x6b/0x6b [fcoe]\nJul 21 11:26:35 bubba [  223.901803]  [\u003cffffffff811fbbe6\u003e] kref_put+0x43/0x4d\nJul 21 11:26:35 bubba [  223.902083]  [\u003cffffffffa003ebba\u003e] fcoe_interface_put+0x17/0x19 [fcoe]\nJul 21 11:26:35 bubba [  223.902367]  [\u003cffffffffa003f2a6\u003e] fcoe_interface_cleanup+0x188/0x193 [fcoe]\nJul 21 11:26:35 bubba [  223.902653]  [\u003cffffffff8151dd36\u003e] ? mutex_lock_nested+0x3b/0x40\nJul 21 11:26:35 bubba [  223.902939]  [\u003cffffffffa003f303\u003e] fcoe_destroy+0x52/0x72 [fcoe]\nJul 21 11:26:35 bubba [  223.903223]  [\u003cffffffffa00340a4\u003e] fcoe_transport_destroy+0xab/0x110 [libfcoe]\nJul 21 11:26:35 bubba [  223.903508]  [\u003cffffffff81056153\u003e] param_attr_store+0x43/0x62\nJul 21 11:26:35 bubba [  223.903792]  [\u003cffffffff8105602d\u003e] module_attr_store+0x21/0x25\nJul 21 11:26:35 bubba [  223.904075]  [\u003cffffffff8114c23d\u003e] sysfs_write_file+0x103/0x13f\nJul 21 11:26:35 bubba [  223.904357]  [\u003cffffffff810f3e7b\u003e] vfs_write+0xa7/0xfa\nJul 21 11:26:35 bubba [  223.904642]  [\u003cffffffff810f51d6\u003e] ? fget_light+0x35/0x96\nJul 21 11:26:35 bubba [  223.904923]  [\u003cffffffff810f4073\u003e] sys_write+0x45/0x69\nJul 21 11:26:35 bubba [  223.905204]  [\u003cffffffff815252bb\u003e] system_call_fastpath+0x16/0x1b\nJul 21 11:26:36 bubba [  223.964438] ixgbe 0000:05:00.0: eth3: detected SFP+: 5\nJul 21 11:26:37 bubba [  225.196702] ixgbe 0000:05:00.0: eth3: NIC Link is Up 10 Gbps, Flow Control: None\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nReviewed-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "d834895c41d34b64a1923fa631e6a64f763ed31c",
      "tree": "94a3311fed06686b4e327c894fdd1dce78b69cd9",
      "parents": [
        "3f8744d147375aca902de7a9f2632a89872565f4"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Thu Aug 04 17:38:49 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Sat Aug 27 08:35:46 2011 -0600"
      },
      "message": "[SCSI] fcoe: Move common functions to fcoe_transport library\n\nExport fcoe_get_wwn, fcoe_validate_vport_create and fcoe_wwn_to_str so that all\nLLDs can use these common function.\n\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "165c68d5a291537eaf2d3821a19335c9ec100ba6",
      "tree": "4ea485969cad853819e7034398898ce0b0bff9eb",
      "parents": [
        "94b06fdbfce46f3126810e30698bdf010617179b"
      ],
      "author": {
        "name": "Ian Campbell",
        "email": "Ian.Campbell@citrix.com",
        "time": "Wed Aug 24 22:28:15 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Aug 26 12:38:43 2011 -0400"
      },
      "message": "fcoe: convert to SKB paged frag API.\n\nSigned-off-by: Ian Campbell \u003cian.campbell@citrix.com\u003e\nReviewed-by: Konrad Rzeszutek Wilk \u003ckonrad.wilk@oracle.com\u003e\nCc: Robert Love \u003crobert.w.love@intel.com\u003e\nCc: \"James E.J. Bottomley\" \u003cJBottomley@parallels.com\u003e\nCc: devel@open-fcoe.org\nCc: linux-scsi@vger.kernel.org\nCc: netdev@vger.kernel.org\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d272281c390eb6c3f1e70ed0337c9e619d99cd9c",
      "tree": "020ba7b16f20599c9d7cf1cca0aa4d11d22c494c",
      "parents": [
        "980f5156ab2d75e0462f3811e8a92acd06b0577b"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Wed Jul 27 15:11:10 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Thu Jul 28 12:14:29 2011 +0400"
      },
      "message": "[SCSI] fcoe: cleanup cpu selection for incoming requests\n\nCleanup to:\n\n- have selection for all types of frames, not just FCP.\n- remove redundant cpu_online check once fcoe_select_cpu called\n  as this is not required since later code flow check for offlined\n  cpu.\n- Simplify fcoe_select_cpu() by removing unnecessary checks to\n  skip curr_cpu, this also fixes possibly infinite loop in case\n  of curr_cpu is the only cpu while iterating in the loop.\n\nThis cleanup mainly applies to target as incoming request are\nmostly for target, therefore Kiran has verified the patch\nwith target also.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nTested-by: Kiran Patil \u003ckiran.patil@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "980f5156ab2d75e0462f3811e8a92acd06b0577b",
      "tree": "bb54a2b9093f817ddb5a8e04cd584f6df8133188",
      "parents": [
        "320036e083bb2a0f60820b51cb9f0bfa651ee62f"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Wed Jul 27 15:11:05 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Thu Jul 28 12:13:51 2011 +0400"
      },
      "message": "[SCSI] fcoe: add fip retry to avoid missing critical keep alive\n\nUse pending queue to retry FIP frame in case its tx\nfails and use common pending queue for both fcoe\nand fip frames using fcoe_port_send.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "324f667833d7ddd9501ed8c0e3ec5754ddb1b695",
      "tree": "1dbc7ce23d6c8f3c13f6c977d572be90fb95051b",
      "parents": [
        "6f06e3a7b2f2d840d42a0c2b9906f444e8f2eba6"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Wed Jul 27 15:10:39 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Thu Jul 28 12:10:35 2011 +0400"
      },
      "message": "[SCSI] libfc, fcoe: ignore rx frame with wrong xid info\n\nDrop the rx frame having xid with wrong cpu info\nor received with xid  not matching to our xid.\n\nNot dropping such frame is causing panic as\nthat causes accessing data struct beyond their\nbounds.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "302ff541d981e58cd455fdbd6a90bd74d0f2109b",
      "tree": "87fadaa4972189c6deef5a02eb2719e2b093d268",
      "parents": [
        "9b35baae3a62c33a73a6fd8bf4d1b6c4e3b5b5f3"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Wed Jul 27 15:10:23 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Thu Jul 28 12:08:55 2011 +0400"
      },
      "message": "[SCSI] fcoe: remove unused ptype field in fcoe_rcv_info\n\nThere is no need to cache the ptype in fcoe_rcv_info struct as it is never\nused anywhere.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "b2085a4efc1a00375b77d5cbfe73a549c9d7d65b",
      "tree": "822cc056b3240e00fd485dd349081a9d8758202c",
      "parents": [
        "9b7d1613a9060b7c82ac7e8e7cbee8c2392925c2"
      ],
      "author": {
        "name": "Neerav Parikh",
        "email": "neerav.parikh@intel.com",
        "time": "Mon Jun 20 16:59:51 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Wed Jun 29 16:33:25 2011 -0500"
      },
      "message": "[SCSI] fcoe: Rearrange fcoe port and NPIV port cleanup\n\nWhen NPIV port destroy handler is called it does not do all the cleanup\nrequired for the given NPIV port. This was happening as some of the\nlport cleanup moved to fcoe_interface_cleanup() routine, which is not\ncalled as part of the vport delete process.\n\nThis patch rearranges the sequence in which the fcoe_if_destory() and\nfcoe_interface_cleanup() functions are being called from various places\nin the code. It now matches the sequence they are constructed during the\ncreate process for both N_Port as well as NPIV port.\n\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Neerav Parikh \u003cNeerav.Parikh@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "29bdd2bb3e48c742e6b5a0be2ff2fa00e9838fe0",
      "tree": "0c0726bae03a45e72127dac08f09b62aa6314d90",
      "parents": [
        "064287eee372e8a2effe77fb909a40da9e7a1fd7"
      ],
      "author": {
        "name": "Kiran Patil",
        "email": "kiran.patil@intel.com",
        "time": "Mon Jun 20 16:59:25 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Wed Jun 29 16:30:02 2011 -0500"
      },
      "message": "[SCSI] fcoe: Amends previous patch, Round-robin based selection of CPU for post processing of incoming request for FCoE target\n\nProblem: Selection of RX queue on target is based on RX-ID. FCoE used\n8 Net Rx queues.  HW post the packets based on rx_id %\nnum_rx_queue. Due to this has based filtering, only one CPU is busy\nservicing incoming request including post-processing of incoming\nrequest. This is gating factor because\n\n1. Only one CPU is utilized 100% while others CPUs are not used at all.\n\n2. CPU which received request assign \"sequence\u0027 by selecting exchange\n   from per CPU pool (num_ddp_context / num_online_cpus,\n   approxi.). Due to which if if rate of incoming request is higher\n   than rate of servicing request, existing code path end of sending\n   \"BUSY\" response (SAM_STAT_BUSY because unable to allocate\n   exchange).\n\nFix: Fan-out incoming request to all other CPUs excluding the CPU\nwhich is receiving all incoiming request. This path also addresses,\nselecting same CPU based on rx_id from received frame for completion\nof the request such as \"releasing exchange to the per CPU Pool\". This\nfix is applicable for FCoE target since initiator code path already\ntakes care of selecting CPU to complete post-processing of request\nonce OX_ID is assigned.\n\nNotes: N/A\n\nDependencines: N/A\n\nSigned-off-by: Kiran Patil \u003ckiran.patil@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "064287eee372e8a2effe77fb909a40da9e7a1fd7",
      "tree": "0cfda86145d0bae9dedc70206c1ff1f4bb773480",
      "parents": [
        "1ff9918b625457ce20d450d00f9ed0a12ba191b7"
      ],
      "author": {
        "name": "Kiran Patil",
        "email": "kiran.patil@intel.com",
        "time": "Mon Jun 20 16:59:20 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Wed Jun 29 16:29:36 2011 -0500"
      },
      "message": "[SCSI] fcoe: Round-robin based selection of CPU for post-processing of incoming commands\n\nProblem: Earlier mechanism of selection of CPU was, to select the same CPU\nwhich has received incoming request. Hence in case of rx_id \u003d 0xFFFF,\nrequest was always posted to same NetRx queue, hence only 1 CPU is utilized\nfor handling the command. It was also causing problem of \"running out of\nexchanges from per CPU pool of exchanges (in case of DDP offload)\n\nFix: Implemented new algo. to select CPU for post-processing of\nincoming commands when rx_id is unknown. This is simple Round robin\nalgo. for CPU selection.\n\nNotes/Dependencies: N/A\n\nSigned-off-by: Kiran Patil \u003ckiran.patil@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "1ff9918b625457ce20d450d00f9ed0a12ba191b7",
      "tree": "221a8ce7f34b6b98bd4f29c7eeefdb115a2618c1",
      "parents": [
        "71f894915aa6680dbce2ff727fb9237c4f7ac373"
      ],
      "author": {
        "name": "Kiran Patil",
        "email": "kiran.patil@intel.com",
        "time": "Mon Jun 20 16:59:15 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Wed Jun 29 16:29:24 2011 -0500"
      },
      "message": "[SCSI] fcoe: Unable to select the exchangeID from offload pool for storage targets\n\nProblem: When initiator sends write command to target, target tries to\nassign new sequence. It allocates new exchangeID (RX_ID)\nalways from non-offloaded pool (Non-offload EMA)\n\nFix: Enhanced fcoe_oem_match routine to look at F_CTL flags and if it\nis exchange responder and command type is WRITEDATA, then function\nreturns TRUE instead of FALSE. This function is used to determine\nwhich pool to use (offload pool of exchange is used only if this\nfunction returns TRUE).\n\nTechnical Notes: N/A\n\nSigned-off-by: Kiran Patil \u003ckiran.patil@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "71f894915aa6680dbce2ff727fb9237c4f7ac373",
      "tree": "172d9ae8a36aa7cbc732a9f493aea35f2d0ba2c8",
      "parents": [
        "33dc362b7f155a584688bcab2facdd4d21232001"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Mon Jun 20 16:59:10 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "JBottomley@Parallels.com",
        "time": "Wed Jun 29 16:28:41 2011 -0500"
      },
      "message": "[SCSI] fcoe: support ndo_fcoe_ddp_target() for DDP in FCoE targe\n\nAdd ddp_target() support to the Open-FCoE sw fcoe hba driver (fcoe.ko).\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Kiran Patil \u003ckiran.patil@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJBottomley@Parallels.com\u003e\n"
    },
    {
      "commit": "d85e607b344d8fcd644456508a5bbe63ce011221",
      "tree": "9f5af29a45cd5972fb824b4858521b75ff901558",
      "parents": [
        "8467b96c035a45418c5db2619f396b7131b4efa8"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Mon May 16 16:46:02 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jbottomley@parallels.com",
        "time": "Tue May 24 12:37:35 2011 -0400"
      },
      "message": "[SCSI] libfcoe: Remove unnecessary module state checks\n\nlibfcoe\u0027s interface consists of create, destroy, enable,\ndisable and create_vn2vn. These are currently module\nparamaters added durring the module initialization. A\nconcern arose that the module parameters were being added\nwith write permissions before the module had completed\ninitialization. The following code was added to each\nsysfs store file.\n\n* Make sure the module has been initialized, and is not about to be\n* removed.  Module parameter sysfs files are writable before the\n* module_init function is called and after module_exit.\n*/\nif (THIS_MODULE-\u003estate !\u003d MODULE_STATE_LIVE)\n    goto out_nodev;\n\nThis check was called out as unhelpful as the module can\ngo dead at any time and therefore its state isn\u0027t a reliable\nthing to look at as a sign of stability and initialization\ncompletion. Also, that functional interfaces like these\nshould be added after module initialization.\n\nThis patch removes the unnecessary checks and hopes to\ndisprove the concern about initialization ordering.\n\nRecent fcoe transport rework changes now require fcoe\ntransports to register with libfcoe before any operation\ncan take place. libfcoe may access some static variables\nbut nothing that could cause a problem. Once a fcoe transport\nis registered, libfcoe is usable and any interface calls will\nbe functional.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: James Bottomley \u003cjbottomley@parallels.com\u003e\n"
    },
    {
      "commit": "bdf252183e58654fcceedbf3fdcfd878b9e4f2d6",
      "tree": "b02db1a5baab6cde3fb77f2e9c7c1c302e996ce1",
      "parents": [
        "c051ad2e57e379e07e4ec28b2a54eeb0d04c5d59"
      ],
      "author": {
        "name": "Neerav Parikh",
        "email": "Neerav.Parikh@intel.com",
        "time": "Mon May 16 16:45:29 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jbottomley@parallels.com",
        "time": "Tue May 24 12:36:29 2011 -0400"
      },
      "message": "[SCSI] fcoe: Prevent creation of an NPIV port with duplicate WWPN\n\nThis patch adds a validation step before allowing creation of a new NPIV port.\nIt checks whether the WWPN passed for the new NPIV port to be created is unique\nfor the given physical port.\n\nSigned-off-by: Neerav Parikh \u003cNeerav.Parikh@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cjbottomley@parallels.com\u003e\n"
    },
    {
      "commit": "c051ad2e57e379e07e4ec28b2a54eeb0d04c5d59",
      "tree": "e210bbdc9319229f36988448b65139b698d132af",
      "parents": [
        "4f788dce0baf44295a8d9708d3f124587158c061"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Mon May 16 16:45:24 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "jbottomley@parallels.com",
        "time": "Tue May 24 12:36:17 2011 -0400"
      },
      "message": "[SCSI] libfcoe: Incorrect CVL handling for NPIV ports\n\nHost doesnt handle CVL to NPIV instantiated ports correctly.\n- As per FC-BB-5 Rev 2 CVLs with no VN_Port descriptors shall be treated as\n  implicit logout of ALL vn_ports.\n- CVL for NPIV ports should be handled before physical port even if descriptor\n  for physical port appears before NPIV ports\n\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cjbottomley@parallels.com\u003e\n"
    },
    {
      "commit": "06f4e926d256d902dd9a53dcb400fd74974ce087",
      "tree": "0b438b67f5f0eff6fd617bc497a9dace6164a488",
      "parents": [
        "8e7bfcbab3825d1b404d615cb1b54f44ff81f981",
        "d93515611bbc70c2fe4db232e5feb448ed8e4cc9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:43:21 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 20 13:43:21 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next-2.6: (1446 commits)\n  macvlan: fix panic if lowerdev in a bond\n  tg3: Add braces around 5906 workaround.\n  tg3: Fix NETIF_F_LOOPBACK error\n  macvlan: remove one synchronize_rcu() call\n  networking: NET_CLS_ROUTE4 depends on INET\n  irda: Fix error propagation in ircomm_lmp_connect_response()\n  irda: Kill set but unused variable \u0027bytes\u0027 in irlan_check_command_param()\n  irda: Kill set but unused variable \u0027clen\u0027 in ircomm_connect_indication()\n  rxrpc: Fix set but unused variable \u0027usage\u0027 in rxrpc_get_transport()\n  be2net: Kill set but unused variable \u0027req\u0027 in lancer_fw_download()\n  irda: Kill set but unused vars \u0027saddr\u0027 and \u0027daddr\u0027 in irlan_provider_connect_indication()\n  atl1c: atl1c_resume() is only used when CONFIG_PM_SLEEP is defined.\n  rxrpc: Fix set but unused variable \u0027usage\u0027 in rxrpc_get_peer().\n  rxrpc: Kill set but unused variable \u0027local\u0027 in rxrpc_UDP_error_handler()\n  rxrpc: Kill set but unused variable \u0027sp\u0027 in rxrpc_process_connection()\n  rxrpc: Kill set but unused variable \u0027sp\u0027 in rxrpc_rotate_tx_window()\n  pkt_sched: Kill set but unused variable \u0027protocol\u0027 in tc_classify()\n  isdn: capi: Use pr_debug() instead of ifdefs.\n  tg3: Update version to 3.119\n  tg3: Apply rx_discards fix to 5719/5720\n  ...\n\nFix up trivial conflicts in arch/x86/Kconfig and net/mac80211/agg-tx.c\nas per Davem.\n"
    },
    {
      "commit": "f04ca1b65480df9ecbaaa797e62b063387429410",
      "tree": "31f3c58011bf0447c0a93698d3e7bba4a746c48d",
      "parents": [
        "f2817ec2e0faece03959888050730ed35e5f2bd2"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Apr 01 16:06:45 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 01 10:20:59 2011 -0500"
      },
      "message": "[SCSI] fcoe: have fcoe log off and lport destroy before ndo_fcoe_disable\n\nCurrently fcoe interface cleanup is done after ndo_fcoe_disable\nand that prevents logoff going out to the peer, so this patch\nmoves all netdev cleanup and its releasing inside\nfcoe_interface_cleanup to have log off before ndo_fcoe_disable\ndisables the fcoe.\n\nThis patch also fixes asymmetric rtnl locking around fcoe_if_destroy,\nas currently this function requires rtnl held by its caller\nand then have this func drops the lock, instead now don\u0027t have\nany processing under rtnl inside fcoe_if_destroy, this required\nmoving few func to get build working again.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "4ef7fb150f3002c5e494b2a327fa532bf8fd0927",
      "tree": "37035217c822704d3f5fc28e9f401bedc571f846",
      "parents": [
        "a01a5a5789287113cd6bb25c79cf2a826874c918"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Apr 01 16:06:30 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 01 10:20:50 2011 -0500"
      },
      "message": "[SCSI] libfcoe: fix wrong comment in fcoe_transport_detach\n\nfix typo of \u0027_attach\u0027 -\u003e \u0027_detach\u0027 in the comment.\n\nReported-by: Frank Zhang \u003cfrank_1.zhang@intel.com\u003e\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "a01a5a5789287113cd6bb25c79cf2a826874c918",
      "tree": "f113104d04d3df77041c866942aa304319ec0d72",
      "parents": [
        "69922fcd534cfc82e2d44374fa219e7c3b27c492"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Apr 01 16:06:25 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 01 10:20:45 2011 -0500"
      },
      "message": "[SCSI] libfcoe: fix possible buffer overflow in fcoe_transport_show\n\npossible buffer overflow in fcoe_transport_show when reaching the end of\nbuffer and crossing PAGE_SIZE boundary.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Tomas Henzl \u003cthenzl@redhat.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "69922fcd534cfc82e2d44374fa219e7c3b27c492",
      "tree": "ac85a2b360a140d32f5c6f4d94c2f6cc5e9d2c07",
      "parents": [
        "9c8cce8e416b3286720379b5efa1c7fa81b2ec36"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Apr 01 16:06:19 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 01 10:20:42 2011 -0500"
      },
      "message": "[SCSI] libfcoe: clean up netdev mapping properly when the transport goes away\n\nWhen rmmoving the underlying fcoe transport driver module by force when\nit\u0027s attached and in use, the correspoding netdev mapping should be\ncleaned up properly as well, otherwise the lookup for a given netdev\nfor the transport would still return non NULL pointer, causing \"unable\nto handle paging request\" bug.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "63ce2499947683dcc026373e24a4cb5a9d086e7d",
      "tree": "abafb4f3a79e8c7a7a3af9901a966942f4bd181a",
      "parents": [
        "38b34aca30ef1296bbc552505d80c69f274f0872"
      ],
      "author": {
        "name": "Kirill A. Shutemov",
        "email": "kirill@shutemov.name",
        "time": "Fri Apr 01 16:06:09 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 01 10:20:10 2011 -0500"
      },
      "message": "[SCSI] esp, scsi_tgt_lib, fcoe: use list_move() instead of list_del()/list_add() combination\n\nSigned-off-by: Kirill A. Shutemov \u003ckirill@shutemov.name\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "38b34aca30ef1296bbc552505d80c69f274f0872",
      "tree": "72f947566e791871997a5448a19f6dc05d1623ed",
      "parents": [
        "ee5df628c1d7f3ff4db3174f7c00873c94f616d9"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Apr 01 16:06:04 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 01 10:19:05 2011 -0500"
      },
      "message": "[SCSI] fcoe: remove unnecessary module state check\n\nThe check of module state being MODULE_STATE_LIVE is no longer needed for the\nindividual fcoe transport driver, e.g., fcoe.ko, as sysfs entries now go to\nlibfcoe now, if it reaches fcoe.ko, it has to be already registered. The module\nstate check for libfcoe will guard the possible race condition of sysfs being\nwritable before module_init function is called and after module_exit.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "ee5df628c1d7f3ff4db3174f7c00873c94f616d9",
      "tree": "1b1410641ec842c21b4a271bc4b72b79e83ad765",
      "parents": [
        "b3960afe0477781c84faa2e92dfb00016d6d4e30"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri Apr 01 16:05:59 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 01 10:19:03 2011 -0500"
      },
      "message": "[SCSI] fcoe: Remove mutex_trylock/restart_syscall checks\n\nThese checks were initially added to avoid a lockdep\nfalse positive when dealing with the s_active, rtnl\nand fcoe_config_mutex mutexes. Recently the create,\ndestroy, enable and disable sysfs entries were moved\nfrom fcoe.ko to libfcoe.ko. With this change the mutex\nusage was shuffled around and the lockdep false\npositive stopped happening. We can now remove these\nchecks.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "b3960afe0477781c84faa2e92dfb00016d6d4e30",
      "tree": "b83b296f74c097e1ec005681e807f8de68416c80",
      "parents": [
        "5c2dce26fd670607b5ff04f18efa38739805f6d6"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri Apr 01 16:05:53 2011 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 01 10:18:59 2011 -0500"
      },
      "message": "[SCSI] libfcoe: Remove mutex_trylock/restart_syscall checks\n\nThis code was incorrectly ported from fcoe.c when the\nfcoe transport infrastructure was put into place. It\nwas originally needed in fcoe.c when dealing with\nthe rtnl mutex. In that code it was only needed to\navoid a lockdep false positive. In libfcoe we don\u0027t\ndeal with the rtnl mutex, we don\u0027t get the lockdep\nfalse positive and therefore we don\u0027t need these\nchecks.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "8ae6daca85c8bbd6a32c382db5e2a2a989f8bed2",
      "tree": "0c85476c2af6568c3d3a73a960d582d2f91a1256",
      "parents": [
        "36504605432996590f889e33d47e2d9c581f7569"
      ],
      "author": {
        "name": "David Decotigny",
        "email": "decot@google.com",
        "time": "Wed Apr 27 18:32:38 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Fri Apr 29 14:01:30 2011 -0700"
      },
      "message": "ethtool: Call ethtool\u0027s get/set_settings callbacks with cleaned data\n\nThis makes sure that when a driver calls the ethtool\u0027s\nget/set_settings() callback of another driver, the data passed to it\nis clean. This guarantees that speed_hi will be zeroed correctly if\nthe called callback doesn\u0027t explicitely set it: we are sure we don\u0027t\nget a corrupted speed from the underlying driver. We also take care of\nsetting the cmd field appropriately (ETHTOOL_GSET/SSET).\n\nThis applies to dev_ethtool_get_settings(), which now makes sure it\nsets up that ethtool command parameter correctly before passing it to\ndrivers. This also means that whoever calls dev_ethtool_get_settings()\ndoes not have to clean the ethtool command parameter. This function\nalso becomes an exported symbol instead of an inline.\n\nAll drivers visible to make allyesconfig under x86_64 have been\nupdated.\n\nSigned-off-by: David Decotigny \u003cdecot@google.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "25985edcedea6396277003854657b5f3cb31a628",
      "tree": "f026e810210a2ee7290caeb737c23cb6472b7c38",
      "parents": [
        "6aba74f2791287ec407e0f92487a725a25908067"
      ],
      "author": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Wed Mar 30 22:57:33 2011 -0300"
      },
      "committer": {
        "name": "Lucas De Marchi",
        "email": "lucas.demarchi@profusion.mobi",
        "time": "Thu Mar 31 11:26:23 2011 -0300"
      },
      "message": "Fix common misspellings\n\nFixes generated by \u0027codespell\u0027 and manually reviewed.\n\nSigned-off-by: Lucas De Marchi \u003clucas.demarchi@profusion.mobi\u003e\n"
    },
    {
      "commit": "c55d267de274d308927b60c3e740c1a826832317",
      "tree": "21b53a8c725d9f9650f60d94b349459d5b8dae10",
      "parents": [
        "61ef46fd45c3c62dc7c880a45dd2aa841b9af8fb",
        "bc898c97f7ba24def788d9f80786cf028a197122"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 17 17:54:40 2011 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Mar 17 17:54:40 2011 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (170 commits)\n  [SCSI] scsi_dh_rdac: Add MD36xxf into device list\n  [SCSI] scsi_debug: add consecutive medium errors\n  [SCSI] libsas: fix ata list corruption issue\n  [SCSI] hpsa: export resettable host attribute\n  [SCSI] hpsa: move device attributes to avoid forward declarations\n  [SCSI] scsi_debug: Logical Block Provisioning (SBC3r26)\n  [SCSI] sd: Logical Block Provisioning update\n  [SCSI] Include protection operation in SCSI command trace\n  [SCSI] hpsa: fix incorrect PCI IDs and add two new ones (2nd try)\n  [SCSI] target: Fix volume size misreporting for volumes \u003e 2TB\n  [SCSI] bnx2fc: Broadcom FCoE offload driver\n  [SCSI] fcoe: fix broken fcoe interface reset\n  [SCSI] fcoe: precedence bug in fcoe_filter_frames()\n  [SCSI] libfcoe: Remove stale fcoe-netdev entries\n  [SCSI] libfcoe: Move FCOE_MTU definition from fcoe.h to libfcoe.h\n  [SCSI] libfc: introduce __fc_fill_fc_hdr that accepts fc_hdr as an argument\n  [SCSI] fcoe, libfc: initialize EM anchors list and then update npiv EMs\n  [SCSI] Revert \"[SCSI] libfc: fix exchange being deleted when the abort itself is timed out\"\n  [SCSI] libfc: Fixing a memory leak when destroying an interface\n  [SCSI] megaraid_sas: Version and Changelog update\n  ...\n\nFix up trivial conflicts due to whitespace differences in\ndrivers/scsi/libsas/{sas_ata.c,sas_scsi_host.c}\n"
    },
    {
      "commit": "cc8bdf062318e76277dd76970ed58930d49888b0",
      "tree": "3ffe68c2602573829c2bb187a1f340069a0925b9",
      "parents": [
        "2ce8c07d63cf860d6869eb4948522a0fef5ccc19"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Tue Mar 01 20:05:35 2011 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Mar 14 16:51:46 2011 -0700"
      },
      "message": "fcoe: correct checking for bonding\n\nCheck for bonding master and refuse to use that.\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nAcked-by: Robert Love \u003crobert.w.love@intel.com\u003e\nAcked-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "d2f809528a3534ea295b6d855c33cbbb3369d8c9",
      "tree": "a8684bca5fc993b2b2ac97bb27490b27d790a50f",
      "parents": [
        "f2f96d20708c53c6825f842beb7bed06f5f15aca"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Feb 25 15:03:28 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Mon Feb 28 18:34:18 2011 -0600"
      },
      "message": "[SCSI] fcoe: fix broken fcoe interface reset\n\nReset using \"fcoeadm -r\" also needs to restart FIP before\ndoing libfc lport reset, this is needed for new switch firmware\nrequiring FIP solicitation before doing FLOGI again during reset.\nSo this patch does this by doing fcoe_ctlr_link_down and then\nfcoe_ctlr_link_up to reset the interface.\n\nThe fcoe_ctlr_link_down call path also does lport reset\nand then fcoe_ctlr_link_up re-starts the fabric login after\ndoing FIP solicitation first to get reset feature working\nagain.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "f2f96d20708c53c6825f842beb7bed06f5f15aca",
      "tree": "d1ebf5b2c1d31107024853ddf90bfe7a596e0b50",
      "parents": [
        "70be6344ea1ad9110a5b422aeab47a3fbb01ba7f"
      ],
      "author": {
        "name": "Dan Carpenter",
        "email": "error27@gmail.com",
        "time": "Fri Feb 25 15:03:23 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Mon Feb 28 18:34:03 2011 -0600"
      },
      "message": "[SCSI] fcoe: precedence bug in fcoe_filter_frames()\n\nNegate has higher precedence than bitwise AND.  FCPHF_CRC_UNCHECKED is\n0x1 so the original code is equivalent to: if (!fr_flags(fp)) { ...\n\nSigned-off-by: Dan Carpenter \u003cerror27@gmail.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "70be6344ea1ad9110a5b422aeab47a3fbb01ba7f",
      "tree": "a0432b0fcd56a708f81d1d680dba264dbddc7f72",
      "parents": [
        "f4d2b2b6ea8abd0df72a31b4724522a277af6a6c"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Fri Feb 25 15:03:17 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Mon Feb 28 18:33:46 2011 -0600"
      },
      "message": "[SCSI] libfcoe: Remove stale fcoe-netdev entries\n\nWhen L2 driver is unloaded, libfcoe_destroy tries to access the fcoe\ntransport structure matching the netdev. However, since the netdev is\nunregistered by that time, it fails to do so. Hence the stale mappings\nexists in the fcoe-netdev list. Handle NETDEV_UREGISTER device\nnotification mechanism to remove the stale fcoe-netdev mapping.\n\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "f4d2b2b6ea8abd0df72a31b4724522a277af6a6c",
      "tree": "4f2b83225236dddf672837340fbfed360e9e491e",
      "parents": [
        "059f04d4aa60f89b7ad6ca118856f4cb59d9257f"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Fri Feb 25 15:03:12 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Mon Feb 28 18:33:12 2011 -0600"
      },
      "message": "[SCSI] libfcoe: Move FCOE_MTU definition from fcoe.h to libfcoe.h\n\nboth fcoe and bnx2fc drivers can access the common definition of\nFCOE_MTU.\n\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "72fa396bf57b31e8e2a401a21a3a088c0cc6b043",
      "tree": "c4094d3f8db3265dd122952867c1e8ff4e6abb63",
      "parents": [
        "f31624831a79b9e3f129f6c3b0a1b83903a7b61e"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Feb 25 15:03:01 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Mon Feb 28 18:31:53 2011 -0600"
      },
      "message": "[SCSI] fcoe, libfc: initialize EM anchors list and then update npiv EMs\n\nEM anchors list initialization for only master port was not enough to\nkeep npiv working as described here:-\nhttps://lists.open-fcoe.org/pipermail/devel/2011-January/011063.html\n\nSo this patch moves fc_exch_mgr_list_clone to update npiv ports\nEMs once EM anchors list initialized.\n\nAlso some cleanup, no need to set lport \u003d NULL as that always\nget initialized later.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "8597ae8bfe35f5e438b00ba5df852e97ebe1ac23",
      "tree": "64020cecc7ef1bb2923109ed5afea58f59d9bcbe",
      "parents": [
        "2ca32b4848a865fb088e8c00af0dc194701c373a"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Fri Jan 28 16:05:37 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 11:18:18 2011 -0600"
      },
      "message": "[SCSI] libfcoe: Move common code from fcoe to libfcoe module\n\nTo facilitate LLDDs to reuse the code, skb queue related functions are moved to\nlibfcoe, so that both fcoe and bnx2fc drivers can use them. The common structures\nfcoe_port, fcoe_percpu_s are moved to libfcoe. fcoe_port will now have an\nopaque pointer that points to corresponding driver\u0027s interface structure.\nAlso, fcoe_start_io and fcoe_fc_crc are moved to libfcoe.\n\nAs part of this change, fixed fcoe_start_io to return ENOMEM if\nskb_clone fails.\n\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "2ca32b4848a865fb088e8c00af0dc194701c373a",
      "tree": "935d1a9f72f7cf1d6642ae2b427ea73108b3d8e6",
      "parents": [
        "75a2792df296c77004a72056c76628a1f835bc93"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Fri Jan 28 16:05:32 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 11:17:50 2011 -0600"
      },
      "message": "[SCSI] fcoe: use dedicated workqueue instead of system_wq\n\nfcoe uses the system_wq to destroy ports and the work items need to be\nflushed before the driver is unloaded.  As the work items free the\ncontaining data structure, they can\u0027t be flushed directly.  The\nworkqueue should be flushed instead.\n\nAlso, the destruction works can be chained - ie. destruction of a port\nmay lead to destruction of another port where the work item for the\nformer queues the work for the latter.  Currently, the depth of chain\ncan be at most two and fcoe_exit() makes sure everything is complete\nby calling flush_scheduled_work() twice.\n\nWith commit c8efcc25 (workqueue: allow chained queueing during\ndestruction), destroy_workqueue() can take care of chained works on\nworkqueue destruction.  Add and use fcoe_wq instead.  Simply\ndestroying fcoe_wq on driver unload takes care of flushing.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "78a582463c1e3a262aeaf2a291e06a93a7b34212",
      "tree": "5f1a0f7dcf2e2c4d2c8dbf77a3a6a46fa0c8328f",
      "parents": [
        "8ca86f84dd5fc881012b2940ce4eab1fa57680e5"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Jan 28 16:05:16 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 11:07:33 2011 -0600"
      },
      "message": "[SCSI] fcoe: convert fcoe.ko to become an fcoe transport provider driver\n\nRemove the existing sysfs entry points of the fcoe.ko module parameters that\nare used to create/destroy/enable/disable an FCoE instance, rather, use the\nnewly added fcoe transport code to attach itself as an FCoE transport provider\nwhen fcoe.ko gets loaded. There is no functionality change on the logic of\nfcoe interacts with upper libfc and lower netdev. The fcoe transport only acts\nas thin layer to provide a unified interface for all fcoe transport providers\nso all FCoE instances on any network interfaces from all vendors can be\nmanaged through the same Open-FCoE.org\u0027s user space tool package, which also\nhas full DCB support.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "8ca86f84dd5fc881012b2940ce4eab1fa57680e5",
      "tree": "369a9dfb1a4b03c9fab258dfe5da8d38d7deafa4",
      "parents": [
        "e01efc33bc4a248b1f9bfb972e156c76125fc914"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Jan 28 16:05:11 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 11:07:11 2011 -0600"
      },
      "message": "[SCSI] fcoe: prepare fcoe for using fcoe transport\n\nPrepare the fcoe to convert it to use the newly added fcoe transport, making\nit as the default fcoe transport provider for libfcoe. This patch is to rename\nsome of the variables to avoid any confusing names later as now there are\nseveral transports in the same file.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "e01efc33bc4a248b1f9bfb972e156c76125fc914",
      "tree": "499ca811638666dd78ea0c8f1c55ec39aeeef962",
      "parents": [
        "0095a9213324a4466c10de98837a27ab1b7e72be"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Jan 28 16:05:06 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 11:06:52 2011 -0600"
      },
      "message": "[SCSI] libfcoe: include fcoe_transport.c into kernel libfcoe module\n\nNow we can include the fcoe_transport.c to the build of the kernel libfcoe\nmodule. Move the module information to fcoe_transport, and it will have\nall the module parameters later for the create/destroy/enable/disable of an\nFCoE instance.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "0095a9213324a4466c10de98837a27ab1b7e72be",
      "tree": "e9a397a0ecc45362571183ea876bbf4834ec940f",
      "parents": [
        "fdecf31b7c7b9bb79516344884388f660fd5d5a7"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Jan 28 16:05:00 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 11:06:25 2011 -0600"
      },
      "message": "[SCSI] libfcoe: rename libfcoe.c to fcoe_cltr.c for the coming fcoe_transport.c\n\nThe existing libfcoe.c is mostly for FIP support, rename it to reflect that\nfact and so we can add fcoe_transport.c to the make file to include both\ninto the libfcoe kernel module.\n\n[ Minor modifications by Robert Love converting a few\n  \"__attribute__((packed))\" modifiers to \"__packed\" to remove new\n  checkpatch.pl WARNINGS ]\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "fdecf31b7c7b9bb79516344884388f660fd5d5a7",
      "tree": "9112929117f8b23de21c9573fae90b56b927366f",
      "parents": [
        "0ade7d290b6aa8b1626a4077b853c02cd12415c2"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Jan 28 16:04:55 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 11:06:06 2011 -0600"
      },
      "message": "[SCSI] libfcoe: add implementation to support fcoe transport\n\nAdd the new fcoe_transport.c file that implements basic fcoe transport\ninterface. Eventually, the sysfs entries to create/destroy/enable/disable\nan FCoE instance will be coming to the fcoe transport layer, who does a\nlook-up to find the corresponding transport provide and pass the corresponding\naction over to the identified provider.\n\nThe fcoe.ko will become the default fcoe transport provider that can support\nFCoE on any given netdev interfaces, as the Open-FCoE.org\u0027s default software\nFCoE HBA solution. Any vendor specific FCoE HBA driver that is built on top\nof Open-FCoE\u0027s kernel stack of libfc \u0026 libfcoe as well as the user land tool\nof fcoe-utils can easily plug-in and start running FCoE on their network\ninterfaces. The fcoe.ko will be converted to act as the default provider if\nno vendor specific transport provider is found, as it is always added to the\nvery end of the list of attached transports.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "21b7b2f557f4b105a4b7d739671d1ce6b867d3e6",
      "tree": "a1abdd2beb33e14dce0a69ed099a0f8f81a9dcd7",
      "parents": [
        "6c8cc1c003cee1c4290f5d8c684912d60354056a"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Jan 28 16:04:45 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 11:05:22 2011 -0600"
      },
      "message": "[SCSI] libfcoe: move logging macros into the local libfcoe.h header file\n\nlibfcoe kernel module debug macros will used by the fcoe transport code\nas well when later it gets added.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "52ee832195b0ae33f12e334e61cf43d1087f24d6",
      "tree": "253e53bbf292d3a33f3bcf6fdad82ef4fea5f052",
      "parents": [
        "7287fb9114096503eddfffb7b2ed691c809a6106"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@linux.intel.com",
        "time": "Fri Jan 28 16:03:52 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 11:00:04 2011 -0600"
      },
      "message": "[SCSI] fcoe: drop FCoE LOGO in FIP mode\n\nAllowing FCoE LOGO followed by CVL in this case prevents\nFIP login back to the FCF and then keeps lport offline,\nonly FIP LOGO and CLV needs to be processed while in\nFIP mode, therefore this patch drops FCoE LOGO in FIP mode.\n\nAdded fcoe_filter_frames() to filter out above mentioned LOGO\nin fcoe rx path along with other existing filtering in code\nfor bad CRC frames. Adding separate fcoe_filter_frames function\nhelped with better code indentations and if needed then same\nwill allow adding more filters at one place in future.\n\nThis LOGO drop is added after FCP frames passed up to avoid\nany additional checks on fast path for this.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "7287fb9114096503eddfffb7b2ed691c809a6106",
      "tree": "416689671a8c97792ef481f29b0e2031bbab789d",
      "parents": [
        "6da92d3463cd60f5b804475f70f659dc07331929"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri Jan 28 16:03:47 2011 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Feb 12 10:59:30 2011 -0600"
      },
      "message": "[SCSI] fcoe: Fix module reference count for vports\n\nvports are not grabbing module references but are\nreleasing them. This causes the module reference count\nto decrement too many times and it wraps around past 0.\n\nThe solution is to do a module_put() in\nfcoe_interface_release() so that the reference is only\nreleased when the fcoe_interface is released. There is a\none-to-one relationship between the N_Port and the\nfcoe_interface, so the module reference will only be\ndropped when the N_Port is destroyed\n\nTo create symetry in the code this patch moves the\ntry_module_get() call into fcoe_interface_create(). This\nmeans that only the N_Port will grab a reference to the\nmodule when its corresponding fcoe_interface is created.\n\nThis patch also makes it so that the fcoe_interface_create()\nroutine encodes any error codes in the fcoe_interface\npointer returned. This way its caller, fcoe_create(), can\nreturn an accurate error code.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nTested-by: Ross Brattain \u003cross.b.brattain@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "ba9cd5d095b42271588c20ccd6ddd561d0e4cc1e",
      "tree": "81b1f70e4a411c7e9d1415016a67e549394f430a",
      "parents": [
        "981c1154b240ee77133a478fcd3853ac18111672"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 30 16:20:12 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Dec 21 12:24:34 2010 -0600"
      },
      "message": "[SCSI] libfcoe: change fip_select to return new FCF\n\nNeaten several calls to fip_select() by having it return the\npointer to the new FCF.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "981c1154b240ee77133a478fcd3853ac18111672",
      "tree": "5df76658bb23e1c5733715a5d6c369139f17dbea",
      "parents": [
        "9069f5c433e402be5707f37f3d0dfb376659c1e4"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 30 16:20:07 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Dec 21 12:24:33 2010 -0600"
      },
      "message": "[SCSI] libfcoe: reorder FCF list to put latest advertiser first\n\nWhen there are several FCFs to choose from, the one most likely\nto accept a FLOGI on certian switches is the one that last\nanswered a multicast solicit.\n\nSo, when receiving an advertisement, move the FCF to the front\nof the list so that it gets chosen first among those with the\nsame priority.\n\nWithout this, more FLOGIs need to be sent in a test with\nmultiple FCFs and a switch in NPV mode, but it still\neventually finds one that accepts the FLOGI.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "9069f5c433e402be5707f37f3d0dfb376659c1e4",
      "tree": "0133510c70cb46c70bf30f821100a679b0777cd4",
      "parents": [
        "794d98e77f5901ceded697f1633463e88f078038"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 30 16:20:02 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Dec 21 12:24:33 2010 -0600"
      },
      "message": "[SCSI] libfcoe: add debug message for FCF destination MAC\n\nWhen multiple FCFs to the same fabric exist, the debug messages\nall look alike.   Change the message to include the MAC address.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "794d98e77f5901ceded697f1633463e88f078038",
      "tree": "97ac82ba7b14821472f81400f8d1a7230e037cb7",
      "parents": [
        "b69ae0ae3f322d9a6bc4e209049b5b6e193ad652"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 30 16:19:56 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Dec 21 12:24:32 2010 -0600"
      },
      "message": "[SCSI] libfcoe: retry rejected FLOGI to another FCF if possible\n\nSwitches using multiple-FCFs may reject FLOGI in order to\nbalance the load between multiple FCFs.  Even though the FCF\nwas available, it may have more load at the point we actually\nsend the FLOGI.\n\nIf the FLOGI fails, select a different FCF\nif possible, among those with the same priority.  If no other\nFCF is available, just deliver the reject to libfc for retry.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "b69ae0ae3f322d9a6bc4e209049b5b6e193ad652",
      "tree": "87e5dc0b75fafdddeaaa6181469fcda53ea239a3",
      "parents": [
        "c47036a7cd378533495d8cc06a7cf8a881072a9d"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 30 16:19:51 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Dec 21 12:24:32 2010 -0600"
      },
      "message": "[SCSI] libfcoe: fix checking of conflicting fabrics in fcoe_ctlr_select()\n\nThe check for conflicting fabrics in fcoe_ctlr_select()\nignores any FCFs that aren\u0027t usable.  This is a minor\nproblem now but becomes more pronounced after later patches.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "c47036a7cd378533495d8cc06a7cf8a881072a9d",
      "tree": "6c2cfa3216a04b23c0b0e623827fc39f57db576e",
      "parents": [
        "69316ee2e375c5af0cf1f8d2d30f9aa277f0b454"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 30 16:19:46 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Dec 21 12:24:29 2010 -0600"
      },
      "message": "[SCSI] libfcoe: move some timer code to make it reusable.\n\nMove some of the code in fcoe_ctlr_timer_work() to\nfcoe_ctlr_select() so that it can be shared\nwith another function in a forthcoming patch.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "69316ee2e375c5af0cf1f8d2d30f9aa277f0b454",
      "tree": "1bc29c06d5aa9e73f71db1a5dfe8527677b3a94e",
      "parents": [
        "b5fe5e953c65cd0ec4e9ffd001072700e5b89317"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 30 16:19:40 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Dec 21 12:24:28 2010 -0600"
      },
      "message": "[SCSI] libfcoe: update FIP FCF announcements\n\nMove the announcement code to a separate function for reuse in\na forthcoming patch.\n\nFor messages regarding FCF timeout and selection, use the\npreviously-announced FCF MAC address (dest_addr) in the fcoe_ctlr struct.\nOnly print (announce) the FCF if it is new.   Print MAC for\ntimed-out or deselected FCFs.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "11aa99001afdbe5fe152e833aa1fea82b85dbeda",
      "tree": "19bf6c4767c558eef9595adb2616e1db81c8d007",
      "parents": [
        "0e9e3d3b155c35d5750805c2b8bb6d5b6e6a3bfb"
      ],
      "author": {
        "name": "Joe Perches",
        "email": "joe@perches.com",
        "time": "Tue Nov 30 16:19:09 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Dec 21 12:24:24 2010 -0600"
      },
      "message": "[SCSI] drivers/scsi/fcoe: Update WARN uses\n\nAdd missing newlines.\n\nSigned-off-by: Joe Perches \u003cjoe@perches.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "80e736f8a37bebeb5bff18f2aec31caab4104b8b",
      "tree": "748c079ac2d061a7404006ea8de7ced680cb44a0",
      "parents": [
        "12137f5c28284cc51b5f50932c8d02a5823fcd3c"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Tue Nov 30 16:18:07 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Dec 21 12:24:18 2010 -0600"
      },
      "message": "[SCSI] libfc: fix NULL pointer dereference bug in fc_fcp_pkt_release\n\nThis happens when then tearing down the fcoe interface with active I/O.\nThe back trace shows dead000000200200 in RAX, i.e., LIST_POISON2, indicating\nthat the fsp is already being dequeued, which is probably why no complaining\nwas seen in fc_fcp_destroy() about outstanding fsp not freed, since we dequeue\nit in the end of fc_io_compl() before releasing it. The bug is due to the\nfact that we have already destroyed lport\u0027s scsi_pkt_pool while on-going i/o\nis still accessing it through fc_fcp_pkt_release(), like this trace or the\nsimilar code path from scsi-ml to fc_eh_abort, etc. This is fixed by moving\nthe fc_fcp_destroy() after lport is detached from scsi-ml since fc_fcp_destroy\nis supposed to called only once where no lport lock is taken, otherwise the\nfc_fcp_pkt_release() would have to grab the lport lock.\n\n BUG: unable to handle kernel NULL pointer dereference at (null)\n .......\n RIP: 0010:[\u003c0000000000000000\u003e]\n [\u003c(null)\u003e] (null)\n RSP: 0018:ffff8803270f7b88  EFLAGS: 00010282\n RAX: dead000000200200 RBX: ffff880197d2fbc0 RCX: 0000000000005908\n RDX: ffff880195ea6d08 RSI: 0000000000000282 RDI: ffff880180f4fec0\n RBP: ffff8803270f7bc0 R08: ffff880197d2fbe0 R09: 0000000000000000\n R10: ffff88032867f090 R11: 0000000000000000 R12: ffff880195ea6d08\n R13: 0000000000000282 R14: ffff880180f4fec0 R15: 0000000000000000\n FS:  0000000000000000(0000) GS:ffff8801b5820000(0000) knlGS:0000000000000000\n CS:  0010 DS: 0018 ES: 0018 CR0: 000000008005003b\n CR2: 0000000000000000 CR3: 00000001a6eae000 CR4: 00000000000006e0\n DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000\n DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000400\n Process fc_rport_eq (pid: 5278, threadinfo ffff8803270f6000, task ffff880326254ab0)\n Stack:\n ffffffffa02c39ca ffff8803270f7ba0 ffff88019331cbc0 ffff880197d2fbc0\n 0000000000000000 ffff8801a8c895e0 ffff8801a8c895e0 ffff8803270f7c10\n ffffffffa02c4962 ffff8803270f7be0 ffffffff814c94ab ffff8803270f7c10\n Call Trace:\n [\u003cffffffffa02c39ca\u003e] ? fc_io_compl+0x10a/0x530 [libfc]\n [\u003cffffffffa02c4962\u003e] fc_fcp_complete_locked+0x72/0x150 [libfc]\n [\u003cffffffff814c94ab\u003e] ? _spin_unlock_bh+0x1b/0x20\n [\u003cffffffffa02b98ff\u003e] ? fc_exch_done+0x3f/0x60 [libfc]\n [\u003cffffffffa02c4a8f\u003e] fc_fcp_retry_cmd+0x4f/0x60 [libfc]\n [\u003cffffffffa02c6150\u003e] fc_fcp_recv+0x9b0/0xc30 [libfc]\n [\u003cffffffff8106ba7a\u003e] ? _call_console_drivers+0x4a/0x80\n [\u003cffffffff8107d5ec\u003e] ? lock_timer_base+0x3c/0x70\n [\u003cffffffff8107e06b\u003e] ? try_to_del_timer_sync+0x7b/0xe0\n [\u003cffffffffa02b9dcf\u003e] fc_exch_mgr_reset+0x1df/0x250 [libfc]\n [\u003cffffffffa02c57a0\u003e] ? fc_fcp_recv+0x0/0xc30 [libfc]\n [\u003cffffffffa02c1042\u003e] fc_rport_work+0xf2/0x4e0 [libfc]\n [\u003cffffffff8109203e\u003e] ? prepare_to_wait+0x4e/0x80\n [\u003cffffffffa02c0f50\u003e] ? fc_rport_work+0x0/0x4e0 [libfc]\n [\u003cffffffff8108c6c0\u003e] worker_thread+0x170/0x2a0\n [\u003cffffffff81091d50\u003e] ? autoremove_wake_function+0x0/0x40\n [\u003cffffffff8108c550\u003e] ? worker_thread+0x0/0x2a0\n [\u003cffffffff810919e6\u003e] kthread+0x96/0xa0\n [\u003cffffffff810141ca\u003e] child_rip+0xa/0x20\n [\u003cffffffff81091950\u003e] ? kthread+0x0/0xa0\n [\u003cffffffff810141c0\u003e] ? child_rip+0x0/0x20\n Code:\n Bad RIP value.\n\n RIP\n [\u003c(null)\u003e] (null)\n RSP \u003cffff8803270f7b88\u003e\n CR2: 0000000000000000\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "0ee31cb5df4b717de923266879964d0418c3308f",
      "tree": "99c318a25f1ef948fc8ff9d26701c56df77fcca2",
      "parents": [
        "2dc02ee52f32aac6d8dd1172f104dc30ae1051bb"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri Oct 08 17:12:46 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Mon Oct 25 15:11:39 2010 -0500"
      },
      "message": "[SCSI] fcoe: Fix broken NPIV with correction to MAC validation\n\nA previous patch attempted to validate the destination\nMAC address of a FCoE frame by checking that MAC\naddress against the received port\u0027s MAC address. The\nimplementation seems fine on the surface, but any\nVN_Ports added using the NPIV feature will have their\nown MAC addresses and these MACs were not being checked,\nwhich prevented any NPIV VN_Ports from receiving frames.\n\nIn other words, the following patch has broken NPIV.\n\n519e5135e2537c9dbc1cbcc0891b0a936ff5dcd2\n [SCSI] fcoe: adds src and dest mac address\n              checking for fcoe frames\n\nPart of the offending patch is correct, but the part\nthat broke NPIV was attempting to satisfy FC-BB-5\nsection D.5, 2.1-\n\n(discard frames that) \"contain a destination MAC\naddress/destination N_Port_ID pair that was not\nassigned by an FCF to one of the VN_Ports on the ENode\"\n\nThe language does _not_ say to compare the destination\nFC-MAP/destination N_Port_ID, but instead to compare\nthe destination MAC address/destination N_Port_ID.\n\n\u003eFrom the FC-BB-5 specification,\n\n\"A properly formed FPMA is one in which the 24 most\nsignificant bits equal the Fabric’s FC-MAP value and\nthe least significant 24 bits equal the N_Port_ID\nassigned to the VN_Port by the FCF.\"\n\nThis means that we need to compare the FC Frame\u0027s\ndestination FCID against the embedded FCID in the\ndestination MAC address. This patch checks the lower\n24 bits of the destination MAC address against\ndestination FCID in the Fibre Channel frame.\n\nFor MAC validation the first line of defense is the\nhardware MAC filtering. Each VN_Port will have a\nunicast MAC addresses added to the hardware\u0027s\nfiltering table. The Ethernet driver should drop any\nMACs not destined for a programmed MAC. This patch\nadds a second line of defense that very specfically\ncompares an element in the FC frame against an element\nin the Ethernet header, which is appropriate for the\nFCoE layer.\n\nMany alternative approaches were considered, including\na LLD callback from libfc. The second most reasonable\napproach seemed to be walking the list of NPIV ports\nand check each of their MAC addresses against the\ndestination MAC address of the received frame. The\nproblem with this approach was that it is likely that\nperformance would suffer with the more NPIV ports added\nto the system since every received frame would need to\nwalk this list, comparing each entry\u0027s MAC.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "2dc02ee52f32aac6d8dd1172f104dc30ae1051bb",
      "tree": "8b2e4bfa396355bde204d71b011d87049ee5f025",
      "parents": [
        "c531b9b49b146e1535dbed006d15e58f4f528f7e"
      ],
      "author": {
        "name": "Kiran Patil",
        "email": "kiran.patil@intel.com",
        "time": "Fri Oct 08 17:12:41 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Mon Oct 25 15:11:38 2010 -0500"
      },
      "message": "[SCSI] libfcoe: VN2VN connection setup causing stack memory corruption.\n\nFix: When FIP frame is received, function fcoe_ctlr_vn_recv calls function\nfcoe_ctlr_vn_parse which does memset for addr (\u0026buf.rdata) which leads to\nmemory corruption. Code was trying to treat \"buf\" as struct but it was defined\nas union. Fix is to change from union to struct for \"buf\" in function fcoe_ctlr_vn_recv.\n\nTechnical Details: N/A\n\nSigned-off-by: Kiran Patil \u003ckiran.patil@intel.com\u003e\nAcked-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "3067817a5d3ef99c5b1a4e4ca8c5b15bc7fc468d",
      "tree": "6150946ac3e12e0fc2b297d9e9b44f3d1d41cc66",
      "parents": [
        "60a3c4dfb7830845a97a20e73b7d938dc2fde6c1"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Oct 08 17:12:25 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Mon Oct 25 15:11:34 2010 -0500"
      },
      "message": "[SCSI] fcoe: set default FIP mode as FIP_MODE_FABRIC\n\nSince sometimes current FIP_MODE_AUTO mode falls back to non-FIP\nmode while DCB link still getting ready in fabric mode with\nits peer switch, it falls back after few libfc flogi retries\nand that is not we want while working with FIP enabled\nswitches in FABRIC mode, therefore sets default as FIP_MODE_FABRIC\nas discussed and agreed before in this mail thread\nhttp://www.open-fcoe.org/pipermail/devel/2010-August/010511.html\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "3cfc2c42c1cbc8e238bb9c0612c0df4565e3a8b4",
      "tree": "5adc1ff2eaf64d450bf28bb6b2ce890db2567288",
      "parents": [
        "5cf65713f87775c548e3eb48dbafa32e12f28000",
        "0ea6e61122196509af82cc4f36cbdaacbefb8227"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:31:02 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:31:02 2010 -0700"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial\n\n* \u0027for-next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (48 commits)\n  Documentation: update broken web addresses.\n  fix comment typo \"choosed\" -\u003e \"chosen\"\n  hostap:hostap_hw.c Fix typo in comment\n  Fix spelling contorller -\u003e controller in comments\n  Kconfig.debug: FAIL_IO_TIMEOUT: typo Faul -\u003e Fault\n  fs/Kconfig: Fix typo Userpace -\u003e Userspace\n  Removing dead MACH_U300_BS26\n  drivers/infiniband: Remove unnecessary casts of private_data\n  fs/ocfs2: Remove unnecessary casts of private_data\n  libfc: use ARRAY_SIZE\n  scsi: bfa: use ARRAY_SIZE\n  drm: i915: use ARRAY_SIZE\n  drm: drm_edid: use ARRAY_SIZE\n  synclink: use ARRAY_SIZE\n  block: cciss: use ARRAY_SIZE\n  comment typo fixes: charater \u003d\u003e character\n  fix comment typos concerning \"challenge\"\n  arm: plat-spear: fix typo in kerneldoc\n  reiserfs: typo comment fix\n  update email address\n  ...\n"
    },
    {
      "commit": "03da30986793385af57eeca3296253c887b742e6",
      "tree": "9c46dbe51c9d0856990649dd917ab45474b7be87",
      "parents": [
        "6ba74014c1ab0e37af7de6f64b4eccbbae3cb9e7",
        "339f4f4eab80caa6cf0d39fb057ad6ddb84ba91e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:15:15 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Wed Aug 04 15:15:15 2010 -0700"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (276 commits)\n  [SCSI] zfcp: Trigger logging in the FCP channel on qdio error conditions\n  [SCSI] zfcp: Introduce experimental support for DIF/DIX\n  [SCSI] zfcp: Enable data division support for FCP devices\n  [SCSI] zfcp: Prevent access on uninitialized memory.\n  [SCSI] zfcp: Post events through FC transport class\n  [SCSI] zfcp: Cleanup QDIO attachment and improve processing.\n  [SCSI] zfcp: Cleanup function parameters for sbal value.\n  [SCSI] zfcp: Use correct width for timer_interval field\n  [SCSI] zfcp: Remove SCSI device when removing unit\n  [SCSI] zfcp: Use memdup_user and kstrdup\n  [SCSI] zfcp: Fix retry after failed \"open port\" erp action\n  [SCSI] zfcp: Fail erp after timeout\n  [SCSI] zfcp: Use forced_reopen in terminate_rport_io callback\n  [SCSI] zfcp: Register SCSI devices after successful fc_remote_port_add\n  [SCSI] zfcp: Do not try \"forced close\" when port is already closed\n  [SCSI] zfcp: Do not unblock rport from REOPEN_PORT_FORCED\n  [SCSI] sd: add support for runtime PM\n  [SCSI] implement runtime Power Management\n  [SCSI] convert to the new PM framework\n  [SCSI] Unify SAM_ and SAM_STAT_ macros\n  ...\n"
    },
    {
      "commit": "240778e821f596a6954116107c5cc3456df84f81",
      "tree": "ef2d2bd8f28aa0f8e5acc1af76250aa702f2463b",
      "parents": [
        "7f985231d274ef3e6e4d56a2939a534906299021"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Tue Jul 20 15:21:33 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:06:04 2010 -0500"
      },
      "message": "[SCSI] fcoe: remove check for zero fabric name\n\nThis check prevents FCF selection in NPV mode due to zero fabric name\nin that case and in turn flogi fails. Though NPV mode should not have\nthis zero and should be fixed there also but spec also does not require\ninitiator to ensure that fabric name must be non-zero, therefore dropping\nthis check to get flogi working in NPV mode.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "cf4aebcafb44a8810af10006dd4a5fcfb07bb810",
      "tree": "5621b30b8d64e8670e2b1b1772621fe5495b6375",
      "parents": [
        "54a5b21da9d4d3f58770da5d1c244db9724659ee"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Tue Jul 20 15:21:22 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:06:03 2010 -0500"
      },
      "message": "[SCSI] Revert \"[SCSI] fcoe: Fix using VLAN ID in creating lport\u0027s WWWN/WWPN\"\n\nThis reverts commit cc0136c2e9c10e889cb36e39710c0eb10707b396.\n\nThat commit introduced vlan id info to WWPN but WWPN needs to\nremain static as an unique port identifier in the fabric, therefore\nvariable fabric vlan id info doesn\u0027t need to be coded inside WWPN.\n\nAfter this revert, port arg to fcoe_wwn_from_mac is always zero\nbut still leaving it as-is okay to later allow users to use NAA 2\nscheme with this additional port arg.\n\nNote with this patch, existing zoning using WWPN would require\nre-zoning this time only and later no more re-zoning due to any\nvlan id changes.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "54a5b21da9d4d3f58770da5d1c244db9724659ee",
      "tree": "23167b4c07a6b3b1018976d45e808a624e0bce16",
      "parents": [
        "922611569572d3c1aa0ed6491d21583fb3fcca22"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Tue Jul 20 15:21:17 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:06:02 2010 -0500"
      },
      "message": "[SCSI] fcoe: fix offload feature flag change from netdev\n\nCurrently, when FCoE netdev feature flags are toggled by the LLD, lport\u0027s\ncorresponding flags are not updated. This causes the fc_fcp to still try to\noffload the I/O. This patch adds support of NETDEV_FEAT_CHANGE event in fcoe\nnetdev device notification callback so we can update the lport offload flags\nappropriately.\n\nSigned-off-by: Yi Zou \u003cyi.zou@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "922611569572d3c1aa0ed6491d21583fb3fcca22",
      "tree": "f7cb42bf5519d1c42853808f2f784188afe1bc2e",
      "parents": [
        "239e81048b7dcd27448db40c845f88ac7c68424e"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Jul 20 15:21:12 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:06:02 2010 -0500"
      },
      "message": "[SCSI] libfc: don\u0027t require a local exchange for incoming requests\n\nIncoming requests shouldn\u0027t require a local exchange if we\u0027re\njust going to reply with one or two frames and don\u0027t expect\nanything further.  Don\u0027t allocate exchanges for such requests\nuntil requested by the upper-layer protocol.\n\nThe sequence is always NULL for new requests, so remove\nthat as an argument to request handlers.\n\nAlso change the first argument to lport-\u003ett.seq_els_rsp_send\nfrom the sequence pointer to the received frame pointer, to\nsupply the exchange IDs and destination ID info.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "1dd454d9e5205f9a61d51fb97159afeffa0a506c",
      "tree": "d12a5d8f75b84f03721d7990225dd0aa113372e7",
      "parents": [
        "cd229e42eb8cdfdcbe15dfeec39c3641f62de43a"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Jul 20 15:20:46 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:05:58 2010 -0500"
      },
      "message": "[SCSI] fcoe: config via separate create_vn2vn module parameter\n\nAdd module parameter create_vn2vn that behaves like the create\nparameter except that the new instance is created in FIP vn2vn mode.\n\nThis can be replaced once we change create to allow modifying\nper-instance attributes before starting the instance.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "cd229e42eb8cdfdcbe15dfeec39c3641f62de43a",
      "tree": "6f2b999043148e993406785a6c2c1aa8b21293e0",
      "parents": [
        "5554345bc5275afed760631277fdab0a5a19472e"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Jul 20 15:20:40 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:05:57 2010 -0500"
      },
      "message": "[SCSI] fcoe libfcoe: use correct FC-MAP for VN2VN mode\n\nIn VN2VN mode, map_dest means to use the default VN2VN OUI.\nChange code that uses the default FCoE OUI to use the one\nset in the fcoe_ctlr struct.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "5554345bc5275afed760631277fdab0a5a19472e",
      "tree": "bef6ffe6cf1a0a8181247a3c3f6f0965bfcebf27",
      "parents": [
        "e10f8c667b874a57512c936089092a3d1ef7ab8a"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Jul 20 15:20:35 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:05:57 2010 -0500"
      },
      "message": "[SCSI] libfcoe: Fix FIP ELS encapsulation details for FLOGI responses\n\nWhen sending a FLOGI LS_ACC, which we only do in point-to-multipoint\nmode, the MAC descriptor should have the granted MAC set to\n0x0efd00 || D_ID.\n\nWhen sending an LS_RJT, there should be no MAC descriptor.\n\nWhen sending either an LS_ACC or LS_RJT, the subcode should indicate\nan reply, not a request.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "e10f8c667b874a57512c936089092a3d1ef7ab8a",
      "tree": "8094610399133fd6e0ad26d23c46ec0a6cc91398",
      "parents": [
        "9b651da900ccfe5581befb46eb06ef781a1d7e74"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Jul 20 15:20:30 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:05:56 2010 -0500"
      },
      "message": "[SCSI] libfcoe: fcoe: fnic: add FIP VN2VN point-to-multipoint support\n\nThe FC-BB-6 committee is proposing a new FIP usage model called\nVN_port to VN_port mode.  It allows VN_ports to discover each other\nover a loss-free L2 Ethernet without any FCF or Fibre-channel fabric\nservices.  This is point-to-multipoint.  There is also a variant\nof this called point-to-point which provides for making sure there\nis just one pair of ports operating over the Ethernet fabric.\n\nWe add these new states:  VNMP_START, _PROBE1, _PROBE2, _CLAIM, and _UP.\nThese usually go quickly in that sequence.  After waiting a random\namount of time up to 100 ms in START, we select a pseudo-random\nproposed locally-unique port ID and send out probes in states PROBE1\nand PROBE2, 100 ms apart.  If no probe responses are heard, we\nproceed to CLAIM state 400 ms later and send a claim notification.\nWe wait another 400 ms to receive claim responses, which give us\na list of the other nodes on the network, including their FC-4\ncapabilities.  After another 400 ms we go to VNMP_UP state and\nshould start interoperating with any of the nodes for whic we\nreceivec claim responses.  More details are in the spec.j\n\nAdd the new mode as FIP_MODE_VN2VN.  The driver must specify\nexplicitly that it wants to operate in this mode.  There is\nno automatic detection between point-to-multipoint and fabric\nmode, and the local port initialization is affected, so it isn\u0027t\nanticipated that there will ever be any such automatic switchover.\n\nIt may eventually be possible to have both fabric and VN2VN\nmodes on the same L2 network, which may be done by two separate\nlocal VN_ports (lports).\n\nWhen in VN2VN mode, FIP replaces libfc\u0027s fabric-oriented discovery\nmodule with its own simple code that adds remote ports as they\nare discovered from incoming claim notifications and responses.\nThese hooks are placed by fcoe_disc_init().\n\nA linear list of discovered vn_ports is maintained under the\nfcoe_ctlr struct.  It is expected to be short for now, and\naccessed infrequently.  It is kept under RCU for lock-ordering\nreasons.  The lport and/or rport mutexes may be held when we\nneed to lookup a fcoe_vnport during an ELS send.\n\nChange fcoe_ctlr_encaps() to lookup the destination vn_port in\nthe list of peers for the destination MAC address of the\nFIP-encapsulated frame.\n\nAdd a new function fcoe_disc_init() to initialize just the\ndiscovery portion of libfcoe for VN2VN mode.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "9b651da900ccfe5581befb46eb06ef781a1d7e74",
      "tree": "f83bfce55fdda3d021526a1db608cfa195f0c69d",
      "parents": [
        "edcbb4395ecd2f2731fbf38ecbff5be0316513cb"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Jul 20 15:20:24 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:05:55 2010 -0500"
      },
      "message": "[SCSI] libfcoe: add state change debugging\n\nEnhancement: add debug messages at all state transitions.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "3d902ac09a2812b359edf633425d1327a18399e9",
      "tree": "188605c45a1502862610b03e8429a67ed3d3a7b7",
      "parents": [
        "0685230c59b5482e04ab50e7afc51119ceaba651"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Jul 20 15:19:58 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:05:52 2010 -0500"
      },
      "message": "[SCSI] libfcoe: fcoe: fnic: change fcoe_ctlr_init interface to specify mode\n\nThere are three modes that libfcoe currently supports, and a new one\nis coming.  Change the fcoe_ctlr_init() interface to add the mode\ndesired.  This should not change any functionality.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "fdb068c6cd6e30d43664f856d3530715a5742713",
      "tree": "a500212cc66aee42c7a3659ff0cfecbfb9be6b18",
      "parents": [
        "f90377abcab2e305450ee76a0f9042907560c5d8"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Jul 20 15:19:47 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:05:51 2010 -0500"
      },
      "message": "[SCSI] libfcoe: convert FIP to lock with mutex instead of spin lock\n\nIt turns out most of the FIP work is now done from worker threads\nor process context now, so there\u0027s no need to use a spin lock.\n\nChange to use mutex instead of spin lock and delayed_work instead\nof a timer.\n\nThis will make it nicer for the VN_port to VN_port feature that\nwill interact more with the libfc layers requiring that\nspinlocks not be held.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "519e5135e2537c9dbc1cbcc0891b0a936ff5dcd2",
      "tree": "f4b139d0e9288d65a33a43b54e74ef2a6e959d82",
      "parents": [
        "9d4cbc05f32fc0a1024de2a9d5635bc9d180e4ae"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Tue Jul 20 15:19:32 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:05:47 2010 -0500"
      },
      "message": "[SCSI] fcoe: adds src and dest mac address checking for fcoe frames\n\nThis is  per FC-BB-5 Annex-D recommendation and per that\nif address checking fails then drop the frame.\n\nFIP code paths are already doing this so only needed for fcoe\nframes.\n\nThe src address checking is limited to only fip mode since\nthis might break non-fip mode used in p2p due to used OUI\nbased addressing in some p2p code paths, going forward FIP\nwill be the only mode, therefore limited this to only FIP\nmode so that it won\u0027t break non-fip p2p mode for now.\n\n-v2\nRemoves FCOE packet type checking since fcoe_rcv is\nregistered to receive only FCoE type packets from netdev\nand it is already checked by netdev.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "9d4cbc05f32fc0a1024de2a9d5635bc9d180e4ae",
      "tree": "89dcff72ec501b015dc867a33a4cef33466ab0a8",
      "parents": [
        "e0d93c5bc47ae270ea38192c9a49f660e0406060"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Tue Jul 20 15:19:26 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Jul 28 09:05:46 2010 -0500"
      },
      "message": "[SCSI] fcoe: cleans up fcoe_disable and fcoe_enable\n\nThe fc_fabric_logoff and fc_fabric_login are redundant\nhere after recently added fcoe_ctlr_link_down/up to\nthese functions, therefore this patch removes logoff\nand login to only use link down and up here. This works\nbest for their current usages with fcoe DCB link down or up.\n\nThis also works well to avoid EIO errors when fcoe DCB link\ngoes down as lport state moves out of ready quickly from\nfcoe_ctlr_link_down and that allows re-queuing timed out IOs\nfor this case also.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "be61331d902e63011138723da3f737d34506f797",
      "tree": "38256547ed938c7b74e265fc1f5163771491cb11",
      "parents": [
        "5550fda73d8bd3bed454e28c46f5a4e5288769bb"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Fri Jun 11 16:44:36 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Jul 27 12:01:50 2010 -0500"
      },
      "message": "[SCSI] libfcoe: Check for order and missing critical descriptors for FIP ELS requests\n\nAs per FC-BB-5 rev.2, section 7.8.7.1, strict ordering of FIP descriptors\nis required for ELS requests. Also, look for missing and duplicate critical\ndescriptors.\n\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "5550fda73d8bd3bed454e28c46f5a4e5288769bb",
      "tree": "f93fe89292524836fe0ecb7107533e546c100aab",
      "parents": [
        "0a9c5d344dbd983af59865f9880621e5cbbda899"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Fri Jun 11 16:44:31 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Jul 27 12:01:49 2010 -0500"
      },
      "message": "[SCSI] libfcoe: Host doesnt handle CVL to NPIV ports\n\nClear virtual link for NPIV ports is now handled by resetting\nthe matching vnport.\n\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "0a9c5d344dbd983af59865f9880621e5cbbda899",
      "tree": "ac07b32be5fbde24902bea64ab3ef8bd057b4de3",
      "parents": [
        "c600fea2d813e8734748202970722c3b6a76b9a1"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Fri Jun 11 16:44:25 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Jul 27 12:01:49 2010 -0500"
      },
      "message": "[SCSI] libfcoe: Handle duplicate critical descriptors\n\nAs per FC-BB-5 rev 2, section 7.8.6.2, malformed FIP frame shall be\ndiscarded. Drop discovery adv, ELS and CLV\u0027s with duplicate critical\ndescriptors.\n\n[Resending after incorporating Joe\u0027s review comments]\n\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "c600fea2d813e8734748202970722c3b6a76b9a1",
      "tree": "af04fbcfa7c37afda99ee1ff4cf7df187969e7e0",
      "parents": [
        "d99ee45b7cb89803b79745dc3014ba64bfd02b7d"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Fri Jun 11 16:44:20 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Jul 27 12:01:48 2010 -0500"
      },
      "message": "[SCSI] libfcoe: update FIP FCF D flag from advertisments\n\nAllow the D flag (indicating that keep-alives are not needed) to\nbe updated dynamically from received FIP advertisements.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "d99ee45b7cb89803b79745dc3014ba64bfd02b7d",
      "tree": "92b852881f8031946f914f081accbe9cd22ad51e",
      "parents": [
        "8690cb8359d8e9f8d7ca12791ef7ea32b709df8b"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Fri Jun 11 16:44:15 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Jul 27 12:01:47 2010 -0500"
      },
      "message": "[SCSI] libfcoe: Use fka_period as periodic timeouts to age out fcf if\n\nkeep alives are disabled due to fd_flags set and also\nstop updating keep alive values in that case.\n\nUpdate select fcf time only if fcf is not already selected or\nselect time is not already determined from parse adv, and then\nhave select time cleared only once after fcf is selected.\n\nChanged deadline check to time_after_eq() from time_after()\nsince now next timeout will be on exact 2.5 times FKA followed\nby first advertisement.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "8690cb8359d8e9f8d7ca12791ef7ea32b709df8b",
      "tree": "f5b8d34c3d4648ec3435d98806382850b1902698",
      "parents": [
        "f8fc6c2c99b8085368119d6cf39b997255052826"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Fri Jun 11 16:44:10 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Jul 27 12:01:47 2010 -0500"
      },
      "message": "[SCSI] libfcoe: fix lenient aging of FCF advertisements\n\n[This patch has several improvements to the code in\nthe fip timers.  It hasn\u0027t been tested yet.\nI\u0027m sending it out for review.  Vasu, perhaps you can\nmerge this with your patch and test it together.]\n\nThe current code allows an advertisement to be used\neven if it has been 3 times the FCF keep-alive\nadvertisement period (FKA) since one was received from\nthat FCF.  The spec. calls for 2.5 times FKA.\n\nFix this and make sure we detect missed keep-alives promptly.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "516a648631c912e84e0035590f98eef1d716f4ea",
      "tree": "c5318ca76eb881cbdb4a6e2d01d039b2d47648ef",
      "parents": [
        "1508f3ecd991ecbf272e08f5ee70d2618f49159e"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Fri Jun 11 16:43:44 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Jul 27 12:01:44 2010 -0500"
      },
      "message": "[SCSI] libfcoe: No solicitation if adv is dropped\n\nHost does not send discovery solicitation messages if Disc. Adv\nfrom FCF are dropped. It restarts sending solicitation only\nafter receiving a Discovery Adv. from FCF. Fix is to restart\nsolicitation immediately after CVL processing.\n\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "1508f3ecd991ecbf272e08f5ee70d2618f49159e",
      "tree": "ff48da276987be68be2e2658728d7fca14fb15bf",
      "parents": [
        "281ae642a6475ede25ff86ec124214e346c25e22"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Fri Jun 11 16:43:38 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Jul 27 12:01:43 2010 -0500"
      },
      "message": "[SCSI] libfcoe: Avoid hang when receiving non-critical descriptors\n\nAvoid infinite loop while processing FIP ELS or discovery\nadvertisement with non-critical descriptors.\n\nSigned-off-by: Bhanu Prakash Gollapudi \u003cbprakash@broadcom.com\u003e\nAcked-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "281ae642a6475ede25ff86ec124214e346c25e22",
      "tree": "a630626d5c8542278437356c9c521178d302c13e",
      "parents": [
        "56115598c571cadd4b465836e1423a452a908c89"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Fri Jun 11 16:43:33 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Tue Jul 27 12:01:43 2010 -0500"
      },
      "message": "[SCSI] libfcoe: FIP link keep-alive should continue while logged off\n\nA check in fcoe_ctlr_send_keep_alive() returns if there\u0027s no\nport_id for the local port.  This could miss a keep alive if\nwe just did a host reset and have logged off and will log back in.\n\nReturn only if we are doing the port keep alive, in which case\nwe need to be logged in.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "28172739f0a276eb8d6ca917b3974c2edb036da3",
      "tree": "b1dc00cfa20c209992e247c6f73601f609f9ca3b",
      "parents": [
        "217d32dc5f299c483ca0d3c8cc6811c72c0339c4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "eric.dumazet@gmail.com",
        "time": "Wed Jul 07 14:58:56 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Wed Jul 07 14:58:56 2010 -0700"
      },
      "message": "net: fix 64 bit counters on 32 bit arches\n\nThere is a small possibility that a reader gets incorrect values on 32\nbit arches. SNMP applications could catch incorrect counters when a\n32bit high part is changed by another stats consumer/provider.\n\nOne way to solve this is to add a rtnl_link_stats64 param to all\nndo_get_stats64() methods, and also add such a parameter to\ndev_get_stats().\n\nRule is that we are not allowed to use dev-\u003estats64 as a temporary\nstorage for 64bit stats, but a caller provided area (usually on stack)\n\nOld drivers (only providing get_stats() method) need no changes.\n\nSigned-off-by: Eric Dumazet \u003ceric.dumazet@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1bbbb6912662b9f6070c5bfc4ca9eb1f06a9d5b",
      "tree": "c2c130a74be25b0b2dff992e1a195e2728bdaadd",
      "parents": [
        "fd0961ff67727482bb20ca7e8ea97b83e9de2ddb",
        "7e27d6e778cd87b6f2415515d7127eba53fe5d02"
      ],
      "author": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:08:13 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:08:13 2010 +0200"
      },
      "message": "Merge branch \u0027master\u0027 into for-next\n"
    },
    {
      "commit": "65155b3708137fabee865dc4da822763c0c41208",
      "tree": "dba5ac1c56a96650733f21a820dde26215fa2fb4",
      "parents": [
        "85dd08ebf1d208c391c48243e30e286808f684d8"
      ],
      "author": {
        "name": "Uwe Kleine-König",
        "email": "u.kleine-koenig@pengutronix.de",
        "time": "Fri Jun 11 12:17:01 2010 +0200"
      },
      "committer": {
        "name": "Jiri Kosina",
        "email": "jkosina@suse.cz",
        "time": "Wed Jun 16 18:03:16 2010 +0200"
      },
      "message": "fix typos concerning \"management\"\n\nSigned-off-by: Uwe Kleine-König \u003cu.kleine-koenig@pengutronix.de\u003e\nSigned-off-by: Jiri Kosina \u003cjkosina@suse.cz\u003e\n"
    },
    {
      "commit": "4be929be34f9bdeffa40d815d32d7d60d2c7f03b",
      "tree": "4d2c6e2b8ef766e565e2e050ee151de2e02081d3",
      "parents": [
        "940370fc86b920b51a34217a1facc3e9e97c2456"
      ],
      "author": {
        "name": "Alexey Dobriyan",
        "email": "adobriyan@gmail.com",
        "time": "Mon May 24 14:33:03 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Tue May 25 08:07:02 2010 -0700"
      },
      "message": "kernel-wide: replace USHORT_MAX, SHORT_MAX and SHORT_MIN with USHRT_MAX, SHRT_MAX and SHRT_MIN\n\n- C99 knows about USHRT_MAX/SHRT_MAX/SHRT_MIN, not\n  USHORT_MAX/SHORT_MAX/SHORT_MIN.\n\n- Make SHRT_MIN of type s16, not int, for consistency.\n\n[akpm@linux-foundation.org: fix drivers/dma/timb_dma.c]\n[akpm@linux-foundation.org: fix security/keys/keyring.c]\nSigned-off-by: Alexey Dobriyan \u003cadobriyan@gmail.com\u003e\nAcked-by: WANG Cong \u003cxiyou.wangcong@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "33cf23b0a535475aead57707cb9f4fe135a93544"
}
