From owner-freebsd-current Fri Sep 6 6:10:33 2002 Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.FreeBSD.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 8499D37B400; Fri, 6 Sep 2002 06:10:21 -0700 (PDT) Received: from prg.traveller.cz (prg.traveller.cz [193.85.2.77]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7227343E42; Fri, 6 Sep 2002 06:10:20 -0700 (PDT) (envelope-from mime@traveller.cz) Received: from prg.traveller.cz (localhost [127.0.0.1]) by prg.traveller.cz (8.12.2[KQ/pukvis]/8.12.2-prg) with ESMTP id g86DAJjq024055; Fri, 6 Sep 2002 15:10:19 +0200 (CEST) Received: from localhost (mime@localhost) by prg.traveller.cz (8.12.2[KQ/pukvis]/8.12.2-prg/submit) with ESMTP id g86DAJsJ024052; Fri, 6 Sep 2002 15:10:19 +0200 (CEST) Date: Fri, 6 Sep 2002 15:10:19 +0200 (CEST) From: Michal Mertl To: current@freebsd.org Cc: alfred@freebsd.org Subject: bug in sysv semaphores on -CURRENT Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1618928097-1031317473=:77195" Content-ID: Sender: owner-freebsd-current@FreeBSD.ORG Precedence: bulk List-ID: List-Archive: (Web Archive) List-Help: (List Instructions) List-Subscribe: List-Unsubscribe: X-Loop: FreeBSD.ORG This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime@docserver.cac.washington.edu for more info. --0-1618928097-1031317473=:77195 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII Content-ID: There seems to be bug in $SUBJ. When I run attached program on recent -CURRENT, it always (after several seconds) triggers the bug. I first suspected a problem in the program's logic but on stable in runs just fine. Esentially I use piece of shm memory to pass some data between several processes. I implemented simple locking functions with semaphores and noticed it behaves strange on -CURRENT and ok on -STABLE. CCing Alfred because he made some changes into the kernel part of $SUBJ. I don't expect the bug is new though. May I ask someone with older -CURRENT to try running the program for a minute? -- Michal Mertl mime@traveller.cz --0-1618928097-1031317473=:77195 Content-Type: TEXT/PLAIN; CHARSET=US-ASCII; NAME="ipctest.c" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: Content-Disposition: ATTACHMENT; FILENAME="ipctest.c" I2luY2x1ZGUgPHN5cy90eXBlcy5oPg0KI2luY2x1ZGUgPHN5cy9pcGMuaD4N CiNpbmNsdWRlIDxzeXMvc2VtLmg+DQojaW5jbHVkZSA8c3lzL3NobS5oPg0K I2luY2x1ZGUgPGVycm5vLmg+DQojaW5jbHVkZSA8c3RkbGliLmg+DQojaW5j bHVkZSA8c3RkaW8uaD4NCiNpbmNsdWRlIDxzdHJpbmcuaD4NCiNpbmNsdWRl IDx1bmlzdGQuaD4NCg0KI2RlZmluZSBNWV9TSE1fTUFHSUMgMHg1NmQ5ZjEz Yg0KDQp0eXBlZGVmIHN0cnVjdCB7DQoJc3RydWN0IHNobWlkX2RzCSBzaG1f ZHM7DQoJc3RydWN0IHNlbWlkX2RzCSBzZW1fZHM7DQoJcGlkX3QJCSBzZW1f b3duZXI7DQoJaW50CQkgc2VtX2lkOw0KCWludAkJIHNobV9pZDsNCglpbnQJ CSBzaXplOw0KfSBzX2lwY19jZmc7DQoNCnNfaXBjX2NmZyAqaXBjX2NmZyA9 IE5VTEw7DQoNCmludA0KaXBjX3NldHVwKGludCBzaXplKQ0Kew0KCWludCBz a2V5Ow0KCWludCBpcGNfdG9rOw0KCXZvaWQgKnNobV9hZGRyOw0KCXN0cnVj dCBzaG1pZF9kcwkgc2htX2RzOw0KCXVuaW9uIHNlbXVuIHNlbV9hcmc7DQoN CglpcGNfdG9rID0gSVBDX1BSSVZBVEU7DQoJaWYgKChza2V5ID0gc2htZ2V0 KGlwY190b2ssIHNpemUsIFNITV9SIHwgU0hNX1cNCgkJCXwgSVBDX0NSRUFU KSkgPT0gLTEpIHsNCgkJZnByaW50ZihzdGRlcnIsICJzaG1nZXQoKVxuIik7 DQoJCXJldHVybiAoLTEpOw0KCX0NCglpZiAoKHNobWN0bChza2V5LCBJUENf U1RBVCwgJnNobV9kcykpID09IC0xKSB7DQoJCWZwcmludGYoc3RkZXJyLCAi c2htY3RsKClcbiIpOw0KCQlyZXR1cm4gKC0xKTsNCgl9DQoJaWYgKChzaG1f YWRkciA9IHNobWF0KHNrZXksIE5VTEwsIDApKSA9PSAodm9pZCAqKS0xKSB7 DQoJCWZwcmludGYoc3RkZXJyLCAic2htYXQoKVxuIik7DQoJCXJldHVybiAo LTEpOw0KCX0NCglpcGNfY2ZnID0gc2htX2FkZHI7DQoJaXBjX2NmZy0+c2l6 ZSA9IHNpemUgLSBzaXplb2Yoc19pcGNfY2ZnKTsNCgltZW1jcHkoaXBjX2Nm ZywgJnNobV9kcywgc2l6ZW9mKHNobV9kcykpOw0KCWlwY19jZmctPnNobV9p ZCA9IHNrZXk7DQoJaWYgKHNobWN0bChpcGNfY2ZnLT5zaG1faWQsIElQQ19S TUlELCBOVUxMKSA9PSAtMSkgew0KCQlmcHJpbnRmKHN0ZGVyciwgInNobWN0 bCgpIElQQ19STUlEXG4iKTsNCgkJcmV0dXJuICgtMSk7DQoJfQ0KCWlmICgo c2tleSA9IHNlbWdldChpcGNfdG9rLCAxLCBTRU1fUiB8IFNFTV9BIHwgSVBD X0NSRUFUKSkgPT0gLTEpIHsNCgkJZnByaW50ZihzdGRlcnIsICJzZW1nZXQo KVxuIik7DQoJCXJldHVybiAoLTEpOw0KCX0NCglpcGNfY2ZnLT5zZW1faWQg PSBza2V5Ow0KCXNlbV9hcmcuYnVmID0gKHZvaWQgKikmaXBjX2NmZy0+c2Vt X2RzOw0KCWlmIChzZW1jdGwoaXBjX2NmZy0+c2VtX2lkLCAwLCBJUENfU1RB VCwgc2VtX2FyZykgPT0gLTEpIHsNCgkJZnByaW50ZihzdGRlcnIsICJzZW1j dGwoKVxuIik7DQoJCXJldHVybiAoLTEpOw0KCX0NCglpcGNfY2ZnLT5zZW1f b3duZXIgPSAtMTsNCglzZW1fYXJnLnZhbCA9IDE7DQoJc2VtY3RsKGlwY19j ZmctPnNlbV9pZCwgMCwgU0VUVkFMLCBzZW1fYXJnKTsNCglyZXR1cm4gKDAp Ow0KfQ0KDQp2b2lkDQppcGNfc2h1dGRvd24odm9pZCkNCnsNCglpZiAoaXBj X2NmZykNCgkJc2VtY3RsKGlwY19jZmctPnNlbV9pZCwgMCwgSVBDX1JNSUQp Ow0KfQ0KDQppbnQNCmlwY19sb2NrKGludCB3YWl0LCBpbnQgdW5kbykNCnsN CglzdHJ1Y3Qgc2VtYnVmIHNlbV9idWY7DQoJaW50CQkgZXJyOw0KDQoJc2Vt X2J1Zi5zZW1fbnVtID0gMDsNCglzZW1fYnVmLnNlbV9vcCA9IC0xOw0KCXNl bV9idWYuc2VtX2ZsZyA9ICB3YWl0ID8gMCA6IElQQ19OT1dBSVQ7DQoJc2Vt X2J1Zi5zZW1fZmxnIHw9IHVuZG8gPyBTRU1fVU5ETyA6IDA7DQoJZXJyID0g c2Vtb3AoaXBjX2NmZy0+c2VtX2lkLCAmc2VtX2J1ZiwgMSk7DQoJaWYgKGVy ciA9PSAtMSkgew0KCQlpZiAod2FpdCAmJiBlcnJubyA9PSBFQUdBSU4pDQoJ CQlyZXR1cm4gKC0yKTsNCgkJZnByaW50ZihzdGRlcnIsICIlZDogc2Vtb3Ao KVxuIiwgZ2V0cGlkKCkpOw0KCQlyZXR1cm4gKC0xKTsNCgl9DQoJcHJpbnRm KCIlZDogaXBjX2xvY2soKVxuIiwgZ2V0cGlkKCkpOw0KCWlwY19jZmctPnNl bV9vd25lciA9IGdldHBpZCgpOw0KCXJldHVybiAoMCk7DQp9DQoNCmludA0K aXBjX3VubG9jayh2b2lkKQ0Kew0KCXN0cnVjdCBzZW1idWYJIHNlbV9idWY7 DQoJaW50CQkgZXJyOw0KDQoJaWYgKGlwY19jZmctPnNlbV9vd25lciAhPSBn ZXRwaWQoKSkgew0KCQlmcHJpbnRmKHN0ZGVyciwgIiVkOiBjYW4ndCB1bmxv Y2sgKGJ1ZyksIG93bmVyOiAlZFxuIiwNCgkJCWdldHBpZCgpLCBpcGNfY2Zn LT5zZW1fb3duZXIpOw0KCQlyZXR1cm4gKC0xKTsNCgl9DQoJaWYgKHNlbWN0 bChpcGNfY2ZnLT5zZW1faWQsIDAsIEdFVFZBTCkgIT0gMCkgew0KCQlmcHJp bnRmKHN0ZGVyciwgIiVkOiBjYW4ndCB1bmxvY2sgKGJ1ZyksIG5vdCBsb2Nr ZWRcbiIsDQoJCQlnZXRwaWQoKSk7DQoJCXJldHVybiAoLTEpOw0KCX0NCglw cmludGYoIiVkOiBpcGNfdW5sb2NrKClcbiIsIGdldHBpZCgpKTsNCglzZW1f YnVmLnNlbV9udW0gPSAwOw0KCXNlbV9idWYuc2VtX29wID0gMTsNCglzZW1f YnVmLnNlbV9mbGcgPSAwOw0KCWVyciA9IHNlbW9wKGlwY19jZmctPnNlbV9p ZCwgJnNlbV9idWYsIDEpOw0KCWlmIChlcnIgPT0gLTEpIHsNCgkJZnByaW50 ZihzdGRlcnIsICIlZDogc2Vtb3AoKVxuIiwgZ2V0cGlkKCkpOw0KCQlyZXR1 cm4gKC0xKTsNCgl9DQoJaXBjX2NmZy0+c2VtX293bmVyID0gLTE7DQoJcmV0 dXJuICgwKTsNCn0NCg0KaW50DQppcGNfbG9ja2VkKHZvaWQpDQp7DQoJcmV0 dXJuIChzZW1jdGwoaXBjX2NmZy0+c2VtX2lkLCAwLCBHRVRWQUwpID8gMCA6 IDEpOw0KfQ0KDQppbnQNCmlwY19vd25lZCh2b2lkKQ0Kew0KCXJldHVybiAo aXBjX2xvY2tlZCgpICYmDQoJCWlwY19jZmctPnNlbV9vd25lciA9PSBnZXRw aWQoKSA/IDEgOiAwKTsNCn0NCg0KaW50DQppcGNfdXNlaXQodm9pZCkNCnsN CglpZiAoIWlwY19vd25lZCgpKSB7DQoJCWlmIChpcGNfbG9jaygxLCAwKSA8 IDApIHsNCgkJCXByaW50ZigiJWQ6IF9pcGNfZ2V0cGFydCgpIGNhbid0IGxv Y2tcbiIsDQoJCQkJCWdldHBpZCgpKTsNCgkJCXJldHVybiAoLTEpOw0KCQl9 DQoJfQ0KCWlmIChpcGNfdW5sb2NrKCkgPCAwKSB7DQoJCWZwcmludGYoc3Rk ZXJyLCAiJWQ6IF9pcGNfZ2V0cGFydCgpIGNhbid0IHVubG9ja1xuIiwNCgkJ CQlnZXRwaWQoKSk7DQoJCXJldHVybiAoLTEpOw0KCX0NCglyZXR1cm4gKDAp Ow0KfQ0KDQppbnQNCmJlX2NoaWxkKHZvaWQpDQp7DQoJZm9yICg7Oykgew0K CQl1c2xlZXAoMTAwMDAgKyByYW5kb20oKSAlIDUwMDApOw0KCQlpcGNfdXNl aXQoKTsNCgl9DQoJcmV0dXJuICgwKTsNCn0NCg0KaW50DQptYWluKGludCBh cmdjLCBjaGFyICphcmd2W10pDQp7DQoJc3JhbmRvbWRldigpOw0KCWlmIChp cGNfc2V0dXAoMTAwMDApIDwgMCkgew0KCQlmcHJpbnRmKHN0ZGVyciwgImlw Y19zZXR1cCBmYWlsZWRcbiIpOw0KCQlyZXR1cm4gKEVYSVRfRkFJTFVSRSk7 DQoJfQ0KCXN3aXRjaCAoZm9yaygpKSB7DQoJCWNhc2UgMDoNCgkJCS8qIGNo aWxkICovDQoJCQliZV9jaGlsZCgpOw0KCQkJcmV0dXJuIChFWElUX1NVQ0NF U1MpOw0KCQkJYnJlYWs7DQoJCWNhc2UgLTE6DQoJCQlmcHJpbnRmKHN0ZGVy ciwgImZvcmsgZmFpbGVkXG4iKTsNCgkJCWlwY19zaHV0ZG93bigpOw0KCQkJ cmV0dXJuIChFWElUX0ZBSUxVUkUpOw0KCQlkZWZhdWx0Og0KCQkJLyogcGFy ZW50ICovDQoJCQk7DQoJfQ0KCWlmIChhdGV4aXQoaXBjX3NodXRkb3duKSA8 IDApIHsNCgkJZnByaW50ZihzdGRlcnIsICJhdGV4aXQoKVxuIik7DQoJCXJl dHVybiAoRVhJVF9GQUlMVVJFKTsNCgl9DQoJZm9yICg7Oykgew0KCQl1c2xl ZXAoMTUwMDAgKyByYW5kb20oKSAlIDUwMDApOw0KCQlpcGNfdXNlaXQoKTsN Cgl9DQoJcmV0dXJuIChFWElUX1NVQ0NFU1MpOw0KfQ0KDQo= --0-1618928097-1031317473=:77195-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-current" in the body of the message