shmget: Make shmobj underwent IPC_RMID invisible to shmget

Refs: #926
Change-Id: I16120623b581da5d5d484fd05d5111788c8ad5e2
This commit is contained in:
Tomoki Shirasawa
2018-06-11 11:40:48 +09:00
committed by Masamichi Takagi
parent 229b041320
commit 9bb8076dc0
7 changed files with 170 additions and 15 deletions

26
test/issues/926/README Normal file
View File

@@ -0,0 +1,26 @@
【Issue#926 動作確認】
□ テスト内容
1. shmat, RMID, shmdtの組み合せ確認。shmat直前にshmget実行。()内は別プロセス。
C926T01 shmat->shmdt->(shmat->shmdt)で同じ領域が使われていることを確認
C926T02 shmat->exit->(shmat->shmdt)で同じ領域が使われていることを確認
C926T03 shmat->RMID->(shmat)->shmdt->(shmdt)で別領域が使われることを確認
C926T04 shmat->RMID->(shmat->shmdt)->shmdtで別領域が使われることを確認
C926T05 shmat->RMID->shmdt->(shmat->shmdt)で別領域が使われることを確認
C926T06 shmat->RMID->exit->(shmat->shmdt)で別領域が使われることを確認
C926T07 shmat->(shmat)->RMID->exit->(shmdt)で同じ領域が使われることを確認
C926T08 shmat->(shmat)->exit->(shmdt)で同じ領域が使われることを確認
2. shmgetとshmatの組み合せ確認。shmgetのキーは同じ。
C926T09 shmget->shmat->RMID->shmget->shmatで別領域が使われることを確認
C926T10 shmget->shmat->RMID->shmatで同じ領域が使われることを確認
□ 実行手順
$ make test
実行できない場合は、C926.shの以下の行を適切に書き換えた後に実行。
BIN= mcexec が存在するパス
SBIN= mcreboot.sh が存在するパス
□ 実行結果
C926.txt 参照。
全ての項目が OK となっていることを確認。