Search
j0ke.net Open Build Service
>
Projects
>
ha
:
rebuilds
>
iscsi-initiator-utils
> iscsi-initiator-utils-fix-sync-up.patch
Sign Up
|
Log In
Username
Password
Cancel
Overview
Repositories
Revisions
Requests
Users
Advanced
Attributes
Meta
File iscsi-initiator-utils-fix-sync-up.patch of Package iscsi-initiator-utils
diff -aurp open-iscsi-2.0-868-test1/usr/iscsid.c open-iscsi-2.0-868-test1.work/usr/iscsid.c --- open-iscsi-2.0-868-test1/usr/iscsid.c 2008-03-11 17:25:29.000000000 -0500 +++ open-iscsi-2.0-868-test1.work/usr/iscsid.c 2008-03-11 17:25:50.000000000 -0500 @@ -177,7 +177,7 @@ setup_rec_from_negotiated_values(idbm_t static int sync_session(void *data, struct session_info *info) { idbm_t *db = data; - node_rec_t rec; + node_rec_t rec, sysfsrec; iscsiadm_req_t req; iscsiadm_rsp_t rsp; struct iscsi_transport *t; @@ -219,6 +219,27 @@ static int sync_session(void *data, stru log_warning("Could not read data from db. Using default and " "currently negotiated values\n"); setup_rec_from_negotiated_values(db, &rec, info); + } else { + /* + * we have a valid record and iface so lets merge + * the values from them and sysfs to try and get + * the most uptodate values. + * + * Currenlty that means we will use the CHAP, target and + * and portal values from sysfs and use timer, queue depth, + * and segment length values from the record. In the future + * when boot supports iface binding we will want to use + * those values from sysfs. + */ + memset(&sysfsrec, 0, sizeof(node_rec_t)); + setup_rec_from_negotiated_values(db, &sysfsrec, info); + /* + * target and portal values have to be the same or + * we would not have found the record, so just copy + * CHAP. + */ + memcpy(&rec.session.auth, &sysfsrec.session.auth, + sizeof(struct iscsi_auth_config)); } /* multiple drivers could be connected to the same portal */