]> git.ipfire.org Git - people/pmueller/ipfire-2.x.git/blob - src/patches/suse-2.6.27.31/patches.drivers/lpfc-8.2.8.12-update
Move xen patchset to new version's subdir.
[people/pmueller/ipfire-2.x.git] / src / patches / suse-2.6.27.31 / patches.drivers / lpfc-8.2.8.12-update
1 From: Jamie Wellnitz <jamie.wellnitz@emulex.com>
2 Subject: Update lpfc from 8.2.8.11 to 8.2.8.12
3 References: bnc#467713
4
5 lpfc 8.2.8.12 fixes a few bugs found in our qual cycle on SLES 11 RC2:
6
7 * Changed version number to 8.2.8.12
8 * Fixed bug with sysfs fc_host WWNs not being updated after changing the WWNs
9 (CR 87391)
10 * Increased HBQ buffers to support 40KB SSC sequences (CR 86564)
11 * Fixed a kernel panic while trying to delete authentication timer (CR 87144)
12
13
14 Signed-off-by: Jamie Wellnitz <Jamie.Wellnitz@emulex.com>
15 Signed-off-by: Hannes Reinecke <hare@suse.de>
16 --
17 diff -urpN a/drivers/scsi/lpfc/lpfc_auth_access.c b/drivers/scsi/lpfc/lpfc_auth_access.c
18 --- a/drivers/scsi/lpfc/lpfc_auth_access.c 2009-01-20 13:31:08.517461000 -0500
19 +++ b/drivers/scsi/lpfc/lpfc_auth_access.c 2009-01-20 13:31:08.600460000 -0500
20 @@ -223,6 +223,9 @@ lpfc_fc_sc_request(struct lpfc_vport *vp
21 memcpy(fc_nl_sc_msg->data, auth_req, auth_req_len);
22 fc_nl_sc_msg->tran_id = seq;
23
24 + lpfc_fc_sc_add_timer(fc_sc_req, FC_SC_REQ_TIMEOUT,
25 + lpfc_fc_sc_req_times_out);
26 +
27 spin_lock_irqsave(shost->host_lock, flags);
28 list_add_tail(&fc_sc_req->rlist, &vport->sc_response_wait_queue);
29 spin_unlock_irqrestore(shost->host_lock, flags);
30 @@ -230,8 +233,6 @@ lpfc_fc_sc_request(struct lpfc_vport *vp
31 (SCSI_NL_VID_TYPE_PCI | PCI_VENDOR_ID_EMULEX),
32 (char *) fc_nl_sc_msg, len);
33 kfree(fc_nl_sc_msg);
34 - lpfc_fc_sc_add_timer(fc_sc_req, FC_SC_REQ_TIMEOUT,
35 - lpfc_fc_sc_req_times_out);
36 return 0;
37 }
38
39 diff -urpN a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c
40 --- a/drivers/scsi/lpfc/lpfc_init.c 2009-01-20 13:31:08.554460000 -0500
41 +++ b/drivers/scsi/lpfc/lpfc_init.c 2009-01-20 13:31:08.640460000 -0500
42 @@ -332,6 +332,7 @@ int
43 lpfc_config_port_post(struct lpfc_hba *phba)
44 {
45 struct lpfc_vport *vport = phba->pport;
46 + struct Scsi_Host *shost = lpfc_shost_from_vport(vport);
47 LPFC_MBOXQ_t *pmb;
48 MAILBOX_t *mb;
49 struct lpfc_dmabuf *mp;
50 @@ -389,6 +390,11 @@ lpfc_config_port_post(struct lpfc_hba *p
51 sizeof (struct lpfc_name));
52 memcpy(&vport->fc_portname, &vport->fc_sparam.portName,
53 sizeof (struct lpfc_name));
54 +
55 + /* Update the fc_host data structures with new wwn. */
56 + fc_host_node_name(shost) = wwn_to_u64(vport->fc_nodename.u.wwn);
57 + fc_host_port_name(shost) = wwn_to_u64(vport->fc_portname.u.wwn);
58 +
59 /* If no serial number in VPD data, use low 6 bytes of WWNN */
60 /* This should be consolidated into parse_vpd ? - mr */
61 if (phba->SerialNumber[0] == 0) {
62 @@ -1765,8 +1771,10 @@ lpfc_stop_vport_timers(struct lpfc_vport
63 del_timer_sync(&vport->els_tmofunc);
64 del_timer_sync(&vport->fc_fdmitmo);
65 while (!list_empty(&vport->sc_response_wait_queue)) {
66 - fc_sc_req = list_get_first(&vport->sc_response_wait_queue,
67 + list_remove_head(&vport->sc_response_wait_queue, fc_sc_req,
68 struct fc_security_request, rlist);
69 + if (!fc_sc_req)
70 + continue;
71 del_timer_sync(&fc_sc_req->timer);
72 kfree(fc_sc_req);
73 }
74 diff -urpN a/drivers/scsi/lpfc/lpfc_sli.c b/drivers/scsi/lpfc/lpfc_sli.c
75 --- a/drivers/scsi/lpfc/lpfc_sli.c 2009-01-20 13:31:08.580458000 -0500
76 +++ b/drivers/scsi/lpfc/lpfc_sli.c 2009-01-20 13:31:08.665462000 -0500
77 @@ -817,8 +817,8 @@ static struct lpfc_hbq_init lpfc_els_hbq
78 .profile = 0,
79 .ring_mask = (1 << LPFC_ELS_RING),
80 .buffer_count = 0,
81 - .init_count = 20,
82 - .add_count = 5,
83 + .init_count = 40,
84 + .add_count = 40,
85 };
86
87 /* HBQ for the extra ring if needed */
88 diff -urpN a/drivers/scsi/lpfc/lpfc_version.h b/drivers/scsi/lpfc/lpfc_version.h
89 --- a/drivers/scsi/lpfc/lpfc_version.h 2009-01-20 13:31:08.583459000 -0500
90 +++ b/drivers/scsi/lpfc/lpfc_version.h 2009-01-20 13:31:08.668462000 -0500
91 @@ -18,7 +18,7 @@
92 * included with this package. *
93 *******************************************************************/
94
95 -#define LPFC_DRIVER_VERSION "8.2.8.11"
96 +#define LPFC_DRIVER_VERSION "8.2.8.12"
97
98 #define LPFC_DRIVER_NAME "lpfc"
99 #define LPFC_SP_DRIVER_HANDLER_NAME "lpfc:sp"