)]}'
{
  "log": [
    {
      "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"
    },
    {
      "commit": "33cf23b0a535475aead57707cb9f4fe135a93544",
      "tree": "67e14f77f0eeab847a26a6cbfcb44eecb5fa2fda",
      "parents": [
        "7a9b149212f3716c598afe973b6261fd58453b7a",
        "95bb335c0ebe96afe926387a1ef3a096bd884a82"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 07:19:18 2010 -0700"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Fri May 21 07:19:18 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: (182 commits)\n  [SCSI] aacraid: add an ifdef\u0027d device delete case instead of taking the device offline\n  [SCSI] aacraid: prohibit access to array container space\n  [SCSI] aacraid: add support for handling ATA pass-through commands.\n  [SCSI] aacraid: expose physical devices for models with newer firmware\n  [SCSI] aacraid: respond automatically to volumes added by config tool\n  [SCSI] fcoe: fix fcoe module ref counting\n  [SCSI] libfcoe: FIP Keep-Alive messages for VPorts are sent with incorrect port_id and wwn\n  [SCSI] libfcoe: Fix incorrect MAC address clearing\n  [SCSI] fcoe: fix a circular locking issue with rtnl and sysfs mutex\n  [SCSI] libfc: Move the port_id into lport\n  [SCSI] fcoe: move link speed checking into its own routine\n  [SCSI] libfc: Remove extra pointer check\n  [SCSI] libfc: Remove unused fc_get_host_port_type\n  [SCSI] fcoe: fixes wrong error exit in fcoe_create\n  [SCSI] libfc: set seq_id for incoming sequence\n  [SCSI] qla2xxx: Updates to ISP82xx support.\n  [SCSI] qla2xxx: Optionally disable target reset.\n  [SCSI] qla2xxx: ensure flash operation and host reset via sg_reset are mutually exclusive\n  [SCSI] qla2xxx: Silence bogus warning by gcc for wrap and did.\n  [SCSI] qla2xxx: T10 DIF support added.\n  ...\n"
    },
    {
      "commit": "15af974dcb22914f29aeb9a9cac5879b0dc3860e",
      "tree": "ffec602e4414afdf0486f475b79087ac3240928d",
      "parents": [
        "fb83153d7308e1344f1d4a2e287b6aaab2f6d14c"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri May 07 15:19:03 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 16 22:22:40 2010 -0400"
      },
      "message": "[SCSI] fcoe: fix fcoe module ref counting\n\nCurrently fcoe module ref count is used for tracking\nactive fcoe instances, it means each fcoe instance create\nincrements the count while destroy dec the count.\n\nThe dec is done only if fcoe instance is destroyed from\n/sysfs but not if destroyed due to NETDEV_UNREGISTER event.\nSo this patch moves only module_put doing dec to common\nfcoe_if_destroy function, so that dec would occur on ever\nfcoe instance destroy.\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": "fb83153d7308e1344f1d4a2e287b6aaab2f6d14c",
      "tree": "46d9838879803af2d804e820b7c4d4abc7064530",
      "parents": [
        "8b889e4f95545241fe90aa426ce9b7395d13ae06"
      ],
      "author": {
        "name": "Kaladhar Musunuru",
        "email": "kmusunuru@juniper.net",
        "time": "Fri May 07 15:18:57 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 16 22:22:38 2010 -0400"
      },
      "message": "[SCSI] libfcoe: FIP Keep-Alive messages for VPorts are sent with incorrect port_id and wwn\n\nAll VNports are sending FIP Keep-Alive messages with port_id and wwpn of the parent host instead of it\u0027s own port_id and wwpn. Standard FIP descriptor type 11 indicates to send own port_id and port_name.\n\nSigned-off-by: Kaladhar Musunuru \u003ckmusunuru@juniper.net\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": "8b889e4f95545241fe90aa426ce9b7395d13ae06",
      "tree": "14b79a750eee8d99d7a52eee199f206dcef83aba",
      "parents": [
        "34ce27bcf96f5f366e1fa8c4729ffc8a55de4cc3"
      ],
      "author": {
        "name": "Kaladhar Musunuru",
        "email": "kmusunuru@juniper.net",
        "time": "Fri May 07 15:18:52 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 16 22:22:37 2010 -0400"
      },
      "message": "[SCSI] libfcoe: Fix incorrect MAC address clearing\n\nFix typo in memset. Incorrect length parameter to memset resulting non-zero MAC address in FPMA messages.\n\nSigned-off-by: Kaladhar Musunuru \u003ckmusunuru@juniper.net\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": "34ce27bcf96f5f366e1fa8c4729ffc8a55de4cc3",
      "tree": "f4650760844e41851b1f4dc301a35601025d2699",
      "parents": [
        "7b2787ec15b9d1c2f716da61b0eec21a3f5e6520"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri May 07 15:18:46 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 16 22:22:35 2010 -0400"
      },
      "message": "[SCSI] fcoe: fix a circular locking issue with rtnl and sysfs mutex\n\nCurrently rtnl mutex is grabbed during fcoe create, destroy, enable\nand disable operations while sysfs s_active read mutex is already\nheld, but simultaneously other networking events could try grabbing\nwrite s_active mutex while rtnl is already held and that is causing\ncircular lock warning, its detailed log pasted at end.\n\nIn this log, the rtnl was held before write s_active during device\nrenaming but there are more such cases as Joe reported another\ninstance with tg3 open at:-\nhttp://www.open-fcoe.org/pipermail/devel/2010-February/008263.html\n\nThis patch fixes this issue by not waiting for rtnl mutex during\nfcoe ops, that means if rtnl mutex is not immediately available\nthen restart_syscall() to allow others waiting in line to\ngrab s_active along with rtnl mutex to finish their work first\nunder these mutex.\n\nCurrently rtnl mutex was grabbed twice during fcoe_destroy call flow,\nsecond grab was from fcoe_if_destroy called from fcoe_destroy after\ndropping rtnl mutex before calling fcoe_if_destroy, so instead made\nfcoe_if_destroy always called with rtnl mutex held to have this mutex\ngrabbed only once in this code path.\n\nHowever left matching rtnl_unlock as-is in its original place as it was\ndropped there for good reason since very next call causes synchronous\nfip worker flush and if rtnl mutex is still held before flush\nthen that would cause new circular warning between fip-\u003erecv_work and\nrtnl mutex, I\u0027ve added detailed comment for this on fcoe_if_destroy\ncalling and rtnl muxtes unlocking.\n\n\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\n[ INFO: possible circular locking dependency detected ]\n2.6.33.1linux-stable-2.6.33 #1\n-------------------------------------------------------\nfcoemon/18823 is trying to acquire lock:\n(fcoe_config_mutex){+.+.+.}, at: [\u003cffffffffa02ba5fc\u003e] fcoe_create+0x27/0x4f7\n[fcoe]\n\nbut task is already holding lock:\n(s_active){++++.+}, at: [\u003cffffffff8115ef93\u003e] sysfs_get_active_two+0x31/0x48\n\nwhich lock already depends on the new lock.\n\nthe existing dependency chain (in reverse order) is:\n\n-\u003e #2 (s_active){++++.+}:\n   [\u003cffffffff81077bdb\u003e] __lock_acquire+0xb73/0xd2b\n   [\u003cffffffff81077e60\u003e] lock_acquire+0xcd/0xf1\n   [\u003cffffffff8115e5df\u003e] sysfs_deactivate+0x8b/0xe0\n   [\u003cffffffff8115edfb\u003e] sysfs_addrm_finish+0x36/0x55\n   [\u003cffffffff8115d0cc\u003e] sysfs_hash_and_remove+0x53/0x6a\n   [\u003cffffffff8115f353\u003e] sysfs_remove_link+0x21/0x23\n   [\u003cffffffff812b6c93\u003e] device_rename+0x99/0xcb\n   [\u003cffffffff8138dbf0\u003e] dev_change_name+0xd5/0x1d2\n   [\u003cffffffff8138deee\u003e] dev_ifsioc+0x201/0x2ac\n   [\u003cffffffff8138e4ba\u003e] dev_ioctl+0x521/0x632\n   [\u003cffffffff81379e43\u003e] sock_do_ioctl+0x3d/0x47\n   [\u003cffffffff8137a254\u003e] sock_ioctl+0x213/0x222\n   [\u003cffffffff81114614\u003e] vfs_ioctl+0x32/0xa6\n   [\u003cffffffff81114b94\u003e] do_vfs_ioctl+0x490/0x4d6\n   [\u003cffffffff81114c30\u003e] sys_ioctl+0x56/0x79\n   [\u003cffffffff81009b42\u003e] system_call_fastpath+0x16/0x1b\n\n-\u003e #1 (rtnl_mutex){+.+.+.}:\n   [\u003cffffffff81077bdb\u003e] __lock_acquire+0xb73/0xd2b\n   [\u003cffffffff81077e60\u003e] lock_acquire+0xcd/0xf1\n   [\u003cffffffff8142f343\u003e] __mutex_lock_common+0x4b/0x383\n   [\u003cffffffff8142f73f\u003e] mutex_lock_nested+0x3e/0x43\n   [\u003cffffffff813959f9\u003e] rtnl_lock+0x17/0x19\n   [\u003cffffffff8138ccae\u003e] register_netdevice_notifier+0x1e/0x19b\n   [\u003cffffffffa02580c1\u003e] 0xffffffffa02580c1\n   [\u003cffffffff81002069\u003e] do_one_initcall+0x5e/0x15e\n   [\u003cffffffff81084094\u003e] sys_init_module+0xd8/0x23a\n   [\u003cffffffff81009b42\u003e] system_call_fastpath+0x16/0x1b\n\n-\u003e #0 (fcoe_config_mutex){+.+.+.}:\n   [\u003cffffffff81077a85\u003e] __lock_acquire+0xa1d/0xd2b\n   [\u003cffffffff81077e60\u003e] lock_acquire+0xcd/0xf1\n   [\u003cffffffff8142f343\u003e] __mutex_lock_common+0x4b/0x383\n   [\u003cffffffff8142f73f\u003e] mutex_lock_nested+0x3e/0x43\n   [\u003cffffffffa02ba5fc\u003e] fcoe_create+0x27/0x4f7 [fcoe]\n   [\u003cffffffff810635b1\u003e] param_attr_store+0x27/0x35\n   [\u003cffffffff81063619\u003e] module_attr_store+0x26/0x2a\n   [\u003cffffffff8115dae3\u003e] sysfs_write_file+0x108/0x144\n   [\u003cffffffff81107bd1\u003e] vfs_write+0xae/0x10b\n   [\u003cffffffff81107cee\u003e] sys_write+0x4a/0x6e\n   [\u003cffffffff81009b42\u003e] system_call_fastpath+0x16/0x1b\n\nother info that might help us debug this:\n\n3 locks held by fcoemon/18823:\n#0:  (\u0026buffer-\u003emutex){+.+.+.}, at: [\u003cffffffff8115da17\u003e]\nsysfs_write_file+0x3c/0x144\n#1:  (s_active){++++.+}, at: [\u003cffffffff8115ef86\u003e]\nsysfs_get_active_two+0x24/0x48\n#2:  (s_active){++++.+}, at: [\u003cffffffff8115ef93\u003e]\nsysfs_get_active_two+0x31/0x48\n\nstack backtrace:\nPid: 18823, comm: fcoemon Tainted: G        W  2.6.33.1linux-stable-2.6.33 #1\nCall Trace:\n[\u003cffffffff81076c38\u003e] print_circular_bug+0xa8/0xb6\n[\u003cffffffff81077a85\u003e] __lock_acquire+0xa1d/0xd2b\n[\u003cffffffffa02ba5fc\u003e] ? fcoe_create+0x27/0x4f7 [fcoe]\n[\u003cffffffff81077e60\u003e] lock_acquire+0xcd/0xf1\n[\u003cffffffffa02ba5fc\u003e] ? fcoe_create+0x27/0x4f7 [fcoe]\n[\u003cffffffffa02ba5fc\u003e] ? fcoe_create+0x27/0x4f7 [fcoe]\n[\u003cffffffff8142f343\u003e] __mutex_lock_common+0x4b/0x383\n[\u003cffffffffa02ba5fc\u003e] ? fcoe_create+0x27/0x4f7 [fcoe]\n[\u003cffffffff8106ac70\u003e] ? cpu_clock+0x43/0x5e\n[\u003cffffffff81074e12\u003e] ? lockstat_clock+0x11/0x13\n[\u003cffffffff81074e40\u003e] ? lock_release_holdtime+0x2c/0x127\n[\u003cffffffff8115ef93\u003e] ? sysfs_get_active_two+0x31/0x48\n[\u003cffffffff8142f73f\u003e] mutex_lock_nested+0x3e/0x43\n[\u003cffffffffa02ba5fc\u003e] fcoe_create+0x27/0x4f7 [fcoe]\n[\u003cffffffff810635b1\u003e] param_attr_store+0x27/0x35\n[\u003cffffffff81063619\u003e] module_attr_store+0x26/0x2a\n[\u003cffffffff8115dae3\u003e] sysfs_write_file+0x108/0x144\n[\u003cffffffff81107bd1\u003e] vfs_write+0xae/0x10b\n[\u003cffffffff81076596\u003e] ? trace_hardirqs_on_caller+0x125/0x150\n[\u003cffffffff81107cee\u003e] sys_write+0x4a/0x6e\n[\u003cffffffff81009b42\u003e] system_call_fastpath+0x16/0x1b\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": "7b2787ec15b9d1c2f716da61b0eec21a3f5e6520",
      "tree": "39b098d4253fa266ea75bf1f7feb75458e78b77d",
      "parents": [
        "5e4f8fe7b58f4da5043b7f219fe9193cddd9262e"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri May 07 15:18:41 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 16 22:22:34 2010 -0400"
      },
      "message": "[SCSI] libfc: Move the port_id into lport\n\nThis patch creates a port_id member in struct fc_lport.\nThis allows libfc to just deal with fc_lport instances\ninstead of calling into the fc_host to get the port_id.\n\nThis change helps in only using symbols necessary for\noperation from the libfc structures. libfc still needs\nto change the fc_host_port_id() if the port_id changes\nso the presentation layer (scsi_transport_fc) can provide\nthe user with the correct value, but libfc shouldn\u0027t\nrely on the presentation layer for operational values.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "5e4f8fe7b58f4da5043b7f219fe9193cddd9262e",
      "tree": "4148ed9a37568f3734158415132354940af9b800",
      "parents": [
        "d29510a2968f87eaf455c606cd8802b6f8a0774b"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri May 07 15:18:35 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 16 22:22:32 2010 -0400"
      },
      "message": "[SCSI] fcoe: move link speed checking into its own routine\n\nIt doesn\u0027t make sense to update the link speed in the is_link_ok()\nroutine. Move it to it\u0027s own routine and acquire the device speed\nwhen we\u0027re configuring the device initially as well as if there are\nany netdev events received.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "d29510a2968f87eaf455c606cd8802b6f8a0774b",
      "tree": "76cebf287eb388597b978ef041ab03a9553377ea",
      "parents": [
        "1b80e0f91c41db4633c0a61f727de169a9e9b275"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri May 07 15:18:30 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 16 22:22:30 2010 -0400"
      },
      "message": "[SCSI] libfc: Remove extra pointer check\n\nThe fcf pointer is checked again after this verification\nmaking the first check redundant. Remote the first check.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "721cafafb66f57b461226aa197997f3e5b296f91",
      "tree": "6be6c819f0d1dd4d6230ccc3d7f53420cea6873f",
      "parents": [
        "b3667f9177359b0594e4f2cd5cc01115f8c7e2af"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri May 07 15:18:19 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun May 16 22:22:27 2010 -0400"
      },
      "message": "[SCSI] fcoe: fixes wrong error exit in fcoe_create\n\nfcoe_create exits using out_nodev label when module is not\nyet LIVE but this exit path unlocks the rtnl_lock though\nrtnl lock was not held in this case.\n\nSo this patch replaces out_nodev with out_nomod to exit\nw/o unlocking rtnl_lock.\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": "871039f02f8ec4ab2e5e9010718caa8e085786f1",
      "tree": "f0d2b3127fc48c862967d68c46c2d46668137515",
      "parents": [
        "e4077e018b5ead3de9951fc01d8bf12eeeeeefed",
        "4a1032faac94ebbf647460ae3e06fc21146eb280"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sun Apr 11 14:53:53 2010 -0700"
      },
      "message": "Merge branch \u0027master\u0027 of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6\n\nConflicts:\n\tdrivers/net/stmmac/stmmac_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_cmd.c\n\tdrivers/net/wireless/wl12xx/wl1271_main.c\n\tdrivers/net/wireless/wl12xx/wl1271_spi.c\n\tnet/core/ethtool.c\n\tnet/mac80211/scan.c\n"
    },
    {
      "commit": "9f8f3aa640ae5da220eea95215317f19ace91481",
      "tree": "ef2d97aee5de5f83e53fe2645a7a30aa8a3980c7",
      "parents": [
        "ce8b5df04292e93a117d9f863af206245bf61271"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Fri Apr 09 14:23:16 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 14:02:42 2010 -0500"
      },
      "message": "[SCSI] libfc, fcoe: normalize format specifies for world wide names\n\nPrint all world wide node names (node, port and fabric) with the same\nformat specifier of \"%16.16llx\".  That makes sure they all print as a\n16 character hex string, with lower case letters, no 0x prefix, and\nwithout stripping off any leading 0s.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "da87bfab8a7e6cfd0e1e5c5874d7fd4f7d11e64e",
      "tree": "82dbf057ac960b017bc2a477f941de7f9d75c373",
      "parents": [
        "8ba00a4bbbbcb39d077e837555dfa9ff0de4202e"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Apr 09 14:22:59 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 14:02:39 2010 -0500"
      },
      "message": "[SCSI] fcoe, fnic, libfc: increased CDB size to 16 bytes for fcoe.\n\nNo reason to restrict CDB size to 12 bytes in fcoe, so\nincreased to 16 so that 16 bytes SCSI CDB doesn\u0027t fail.\n\nUses common define to set max_cmd_len for fcoe and fnic,\nfnic is already setting max_cmd_len to 16.\n\nsg_readcap -l fails without this fix.\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": "8ba00a4bbbbcb39d077e837555dfa9ff0de4202e",
      "tree": "aa07f2c02b6b5d247b752d90b40f6ff7198e19fa",
      "parents": [
        "d9e9ab56b687da0b3ecb29f7a77f25aa7ae078fb"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Fri Apr 09 14:22:54 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 14:02:38 2010 -0500"
      },
      "message": "[SCSI] fcoe: removes unused shost in fcoe_shost_config\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": "03d29bc1d58dcfc2fa30aed7af199f24444c2052",
      "tree": "e1ffc9717e439aee7fda8658f21d3aab3bb6c396",
      "parents": [
        "9ee50e48d8370dbcb42fa5b62b5bb3a9877e1f47"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Fri Apr 09 14:22:28 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 14:02:32 2010 -0500"
      },
      "message": "[SCSI] fcoe: check netif operstate instead of IFF_UP \u0026 link state\n\nAllow for dormant states while link configuration completes.\nIn the default link mode, this is equivalent to the old check.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "9ee50e48d8370dbcb42fa5b62b5bb3a9877e1f47",
      "tree": "d8fc23cf55ba258d97029ed46e433a8b90bee1f6",
      "parents": [
        "593abc0720d5639ba21834b082adf83762af39be"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Fri Apr 09 14:22:23 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 14:02:31 2010 -0500"
      },
      "message": "[SCSI] fcoe: reset FIP ctlr link state on disable/enable\n\nThe FIP controler state wasn\u0027t being reset on a disable.\nA disable/enable sequence should be treated as a link event.\nOtherwise, when using disable to mask a time when the link\nis up but unusable, FCF discovery would attempt to continue\nand login would jump directly to the non-FIP fallback on\nenable.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "593abc0720d5639ba21834b082adf83762af39be",
      "tree": "7abbe4651823fb981a6f6aef4ab8b7b11564d954",
      "parents": [
        "aea20f9540e615f158536b777f7f9ac646427f98"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Fri Apr 09 14:22:17 2010 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 14:02:27 2010 -0500"
      },
      "message": "[SCSI] libfcoe: Don\u0027t fill MAC desc in FLOGI if FIP negotiated FPMA\n\nFPMA indicates that the Fabric will provide the host\u0027s\nN_Port\u0027s MAC address. When sending a FLOGI/FDISC frame\nand FPMA was negotiated through FIP discovery we still\nneed to provide the MAC descriptor, as per the\nspecification, but the MAC should be zero\u0027d out since\nthe FCF will be providing it in the FLOGI/FDISC ACC.\n\nIn FC-BB-5 section 7.8.7.4.2 (Fabric login) it states:\n\nThe MAC address field in the MAC address descriptor of a FIP FLOGI\nRequest operation or a FIP NPIV FDISC Request operation shall contain:\na) the proposed MAC address to use as VN_Port MAC address if the ENode\n   is requesting to use SPMA (see table 27);\nb) all zeroes to indicate no MAC address is proposed if the ENode is\n   requesting to use FPMA (see table 27); or\nc) the proposed MAC address to use as VN_Port MAC address if the ENode\n   supports both SPMA and FPMA and leaves the decision of which\n   addressing scheme to use to the FCF (i.e., if both the FP and SP\n   bits are set to one, see table 27).\n\nThis patch fixes case B.\n\nThis patch also adds debug statements to illustrate\nwhether a FPMA or SPMA MAC is added to a FLOGI/FDISC\nframe.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: Chris Leech \u003cchristopher.leech@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "f018b73af6db4f330ad5da9ac53997a699c30c42",
      "tree": "4f4e9405d923c0021771549dbdec34569c0e27a7",
      "parents": [
        "b3ef990c1514859bffae221b9e82e46a38f1e7bf"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Fri Mar 12 16:08:55 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 09:23:44 2010 -0500"
      },
      "message": "[SCSI] libfc, libfcoe, fcoe: use smp_processor_id() only when preempt disabled\n\nWhen the kernel is configured for preemption, using smp_processor_id()\nwhen preemption is enabled causes a warning backtrace and is wrong\nsince we could move off of that CPU as soon as we get the ID,\nand we would be referencing the wrong CPU, and possibly an invalid one\nif it could be hotswapped out.\n\nRemove the fc_lport_get_stats() function and explicitly use per_cpu_ptr()\nto get the statistics.  Where preemption has been disabled by holding\na _bh lock continue to use smp_processor_id(), but otherwise use\nget_cpu()/put_cpu().\n\nIn fcoe_recv_frame() also changed the cases where we return in the\nmiddle to do a goto to the code which bumps ErrorFrames and does\na put_cpu().  Two of these cases didn\u0027t bump ErrorFrames before, but\ndoing so is harmless because they \"can\u0027t happen\", due to prior length\nchecks.\n\nAlso rearranged code in fcoe_recv_frame() to have only one call to\nfc_exch_recv().  It\u0027s just as efficient and saves a call to put_cpu().\n\nIn fc_fcp.c, adjusted a FIXME comment for code which doesn\u0027t need fixing.\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": "4291365784c9622c9d643cf23421f9c7b9662d71",
      "tree": "46b938bd7ea401da7d61ad7e63b80d0bcd8b0f71",
      "parents": [
        "50036bbae0ed4d4e610bd59e0ce285ed20c1bee6"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Fri Mar 12 16:08:23 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 09:23:38 2010 -0500"
      },
      "message": "[SCSI] libfcoe: eliminate unused link and last_link fields\n\nThe link and last_link fields in the fcoe_ctlr struct are no\nlonger useful, since they are always set to the same value,\nand FIP always calls libfc to pass link information to the lport.\n\nEliminate those fields and rename link_work to timer_work, since\nit no longer has any link change work to do.\n\nThanks to Brian Uchino for discovering this issue.\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": "50036bbae0ed4d4e610bd59e0ce285ed20c1bee6",
      "tree": "e53a6b7118dc23c0a09932a1d70e6bdc52c5037c",
      "parents": [
        "ccfc3098029229d5298d4fc07f1b2c967526e56b"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Fri Mar 12 16:08:18 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 09:23:38 2010 -0500"
      },
      "message": "[SCSI] fcoe: remove an unused variable in fcoe_recv_frame()\n\nRemove an unused variable, mac, in fcoe_recv_frame().\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": "7d65b0df6c5951271cd368170bca8601aa2e65c7",
      "tree": "722511a465f5a71f6ee74d9bf02c4b709d88fa85",
      "parents": [
        "e49bf6145f50da2d95f9fab605ce74f8fb44cb16"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Fri Mar 12 16:08:02 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 09:23:36 2010 -0500"
      },
      "message": "[SCSI] fcoe: save gateway address when receiving FLOGI request\n\nIn point-to-point mode, we need to save the source MAC\nfrom received FLOGI requests to use as the destination MAC\nfor all outgoing frames.  We stopped doing that at some point.\n\nUse the lport_set_port_id method to catch incoming FLOGI frames\nand pass them to fcoe_ctlr_recv_flogi() so it can save the source MAC.\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": "e49bf6145f50da2d95f9fab605ce74f8fb44cb16",
      "tree": "ab04668e6d2f52258c2b5dccf6141cf3b26978e2",
      "parents": [
        "9860eeb49748df86e784fea09bb47ed6ae594383"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Fri Mar 12 16:07:57 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 09:23:35 2010 -0500"
      },
      "message": "[SCSI] libfcoe: fix debug message entering non-FIP mode\n\nThe debug message that indicated we are using non-FIP mode was\nbeing printed only if we were already in non-FIP mode.\nAlso changed the message text to make it more clear the mode\nis being set, not that the message is indicating how FLOGI\nwas received.\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": "9860eeb49748df86e784fea09bb47ed6ae594383",
      "tree": "365c960377bcbfeba7d42bdad590e0e6493e70f1",
      "parents": [
        "2f2ac4a0df8c4beee6e4057a69fa973b6040a573"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Fri Mar 12 16:07:52 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sun Apr 11 09:23:35 2010 -0500"
      },
      "message": "[SCSI] fcoe: call fcoe_ctlr_els_send even for ELS responses\n\nIn point-to-point mode, the destination MAC address for\nthe FLOGI response was zero because the LS_ACC for the FLOGI\nwasn\u0027t getting intercepted by FIP.\n\nChange to call fcoe_ctlr_els_send when sending any ELS,\nnot just requests.\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": "22bedad3ce112d5ca1eaf043d4990fa2ed698c87",
      "tree": "b6fba5688d48b1396f01d13ee53610dea7749c15",
      "parents": [
        "a748ee2426817a95b1f03012d8f339c45c722ae1"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Apr 01 21:22:57 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 03 14:22:15 2010 -0700"
      },
      "message": "net: convert multicast list to list_head\n\nConverts the list and the core manipulating with it to be the same as uc_list.\n\n+uses two functions for adding/removing mc address (normal and \"global\"\n variant) instead of a function parameter.\n+removes dev_mcast.c completely.\n+exposes netdev_hw_addr_list_* macros along with __hw_addr_* functions for\n manipulation with lists on a sandbox (used in bonding and 80211 drivers)\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a748ee2426817a95b1f03012d8f339c45c722ae1",
      "tree": "37cb9f8836f05bd49b86eb52ddeff3e98185cc58",
      "parents": [
        "9fc4178b149ae8b0a2fbf83f2f4df3cf8789177b"
      ],
      "author": {
        "name": "Jiri Pirko",
        "email": "jpirko@redhat.com",
        "time": "Thu Apr 01 21:22:09 2010 +0000"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Sat Apr 03 14:22:11 2010 -0700"
      },
      "message": "net: move address list functions to a separate file\n\n+little renaming of unicast functions to be smooth with multicast ones\n\nSigned-off-by: Jiri Pirko \u003cjpirko@redhat.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "5a0e3ad6af8660be21ca98a971cd00f331318c05",
      "tree": "5bfb7be11a03176a87296a43ac6647975c00a1d1",
      "parents": [
        "ed391f4ebf8f701d3566423ce8f17e614cde9806"
      ],
      "author": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Wed Mar 24 17:04:11 2010 +0900"
      },
      "committer": {
        "name": "Tejun Heo",
        "email": "tj@kernel.org",
        "time": "Tue Mar 30 22:02:32 2010 +0900"
      },
      "message": "include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h\n\npercpu.h is included by sched.h and module.h and thus ends up being\nincluded when building most .c files.  percpu.h includes slab.h which\nin turn includes gfp.h making everything defined by the two files\nuniversally available and complicating inclusion dependencies.\n\npercpu.h -\u003e slab.h dependency is about to be removed.  Prepare for\nthis change by updating users of gfp and slab facilities include those\nheaders directly instead of assuming availability.  As this conversion\nneeds to touch large number of source files, the following script is\nused as the basis of conversion.\n\n  http://userweb.kernel.org/~tj/misc/slabh-sweep.py\n\nThe script does the followings.\n\n* Scan files for gfp and slab usages and update includes such that\n  only the necessary includes are there.  ie. if only gfp is used,\n  gfp.h, if slab is used, slab.h.\n\n* When the script inserts a new include, it looks at the include\n  blocks and try to put the new include such that its order conforms\n  to its surrounding.  It\u0027s put in the include block which contains\n  core kernel includes, in the same order that the rest are ordered -\n  alphabetical, Christmas tree, rev-Xmas-tree or at the end if there\n  doesn\u0027t seem to be any matching order.\n\n* If the script can\u0027t find a place to put a new include (mostly\n  because the file doesn\u0027t have fitting include block), it prints out\n  an error message indicating which .h file needs to be added to the\n  file.\n\nThe conversion was done in the following steps.\n\n1. The initial automatic conversion of all .c files updated slightly\n   over 4000 files, deleting around 700 includes and adding ~480 gfp.h\n   and ~3000 slab.h inclusions.  The script emitted errors for ~400\n   files.\n\n2. Each error was manually checked.  Some didn\u0027t need the inclusion,\n   some needed manual addition while adding it to implementation .h or\n   embedding .c file was more appropriate for others.  This step added\n   inclusions to around 150 files.\n\n3. The script was run again and the output was compared to the edits\n   from #2 to make sure no file was left behind.\n\n4. Several build tests were done and a couple of problems were fixed.\n   e.g. lib/decompress_*.c used malloc/free() wrappers around slab\n   APIs requiring slab.h to be added manually.\n\n5. The script was run on all .h files but without automatically\n   editing them as sprinkling gfp.h and slab.h inclusions around .h\n   files could easily lead to inclusion dependency hell.  Most gfp.h\n   inclusion directives were ignored as stuff from gfp.h was usually\n   wildly available and often used in preprocessor macros.  Each\n   slab.h inclusion directive was examined and added manually as\n   necessary.\n\n6. percpu.h was updated not to include slab.h.\n\n7. Build test were done on the following configurations and failures\n   were fixed.  CONFIG_GCOV_KERNEL was turned off for all tests (as my\n   distributed build env didn\u0027t work with gcov compiles) and a few\n   more options had to be turned off depending on archs to make things\n   build (like ipr on powerpc/64 which failed due to missing writeq).\n\n   * x86 and x86_64 UP and SMP allmodconfig and a custom test config.\n   * powerpc and powerpc64 SMP allmodconfig\n   * sparc and sparc64 SMP allmodconfig\n   * ia64 SMP allmodconfig\n   * s390 SMP allmodconfig\n   * alpha SMP allmodconfig\n   * um on x86_64 SMP allmodconfig\n\n8. percpu.h modifications were reverted so that it could be applied as\n   a separate patch and serve as bisection point.\n\nGiven the fact that I had only a couple of failures from tests on step\n6, I\u0027m fairly confident about the coverage of this conversion patch.\nIf there is a breakage, it\u0027s likely to be something in one of the arch\nheaders which should be easily discoverable easily on most builds of\nthe specific arch.\n\nSigned-off-by: Tejun Heo \u003ctj@kernel.org\u003e\nGuess-its-ok-by: Christoph Lameter \u003ccl@linux-foundation.org\u003e\nCc: Ingo Molnar \u003cmingo@redhat.com\u003e\nCc: Lee Schermerhorn \u003cLee.Schermerhorn@hp.com\u003e\n"
    },
    {
      "commit": "6409ea65b3b81ef693cbbc7c4b2300e50a4219dd",
      "tree": "78d71cc32541bd76fbe88b4f5923b9b7ad032205",
      "parents": [
        "f47dd855d9e64a5d499a93e858a82bc5e7b21345"
      ],
      "author": {
        "name": "Rob Love",
        "email": "robert.w.love@intel.com",
        "time": "Thu Jan 21 10:16:05 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 09:57:05 2010 -0600"
      },
      "message": "[SCSI] fcoe: Only rmmod fcoe.ko if there are no active connections\n\nCurrently we\u0027re gracefully tearing down each active connection\nwhen fcoe.ko is removed. We shouldn\u0027t allow the user to destroy\nconnections by removing the module. We should force the user to\ndestroy each connection and then the module can be removed.\n\nThis patch makes it so a refrerence count on the module is taken\neach time a fcoe_interface is created. The reference count\nis dropped when the fcoe_interface is destroyed. This makes it\nso that module_exit() doesn\u0027t get called unless all fcoe_interfaces\nhave been destroyed.\n\nThis patch leaves the removal of interfaces in the module_exit\nroutine so that if the user does a \u0027rmmod -f\u0027 we\u0027ll clean everything\nup before removing the module.\n\nThe module_put line was put before the out_putdev goto line because\nwe should only be decrementing the reference count if a\nfcoe_interface is actually destroyed. If we can\u0027t find the netdev\nor the fcoe_interface then it\u0027s assumed that something else has\ndestroyed the fcoe_interface and it would have decremented the\nreference count at that time.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "f47dd855d9e64a5d499a93e858a82bc5e7b21345",
      "tree": "62ef916affa1c68ab8d362da54903bd225edefa3",
      "parents": [
        "b248df30fca3aeee1d650b570e8cbc4e8cc45710"
      ],
      "author": {
        "name": "Bhanu Prakash Gollapudi",
        "email": "bprakash@broadcom.com",
        "time": "Thu Jan 21 10:16:00 2010 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Wed Feb 17 09:57:03 2010 -0600"
      },
      "message": "[SCSI] libfcoe: Send port LKA every FIP_VN_KA_PERIOD secs.\n\nlibfcoe module doesnt send port keep alive every\nFIP_VN_KA_PERIOD due to improper assignment of timeout value.\nUpdate the port_ka_time appropriately by incrementing it by\nFIP_VN_KA_PERIOD in fcoe_ctlr_timeout(), so that the link_work\nis scheduled to send the port LKA.\n\nSigned-off-by: Bhanu 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": "55db493b65c7b6bb5d7bd3dd3c8a2fe13f5dc09c",
      "tree": "7f9203f43e7c81687c9aaa0213266bc7b2e89e35",
      "parents": [
        "efc8e7f4c83dc85acbf5f54a8b1b24ae75b20aaa",
        "a4636818f8e0991f32d9528f39cf4f3d6a7d30a3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 17:00:20 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Thu Dec 17 17:00:20 2009 -0800"
      },
      "message": "Merge branch \u0027cpumask-cleanups\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* \u0027cpumask-cleanups\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  cpumask: rename tsk_cpumask to tsk_cpus_allowed\n  cpumask: don\u0027t recommend set_cpus_allowed hack in Documentation/cpu-hotplug.txt\n  cpumask: avoid dereferencing struct cpumask\n  cpumask: convert drivers/idle/i7300_idle.c to cpumask_var_t\n  cpumask: use modern cpumask style in drivers/scsi/fcoe/fcoe.c\n  cpumask: avoid deprecated function in mm/slab.c\n  cpumask: use cpu_online in kernel/perf_event.c\n"
    },
    {
      "commit": "6957177f5c3c0e51b9e90a1d7fadb3177a333949",
      "tree": "05ccc4cbae22790febff76f7d553de5bb8d9a2f5",
      "parents": [
        "58463c1fe25f7c4183f30f06a5a86cb6cd9d8231"
      ],
      "author": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 17 11:43:14 2009 -0600"
      },
      "committer": {
        "name": "Rusty Russell",
        "email": "rusty@rustcorp.com.au",
        "time": "Thu Dec 17 11:43:16 2009 +1030"
      },
      "message": "cpumask: use modern cpumask style in drivers/scsi/fcoe/fcoe.c\n\nSigned-off-by: Rusty Russell \u003crusty@rustcorp.com.au\u003e\nCc: \"James E.J. Bottomley\" \u003cJames.Bottomley@suse.de\u003e\nCc: Robert Love \u003crobert.w.love@intel.com\u003e\nCc: Chris Leech \u003cchristopher.leech@intel.com\u003e\nCc: linux-scsi@vger.kernel.org\n"
    },
    {
      "commit": "55a66d3c1e57f7e3e554d6ec8011e840f3802f20",
      "tree": "b13e6446ce4d397e5c7d774bf942a2563e1248e5",
      "parents": [
        "c1ecb90a66c5afc7cc5c9349f9c3714eef4a5cfb"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Thu Dec 10 09:59:31 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Dec 12 16:30:34 2009 -0600"
      },
      "message": "[SCSI] fcoe, libfc: adds enable/disable for fcoe interface\n\nThis is to allow fcoemon util to enable or disable a fcoe interface\naccording to DCB link state change.\n\nAdds sysfs module param enable and disable for this and also\nupdates existing other module param description to be consistent\nand more accurate since older description had double \"fcoe\" word\nwith less meaningful netdev reference to user space.\n\nAdds code to ignore redundant fc_lport_enter_reset handling for a\nalready disabled fcoe interface by checking LPORT_ST_DISABLED\nor LPORT_ST_LOGO states, this also prevents lport state transition\non link flap on a disabled interface.\n\nAbove changes required lport state transition to get out of\ndisabled or logo state on call to fc_fabric_login.\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": "dcece412da92aa619c0d891a17306b9adf86ab0e",
      "tree": "4d7c49efc33ec71cd97904808cd2050a3798e54d",
      "parents": [
        "e46b63b37c3296f0aca92d8b62bbf130f2bec7dd"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Nov 20 15:22:21 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Dec 10 09:45:53 2009 -0600"
      },
      "message": "[SCSI] fcoe: Use LLD\u0027s WWPN and WWNN for lport if LLD supports ndo_fcoe_get_wwn\n\nIf the LLD wants its own WWNN/WWPN to be used, it should implement the\nnetdev_ops.ndo_fcoe_get_wwn(). If that is the case, we query the LLD and use\nthe queried WWNN/WWPN from the LLD.\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": "b84056bf68404a5fe06b452ea9790b9927e793a6",
      "tree": "67e9129cd1cf94465f6845ee8f378c856b27bd04",
      "parents": [
        "b21a0c397eea722ff84bbeaf5e6e732a06b69896"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Nov 20 14:55:19 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:58 2009 -0600"
      },
      "message": "[SCSI] fcoe, libfc: add get_lesb() to allow LLD to fill the link error status block (LESB)\n\nAdd a member function pointer as get_lesb to libfc_function_template so LLD\ncan fill the LESB based on its own statistics. For fcoe, it fills the LESB\nas a fcoe_fc_els_lesb struct according to FC-BB-5.\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": "f3da80e76142d63a6849556461906fbe118d1442",
      "tree": "1877df06f90937f7136ee7d59ab0f01af097ee63",
      "parents": [
        "2ec8493f962d55ae85c6716db414c645a6578333"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Nov 20 14:55:08 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:56 2009 -0600"
      },
      "message": "[SCSI] libfcoe: add tracking FIP Missing Discovery Advertisement count\n\nAdd tracking the Missing Discovery Advertisement count for FIP Fiber Channel\nForwarder (FCF) as described in FC-BB-5 Rev2.0 for LESB. The time is 1.5 times\nthe FKA_ADV_PERIOD of the corresponding FCF.\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": "2ec8493f962d55ae85c6716db414c645a6578333",
      "tree": "ff5d2ad24e7e321bf6c1f2815967692e7c22ee81",
      "parents": [
        "8cdffdccd948ea4872b7b65280bc04f2fa93fc96"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Nov 20 14:55:02 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:56 2009 -0600"
      },
      "message": "[SCSI] libfcoe: add tracking FIP Virtual Link Failure count\n\nAdd tracking the Virtual Link Failure count when either we have found\nthe FCF as \"aged\" or we are receiving FIP Clear Virtual Link from the\nFCF.\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": "8cdffdccd948ea4872b7b65280bc04f2fa93fc96",
      "tree": "7713d23f0a066e15b0f9c148bda62fd8db4fec53",
      "parents": [
        "6580bbd0afe6ba1be5d53b331e92a7690046c923"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Fri Nov 20 14:54:57 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:55 2009 -0600"
      },
      "message": "[SCSI] libfcoe: add checking disable flag in FIP_FKA_ADV\n\nWhen the D bit is set if the FKA_ADV_Period of the FIP Discovery\nAdvertisement, the ENode should not transmit period ENode FIP Keep Alive and\nVN_Port FIP Keep Alive (FC-BB-5 Rev2, 7.8.3.13).\n\nNote that fcf-\u003eflags is taken directly from the fip_header, I am claiming one\nbit for the purpose of the FIP_FKA_Period D bit as FIP_FL_FK_ADV_B, and use\nFIP_HEADER_FLAGS as bitmask for bits used in fip_header.\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": "859b7b649ab58ee5cbfb761491317d5b315c1b0f",
      "tree": "8827d80feead5e90c12d31885b735068b693b40f",
      "parents": [
        "70d919fbd9ab78f3eca5ea7bd060fefd7b508641"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Fri Nov 20 14:54:47 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:54 2009 -0600"
      },
      "message": "[SCSI] fcoe: allow SCSI-FCP to be processed directly in softirq context\n\nAllow FCP frames to bypass the FCoE receive processing threads and handle\nthem directly in softirq context, if they are received on the correct CPU.\nThis preserves the queuing to threads for scaling out receive processing\nto multiple CPUs, but allows FCoE-aware multi-queue network drivers that\ndirect frames to the originating CPUs to handle FCP processing with less\nscheduling latency.\n\nOnly FCP is handled directly, because libfc makes use of mutexes in ELS\nhandling routines.\n\nThe bulk of this change is just moving the FCoE receive processing out of\nthe receive thread function, leaving behind just the thread and queue\nmanagement.  The interesting bits are in fcoe_rcv()\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "b94f8951bf256674eca3f2a490df17521442afef",
      "tree": "ae6b246eb65f7ef73167a2b582ce7e670158a958",
      "parents": [
        "be276cbe1bd680ab1f6c297017dd658e5a6b10d2"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 03 11:50:21 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:27 2009 -0600"
      },
      "message": "[SCSI] libfc fcoe: increase ELS and CT timeouts\n\nThe FC-LS spec. says ELS timeouts should be 2 x R_A_TOV.\nThe FC-GS spec. says CT timeouts should be 3 x R_A_TOV.\n\nWe\u0027ve been using E_D_TOV for both of those.\n\nChange for all ELS and CT requests except FLOGI, which we\nleave at 2 seconds (using E_D_TOV).  One could argue that\nR_A_TOV is locally determined until after FLOGI succeeds.\n\nThis does change FLOGI for vports which becomes FDISC.\nThis does not change the REC/SRR timeout which is 2 seconds.\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": "be276cbe1bd680ab1f6c297017dd658e5a6b10d2",
      "tree": "20e36fd7741818592d07b8f72442dd9ac5bf153e",
      "parents": [
        "4ae1e19f251335a24ce6cd13f08b4af560ed8765"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Tue Nov 03 11:50:16 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:27 2009 -0600"
      },
      "message": "[SCSI] libfcoe: Do not pad FIP keep-alive to full frame size\n\nAccording to the FC-BB-5 Rev2.0, 7.8.6.2, we should not pad FIP keep-alive\nframes.\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": "18fa11efc279c20af5eefff2bbe814ca067e51ae",
      "tree": "fc8b911554aa04c1ed7f6a5ebe31ef6aa2ea0379",
      "parents": [
        "cc0136c2e9c10e889cb36e39710c0eb10707b396"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Nov 03 11:50:05 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:25 2009 -0600"
      },
      "message": "[SCSI] libfc, fcoe: fixes for highmem skb linearize panics\n\nThere are cases outside of our control that may result in a transmit\nskb being linearized in dev_queue_xmit.  There are a couple of bugs\nin libfc/fcoe that can result in a panic at that point.  This patch\ncontains two fixes to prevent those panics.\n\n1) use fast cloning instead of shared skbs with dev_queue_xmit\n\ndev_queue_xmit doen\u0027t want shared skbuffs being passed in, and\n__skb_linearize will BUG if the skb is shared.  FCoE is holding an extra\nreference around the call to dev_queue_xmit, so that when it returns an\nerror code indicating the frame has been dropped it can maintain it\u0027s\nown backlog and retransmit.  Switch to using fast skb cloning for this\ninstead.\n\n2) don\u0027t append compound pages as \u003e PAGE_SIZE skb fragments\n\nfc_fcp_send_data will append pages from a scatterlist to the nr_frags[]\nif the netdev supports it.  But, it\u0027s using \u003e PAGE_SIZE compound pages\nas a single skb_frag.  In the highmem linearize case that page will be\npassed to kmap_atomic to get a mapping to copy out of, but\nkmap_atomic will only allow access to the first PAGE_SIZE part.\nThe memcpy will keep going and cause a page fault once is crosses the\nfirst boundary.\n\nIf fc_fcp_send_data uses linear buffers from the start, it calls\nkmap_atomic one PAGE_SIZE at a time.  That same logic needs to be\napplied when setting up skb_frags.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "cc0136c2e9c10e889cb36e39710c0eb10707b396",
      "tree": "b486a0e899ee7d06365f3efbe1e08c876b91b422",
      "parents": [
        "349e11faa84ebdd6e484572cfe66f2cf4cb483a1"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Tue Nov 03 11:49:59 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:24 2009 -0600"
      },
      "message": "[SCSI] fcoe: Fix using VLAN ID in creating lport\u0027s WWWN/WWPN\n\nIf the underlying netdev is a VLAN device, make sure the VLAN ID is integrated\ninto the WWNN/WWPN name generation. Also added/updated the comments to reflect\nthis change.\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": "75ea89ef63d9ca37f190aebb7da061070005ac6e",
      "tree": "83f9e6ffc8f465aec8653ef16fe94ee5eb31ea3d",
      "parents": [
        "5bab87e6d465d54a2b5899e0f583d42f00dbee2e"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Tue Nov 03 11:49:49 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:23 2009 -0600"
      },
      "message": "[SCSI] fcoe: Fix setting lport\u0027s WWNN/WWPN to use san mac address\n\nWe are still using netdev-\u003edev_addr to generate lport\u0027s WWNN/WWPN even if the\nLLD has support for NETDEV_HW_ADDR_T_SAN. Instead, we should just use the\nfip-\u003ectl_src_addr, which is the NETDEV_HW_ADDR_T_SAN if LLD supports it or it\nis just the netdev-\u003edev_addr if it does not.\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": "5bab87e6d465d54a2b5899e0f583d42f00dbee2e",
      "tree": "77a7efbf8165b0eff95cee4ba795ab35598cb97a",
      "parents": [
        "bf361707c81f8e8e43e332bfc8838bae76ae021a"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Tue Nov 03 11:49:43 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:22 2009 -0600"
      },
      "message": "[SCSI] fcoe: Fix getting san mac for VLAN interface\n\nMake sure we are get the SAN MAC address from the real netdev if the input\nnetdev is a VLAN device.\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": "bf361707c81f8e8e43e332bfc8838bae76ae021a",
      "tree": "1a1a5ca9a40011a59228ae0819cbef255d1f9b14",
      "parents": [
        "76d8737c9dda1593d52887c8a11bf3359e447896"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Tue Nov 03 11:49:38 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:21 2009 -0600"
      },
      "message": "[SCSI] fcoe: Fix checking san mac address\n\nThis was fixed before in 7a7f0c7 but it\u0027s introduced again recently.\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": "386309ce927a308d7742a6fb24a536d3383fbd49",
      "tree": "4e8ddbb895e5bd837020896a1c2505ea8bc3159b",
      "parents": [
        "e6d8a1b0b53a156979120dd0593c1867b8ea89d3"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 03 11:49:16 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:18 2009 -0600"
      },
      "message": "[SCSI] libfcoe: fcoe: simplify receive FLOGI response\n\nThere was a locking problem where the fip-\u003elock was held during\nthe call to update_mac().  The rtnl_lock() must be taken before\nthe fip-\u003elock, not the other way around.  This fixes that.\n\nNow that fcoe_ctlr_recv_flog() is called only from the response handler\nto a FLOGI request, some checking can be eliminated.  Instead of calling\nupdate_mac(), just fill in the granted_mac address for the passed-in\nframe (skb).\n\nEliminate the passed-in source MAC address since it is also in the skb.\n\nAlso, in fcoe, call fcoe_set_src_mac() directly instead of going thru\nthe fip function pointer.  This will generate less code.\nThen, since fip isn\u0027t needed for LOGO response, use lport as the arg.\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": "59d925168457805572f40fb12bd399e89775b3ff",
      "tree": "ca5455d57867826c44dcf5ad4d20f502f8dbeed3",
      "parents": [
        "4e5ad003ae07999593bb58ffb7ea646700647390"
      ],
      "author": {
        "name": "john fastabend",
        "email": "john.r.fastabend@intel.com",
        "time": "Tue Nov 03 11:48:44 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:15 2009 -0600"
      },
      "message": "[SCSI] fcoe: add check to fail gracefully in bonding mode\n\nThis patch adds a check to fail gracefully when the netdevice\nis bonded.  Previously, the error was detected but the stack\nwould continue to load.  This resulted in a partially enabled\nfcoe intance and errors when the fcoe instance was destroy.\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 \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "4e5ad003ae07999593bb58ffb7ea646700647390",
      "tree": "3e9b22e04067df6deac47f5a7226322b7a189143",
      "parents": [
        "f31f2a1c3215e96fbff2152486d0fb590f72634e"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Tue Nov 03 11:48:39 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:14 2009 -0600"
      },
      "message": "[SCSI] fcoe: remove extra function decalrations\n\nRemove the two extra function decalartions in fcoe.c.\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": "f31f2a1c3215e96fbff2152486d0fb590f72634e",
      "tree": "642901f9b176d90fa6851d83cac7add03a46c968",
      "parents": [
        "dd42dac4ecd1799077c132aab35d3c36b26d4d8c"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 03 11:48:32 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:13 2009 -0600"
      },
      "message": "[SCSI] libfcoe: don\u0027t send ELS in FIP mode if no FCF selected\n\nIf link is up, but no FCF is selected, don\u0027t send any ELS frames.\n\nThis came up when an fnic received a multicast advertisement but\nno solitited advertisments, so no FCF was selected.  It tried\nto send FLOGIs anyway.\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": "dd42dac4ecd1799077c132aab35d3c36b26d4d8c",
      "tree": "d3ca67f50eccef31071bfe26e09bf97c686bc088",
      "parents": [
        "1f4aed818d26eb9ed54520fbeb85d5ee691baa94"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 03 11:48:27 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:13 2009 -0600"
      },
      "message": "[SCSI] libfcoe: FIP should report link to libfc whether selected or not\n\nThe fnic driver with FIP is reporting link up, even though it\u0027s down.\n\nWhen the interface is shut down by the switch, we receive a clear\nvirtual link, and set the state reported to libfc as down, although\nwe still report it up.  Clearly wrong.  That causes the subsequent\nlink down event not to be reported, and /sys shows the host \"Online\".\n\nCurrently, in FIP mode, if an FCF times out, then link to libfc\nis reported as down, to stop FLOGIs.  That interferes with the LLD\nlink down being reported.\n\nUsers really need to know the physical link information, to diagnose\ncabling issues, so physical link status should be reported to libfc.\n\nIf the selected FCF needs to be reported, that should be done\nseparately, in a later 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": "1f4aed818d26eb9ed54520fbeb85d5ee691baa94",
      "tree": "986d728fb5d4550cf35bff4f9629633b667e5f13",
      "parents": [
        "0f51c2e54c0bfdb6b02c53f6d7dd9b35f91821b6"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 03 11:48:22 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:12 2009 -0600"
      },
      "message": "[SCSI] libfcoe: fip: allow FIP receive to be called from IRQ.\n\nFIP\u0027s fcoe_ctlr_recv() function was previously only called from\nthe soft IRQ in FCoE.  It\u0027s not performance critical and is more\nconvenient for some drivers to call it from the IRQ level.  Just\nChange to use skb_queue()/dequeue() which uses spinlock_irqsave\ninstead of separate locking with _bh locks.\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": "0f51c2e54c0bfdb6b02c53f6d7dd9b35f91821b6",
      "tree": "6acd2bbd203d396faee96c75d37f7097cec11474",
      "parents": [
        "22bcd225bfe2107725228758137d2109befa942a"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 03 11:48:16 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:12 2009 -0600"
      },
      "message": "[SCSI] libfcoe: fip: use SCSI host number to identify debug messages.\n\nUse scsi host number to identify debug messages.\nPreviously, no instance information was given, so if multiple\nports were active, it became confusing.\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": "22bcd225bfe2107725228758137d2109befa942a",
      "tree": "48ae2ad5151e55f066fa8006605f06615f00a74d",
      "parents": [
        "84c3e1ad08d4be018a95e7a9964bf3dbc8cf8857"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Nov 03 11:48:11 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:11 2009 -0600"
      },
      "message": "[SCSI] libfcoe: Allow FIP to be disabled by the driver\n\nAllow FIP to be disabled by the driver for devices\nthat want to use libfcoe in non-FIP mode.\n\nThe driver merely sets the fcoe_ctlr mode to the state which\nshould be entered when the link comes up.  The default is auto.\nNo change is needed for fcoe.c which uses auto 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": "1875f27e291d05711f15a8a3d486abfeaf385931",
      "tree": "7eb368cbc6fcec3a3859c2da092e79daf3bd68d2",
      "parents": [
        "70b51aabf3b03fbf8d61c14847ccce4c69fb0cdd"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Nov 03 11:47:50 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:08 2009 -0600"
      },
      "message": "[SCSI] fcoe: Formatting cleanups and commenting\n\nAdded kernel-doc comment blocks to all structures and functions.\n\nRenamed fc_lport instances rom lp to lport to be inline with our\nnaming convention.\n\nRenamed all misnamed net_device instances to netdev to be inline\nwith our naming convention.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "70b51aabf3b03fbf8d61c14847ccce4c69fb0cdd",
      "tree": "fbb86fc791fccbfdcd931ec37409d8da2c88c81c",
      "parents": [
        "3a3b42bf89a9b90ae9ed2c57fdc378e5473a0ef9"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Nov 03 11:47:45 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:07 2009 -0600"
      },
      "message": "[SCSI] libfcoe: formatting and comment cleanups\n\nEnsures that there are kernel-doc style comments for all\nroutines and structures.\n\nThere were also a few instances of fc_lport\u0027s named \u0027lp\u0027\nwhich were switched to \u0027lport\u0027 as per the libfc/libfcoe/fcoe\nnaming convention.\n\nAlso, emacs \u0027indent-region\u0027 and \u0027tabify\u0027 were ran on libfcoe.c.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "a51ab39606042e76a483547620699530caa12c40",
      "tree": "d67261f7a13b7c9ad1d9d69d4aeefe899eef0066",
      "parents": [
        "5868287460b0fc243e828a0b856cd53d8bf45739"
      ],
      "author": {
        "name": "Steve Ma",
        "email": "steve.ma@intel.com",
        "time": "Tue Nov 03 11:47:34 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:06 2009 -0600"
      },
      "message": "[SCSI] libfc, fcoe: Add FC passthrough support\n\nThis is the Open-FCoE implementation of the FC\npassthrough support via bsg interface.\n\nPassthrough support is added to both N_Ports and\nVN_Ports.\n\nSigned-off-by: Steve Ma \u003csteve.ma@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": "dc8596d303bb306da9ab5326fa6209710de86b8b",
      "tree": "c9f747013ecf23b966e057daf0b7cb87e6495f99",
      "parents": [
        "c914f7d16df6420cfd4c09399957425ba9c21f47"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Nov 03 11:47:18 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:04 2009 -0600"
      },
      "message": "[SCSI] fcoe: vport symbolic name support\n\nAllow a vport specific string to be appended to the port symbolic\nname.  The new symbolic name is sent to the name server after it\nis set.\n\nThis currently messes with libhbalinux, which is looking for\nthe fcoe \"fcoe \u003cver\u003e over \u003cethX\u003e\" string and expects whatever\ncomes after the \"over\" to be a network interface name only.\n\nAdds an EXPORT_SYMBOL to libfc for fc_frame_alloc_fill, which is\nneeded to allow fcoe to allocate a frame of variable length for\nthe RSPN request.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "5baa17c3e66fc2e414f501b2dd59b962dfc64919",
      "tree": "8194fcceb647f6740bdf6350da2a2d9dc393ae3e",
      "parents": [
        "c9c7bd7a5e7321aa96289c9b48fdbcc828c105e6"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Nov 03 11:46:56 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:01:02 2009 -0600"
      },
      "message": "[SCSI] libfc: Register Symbolic Node Name (RSNN_NN)\n\nRegister the fc_host symbolic name as the symbolic node name\nwith the fabric name server.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "9a05753b23c171b6a45e393ec2b9bc034d31bec8",
      "tree": "ffef20c5d7e6ee5c25a0f18cedca0fff7dbb30e1",
      "parents": [
        "e9084bb8b4414dc1cfb840ac5a86fac23fccd013"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Nov 03 11:46:40 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:59 2009 -0600"
      },
      "message": "[SCSI] fcoe: NPIV vport create/destroy\n\nAdd NPIV vport create and destroy handlers and register them with the\nFC transport.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "e9084bb8b4414dc1cfb840ac5a86fac23fccd013",
      "tree": "7d94b7f51242ef8f18b0d21d21df3b2d0dbce20b",
      "parents": [
        "11b561886643d4e23d0fd58c205d830a448dd0a2"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Nov 03 11:46:34 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:59 2009 -0600"
      },
      "message": "[SCSI] fcoe: add a separate scsi transport template for NPIV vports\n\nRight now it\u0027s exactly the same as the physical port template,\nand there is no way to create a port on anything other than the\nnetdev.  When the vport_create entry point gets hooked up it will\ncreate lports on top of vport devices, which will use this.\n\nRename scsi_transport_fcoe_sw to fcoe_transport_template to be more\nclear with naming now that there are two templates.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "11b561886643d4e23d0fd58c205d830a448dd0a2",
      "tree": "3d28650e6727589dd672ea3985d2aa2643a99549",
      "parents": [
        "db36c06cc6802d03bcba08982377f7c03a3cda7f"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Nov 03 11:46:29 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:58 2009 -0600"
      },
      "message": "[SCSI] libfcoe, fcoe: libfcoe NPIV support\n\nThe FIP code in libfcoe needed several changes to support NPIV\n\n1) dst_src_addr needs to be managed per-n_port-ID for FPMA fabrics with NPIV\n   enabled.  Managing the MAC address is now handled in fcoe, with some slight\n   changes to update_mac() and a new get_src_addr() function pointer.\n\n2) The libfc elsct_send() hook is used to setup FCoE specific response\n   handlers for FIP encapsulated ELS exchanges.  This lets the FCoE specific\n   handling know which VN_Port the exchange is for, and doesn\u0027t require\n   tracking OX_IDs.  It might be possible to roll back to the full FIP frame\n   in these, but for now I\u0027ve just stashed the contents of the MAC address\n   descriptor in the skb context block for later use.  Also, because\n   fcoe_elsct_send() just passes control on to fc_elsct_send(), all transmits\n   still come through the normal frame_send() path.\n\n3) The NPIV changes added a mutex hold in the keep alive sending, the lport\n   mutex is protecting the vport list.  We can\u0027t take a mutex from a timer,\n   so move the FIP keep alive logic to the link work struct.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "db36c06cc6802d03bcba08982377f7c03a3cda7f",
      "tree": "9a9ad60bd0de059f1839b8bab2cfc555d0ca56d1",
      "parents": [
        "8faecddb212d502b1b77936498b9a82b13c4ff44"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Nov 03 11:46:24 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:57 2009 -0600"
      },
      "message": "[SCSI] libfc, libfcoe: FDISC ELS for NPIV\n\nAdd FDISC ELS handling to libfc and libfcoe, treat it the same as FLOGI where\nappropriate.\n\nAdd checking for NPIV support in the FLOGI LS_ACC service parameters.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "86221969e20a2f60ce104160dc836a964974673b",
      "tree": "83f40bc6490feddd18fe9650cbc3b61f0fb7b2e2",
      "parents": [
        "93e6d5ab9969a9200752658677eafd96772302f0"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Nov 03 11:46:08 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:56 2009 -0600"
      },
      "message": "[SCSI] libfc: changes to libfc_host_alloc to consolidate initialization with allocation\n\nI\u0027d like to keep basic initialization together with allocation, which means\nthis can\u0027t just be a tail-call to scsi_host_alloc.\n\nThis is needed to create a generic libfc host allocation routine for NPIV\nVN_Ports, which will share the exchange ID space (through sharing exchange\nmanager structures) with the parent lport.  In order to clone the exchange\nmanager list when the lport is allocated, the list head must be initialized\nearlier.\n\nAlso, update fnic to use the libfc_host_alloc so that later changes do not break\nit. (contribution by Joe Eykholt)\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "2171c225f641c5402e4c47180d791a612278040e",
      "tree": "f81ae2e6329c42b75b024c0561cf706c16abef79",
      "parents": [
        "2e76f7670b33a3b0bdf015ed1459e4b417a40ce0"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Nov 03 11:45:42 2009 -0800"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:53 2009 -0600"
      },
      "message": "[SCSI] fcoe: Increase FCOE_MAX_LUN to 0xFFFF (65535)\n\nThe maximum number of LUNs was far too low. This value is\nwhat most other FC HBAs are using.\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "14caf44c69184ed72d46a2f883311daf27a4192f",
      "tree": "cdfdf95ea884116de6595cc8d89482b89ba8ccaa",
      "parents": [
        "5c20848a096fb1880ded99816be79d78ca1cd696"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Thu Oct 15 17:46:55 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:43 2009 -0600"
      },
      "message": "[SCSI] fcoe, libfc: fix an libfc issue with queue ramp down in libfc\n\nThe cmd_per_lun value is used by scsi-ml as fall back lowest\nqueue_depth value but in case of libfc cmd_per_lun is set to\nsame value as max queue_depth \u003d 32.\n\nSo this patch reduces cmd_per_lun value to 3 and configures\neach lun with default max queue_depth 32 in fc_slave_alloc.\n\nSigned-off-by: Vasu Dev \u003cvasu.dev@intel.com\u003e\nAcked-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "b7a727f1af953b00352d3a4b6c458c6e2872f94b",
      "tree": "a0ac9838d71b3690c9947f77ba8aa96d84bdbfed",
      "parents": [
        "d37322a43ebac79eef417149f5696390cf8872db"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Wed Oct 21 16:28:03 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:33 2009 -0600"
      },
      "message": "[SCSI] fcoe: Call ndo_fcoe_enable/disable to turn FCoE feature on/off in LLD\n\nCalls ndo_fcoe_enabled() of the associated netdev upon creating the FCoE\ninstance to make sure LLD has all necessary resources allocated and setup\nproperly before passing FCoE traffic. Similarly, calls ndo_fcoe_disable()\nupon destroying the FCoE instance on the associated netdev to allow the LLD\nto release all allocated resources for FCoE.\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": "7221d7e59d1c675828b6de50b757cd8282011a5d",
      "tree": "2de8290538954a973c33db0c8887aa1c44137993",
      "parents": [
        "8eca355fa8af660557fbdd5506bde1392eee9bfe"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Wed Oct 21 16:27:52 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:32 2009 -0600"
      },
      "message": "[SCSI] fcoe: Use NETIF_F_FCOE_MTU flag to set up max frame size (lport-\u003emfs)\n\nAdd a define of FCOE_MTU as 2158 bytes and use FCOE_MTU when the LLD is found\nto support NETIF_F_FCOE_MTU. The lport-\u003emfs is then calculated out of the\n2158 FCOE_MTU. Otherwise, we stick with the netdev-\u003emtu, i.e., LAN MTU. Also,\nchange the notification on NETDEV_CHANGEMTU event to bypass changing mfs when\nLAN MTU is changed if NETIF_F_FCOE_MTU is supported.\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": "8eca355fa8af660557fbdd5506bde1392eee9bfe",
      "tree": "9c42e36295ad001aa4d898ae890be1d8d68b20d8",
      "parents": [
        "e95147d8fa4e63bf6d8ff249f074d0047338fc61"
      ],
      "author": {
        "name": "Mike Christie",
        "email": "michaelc@cs.wisc.edu",
        "time": "Wed Oct 21 16:27:44 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:31 2009 -0600"
      },
      "message": "[SCSI] fcoe: initialize return value in fcoe_destroy\n\nWhen doing echo ethX \u003e /sys..../destroy I am getting\nerrors when the tear down succeeds. It looks like the\nreason for this is because the rc var is not getting set\nwhen the destruction works. This just sets it to zero.\n\nSigned-off-by: Mike Christie \u003cmichaelc@cs.wisc.edu\u003e\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "b04d023cf5b7f4113cc4a09405c2fe8003bfe37d",
      "tree": "d77f65c9d6f1e9f1213831f3af716ff23973fbaa",
      "parents": [
        "5e472d077f45de4f37365171bd742f18b3ef20de"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Wed Oct 21 16:26:55 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Fri Dec 04 12:00:24 2009 -0600"
      },
      "message": "[SCSI] fcoe: remove redundant checking of netdev-\u003enetdev_ops\n\nRemove the redundant checking of netdev-\u003enetdev_ops as it will never be NULL.\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": "39558c8f8e4c48805e702340e1610961d922268a",
      "tree": "c8ef87b64492e98ab6fb0e423cdbef5cb9acccfc",
      "parents": [
        "fcf989216138858003f0c354698260f29e6e10b0"
      ],
      "author": {
        "name": "Jaswinder Singh Rajput",
        "email": "jaswinderrajput@gmail.com",
        "time": "Sun Sep 20 15:20:55 2009 +0530"
      },
      "committer": {
        "name": "Jaswinder Singh Rajput",
        "email": "jaswinderrajput@gmail.com",
        "time": "Sun Sep 20 16:01:02 2009 +0530"
      },
      "message": "includecheck fix: drivers/scsi, libfcoe.c\n\nfix the following \u0027make includecheck\u0027 warning:\n\n  drivers/scsi/fcoe/libfcoe.c: linux/netdevice.h is included more than once.\n\nSigned-off-by: Jaswinder Singh Rajput \u003cjaswinderrajput@gmail.com\u003e\nCc: James Bottomley \u003cJames.Bottomley@HansenPartnership.com\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nLKML-Reference: \u003c1247066936.4382.76.camel@ht.satnam\u003e\n"
    },
    {
      "commit": "e7a51997dad4e17395be1209970e18d2e9305b24",
      "tree": "153db22788bdd7302c6bd58f91a5d5c0da0a4ab6",
      "parents": [
        "1d490ce33ee8b93638d09e471a3bc66ae33b6606"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Aug 25 14:04:08 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:08:04 2009 -0500"
      },
      "message": "[SCSI] fcoe: flush per-cpu thread work when destroying interface\n\nThis fixes one cause of an occational problem when unloading\nlibfc where the exchange manager pool doesn\u0027t have all items freed.\n\nThe existing WARN_ON(mp-\u003etotal_exches \u003c\u003d 0) isn\u0027t hit.\nHowever, note that total_exches is decremented when the\nexchange is completed, and it can be held with a refcnt\nfor a while after that.\n\nI\u0027m not sure what the offending exchange is, but I suspect\nit is an incoming request, because outgoing state machines\nshould be all stopped at this point.\n\nNote that although receive is stopped before the exchange\nmanager is freed, there could still be active threads\nhandling received frames.\n\nThis patch flushes the queues by allocating a new skb\nand sending it through, and have the thread handle\nthis new skb specially.  This is similar to the way the work\nqueues are flushed now by putting work items in them and waiting\nuntil they make it through the queue.\n\nAn skb-\u003edestructor function is used to inform us of\nthe completion of the flush, and the fr_dev() is left\nNULL to indicate to fcoe_percpu_receive_thread() that\nthe skb should be just freed.  There\u0027s already a check\nfor the lp being NULL which prints a message.\nWe skip printing the message if the destructor is for flushing.\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": "090eb6c41aa74273d3f0721637cff738cfd80669",
      "tree": "5789214aa7d85e67901b619bee48429db1009aae",
      "parents": [
        "2e70e2415193b84c1b79ec373af15c3f280ad7c4"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 14:00:28 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:38 2009 -0500"
      },
      "message": "[SCSI] fcoe: use rtnl mutex in place of hostlist lock\n\nThis just cuts down on the number of locks we\u0027re dealing with, and\neliminates the need to take another lock in the netdev notifier.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "2e70e2415193b84c1b79ec373af15c3f280ad7c4",
      "tree": "84799295b00350f3fa33ca3becd7511d07e97791",
      "parents": [
        "c863df33bb784eecfb24090d2258fa0d3f653750"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 14:00:23 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:38 2009 -0500"
      },
      "message": "[SCSI] fcoe: Fix module ref count bug by adding NETDEV UNREGISTER handling\n\nFixes reference counting on fcoe_instance and net_device, and adds\nNETDEV_UNREGISTER notifier handling so that you can unload network drivers.\nFCoE no longer increments the module use count for the network driver.\n\nOn an NETDEV_UNREGISTER event, destroying the FCoE instance is deferred to a\nworkqueue context to avoid RTNL deadlocks.\n\nBased in part by an earlier patch from John Fastabend\n\nJohn\u0027s patch description:\nCurrently, the netdev module ref count is not decremented with module_put()\nwhen the module is unloaded while fcoe instances are present. To fix this\nremoved reference count on netdev module completely and added functionality to\nnetdev event handling for NETDEV_UNREGISTER events.\n\nThis allows fcoe to remove devices cleanly when the netdev module is unloaded\nso we no longer need to hold a reference count for the netdev module.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "c863df33bb784eecfb24090d2258fa0d3f653750",
      "tree": "a0301e302a8ee4dff265e4ab270821c4b4366e25",
      "parents": [
        "dfc1d0fe3a8b2139295600ab519f24059493e6f6"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 14:00:18 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:37 2009 -0500"
      },
      "message": "[SCSI] fcoe: move the host-list add/remove to keep out VN_Ports\n\nWe only want the FCoE create and destroy routines to deal with top level\nN_Ports, the VN_Ports are tracked on the vport list (see scsi_transport_fc).\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "dfc1d0fe3a8b2139295600ab519f24059493e6f6",
      "tree": "a26f1913bfe754700cf3ef38096d4c17bbbc321c",
      "parents": [
        "54b649f88eb17a29687bece4b8ad7d72d99e2d95"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 14:00:13 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:36 2009 -0500"
      },
      "message": "[SCSI] fcoe: add mutex to protect create and destroy\n\nRather than rely on the hostlist_lock to be held while creating exchange\nmanagers, serialize fcoe instance creation and destruction with a mutex.\nThis will allow the hostlist addition to be moved out of fcoe_if_create(),\nwhich will simplify NPIV support.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "54b649f88eb17a29687bece4b8ad7d72d99e2d95",
      "tree": "0057186411aae1ad53268c127effa65f16f454e0",
      "parents": [
        "030f4e001f13e0ee80bac1e756013341b1674d10"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 14:00:07 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:35 2009 -0500"
      },
      "message": "[SCSI] fcoe: split out per interface setup\n\nfcoe_netdev_config() is called during initialization of a libfc instance.\nMuch of what was there only needs to be done once for each net_device.\nThe same goes for the corresponding cleanup.\n\nThe FIP controller initialization is moved to interface creation time.\nOtherwise it will keep getting re-initialized for every VN_Port once NPIV is\nenabled.\n\nfcoe_if_destroy() has some reordering to deal with the changes.  Receives are\nnot stopped until after fcoe_interface_put() is called, but transmits must be\nstopped before.  So there is some care to stop libfc transmits and the\ntransmit backlog timer, then call fcoe_interface_put which will stop receives\nand cleanup the FIP controller, then the receive queues can be cleaned and the\nport freed.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "030f4e001f13e0ee80bac1e756013341b1674d10",
      "tree": "042791ba7bc3d9f2543abf33c511034421c97178",
      "parents": [
        "cb0a6ca81439a9f113d3b46de0953da168a06f6a"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 14:00:02 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:35 2009 -0500"
      },
      "message": "[SCSI] fcoe: fcoe_interface create, destroy and refcounting\n\nUp to this point the fcoe_instance structure was simply kzalloc/kfreed.  This\npatch introduces create and destroy functions as well as kref based reference\ncounting.  The create function will grow as the initialization code is moved\nthere.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "cb0a6ca81439a9f113d3b46de0953da168a06f6a",
      "tree": "010d64aa995198e6cabec0968bdcdab341b32a94",
      "parents": [
        "991cbb6082db3025bd82908eb9ee2d2920be2114"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 13:59:56 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:34 2009 -0500"
      },
      "message": "[SCSI] fcoe: remove fcoe_interface-\u003epriv pointer\n\nThe priv pointer is no longer needed, and once NPIV is enabled\nfcoe_interface:fc_lport becomes a one-to-many relationship.\n\nRemove the single pointer.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "991cbb6082db3025bd82908eb9ee2d2920be2114",
      "tree": "74f2a5f22c0a9bb20b5430e7019d24723988b4ff",
      "parents": [
        "3fe9a0badae7fa2eb35eff4f07e851fbd25e3d4f"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 13:59:51 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:33 2009 -0500"
      },
      "message": "[SCSI] fcoe: move offload exchange manager pointer from fcoe_port to fcoe_interface\n\nThe offload EM pointer is only used when setting up a new libfc instance, but\nas it\u0027s designed to be shared among NPIV VN_Ports it should be tracked in\nfcoe_interface.\n\nWith the host-list changed to track fcoe_interfaces as well, this is needed\nbefore we can remove the priv pointer from that structure (which is only there\nto help in the transition, and stops making sense once NPIV is enabled).\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "3fe9a0badae7fa2eb35eff4f07e851fbd25e3d4f",
      "tree": "0ba5615fc7b696b6489b8417a2a5c9915bdf1d4c",
      "parents": [
        "259ad85d8dbbcd508e3dad29a36e3e76365853b7"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 13:59:46 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:33 2009 -0500"
      },
      "message": "[SCSI] fcoe: move FIP controller from fcoe_port to fcoe_interface\n\nThere is only one FIP state per net_device, so the FIP controller needs to be\nmoved from the per-SCSI-host fcoe_port to the per-net_device fcoe_interface\nstructure.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "259ad85d8dbbcd508e3dad29a36e3e76365853b7",
      "tree": "4330e34aea6c87aa09264d1e0d548b5bcfcb8b0f",
      "parents": [
        "250249898a92a1228050f40fbe3c05deb1392da8"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 13:59:41 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:32 2009 -0500"
      },
      "message": "[SCSI] fcoe: move packet handlers from fcoe_port to fcoe_interface\n\nThe packet handlers need to be tracked in fcoe_interface so there is only one\nset per net_device.  When NPIV is enabled there will be multiple SCSI hosts\nand multiple fcoe_port structures on a single net_device.\n\nThe packet handlers match by ethertype and netdev.  If the same handler gets\nregistered on a single netdev multiple times, the receive function will be\ncalled multiple times for each frame.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "250249898a92a1228050f40fbe3c05deb1392da8",
      "tree": "37835c6c378c1024b1f0e3a4432d63011b3f3e61",
      "parents": [
        "014f5c3f560a336cb8ad5b9f828c85de0398e7bb"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 13:59:35 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:32 2009 -0500"
      },
      "message": "[SCSI] fcoe: move netdev to fcoe_interface\n\nThe network interface needs to be shared between all NPIV VN_Ports, therefor\nit should be tracked in the fcoe_interface and not for each SCSI host in\nfcoe_port.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "014f5c3f560a336cb8ad5b9f828c85de0398e7bb",
      "tree": "0b51f21ec8690a0a416e3f8c12eec8e3391b2778",
      "parents": [
        "af7f85d95a34b04f5cf8c3b8c2d4cdd179dc1e19"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 13:59:30 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:31 2009 -0500"
      },
      "message": "[SCSI] fcoe: Introduce and allocate fcoe_interface structure, 1:1 with net_device\n\nIn preparation for NPIV support, I\u0027m splitting the fcoe instance structure\ninto two to remove the assumptions about it being 1:1 with the net_device.\nThere will now be two structures, one which is 1:1 with the underlying\nnet_device and one which is allocated per virtual SCSI/FC host.\n\nfcoe_softc is renamed to fcoe_port for the per Scsi_Host FCoE private data.\n\nLater patches with start moving shared stuff from fcoe_port to fcoe_interface\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "af7f85d95a34b04f5cf8c3b8c2d4cdd179dc1e19",
      "tree": "59e0eae4a609f89dac651c5d59a797b44b9ce773",
      "parents": [
        "36eb7fc872bdd7f7443ce24a718784bfa567f6c7"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 13:59:24 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:31 2009 -0500"
      },
      "message": "[SCSI] fcoe: interface changes to fcoe_if_create and fcoe_if_destroy\n\nBy passing in the parent device instead of assuming the netdev is what\nshould be used, fcoe_if_create becomes usable for NPIV vports as well.\nYou still need a netdev, because that\u0027s how FCoE works.  Also removed some\nduplicate checks from fcoe_if_create that are already in fcoe_create.\n\nfcoe_if_destroy needs to take an lport as it\u0027s only argument, not a netdev.\nThat removes the 1:1 netdev:lport assumption from the destroy path.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "36eb7fc872bdd7f7443ce24a718784bfa567f6c7",
      "tree": "54ec06f3a60f02d297df0e0bb3c4741ba82cd354",
      "parents": [
        "5892c32f8a2d5a37d4c2ff1df62f6e8a2664abdb"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Aug 25 13:59:19 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:29 2009 -0500"
      },
      "message": "[SCSI] fcoe: remove unnecessary list and lock initializations.\n\nThe hostlist and the hostlist_lock were initialized both in\nthe delcaration and in fcoe_init().  Remove the unneeded code.\n\nSigned-off-by: Joe Eykholt \u003cjeykholt@cisco.com\u003e\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "5892c32f8a2d5a37d4c2ff1df62f6e8a2664abdb",
      "tree": "5eeecbafec68e1d9ec2958f888c12736b6a438c8",
      "parents": [
        "a4b7cfaee487caef913be978dce60896fe741268"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 13:59:14 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:28 2009 -0500"
      },
      "message": "[SCSI] fcoe: fix missing error check in call to fcoe_if_init\n\nfcoe_if_init() can fail, but it\u0027s return value wasn\u0027t checked\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "a4b7cfaee487caef913be978dce60896fe741268",
      "tree": "42de6baeef3390b94b1cb99a05cc4c44d94cefce",
      "parents": [
        "05cc7390735c49357b9ae67bf97f1c1579547f5b"
      ],
      "author": {
        "name": "Chris Leech",
        "email": "christopher.leech@intel.com",
        "time": "Tue Aug 25 13:59:08 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:28 2009 -0500"
      },
      "message": "[SCSI] libfcoe: fcoe_ctlr_destroy use cancel_work_sync instead of flush_work\n\nUse cancel_work_sync() in place of flush_work(), so that\nfcoe_ctlr_destroy() can be called from a workqueue.\n\nAlso, purge the receive queue after the recv_work has been cancled because\nif recv_work isn\u0027t run it\u0027s not guaranteed to be empty now.\n\nSigned-off-by: Chris Leech \u003cchristopher.leech@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": "05cc7390735c49357b9ae67bf97f1c1579547f5b",
      "tree": "350ec608799ade3d3ad8000c45008bc948542aaa",
      "parents": [
        "b2f0091fbf8b475fa09b5e1712e0ab84cb3e1ca4"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Tue Aug 25 13:59:03 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Thu Sep 10 12:07:27 2009 -0500"
      },
      "message": "[SCSI] fcoe: Add sysfs parameter to fcoe for minimum DDP read I/O size\n\nThis adds fcoe_ddp_min as a module parameter for fcoe module to:\n/sys/module/fcoe/parameters/ddp_min\n\nIt is observed that for some hardware, particularly Intel 82599, there is too\nmuch overhead in setting up context for direct data placement (DDP) read when\nthe requested read I/O size is small. This is added as a module parameter for\nperformance tuning and is set as 0 by default and user can change this based\non their own hardware.\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": "b2f0091fbf8b475fa09b5e1712e0ab84cb3e1ca4",
      "tree": "98d3427aaae0b3d20d5fd077023b4ea23f5b575c",
      "parents": [
        "e4bc50bedf0dd6c63f20a7bc0a2b46667664fba1"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Tue Aug 25 13:58:53 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 09:47:37 2009 -0500"
      },
      "message": "[SCSI] fcoe, libfc: fully makes use of per cpu exch pool and then removes em_lock\n\n1. Updates fcoe_rcv() to queue incoming frames to the fcoe per\n   cpu thread on which this frame\u0027s exch was originated and simply\n   use current cpu for request exch not originated by initiator.\n   It is redundant to add this code under CONFIG_SMP, so removes\n   CONFIG_SMP uses around this code.\n\n2. Updates fc_exch_em_alloc, fc_exch_delete, fc_exch_find to use\n   per cpu exch pools, here fc_exch_delete is rename of older\n   fc_exch_mgr_delete_ep since ep/exch are now deleted in pools\n   of EM and so brief new name is sufficient and better name.\n\n   Updates these functions to map exch id to their index into exch\n   pool using fc_cpu_mask, fc_cpu_order and EM min_xid.\n   This mapping is as per detailed explanation about this in\n   last patch and basically this is just as lower fc_cpu_mask\n   bits of exch id as cpu number and upper bit sum of EM min_xid\n   and exch index in pool.\n\n   Uses pool next_index to keep track of exch allocation from\n   pool along with pool_max_index as upper bound of exches array\n   in pool.\n\n3. Adds exch pool ptr to fc_exch to free exch to its pool in\n   fc_exch_delete.\n\n4. Updates fc_exch_mgr_reset to reset all exch pools of an EM,\n   this required adding fc_exch_pool_reset func to reset exches\n   in pool and then have fc_exch_mgr_reset call fc_exch_pool_reset\n   for each pool within each EM for a lport.\n\n5. Removes no longer needed exches array, em_lock, next_xid, and\n   total_exches from struct fc_exch_mgr, these are not needed after\n   use of per cpu exch pool, also removes not used max_read,\n   last_read from struct fc_exch_mgr.\n\n6. Updates locking notes for exch pool lock with fc_exch lock and\n   uses pool lock in exch allocation, lookup and reset.\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": "e4bc50bedf0dd6c63f20a7bc0a2b46667664fba1",
      "tree": "43f4e7a1d1fb5c042330c07cd0209f1b0eb92fb5",
      "parents": [
        "a69b06bc5e7b153043db8984564b731f99e014fc"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Tue Aug 25 13:58:47 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 09:47:36 2009 -0500"
      },
      "message": "[SCSI] fcoe, libfc: adds per cpu exch pool within exchange manager(EM)\n\nAdds per cpu exch pool for these reasons:-\n\n 1. Currently an EM instance is shared across all cpus to manage\n    all exches for all cpus. This required em_lock across all\n    cpus for an exch alloc, free, lookup and reset each frame\n    and that made em_lock expensive, so instead having per cpu\n    exch pool with their own per cpu pool lock will likely reduce\n    locking contention in fast path for an exch alloc, free and\n    lookup.\n\n 2. Per cpu exch pool will likely improve cache hit ratio since\n    all frames of an exch will be processed on the same cpu on\n    which exch originated.\n\nThis patch is only prep work to help in keeping complexity of next\npatch low, so this patch only sets up per cpu exch pool and related\nhelper funcs to be used by next patch. The next patch fully makes\nuse of per cpu exch pool in all code paths ie. tx, rx and reset.\n\nDivides per EM exch id range equally across all cpus to setup per\ncpu exch pool. This division is such that lower bits of exch id\ncarries cpu number info on which exch originated, later a simple\nbitwise AND operation on exch id of incoming frame with fc_cpu_mask\nretrieves cpu number info to direct all frames to same cpu on which\nexch originated. This required a global fc_cpu_mask and fc_cpu_order\ninitialized to max possible cpus number nr_cpu_ids rounded up to 2\u0027s\npower, this will be used in mapping exch id and exch ptr array\nindex in pool during exch allocation, find or reset code paths.\n\nAdds a check in fc_exch_mgr_alloc() to ensure specified min_xid\nlower bits are zero since these bits are used to carry cpu info.\n\nAdds and initializes struct fc_exch_pool with all required fields\nto manage exches in pool.\n\nAllocates per cpu struct fc_exch_pool with memory for exches array\nfor range of exches per pool. The exches array memory is followed\nby struct fc_exch_pool.\n\nAdds fc_exch_ptr_get/set() helper functions to get/set exch ptr in\npool exches array at specified array index.\n\nIncreases default FCOE_MAX_XID to 0x0FFF from 0x07EF, so that more\nexches are available per cpu after above described exch id range\ndivision across all cpus to each pool.\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": "a69b06bc5e7b153043db8984564b731f99e014fc",
      "tree": "dc80fe815f5045fb01414fc352c237dbcee4fa4f",
      "parents": [
        "cd305ce41be1615dfc72892e0642c6b880f58d95"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Tue Aug 25 13:58:42 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 09:47:34 2009 -0500"
      },
      "message": "[SCSI] fcoe: libfcoe: extra semicolon in CHECK_LOGGING macros causes compile error\n\nIf using code like this:\n\tif (foo)\n\t\tFCOE_DBG(\"foo\\n);\n\telse\n\t\tFCOE_DBG(\"bar\\n\");\n\none gets compile errors because FCOE_DBG expands with its own semicolon,\nmaking one too many for the if-statement.\n\nRemove the offending semicolon in fcoe.h and also a similar case\nin libfcoe.c.\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": "ee610c6701875525d5c61fa6e56ddbf3e645b8df",
      "tree": "e08cce6ba26c2e7c5c8e10b5cb6a69a1a92cafac",
      "parents": [
        "70b31c152dc49ef70bd2b34ad53ccbd9bb4116d4"
      ],
      "author": {
        "name": "Robert Love",
        "email": "robert.w.love@intel.com",
        "time": "Tue Aug 25 13:58:31 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Sep 05 09:47:30 2009 -0500"
      },
      "message": "[SCSI] fcoe: Add format spacing to FCOE_NETDEV_DBG debug macro\n\nThere\u0027s currently no space between the interface name and the\nuser specified format/string. This patch adds a space and a colon\nto the output to separate the interface name and the user\nspecified string.\n\nSo, instead of \"ethXfoo\" it will read \"ethX: foo\".\n\nSigned-off-by: Robert Love \u003crobert.w.love@intel.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "1d1b88dc01e5fd2b3e2abb7aa42d0f1eca4c33ea",
      "tree": "cf08966d7c2f7e81c989b312e173d37ba4a59ef9",
      "parents": [
        "53fcfbbef569819706b880a502ff62e2852edfce"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Wed Jul 29 17:05:45 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Aug 22 17:52:11 2009 -0500"
      },
      "message": "[SCSI] fcoe: removes phys_dev and renames real_dev to netdev.\n\nThe phys_dev was used only to locate common offload EM instance for all\nFCoE instances on a eth devices in function fcoe_em_config, so just updated\nfcoe_em_config to look for actual real eth device in locating common offload\nEM instance and then no need to store phys_dev in fcoe_softc, so removes\nphys_dev from fcoe_softc also.\n\nRenames fcoe_softc real_dev to netdev and updates all its uses to use netdev.\n\nSo effectively no functional change, use of single netdev instead phys_dev\nand real_dev saves one pointer memory in fcoe_softc, also real_dev used here\nwas confusing with vlan driver terminology since real_dev in vlan driver is\nreferred to physical eth device.\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@HansenPartnership.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "15a521b4243f3d61971f8422f3e514ef009a42b8",
      "tree": "caa96b7f39015f500121a0e994a3c6dfc92d6507",
      "parents": [
        "d7179680d04f1e196b7a5f70e7f93bb1850407c6"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Wed Jul 29 17:05:26 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Aug 22 17:52:10 2009 -0500"
      },
      "message": "[SCSI] fcoe: Remove ifdef for NETIF_F_FCOE_CRC and NETIF_F_FSO\n\nRemove the extra ifdef for NETIF_F_FSO and NETIF_F_FCOE_CRC since they are\nalready defined in the current kernel as in include/linux/netdevice.h.\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@HansenPartnership.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "d7179680d04f1e196b7a5f70e7f93bb1850407c6",
      "tree": "e31aaf450afcd7cba0d719178424ece5013964f8",
      "parents": [
        "e8af4d4380babc89d193c16163f070a6418f033b"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Wed Jul 29 17:05:21 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Aug 22 17:52:09 2009 -0500"
      },
      "message": "[SCSI] fcoe, libfc: adds offload EM per eth device with only single xid range per EM\n\nUpdates fcoe_em_config to allocate a single instance of sharable offload\nEM for supported lp-\u003elro_xid per eth device, and then share this EM\nfor subsequently more lports creation on same eth device (e.g when using\nVLAN).\n\nAdds tiny fcoe_oem_match function for offload EM to return true for read\ntypes IO to have read IO exchanges allocated from offload shared EM.\n\nRemoves fc_em_alloc_xid function completely which was needed to manage\ntwo xid ranges within a EM, this is not needed any more with allocation\nof separate sharable offload EM per eth device. Instead this patch adds\nsimple xid allocation logic to manage single xid range.\n\nAdds fc_exch_em_alloc with mp-\u003enext_xid as cursor to allocate new xid\nfrom single xid range of EM, uses mp-\u003enext_xid instead removed mp-\u003elast_xid\nwhich slightly increase probability of finding empty xid on exch allocation.\n\nRemoves restriction of not allowing use of xid zero along with changing\ntwo xid range change to single xid range.\n\nMakes fc_fcp_ddp_setup calling conditional to only xid allocated from\nshared offload EM.\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@HansenPartnership.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "e8af4d4380babc89d193c16163f070a6418f033b",
      "tree": "ea32ede76e22dd02694a53030ea7776170c4166c",
      "parents": [
        "52ff878c912215210f53c0a080552dd6ba3055a2"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Wed Jul 29 17:05:15 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Aug 22 17:52:09 2009 -0500"
      },
      "message": "[SCSI] fcoe: modifies fcoe_hostlist_lock uses as prep work to add shared offload EM\n\nModifies fcoe_hostlist_lock uses such that a new EM allocation in\nfcoe_em_config and adding new fcoe_softc using fcoe_hostlist_add\nare atomic, this is to ensure that a shared offload EM gets allocated\nonly once per eth device for its all lports.\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@HansenPartnership.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "52ff878c912215210f53c0a080552dd6ba3055a2",
      "tree": "efaf0c6a6585aedc02af5faa3b47f4f4685fc783",
      "parents": [
        "d459b7ea1b4c7aa3dacfeee174d02b2f7a95850d"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Wed Jul 29 17:05:10 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Aug 22 17:52:08 2009 -0500"
      },
      "message": "[SCSI] fcoe, fnic, libfc: modifies current code paths to use EM anchor list\n\nModifies current code to use EM anchor list in EM allocation, EM free,\nEM reset, exch allocation and exch lookup code paths.\n\n 1. Modifies fc_exch_mgr_alloc to accept EM match function and then\n    have allocated EM added to the lport using fc_exch_mgr_add API\n    while also updating EM kref for newly added EM.\n\n 2. Updates fc_exch_mgr_free API to accept only lport pointer instead\n    EM and then have this API free all EMs of the lport from EM anchor\n    list.\n\n 3. Removes single lport pointer link from the EM, which was used in\n    associating lport pointer in newly allocated exchange. Instead have\n    lport pointer passed along new exchange allocation call path and\n    then store passed lport pointer in newly allocated exchange, this\n    will allow a single EM instance to be used across more than one\n    lport and used in EM reset to reset only lport specific exchanges.\n\n 4. Modifies fc_exch_mgr_reset to reset all EMs from the EM anchor list\n    of the lport, adds additional exch lport pointer (ep-\u003elp) check for\n    shared EM case to reset exchange specific to a lport requested reset.\n\n 5. Updates exch allocation API fc_exch_alloc to use EM anchor list and\n    its anchor match func pointer. The fc_exch_alloc will walk the list\n    of EMs until it finds a match, a match will be either null match\n    func pointer or call to match function returning true value.\n\n 6. Updates fc_exch_recv to accept incoming frame on local port using\n    only lport pointer and frame pointer without specifying EM instance\n    of incoming frame. Instead modified fc_exch_recv to locate EM for the\n    incoming frame by matching xid of incoming frame against a EM xid range.\n    This change was required to use EM list in libfc Rx path and after this\n    change the lport fc_exch_mgr pointer emp is not needed anymore, so\n    removed emp pointer.\n\n 7. Updates fnic for removed lport emp pointer and above modified libfc APIs\n    fc_exch_recv, fc_exch_mgr_alloc and fc_exch_mgr_free.\n\n 8. Removes exch_get and exch_put from libfc_function_template as these\n    are no longer needed with EM anchor list and its match function use.\n    Also removes its default function fc_exch_get.\n\nA defect this patch introduced regarding the libfc initialization order in\nthe fnic driver was fixed by Joe Eykholt \u003cjeykholt@cisco.com\u003e.\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@HansenPartnership.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "96316099ac3cb259eac2d6891f3c75b38b29d26e",
      "tree": "f4ec7001462bd00340de19b3045063872652c5a6",
      "parents": [
        "201e5795b7b9582accb6d83316e30f24d7d40fd3"
      ],
      "author": {
        "name": "Vasu Dev",
        "email": "vasu.dev@intel.com",
        "time": "Wed Jul 29 17:05:00 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Aug 22 17:52:07 2009 -0500"
      },
      "message": "[SCSI] fcoe, libfc: adds exchange manager(EM) anchor list per lport and related APIs\n\nAdds EM list using a anchor struct fc_exch_mgr_anchor, anchor is used\nto allow same EM instance sharing across more than one lport on a eth\ndevice, this implementation is per discussed design posted at\nhttp://www.open-fcoe.org/pipermail/devel/2009-June/002566.html.\n\nThe shared EM is required for multiple lports on eth device when\nusing multiple VLANs or NPIV.\n\nAdds fc_exch_mgr_add API to add a EM to the lport and fc_exch_mgr_del\nAPI to delete previously added EM.\n\nAlso adds function fc_exch_mgr_destroy() to destroy allocated EM.\nThe kref is added to the EM to keep track of EM usage count, the EM is\ndestroyed when no longer in use upon kref reaching to zero.\n\nThe caller can specify match function to fc_exch_mgr_add, this\nwill be used in determining exchange allocation from its EM or not.\n\nMoved calling of fcoe_em_config below fcoe_libfc_config calling,\nso that list head lp-\u003eema_list is initialized before configuring\nEM.\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@HansenPartnership.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "f161fb72104c7addac3d404a1ff543b2491c1426",
      "tree": "8cee890fee11417429fb2cbd69410f04019d51b6",
      "parents": [
        "7f74549ff630ad444b0b6bbcabf426f781910906"
      ],
      "author": {
        "name": "Joe Eykholt",
        "email": "jeykholt@cisco.com",
        "time": "Wed Jul 29 17:04:17 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Aug 22 17:52:04 2009 -0500"
      },
      "message": "[SCSI] fcoe: stop delivery of received frames before doing lport_destroy()\n\nTo be more sure that no more input arrives at the local port as\nit is being destroyed, clean the queues in the per-cpu receive\nthreads.\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@HansenPartnership.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "2f718d64ecc7010463d36e6ec4ae37778d03fc0b",
      "tree": "db77e1b3ac45cbc8298d05a078b3431eb5af9d7c",
      "parents": [
        "5a84baeaf7b8bb4188219140cb326a3e859b2312"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Wed Jul 29 17:04:01 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Aug 22 17:52:03 2009 -0500"
      },
      "message": "[SCSI] fcoe: Call dev_ethtool_get_settings() in fcoe_link_ok\n\nNo need to check phys_dev here, just call dev_ethtool_get_settings() directly\nwill take care of this.\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@HansenPartnership.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    },
    {
      "commit": "5a84baeaf7b8bb4188219140cb326a3e859b2312",
      "tree": "b584fcb403ed3332be39b85faef2bc0cd25633d7",
      "parents": [
        "7a7f0c7f7a0cbda062d1ff2ff1d3f99d0e41d2af"
      ],
      "author": {
        "name": "Yi Zou",
        "email": "yi.zou@intel.com",
        "time": "Wed Jul 29 17:03:55 2009 -0700"
      },
      "committer": {
        "name": "James Bottomley",
        "email": "James.Bottomley@suse.de",
        "time": "Sat Aug 22 17:52:02 2009 -0500"
      },
      "message": "[SCSI] libfcoe: Set fip_flags according to fcf and lport\u0027s capability of SPMA support\n\nWhen encap the els for FIP, set the fip_flags according to the FCF and lport\u0027s\ncapability of supporting SPMA or FPMA or both.\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@HansenPartnership.com\u003e\nSigned-off-by: James Bottomley \u003cJames.Bottomley@suse.de\u003e\n"
    }
  ],
  "next": "7a7f0c7f7a0cbda062d1ff2ff1d3f99d0e41d2af"
}
