1: 2012/09/01
2: 2012/09/01版
3: サポート外のMODE_SENSEにINVALID FIELD IN CDBを返すように変更
4:
5: 2012/08/28
6: 2012/08/28版
7: シグナルスレッドの終了確認後にリソース解放するように変更
8:
9: 2012/08/27
10: ATSで毎回mallocを発行しないよう変更
11:
12: 2012/08/24
13: READ DEFECT DATA(10)/READ DEFECT DATA(12)を追加
14: ダミーのATA PASS-THROUGH(16)/ATA PASS-THROUGH(12)を追加
15: ダミーのLOG_SELECT/LOG_SENSEを追加
16: Linuxのinitスクリプトを追加
17: (Thanks to David Disseldorp)
18:
19: 2012/08/21
20: LUのreload時に失敗した場合は設定を戻す処理を追加
21:
22: 2012/08/19
23: 処理する拡張子に qcow, qcow2, qed, vhdx を追加
24: VirtualBox 4.2.X 対応
25: kqueue未使用時にpoll表示を追加
26: 起動時にアトミック関数の利用状況を記録
27: gccビルトイン関数をconfigureで調査
28: mutexの変更漏れを修正
29: エラーメッセージの間違い修正
30:
31: 2012/08/13
32: ダミーのシグナル関数を追加
33: ループ終了コマンドの位置を変更
34:
35: 2012/08/12
36: i386でgccビルトイン関数がエラーを出すので除外
37: gccで警告が出る部分を修正
38:
39: 2012/08/11
40: 2012/08/11版
41: shutdown関数をvbox用で分離
42:
43: 2012/08/09
44: 一部のmutexにADAPTIVE_NPを指定するように変更
45:
46: 2012/08/08
47: VirtualBoxの共有ライブラリを使った仮想ドライブに対応
48:
49: 2012/08/07
50: 2012/08/07版
51: 転送ロック位置を修正
52: タスクバッファー割り当てサイズを追加
53: エラー時の処理忘れを修正
54:
55: 2012/08/06
56: リロード回数をログに残すように修正
57: リロード時のエラーを続行できるように修正
58: NetBSDのEV_SET警告を修正
59: gcc4.1以降のビルトイン関数を使った状態取得関数を追加
60: 不要な変数関数などを整理
61: 終了時のメモリーリークを修正
62: LUNキューが複数ある場合は1ループで2回実行するように変更
63:
64: 2012/08/05
65: LUの変更処理(接続中を除く)を追加
66: キュー内の要素数を保持するように修正
67: キューのロック時間を削減
68: アクセス不可のPGをSendTargetsで出さないように修正
69:
70: 2012/07/29
71: PG設定エラー時にループを抜けないように変更
72: SIGTERM/INT受信時にacceptループに停止要求を発行
73: 終了時に全コネクションスレッドに停止要求を発行
74:
75: 2012/07/28
76: 終了時の状態をロックなしで行うように変更
77: NetBSD用のスクリプトを追加
78: 起動スクリプトにBEFORE: LOGIN、REQUIRE: syslogd mountlateを追加
79: configure.in/Makefile.inを修正
80: clangとgccで警告が出る部分を修正
81: -Wextra -Wformatなどコンパイラの警告を追加
82:
83: 2012/07/26
84: 2012/07/26版
85: スレッド実行順序によりクラッシュする問題を修正
86: 余分なcloseを発行している部分を削除
87: reservationの登録/削除で誤ったキーを操作する問題を修正
88:
89: 2012/07/25
90: 2012/07/25版
91: PGの追加、削除、変更処理を追加
92: PG処理をIG同様の形式に変更
93: トップレベルの状態mutexを導入
94: メモリ解放エラーを修正
95: サンプルのauth.confの認証設定をコメントアウト
96: poll待ち時間を5000msに変更
97:
98: 2012/07/24
99: デーモン時のコネクションkqueueでシグナルを処理しないように変更
100: シンボリックデバイスを許可するconfigureオプションを追加
101: kqueue使用時はログに記録するように追加
102: シグナルスレッド連絡用のパイプを追加
103: istgt終了処理の関数を作成
104: 起動スクリプトを修正
105: マニュアルインストール先を決め打ちしないように修正
106: FreeBSD以外はrcファイルをコピーしないように修正
107:
108: 2012/07/23
109: 0.5系として分離
110: clang -O3を最優先で利用するように変更
111: Linuxで_GNU_SOURCEを設定するように修正
112: SIGHUPで設定ファイルをリロードするように処理を追加
113: LUの追加、削除、IGの追加、削除、変更処理を追加
114: PGとIGに参照カウンタを追加
115: 起動スクリプトからBEFOREキーワードを削除
116:
117: 2012/07/22
118: 各MakefileにPHONYターゲットを追加
119: 初期状態の設定をロックなしで実行するように修正
120: ファイルオープンエラーを表示するように修正
121: (Thanks to Serge)
122:
123: 2012/01/24
124: StatSN, ExpCmdSN, MaxCmdSN を送信スレッドで設定するよう修正
125:
126: 2012/01/22
127: デフォルトパラメータ調整
128: LUN最大定義数を64に変更
129: clangで警告が出ないように修正
130:
131: 2011/12/14
132: StatSNの処理をmutex内に移動
133:
134: 2011/12/11
135: 送信エラー発生時に即座に受信スレッドを起こすように修正
136: --as-neededを追加できるようにMakefileを修正
137: (Thanks to Julian Taylor)
138:
139: 2011/10/08
140: 2011/10/08版
141: ノーマルセッション中のSendTargetsの応答を追加
142: F_SETFLのエラーを出さないよう修正
143:
144: 2011/10/02
145: リードキャッシュ、ライトキャッシュのダミー設定を追加
146: 文字列の比較をstrcasecmpに統一
147: ロック期間・範囲の調整
148:
149: 2011/09/28
150: 2011/09/28版
151: NetBSDのアトミックプリミティブに対応
152: COMPARE AND WRITEをtraditionalで未定義に変更
153: 動作モードにnormalを追加してデフォルトに設定
154: ブロック数の計算で符号つき無しを統一
155:
156: 2011/09/26
157: LUNキューの処理方法を修正
158: ATSの比較エラーを表示しないように変更
159: 送信スレッドにタイムアウトを設定
160: 結果キューの初期化・終了忘れを修正
161:
162: 2011/09/24
163: 状態チェックのロックをアトミック命令に変更
164:
165: 2011/09/18
166: 2011/09/18版
167: グループの最大数を1024から4096に変更
168:
169: 2011/09/13
170: デーモン化前に出力フラッシュを追加
171: WRITE_SAMEの転送済みサイズの間違いを修正
172: WRITE_SAMEを複数ブロックまとめて処理するように変更
173: 作業用サイズのマクロ名を変更
174: Makefileで-Cを使わないように変更
175: (Thanks to Stephen Borrill)
176:
177: 2011/09/07
178: 2011/09/07版
179: ターゲット名のチェックを強化
180: COMPARE AND WRITEを実装
181: EXTENDED COPYのダミー処理を追加
182: VPDデータを修正
183:
184: 2011/09/05
185: LUN毎の回転数(RPM)、形状(FormFactor)設定を追加
186: LUN毎のシリアル設定を追加(デフォルト値は id+"L"+LUN番号)
187: WRITE_SAMEの最大LBAチェックを先に実行するよう変更
188:
189: 2011/09/02
190: 2011/09/02版
191: WRITE_SAME(10)/WRITE_SAME(16)を実装
192:
193: 2011/08/31
194: Block Length に256KBと512KBを追加
195: Thin Provisioning関連のダミーを追加
196: Block Limits と Block Device Characteristics のVPDを追加
197: TargetAddress を Discovery でのみ返すように変更
198: AIOの処理を削除
199:
200: 2011/08/22
201: configのパスを修正
202: AIOが無効の場合は sigwaitinfo を使わないように差し戻し
203: PATH_MAXがない場合を考慮するように変更
204: Makefileで下層の処理エラーを反映するように変更
205: DESTDIRを処理するように変更
206: (Thanks to Arno Toell)
207:
208: 2011/07/17
209: 2011/07/17版
210: 全イニシエータ拒否の指定!ALLを追加
211: 無指定時のQueueDepthを32に変更
212: O_FSYNCがない場合はO_SYNCを指定するように変更
213: スレッドスタックサイズを2MBに変更
214:
215: 2011/07/03
216: イニシエータ指定で!を先頭につけると拒否する機能を追加
217: 初期ファイルサイズを最少サイズで割り当てるように変更(-m1)
218: ファイルの範囲外で全てゼロの場合は書き込みスキップに変更(-m1)
219: ロックおよび初期化位置を修正
220: AIOを使った書き込み処理を追加(デフォルトOFF)
221: Discoveryセッションで処理するべきでないキーを追加
222:
223: 2011/05/29
224: 2011/05/29版
225: マルチセッションの時にキューが不足する問題を修正
226: R2Tの処理にmutexを追加
227: ダミーの送信ソケット追加
228: 送信スレッドに強制中断チェックを追加
229: 初期定義ファイルで InitiatorName "ALL" を設定
230: 起動スクリプトに reload を追加 (ports/156117)
231:
232: 2011/02/23
233: 2011/02/23版
234: 特定環境でメモリリークする問題を修正
235:
236: 2011/02/19
237: 2011/02/19版
238: 全スレッドにスレッド属性を適用するように修正
239:
240: 2011/02/18
241: 10Gbpsで期待通りにパフォーマンスが伸びない問題を修正
242: スレッドロックを改良
243:
244: 2011/01/14
245: プロトコルスレッドのスタックサイズを2MBから4MBに変更
246: スレッドロックを改良
247:
248: 2011/01/03
249: 2011/01/03版
250: 0.4系として独立
251: ISTGT_DISABLE_SENDER_THREADの設定を削除
252: 動作モードを変更するスイッチを追加(デフォルトは20100707互換)
253: ダイジェスト機能を有効にしていると接続できない問題を修正
254:
255: 2011/01/02
256: 2011/01/02版
257: シーケンシャル書き込みの結果を送信スレッドに渡すように変更
258: ISTGT_DISABLE_SENDER_THREADをistgt_iscsi.cで定義する事で
259: 送信スレッドの作成を行わない従来モードになるように追加
260: MaxOutstandingR2Tの設定より多いR2Tを先送りしないように変更
261: メモリ解放をキュー実行直後にするように変更
262:
263: 2011/01/01
264: シーケンシャル書き込みが送信スレッドにブロックされないよう修正
265:
266: 2010/12/30
267: 2010/12/30版
268: SCSI応答のループ外でロックをするように変更
269: 各PDU毎のメモリ割り当て回数を削減
270: DATA-OUTを使わない応答は送信スレッドに直接渡すように変更
271: PDU送信スレッドを追加
272: デフォルトのウィンドウサイズを8に変更
273: PDU書き込み中に分断されないようにロック取得するように修正
274: 接続情報のtypoを修正
275: (Thanks to Kevin Day)
276:
277: 2010/07/07
278: 2010/07/07版
279: DefaultTime2Waitの比較を最大値を取るように修正
280: ターゲットが存在しない場合に検索した記録を残すように修正
281: デバッグ用のトレースを追加
282: errno比較の定数をシンボルに置換
283: istgt_dumpが不要な戻り値を返すのを修正
284:
285: 2010/06/06
286: 2010/06/06版
287: NO_R2T_PRESENDの定義を廃止(設定ファイルで無効化できる為)
288: トレースモードでない場合はPDU実行前後のロックを取らないように変更
289: 状態ロック範囲をグローバルから各ターゲット毎に変更
290:
291: 2010/06/05
292: 各ターゲット毎にローカル設定を持てるように設定を追加
293:
294: 2010/06/04
295: InitialR2T, ImmediateData, DataPDUInOrder, DataSequenceInOrder,
296: ErrorRecoveryLevel の設定を追加
297:
298: 2010/06/01
299: LUNリセット時にファイルの再オープンをするように変更
300: リソース不足のエラー抜けを追加
301: パラメータ長の不足を修正
302:
303: 2010/05/27
304: SCSI応答のエラーにもイニシエータ及びターゲットポート表示を追加
305:
306: 2010/05/25
307: 2010/05/25版
308: F_Bitの処理が抜けているのを修正
309: ショートパケットの解放間違いを修正
310: TL>FB+MBの条件下で追加のR2Tが送信されない問題を修正
311:
312: 2010/05/22
313: 2010/05/22版
314: 8KB, 16KB, 32KB, 64KB, 128KBの論理ブロック長を追加
315: 認証なしを強制するオプションを追加(AuthMethod None)
316: readキャッシュの状態をMODESENSEで返すように追加
317: kqueueのクリーンナップ処理を追加
318: configureのバージョンを更新
319: インデントと折り返しを修正
320: cmd_queueのロック忘れを修正
321: 予約ポートの解放忘れを修正
322:
323: 2010/05/21
324: 2010/05/21版
325: WRITEコマンドで先送りするR2T最大数の設定を追加(省略時 MaxR2T=16)
326:
327: 2010/05/20
328: エラー時にイニシエータ及びターゲットポートを表示するように修正
329: 8KB以下のショートパケットにデータ領域を作成しないように変更
330: 終了処理で実行中タスクの解放を行うように変更
331: ソケットlistenのバックログを10から2に変更
332:
333: 2010/05/16
334: 2010/05/16版
335: MaxOutstandingR2T, DefaultTime2Wait, DefaultTime2Retain の設定を追加
336: R2Tの送信・処理を平行できるように修正
337: R2Tが必要な場合はキューイング前に送出するように変更
338: (istgt_iscsi.c の NO_R2T_PRESEND を定義する事により無効)
339: ESXiのイニシエータ利用を想定したデフォルト値に変更
340: 初期データおよびセンスデータのメモリ割り当てを先に実行するように修正
341: syslog priority のデフォルトを notice から info に変更
342:
343: 2010/05/15
344: 0.2ブランチを作成
345: 乱数生成に arc4random を利用するように修正
346: Read/Writeキャッシュの状態を保存するように修正
347: シグナルスレッドの終了を待つように修正
348: メインスレッドにスレッド名を付けるように修正
349: copy_pdu, srandom, arc4random 関数を外部リンケージに変更
350: logout関数でセッションポインタをチェックするように修正
351: configポインタのクリア位置を修正
352:
353: 2010/04/07
354: 2010/04/07版
355: NetBSD, Mac OS X, Linuxなどブロック型のサイズも取得するように修正
356: Auto sizeエラーの場合に対象ファイルも表示するように修正
357: トレース中のみデバイスサイズ取得時の失敗を出すように修正
358: トレース中のみ重複予約に対して警告を出すように修正
359: /usr/local/をヘッダに埋め込まないように修正
360: 利用していないコンフィグファイルを読まないように修正
361: デフォルトノード名を iqn.2007-09.jp.ne.peach.istgt に変更
362: デフォルトベンダ名をOS毎に指定するように修正
363: 認証ファイルのデフォルトパスを修正
364:
365: 2010/02/19
366: エラー表示が正しくされないのを修正
367:
368: 2010/01/25
369: 2010/01/25版
370: シリアル番号生成機能を一時無効に修正
371: pthread_set_name_npでスレッド名をつけるように修正
372: (Thanks to Ivan Voras)
373:
374: 2010/01/22
375: NodeBase名からシリアル番号を生成するように修正
376: 実行待ちタスクをエラー中断できるように修正
377: クリーンナップ処理で条件待ちにabortを返すように修正
378: スレッド条件待ち時間の最小を5秒に修正
379:
380: 2010/01/12
381: 2010/01/12版
382: テープとチェンジャーのタイムアウト値を修正
383: 固定フォーマットの場合は正確にあわせるように修正
384: センスデータ長の間違いを修正
385:
386: 2010/01/11
387: MMCデバイスにMODESENSE(6)を発行しないように修正
388: パススルーでBlockDescriptorがない場合に誤動作するのを修正
389: istgtcontrol:setproctitle がない場合の処理を修正
390:
391: 2010/01/05
392: 2010/01/05版
393: uctl: パススルーデバイスを出力するように修正
394: uctl: LUNタイプを出力するように修正
395: configure.inを現行ソースに合わせて修正
396: パススルーでMODESENSE(6)エラー時に(10)を再実行できるように修正
397: istgtcontrol:verboseモードを追加して既存コードを移動
398: istgtcontrol:プロセスタイトルにバージョンを表示するように修正
399:
400: 2010/01/04
401: MediaDirectoryの中にないメディアへの交換を拒否するように修正
402: 設定ファイルにMediaDirectoryを追加
403: テープ作成前に制御ブロックが破損していないか検査するように修正
404: クローズ処理が必要ない場合はすぐ戻るように修正
405: 全書き込みビットがないファイルを読み込み専用と認識するように修正
406: メディア自体の読み込み属性表示を追加
407: 書き込みできないメディアファイルに読み込み専用フラグを追加
408: istgtcontrol: AuthMethod Autoの処理を改善
409: istgtcontrol: 認証ユーザとシークレットを指定可能に修正
410:
411: 2010/01/02
412: /dev/nullのメディアを空スロットと認識するように修正
413: メインスレッドでコネクションスレッド終了を少し待つように修正
414: 明示して変数を初期化するように修正
415: COPYRIGHT表記を修正
416:
417: 2009/12/27
418: kqueue/keventを利用するように修正
419: ソケットタイマーを常時設定するように修正
420: ソケット入出力の呼び出し関数を変更
421: 関数呼び出しを削減するように修正
422:
423: 2009/12/25
424: 2009/12/25版
425: CAMタイムアウトを修正
426: パススルーでMODESENSEに失敗する場合でも通過するように修正
427: TargetNameがiSCSI名規則に合致するか確認するように修正
428: 関数呼び出しを減らすようにマクロ追加など修正
429: FirstBurstLengthとMaxBurstLengthはコピーを持つように修正
430:
431: 2009/12/22
432: 2009/12/22版
433: デフォルトのキューサイズを32に変更
434:
435: 2009/12/20
436: エラー時の処理抜けを修正
437: エラーメッセージの表示間違いを修正
438: syslogプライオリティをコンパイル時に指定できるように修正
439: 高負荷時に問題を起こすので以前の処理に変更
440:
441: 2009/12/19
442: ナノ秒指定になっていなかったのを修正
443: 待ち時間を増加、タイムアウト値と連動するように修正
444: タスクの処理開始時間を記録するよう修正
445: ベンダ定義VPDをエラーから警告に修正
446: Task管理でStatSNの更新をしないように修正
447: ポインタキャストの警告を修正
448:
449: 2009/12/18
450: 2009/12/18版
451: syslogファシリティをコマンドラインで指定できるように追加
452:
453: 2009/12/16
454: Logoutパケットでエラーを出さないように修正
455: StarPortのExpStatSNエラーの回避策を追加
456: 最大ユニット数、イニシエータ・ポータルグループ数を増加
457: セッションテーブルを最大ユニット数で確保するように修正
458: PIDの書き込み前及び終了時にpidfileを削除するように修正
459: Autoサイズのエラーを表示するように修正
460:
461: 2009/12/11
462: 2009/12/11版
463: CAMエラー時の処理を上層に引き渡すように修正
464: CAM呼び出しのデフォルトタイムアウト値を修正
465: PASS型のセンスデータの応答ずれを修正
466: PASS型のバージョンチェックが通らないのを修正
467: PASS型でチェンジャーデバイスを見るように修正
468: PASS型で4KB境界調整を行うように修正
469: DVD/TAPE型でREQUEST_SENSEの応答データずれを修正
470: ディスク型でREQUEST_SENSEに応答するように修正
471:
472: 2009/12/03
473: セッション強制終了の前に少し待機するように修正
474: セッション検索時に初期値をいれるように変更
475: ソケット読み出しを優先するように変更
476:
477: 2009/11/30
478: 2009/11/30版
479: ショートサイズ判定を4Kから8Kに変更
480: TAPE型のメディア変更が正しく扱えない問題を修正
481: 警告ログを抑制するオプションを追加
482: 接続リセットとタイムアウトのイニシエータを記録するように修正
483: DATA-OUT時にLUNフィールドをチェックしないように修正
484: PDU読み込み失敗時に未初期化状態になるのを修正
485:
486: 2009/11/24
487: 2009/11/24版
488: StatSNのチェックにキューサイズを考慮するように修正
489: PDUエラーで接続リセットとタイムアウトを表示するように修正
490: PDU書き込みエラー番号を記録するように修正
491: 書き込み処理中のR2Tの追加発行を行うように修正
492: NOPOUTのIビットをチェックするように修正
493: SCSI2互換LUN予約解放でイニシエータ名を考慮するように修正
494:
495: 2009/11/12
496: 2009/11/12版
497: デフォルトのコンパイルフラグを修正
498: デフォルトのキューサイズを20に変更
499: エラーメッセージの変更
500:
501: 2009/09/08
502: シリアル番号演算のマクロ展開が正しく行われない問題を修正
503: シリアル番号に減算をしないように修正
504:
505: 2009/04/30
506: AI_NUMERICSERVがない環境の場合は0を想定するように修正
507: configureのチェックライブラリを修正
508:
509: 2009/04/29
510: パススルーでatapicamを考慮するように修正
511:
512: 2009/04/28
513: 2009/04/28版
514: 接続情報の取得時にマルチ接続を正しく扱えない問題を修正
515: シリアル番号演算を適用するように修正
516: キューイング数の計算を間違えていたのを修正
517: セッションロックの二重UNLOCKを削除
518:
519: 2009/04/27
520: 2009/04/27版
521: キューイングによりセンスデータが破壊される問題を修正
522: 不要になった変数を削除
523:
524: 2009/04/25
525: 2009/04/25版
526: MCSの逆順チェックを条件変数でチェックするように修正
527: PDUの読み出し前にコピーフラグを消すように修正
528: 双方向入出力のSCSIコマンドにエラーを出すように修正
529: DATA-OUTのエラー処理を修正
530: DATA-OUTが完了したら処理を切り離すように修正
531: 実行中のタスク完了を待って終了するように修正
532:
533: 2009/04/24
534: 保留したコマンドを再投入時にイベントを消去するように修正
535: RejectコマンドでExpCmdSNとMaxCmdSNが増加しないように修正
536: 以前のソケットI/Oルーチンを利用するように修正
537:
538: 2009/04/22
539: 2009/04/22版
540: TSIHを期待通りに解放していない問題を修正
541: readループを利用するように変更
542: pollの待ち時間を3000msに変更
543: cond_waitの待ち時間を30sに変更
544: MCS逆順の待ち時間を10000msに変更
545: DATA-OUTのLUNチェックをエラーから警告に変更
546:
547: 2009/04/20
548: 2009/04/20版
549: ブロッキングモードのread/writeを利用するように修正
550: コマンドキューが有効な時はExtended INQUIRYに反映するように修正
551: サンプル定義ファイルのキューの深さを32に変更
552: FFPの移行がDiscoveryセッションであるか調べるように修正
553: ソケットエラーの場合はerrnoをログに記録するように修正
554:
555: 2009/04/16
556: 2009/04/16版
557: R2TにLUNを載せていなかったのを修正
558: AC_SYS_LARGEFILEをテストするように修正
559: シンボリックリンクに対するサイズ取得は実行しないように修正
560: RAWデバイスに対してもAutoサイズで割り当てるように修正
561: 既存のファイルを壊さないで作成するように修正
562: ターゲットの接続情報を取得するINFOコマンドを追加
563: istgtcontrol: INFOコマンド対応
564:
565: 2009/04/14
566: 20090414版
567: READ(6)/WRITE(6)のLBA上位5ビットが欠落する問題を修正
568:
569: 2009/04/12
570: 20090412版
571: データ設定取得マクロを関数呼び出しからマクロ展開コードに変更
572: ショートサイズの判定に誤ったマクロを利用していたのを修正
573: ショートサイズ送信機能を有効にするマクロ定義を追加
574: Sビットが有効な時にのみオバー/アンダーフローを返すように修正
575: Discoveryセッションは最大接続数を1に制限するように修正
576: NOPOUTの返答データを最小サイズに制限するように修正
577: DATAOUTで各種パラメータの有効性を確認するように修正
578: NOPIN間隔が0の場合は送信しないように修正
579: ソケットI/Oのリトライ位置を変更
580: 8192バイト未満のバッファサイズは割り当てないように修正
581: syslogファシリティを設定ファイルで指定できるように追加
582:
583: 2009/03/26
584: 20090326版
585: 無効なLUNに対するエラーログを出さないように修正
586: リセット処理でLUをチェックするように修正
587: タスク管理コマンドでキューをクリアするように修正
588:
589: 2009/03/25
590: ワイルドカードアドレスを接続IPに変換するように修正
591: istgtcontrol: iqn指定がALLの場合の処理を追加
592: タスク数の定数をマクロ定義に変更
593: タスクをコネクションデータに保存するように修正
594: タスク実行時のエラーをチェックできるように修正
595: LUNライト前に保留PDUが次のCmdSNならキューに投入するように修正
596: エラー時のデッドロック回避を行うように修正
597:
598: 2009/03/23
599: 20090323版
600: LUNスレッドの起動順序が正しくないのを修正
601: dumpデータを一行単位で一括して出力するように修正
602:
603: 2009/03/22
604: タイムアウト値を修正
605:
606: 2009/03/21
607: トレースログ関数の呼び出し前にフラグチェックするように修正
608: リセット処理でLUNタイプをチェックするように修正
609: pthread系などの戻り値チェックを間違えていたのを修正
610: mutexの不要なunlock呼び出しを修正
611: PDUデータのコピー処理を追加
612: 終了要求されたかどうかPDU受信毎にチェックするように修正
613:
614: 2009/03/20
615: キューサイズを調整できるように設定を追加
616: 小さいPDUはヘッダとデータ部分を一緒にwriteするように修正
617: 保留PDUの後にエラーが発生した場合にfreeしてしまう問題を修正
618:
619: 2009/03/19
620: AHSのサイズ計算を間違えていたのを修正
621: MCSでCmdSNが逆順に到着した場合の待機時間を200msから1000msに変更
622: ロック期間を短くするように調整
623: iqn.以外にeui.とnaa.も完全指定を許可するように変更
624:
625: 2009/03/18
626: コネクション単位のSCSIセンス用データ領域を64Kから4Kに縮小
627: 仮想テープで終了時のメモリサイズ指定、解放忘れを修正
628: コネクション単位の固定バッファからコマンド単位の固定または
629: 動的バッファを利用するように修正
630: セッションデータ用のmutex_destroyを呼び出していないのを修正
631: LUの終了時にエラー停止する可能性があったのを修正
632: コネクション生成削除用ロックなどのトレースメッセージを追加
633: LU RESETが発生した場合に自分の接続は消滅しないように修正
634: SIGRTMIN+XXもしくはSIGIOによるシグナル配送に対応
635:
636: 2009/03/17
637: トレースログでログイン、ログアウトが二重に表示されるのを修正
638: MaxSessionsとMaxConnectionsに0が指定できた問題を修正
639: 再接続時にMaxConnectionsを超えるコネクションが存在する場合は
640: 強制終了を試みるように変更
641: キューイング処理用LUNスレッドを追加
642: ディスク型にコマンドキューイングする場合の処理を追加
643: MCSでCmdSNが逆順に到着した場合の待機時間を100msから200msに変更
644:
645: 2009/03/15
646: docディレクトリを常時作成していたのを修正
647: mkdepがない場合でもバイナリ作成できるように修正
648:
649: 2009/03/14
650: 20090314版
651: 同一のポータルタグ、イニシエータからMCS接続を複数した場合に
652: セッションを間違える問題を修正
653: CAMライブラリが存在しない環境はパススルー処理しないように修正
654: NetBSDにない関数を置き換えるように追加
655: 移植に問題を起こしそうな部分を修正
656: セッションロックのミスを修正
657:
658: 2009/03/13
659: 20090313版
660: パススルーでシーケンシャルデバイスをサポートするように追加修正
661: トレース用メッセージの修正
662: CAMエラー処理が正しくないのを修正
663:
664: 2009/03/09
665: 20090309版
666: MRDSを指定しないイニシエータを考慮するように修正
667: 設定ファイルで指定しない場合のデフォルトの値を調整
668: NOPIN間隔を調整できるように追加
669: トレース用ダンプを標準エラー出力に変更
670: 正常ログインもsyslogに記録するように修正
671:
672: 2009/03/08
673: 20090308版
674: パススルーはサポート外コマンドでも渡すように修正
675: MRDS > FB の状態でPDUを正しく受信できない問題を修正
676: NOPOUTが予期しないStatSNエラーになる問題を修正
677: 保留するコマンドキューに制限がなかった問題を修正
678: PROでSPEC_I_PTの扱いが適切でない問題を修正
679: PROでキーの登録数をチェックしていない問題を修正
680: ディスク型はUNIT ATTENTION(POWER ON, RESET)を発行するように追加
681: TargetAliasが無い時の動作が期待通りでないので修正
682:
683: 2009/03/07
684: パススルーでFirstBurstに乗らないRW以外のデータも扱えるように修正
685: 初期化時にUNIT ATTENTIONを返した場合にリトライするように修正
686: 初期化時に媒体容量をチェックするように追加
687: サポート外ユニットにINQUIRY以外発行しないように修正
688: パススルーでDVDROMデバイスをサポートするように追加修正
689:
690: 2009/03/06
691: 20090306版
692: 再投入するデータを戻し忘れてクラッシュする問題を修正
693: 消失したと思われるコマンドを読み飛ばすように修正
694: ダイレクトアクセス型のパススルーデバイスを追加
695:
696: 2009/03/04
697: 20090304版
698: LU初期化時にActive/optimizedを初期値とするように変更
699: Task Managementの処理はパケット消失に備えてCmdSN/StatSNをリセット
700: するように修正
701: データ転送時のDATAOUTパケット以外を転送終了後に再投入するように修正
702: INQUIRYのTPGSをサポートなしに修正
703:
704: 2009/03/03
705: StatSNの管理を次に送信するべき値を保持するように修正
706: 仮想DVDROM、仮想テープもディスク型と同様のINQUIRYに修正
707: マルチパスで複数のPDUを許可するように暫定処理を追加
708:
709: 2009/03/02
710: NAA形式のINQUIRYも出力するように修正
711: 標準INQUIRYのHISUPビットをセットするように修正
712: アイドル時にNOPINコマンドを発行するように追加
713: TargetAliasが存在しない場合も送信していた問題を修正
714: SIGINFOを捕捉するように修正
715:
716: 2009/03/01
717: 20090301版
718: Discoveryセッションで接続ポートからLUにアクセス可能か調べるように修正
719: Extension Keyをエラーログに残さないように修正
720: AuthMethod Noneを廃止してAutoを追加
721: GB表示の媒体サイズを少数第一位まで表示するように修正
722:
723: 2009/02/28
724: 20090228版
725: パラメータチェックの前にコピーしていた問題を修正
726: Declarativeパラメータを送信しないように修正
727: NOPOUT応答時にStatSNを進めないように修正
728: INQUIRY VPD 0x85/0x87/0x88に応答するように追加
729: ロジカルユニットが無い場合はポータルタグを送信しないように修正
730: エミュレート応答が期待通りに動かないのを修正
731:
732: 2009/02/27
733: 20090227版
734: イニシエータ、イニシエータポート、ターゲット、ターゲットポートを
735: それぞれ小文字に変換した値を保持するように修正
736: PRO REGISTER/PREEMPT AND ABORTを実装
737: PRI REPORT CAPABILITIES/READ FULL STATUSを実装
738: Disk型のRELEASE(6)/RELEASE(10)/RESERVE(6)/RESERVE(10)を
739: エミュレート応答に修正
740:
741: 2009/02/26
742: 認証用データの解放忘れを修正
743: PERSISTENT RESERVE INとPERSISTENT RESERVE OUTに応答するように追加
744: PRI READ KEYS/READ RESERVATIONを実装
745: PRO RESERVE/RELEASE/PREEMPT/REGISTER AND IGNORE EXISTING KEYを実装
746: PRO CLEARを実装
747: 各SCSIコマンドで影響を受ける場所にチェックポイントを追加
748:
749: 2009/02/24
750: REPORT LUNSのCDBチェックを行うように修正
751: 接続したポータルインデックスの初期化忘れを修正
752: 接続したポータルグループ及びロジカルユニットグループをINQUIRYに追加
753: REPORT TARGET PORT GROUPSに応答するように追加
754: 接続のないLUNにアクセスした場合にクラッシュする問題を修正
755: ロジカルユニットの最大タグ値のチェック忘れを修正
756: immediateにマークされたPDUに対してCmdSNを進めてしまっていたのを修正
757: リセットが発生した場合はイニシエータの全コネクションに対して停止を
758: するように修正
759: MODE SELECTの長さ0とヘッダに満たない特殊なケースを処理するように修正
760: SET TARGET PORT GROUPSに応答するように追加
761:
762: 2009/02/23
763: 20090223版
764: Securityステージを実行しないイニシエータと接続できない問題を修正
765: StatSNの初期化忘れを修正
766: prefix等をサンプル設定及び起動スクリプトファイルに反映するように修正
767: 関数名の変更もれを修正
768:
769: 2009/02/22
770: istgt初期リリース(20090222版)
771: MSC Extraパッチのコンセプトを元に新規に処理ルーチンを書き直しました
772: 複数ポータル、複数グループ、FreeBSD7.xとZFS用をコンセプトにしています
773:
774: intgt以前の主要な変更点
775: 2009/01/25
776: 20090125版
777: Windows7ベータ版によるディスクレスブートでの問題を修正しました
778: ステータスシーケンス番号エラーを修正しました
779: 2009/01/22
780: 20090122版
781: 仮想ディスクのロック方式を仮想DVDROMと仮想テープに合わせました
782: 一部のiSCSIブート機能に対応しました
783: 2009/01/17
784: 20090117版
785: 仮想DVDROM及び仮想TAPE(DLT8000)エミュレータを追加しました
786: サイズの加減算表記を追加しました
787: メディア制御機能istgtcontrolを追加しました
788: 2008/12/25
789: 20081225版
790: MODESENSEのライトキャッシュの状態をO_FSYNCに反映するようになりました
791: シグナル処理スレッドを新設しました
792: SIGTERM/STGINTに対して終了処理を行うように修正しました
793: 2008/12/23
794: 20081223版
795: パッチ量が多くなった為にMCSパッチからMCS Extraパッチと呼称変更しました
796: 初期版から搭載していたMCS簡易同期機能を廃止した
797: 管理テーブルを活用するようになった
798: 2008/12/21
799: 20081221版
800: 64bitLBAに対応した
801: Discoveryセッションにも認証を強制できるようになった
802: 認証ファイル、PIDファイルを個別に指定できるようになった
803: サイズサフィックスにZEPも追加した
804: 2008/12/18
805: 20081218版
806: CHAP相互認証機能を追加しました
807: 2008/12/17
808: 20081217版
809: 認証、ダイジェストの強制モードを追加しました
810: SCSIステータスを最終PDUに載せるようになりました
811: 2008/12/11
812: 20081211版
813: バグフィックス
814: 2008/12/05
815: 20081205版
816: コネクションスレッド制御用の管理テーブルを作成しました
817: 排他ロック範囲を当該スレッドに限定するように変更しました
818: データ及びヘッダダイジェスト機能(CRC32C)をサポートしました
819: 2008/12/02
820: 20081202版
821: マルチセッション用にmutexによる排他ロック制御を導入しました
822: 2008/11/30
823: 20081130版
824: バグフィックス
825: 2008/11/29
826: 20081129版
827: バグフィックス
828: 2008/11/18
829: 20081118版
830: 初期リリース
831: ports/net/iscsi-target(netbsd-iscsi-20080207)を元にMCSパッチを
832: 作成しました
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>