* [sisyphus] Shared memory - HELP PLEASE! @ 2004-03-24 22:17 ` Ivan Adzhubey 2004-03-25 4:14 ` Eugene Ostapets ` (3 more replies) 0 siblings, 4 replies; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-24 22:17 UTC (permalink / raw) To: sisyphus Приветствую! На 2.4.25-std-smp-alt1 по-прежнему не работает SysV shared memory, shmget() падает молча. Не работает ни от пользователя, ни от рута. Не работают ни собственные программы (C), ни сторонние бинарники, ни Perl modules. Может надо пользователя куда добавить? Но почему тогда даже от рута не работает? Это какой-то секурити патч подсуетился? На ванильном ядре на той же машине все работает as expected. Помогите пожалуйста, иначе придется Альт сносить! -- Иван On Tue, 24 Feb 2004 15:13:46 +0300 Ildar Mulyukov <ildar@users.sourceforge.net> wrote: > если мне не изменяет эрудиция (извините за нескромность :-)), X- > window использует эту самую SysV ShM. Так что ответ на Ваш вопрос - > все ядра без исключения (ну, быть может, кроме серверных) > Ильдар. > > > On Пнд, 2004-02-23 at 18:22 -0500, Ivan Adzhubey wrote: > > > Приветствую! > > > > Подскажите, shared memory не поддерживается в ядрах сборки Alt? > > Похоже, что нет, по крайне мере у меня не работает: > > > > $ uname -r > > 2.4.22-std-smp-alt17 ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-24 22:17 ` [sisyphus] Shared memory - HELP PLEASE! Ivan Adzhubey @ 2004-03-25 4:14 ` Eugene Ostapets 2004-03-25 4:36 ` Ivan Adzhubey 2004-03-25 4:22 ` Denis S. Filimonov ` (2 subsequent siblings) 3 siblings, 1 reply; 33+ messages in thread From: Eugene Ostapets @ 2004-03-25 4:14 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list Ivan Adzhubey пишет: >Приветствую! > >На 2.4.25-std-smp-alt1 по-прежнему не работает SysV shared memory, >shmget() падает молча. Не работает ни от пользователя, ни от рута. Не >работают ни собственные программы (C), ни сторонние бинарники, ни Perl >modules. Может надо пользователя куда добавить? Но почему тогда даже от >рута не работает? Это какой-то секурити патч подсуетился? На ванильном >ядре на той же машине все работает as expected. > >Помогите пожалуйста, иначе придется Альт сносить! > > > У всех пользователей ядер от АльтЛинукс разделяемая память работает. Рискну предположить что у Вас битая память. Запустите на ночь memtest86 и поинтересуйтесь утром количеством найденых ошибок... -- С уважением, Евгений Остапец http://www.unisoft.com.ua ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 4:14 ` Eugene Ostapets @ 2004-03-25 4:36 ` Ivan Adzhubey 2004-03-25 4:43 ` Denis S. Filimonov ` (3 more replies) 0 siblings, 4 replies; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 4:36 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Wednesday 24 March 2004 11:14 pm, Eugene Ostapets wrote: > Ivan Adzhubey пишет: > >Приветствую! > > > >На 2.4.25-std-smp-alt1 по-прежнему не работает SysV shared memory, > >shmget() падает молча. Не работает ни от пользователя, ни от рута. Не > >работают ни собственные программы (C), ни сторонние бинарники, ни Perl > >modules. Может надо пользователя куда добавить? Но почему тогда даже от > >рута не работает? Это какой-то секурити патч подсуетился? На ванильном > >ядре на той же машине все работает as expected. > > > >Помогите пожалуйста, иначе придется Альт сносить! > > У всех пользователей ядер от АльтЛинукс разделяемая память работает. > Рискну предположить что у Вас битая память. Запустите на ночь memtest86 > и поинтересуйтесь утром количеством найденых ошибок... Не шутите. На трех разных машинах? Это вряд ли. Да и не прожили бы они так долго с битой памятью - почти год, одна файлсервер и основная считалка, вторая - вебсервер, третья - моя домашняя. К сожалению, я сам никогда SysV IPC интерфейсом не пользовался, так что сказать в чем дело сразу не смогу. Но пользователи достали - жалуются, что под альтовыми ядрами shm интерфейс не работает, а под всеми другими - работает. Пока проверил под debian и vanilla кернелями - действительно, одна и та же программа на одной и той же машине не работает только под альт ядром, под другими - работает. Что конечно не исключает багов в самой программе, но выглядит подозрительно даже для меня. Что уж говорить про пользователей, которые на грани учинения бунта и самочинного сноса Альта отовсюду. Видимо придется все же самому разбираться. Может кто-нибудь поделится исходниками чего-то работающего с shm, что у него самого - работает? Или хотя бы фрагментом. Буду признателен. -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 4:36 ` Ivan Adzhubey @ 2004-03-25 4:43 ` Denis S. Filimonov 2004-03-25 4:50 ` Ivan Adzhubey 2004-03-25 5:04 ` Eugene Ostapets ` (2 subsequent siblings) 3 siblings, 1 reply; 33+ messages in thread From: Denis S. Filimonov @ 2004-03-25 4:43 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thursday 25 March 2004 10:36, Ivan Adzhubey wrote: > Видимо придется все же самому разбираться. Может кто-нибудь поделится > исходниками чего-то работающего с shm, что у него самого - работает? > Или хотя бы фрагментом. Буду признателен. apache, postgresql, etc -- Sincerely, Denis. ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 4:43 ` Denis S. Filimonov @ 2004-03-25 4:50 ` Ivan Adzhubey 0 siblings, 0 replies; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 4:50 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Wednesday 24 March 2004 11:43 pm, Denis S. Filimonov wrote: > On Thursday 25 March 2004 10:36, Ivan Adzhubey wrote: > > Видимо придется все же самому разбираться. Может кто-нибудь поделится > > исходниками чего-то работающего с shm, что у него самого - работает? > > Или хотя бы фрагментом. Буду признателен. > > apache, postgresql, etc Сегодня видимо все в хорошем настроении... кроме меня. Меня чувство юмора уже покидает. -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 4:36 ` Ivan Adzhubey 2004-03-25 4:43 ` Denis S. Filimonov @ 2004-03-25 5:04 ` Eugene Ostapets 2004-03-25 6:53 ` Ivan Adzhubey 2004-03-25 7:44 ` Serj 2004-03-25 5:09 ` Mike Lykov 2004-03-25 6:42 ` Grigory Batalov 3 siblings, 2 replies; 33+ messages in thread From: Eugene Ostapets @ 2004-03-25 5:04 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list Ivan Adzhubey пишет: > >Не шутите. На трех разных машинах? Это вряд ли. Да и не прожили бы они так >долго с битой памятью - почти год, одна файлсервер и основная считалка, >вторая - вебсервер, третья - моя домашняя. > > > Не верю! (с)... >К сожалению, я сам никогда SysV IPC интерфейсом не пользовался, так что >сказать в чем дело сразу не смогу. Но пользователи достали - жалуются, что >под альтовыми ядрами shm интерфейс не работает, а под всеми другими - >работает. Пока проверил под debian и vanilla кернелями - действительно, одна >и та же программа на одной и той же машине не работает только под альт ядром, >под другими - работает. Что конечно не исключает багов в самой программе, но >выглядит подозрительно даже для меня. Что уж говорить про пользователей, >которые на грани учинения бунта и самочинного сноса Альта отовсюду. > > > Это больше похоже на проблемы настройки чем на проблему ядра... >Видимо придется все же самому разбираться. Может кто-нибудь поделится >исходниками чего-то работающего с shm, что у него самого - работает? Или хотя >бы фрагментом. Буду признателен. > > > Сейчас уже не успеваю, но вечером кину в личную почту минимальную программу пользующую разделяемую память... -- С уважением, Евгений Остапец http://www.unisoft.com.ua ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 5:04 ` Eugene Ostapets @ 2004-03-25 6:53 ` Ivan Adzhubey 2004-03-25 7:44 ` Serj 1 sibling, 0 replies; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 6:53 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thursday 25 March 2004 12:04 am, Eugene Ostapets wrote: > Ivan Adzhubey пишет: > >Не шутите. На трех разных машинах? Это вряд ли. Да и не прожили бы они так > >долго с битой памятью - почти год, одна файлсервер и основная считалка, > >вторая - вебсервер, третья - моя домашняя. > > Не верю! (с)... > > >К сожалению, я сам никогда SysV IPC интерфейсом не пользовался, так что > >сказать в чем дело сразу не смогу. Но пользователи достали - жалуются, что > >под альтовыми ядрами shm интерфейс не работает, а под всеми другими - > >работает. Пока проверил под debian и vanilla кернелями - действительно, > > одна и та же программа на одной и той же машине не работает только под > > альт ядром, под другими - работает. Что конечно не исключает багов в > > самой программе, но выглядит подозрительно даже для меня. Что уж говорить > > про пользователей, которые на грани учинения бунта и самочинного сноса > > Альта отовсюду. > > Это больше похоже на проблемы настройки чем на проблему ядра... > > >Видимо придется все же самому разбираться. Может кто-нибудь поделится > >исходниками чего-то работающего с shm, что у него самого - работает? Или > > хотя бы фрагментом. Буду признателен. > > Сейчас уже не успеваю, но вечером кину в личную почту минимальную > программу пользующую разделяемую память... Мда, вот только что еще раз проверил: на домашней машине (ядро 2.4.25-std-smp-alt1) IPC::ShareLite по make test виснет с сообщением об ошибке на тесте 8. На головном ноде кластера (ядро 2.4.22-openmosix2smp, это ванильное 2.4.22 с наложенным единственным патчем openmosix) все тесты проходят на ура. Так что проблема все же мне не померещилась и дело именно в разных ядрах, а не в только в коде программ. На кластерном ноде стоит тот же последний Сизиф, только ядро заменено. Проблема в том, что это что-то достаточно неочевидное, я вот копаюсь понемногу, но пока только смутные подозрения на обработку фрагментации shm (разный размер фрагментов?). Самому разобраться - это у меня уйдет очень много времени, поэтому и обращаюсь за помощью. На devel@ я не подписан к сожалению, так что уж простите за некоторый оффтопик. Очень хочется альт спасти на наших машинах, хотя дебиан конкретно наступает... -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* RE: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 5:04 ` Eugene Ostapets 2004-03-25 6:53 ` Ivan Adzhubey @ 2004-03-25 7:44 ` Serj 2004-03-25 8:28 ` Ivan Adzhubey 1 sibling, 1 reply; 33+ messages in thread From: Serj @ 2004-03-25 7:44 UTC (permalink / raw) To: 'ALT Linux Sisyphus discussion list' > -----Original Message----- > From: sisyphus-bounces@altlinux.ru > [mailto:sisyphus-bounces@altlinux.ru] On Behalf Of Eugene Ostapets > Sent: Thursday, March 25, 2004 8:04 AM > To: ALT Linux Sisyphus discussion list > Subject: Re: [sisyphus] Shared memory - HELP PLEASE! > > Это больше похоже на проблемы настройки чем на проблему ядра... > По моему - тоже. Сколько требуется для этой программы shm памяти. У меня в сыое время падал sybase на alt-овских ядрах с ошибкой выделения shm - помогло увеличение максимально доступной shm памяти в настройках кернела (ну еще обязательно ставлю glibc-core-i686, хотя это уже к тредам относится...) Sy, Serj ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 7:44 ` Serj @ 2004-03-25 8:28 ` Ivan Adzhubey 0 siblings, 0 replies; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 8:28 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thursday 25 March 2004 02:44 am, Serj wrote: > > -----Original Message----- > > From: sisyphus-bounces@altlinux.ru > > [mailto:sisyphus-bounces@altlinux.ru] On Behalf Of Eugene Ostapets > > Sent: Thursday, March 25, 2004 8:04 AM > > To: ALT Linux Sisyphus discussion list > > Subject: Re: [sisyphus] Shared memory - HELP PLEASE! > > > > Это больше похоже на проблемы настройки чем на проблему ядра... > > По моему - тоже. Сколько требуется для этой программы shm памяти. У меня > в сыое время падал sybase на alt-овских ядрах с ошибкой выделения shm - > помогло увеличение максимально доступной shm памяти в настройках кернела > (ну еще обязательно ставлю glibc-core-i686, хотя это уже к тредам > относится...) Это уже демагогия, проблемы настройки ядра - это разве не проблемы ядра? Мне нужно решение, а как его назвать меня не волнует. С максимальным размером shm это не очень связано - падают и программы запрашивающик 100 байт. Но вот что _как-то_ с размером это связано - факт, см. мои постинги ниже. -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 4:36 ` Ivan Adzhubey 2004-03-25 4:43 ` Denis S. Filimonov 2004-03-25 5:04 ` Eugene Ostapets @ 2004-03-25 5:09 ` Mike Lykov 2004-03-25 5:23 ` Ivan Adzhubey 2004-03-25 6:42 ` Grigory Batalov 3 siblings, 1 reply; 33+ messages in thread From: Mike Lykov @ 2004-03-25 5:09 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list В сообщении от Четверг 25 Март 2004 08:36 Ivan Adzhubey написал: > К сожалению, я сам никогда SysV IPC интерфейсом не пользовался, так что > сказать в чем дело сразу не смогу. Но пользователи достали - жалуются, что > под альтовыми ядрами shm интерфейс не работает, Так это вы "по слухам"? > одна и та же программа на одной и той же машине не работает только под альт > ядром, под другими - работает. Может, напишете (сюда) примерчик такой программы (короткий), вышеописанный эффект запуска которого может быть воспроизведен? ЗЫ на меня в анализе работы этого примера надеяться не надо ;) -- Mike ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 5:09 ` Mike Lykov @ 2004-03-25 5:23 ` Ivan Adzhubey 2004-03-25 5:28 ` Mike Lykov 0 siblings, 1 reply; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 5:23 UTC (permalink / raw) To: combr, ALT Linux Sisyphus discussion list On Thursday 25 March 2004 12:09 am, Mike Lykov wrote: > В сообщении от Четверг 25 Март 2004 08:36 Ivan Adzhubey написал: > > К сожалению, я сам никогда SysV IPC интерфейсом не пользовался, так что > > сказать в чем дело сразу не смогу. Но пользователи достали - жалуются, > > что под альтовыми ядрами shm интерфейс не работает, > > Так это вы "по слухам"? Это мои пользователи. За соседним столом. У меня тоже не работает. Просто я сам shm не программировал, поэтому и говорю, что сходу разобраться в качестве кода который мне показывают мои программисты не могу. Но под не-альтовскими ядрами этот код работает. Это не слухи, а факт. Пример завтра будет. Сегодня автор кода уже отвалил. В качестве другого прмера можно взять test.pl от перловского модуля IPC::ShareLite, он падает на 8-м тесте. Я об этом уже писал. Правда сам модуль довольно кривой. В качестве другого примера можно взять WU-BLAST (http://blast.wustl.edu/), он у меня тоже падает пока не отключишь shared memory. Под дебианом тот же бинарник работает с shared memory. Но эта программа closed source и что они там напрограммировали я проверить не могу. -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 5:23 ` Ivan Adzhubey @ 2004-03-25 5:28 ` Mike Lykov 2004-03-25 5:30 ` Ivan Adzhubey 0 siblings, 1 reply; 33+ messages in thread From: Mike Lykov @ 2004-03-25 5:28 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list В сообщении от Четверг 25 Март 2004 09:23 Ivan Adzhubey написал: > > Так это вы "по слухам"? > Это мои пользователи. За соседним столом. Тогда просто подпишите его на рассылку (у меня есть сомнения, что эта тема подходит именно для sisyphus@, скорее для devel@). -- Mike ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 5:28 ` Mike Lykov @ 2004-03-25 5:30 ` Ivan Adzhubey 0 siblings, 0 replies; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 5:30 UTC (permalink / raw) To: combr, ALT Linux Sisyphus discussion list On Thursday 25 March 2004 12:28 am, Mike Lykov wrote: > В сообщении от Четверг 25 Март 2004 09:23 Ivan Adzhubey написал: > > > Так это вы "по слухам"? > > > > Это мои пользователи. За соседним столом. > > Тогда просто подпишите его на рассылку (у меня есть сомнения, что эта тема > подходит именно для sisyphus@, скорее для devel@). Он индус. Американского происхождения правда. Так что без меня в качестве интерфейса вряд ли получится. Пока сижу курю маны по shm. -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 4:36 ` Ivan Adzhubey ` (2 preceding siblings ...) 2004-03-25 5:09 ` Mike Lykov @ 2004-03-25 6:42 ` Grigory Batalov 2004-03-25 7:05 ` Ivan Adzhubey 3 siblings, 1 reply; 33+ messages in thread From: Grigory Batalov @ 2004-03-25 6:42 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list [-- Attachment #1: Type: text/plain, Size: 765 bytes --] On Wed, 24 Mar 2004 23:36:15 -0500 Ivan Adzhubey <iadzhubey@rics.bwh.harvard.edu> wrote: > Видимо придется все же самому разбираться. Может кто-нибудь поделится > исходниками чего-то работающего с shm, что у него самого - работает? Или хотя > бы фрагментом. Буду признателен. У меня сохранился небольшой тест. Кажется, без ошибок =). Во время sleep(5) запустите ipcs - увидите выделенный 1К. $ gcc -g -Wall -O2 -o shmtest shmtest.c $ ./shmtest & $ ipcs ------ Shared Memory Segments -------- key shmid owner perms bytes nattch status 0x00000000 1245187 bga 700 1048576 1 -- Григорий Баталов, начальник бюро системного администрирования ОАО "Ковдорский ГОК" +7-(81535)-76036 [-- Attachment #2: shmtest.c --] [-- Type: text/plain, Size: 749 bytes --] #include <sys/types.h> #include <sys/ipc.h> #include <sys/shm.h> #include <errno.h> #include <stdio.h> #include <unistd.h> #include <stdlib.h> int main(void) { int shmid = -1; char *result; shmid = shmget(IPC_PRIVATE, 1024*1024, IPC_CREAT|0700); if(shmid == -1) { perror("shmget"); exit(EXIT_FAILURE); } result = (char *)shmat(shmid, NULL, 0); if(result == (char *)-1) { int save_errno = errno; if(shmctl(shmid, IPC_RMID, NULL) == -1) { perror("shmctl"); } errno = save_errno; perror("shmat"); exit(EXIT_FAILURE); } sleep(5); if(shmctl(shmid, IPC_RMID, NULL) == -1) { perror("shmctl"); exit(EXIT_FAILURE); } if(shmdt(result) == -1) { perror("shmdt"); exit(EXIT_FAILURE); } exit(EXIT_SUCCESS); } ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 6:42 ` Grigory Batalov @ 2004-03-25 7:05 ` Ivan Adzhubey 2004-03-25 7:17 ` Ivan Adzhubey 0 siblings, 1 reply; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 7:05 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thursday 25 March 2004 01:42 am, Grigory Batalov wrote: > On Wed, 24 Mar 2004 23:36:15 -0500 > > Ivan Adzhubey <iadzhubey@rics.bwh.harvard.edu> wrote: > > Видимо придется все же самому разбираться. Может кто-нибудь поделится > > исходниками чего-то работающего с shm, что у него самого - работает? Или > > хотя бы фрагментом. Буду признателен. > > У меня сохранился небольшой тест. Кажется, без ошибок =). > Во время sleep(5) запустите ipcs - увидите выделенный 1К. > > $ gcc -g -Wall -O2 -o shmtest shmtest.c > $ ./shmtest & > $ ipcs > > ------ Shared Memory Segments -------- > key shmid owner perms bytes nattch status > 0x00000000 1245187 bga 700 1048576 1 Спасибо, Григорий! К сожалению, там все сложнее. Ваша программа работает, и такие простые тесты я уже научился сам писать ;). Проблема возникает когда a) есть минимум два процесса пользующихся этой памятью (хотя бы по очереди, например форкнутый child и его parent) b) используется блокировка (lock) А хотя нет, погодите! Кажется что-то видно... у вас запрашивается 2K памяти и выделяется 2K. А у меня вашей программе выделяется в четыре раза больше: ------ Shared Memory Segments -------- key shmid owner perms bytes nattch status 0x00000000 1736711 ivan 700 4194304 1 Кажется это все-таки баг. Сейчас проверю под другим ядром... Спасибо! -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 7:05 ` Ivan Adzhubey @ 2004-03-25 7:17 ` Ivan Adzhubey 2004-03-25 7:29 ` Ivan Adzhubey 2004-03-25 7:44 ` Grigory Batalov 0 siblings, 2 replies; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 7:17 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thursday 25 March 2004 02:05 am, Ivan Adzhubey wrote: > On Thursday 25 March 2004 01:42 am, Grigory Batalov wrote: > > On Wed, 24 Mar 2004 23:36:15 -0500 > > > > Ivan Adzhubey <iadzhubey@rics.bwh.harvard.edu> wrote: > > > Видимо придется все же самому разбираться. Может кто-нибудь поделится > > > исходниками чего-то работающего с shm, что у него самого - работает? > > > Или хотя бы фрагментом. Буду признателен. > > > > У меня сохранился небольшой тест. Кажется, без ошибок =). > > Во время sleep(5) запустите ipcs - увидите выделенный 1К. > > > > $ gcc -g -Wall -O2 -o shmtest shmtest.c > > $ ./shmtest & > > $ ipcs > > > > ------ Shared Memory Segments -------- > > key shmid owner perms bytes nattch status > > 0x00000000 1245187 bga 700 1048576 1 > > Спасибо, Григорий! > > К сожалению, там все сложнее. Ваша программа работает, и такие простые > тесты я уже научился сам писать ;). Проблема возникает когда a) есть > минимум два процесса пользующихся этой памятью (хотя бы по очереди, > например форкнутый child и его parent) b) используется блокировка (lock) > > А хотя нет, погодите! Кажется что-то видно... у вас запрашивается 2K памяти > и выделяется 2K. А у меня вашей программе выделяется в четыре раза больше: > > ------ Shared Memory Segments -------- > key shmid owner perms bytes nattch status > 0x00000000 1736711 ivan 700 4194304 1 > > Кажется это все-таки баг. Сейчас проверю под другим ядром... Конечно, 2MB а не 2KB, опечатка. Странно, проверил на кластерном ноде под 2.4.22, там тоже выделяется 4MB. Что-то с выравниванием памяти? Вы каким компилятором собирали? И на какой системе запускали (ядро, libc)? Может это из-за того что я пробовал только на smp ядрах, сейчас буду дальше проверять, где-то в сетке у меня up ядро должно было остаться... -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 7:17 ` Ivan Adzhubey @ 2004-03-25 7:29 ` Ivan Adzhubey 2004-03-25 7:59 ` Ivan Adzhubey 2004-03-25 7:44 ` Grigory Batalov 1 sibling, 1 reply; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 7:29 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thursday 25 March 2004 02:17 am, Ivan Adzhubey wrote: > On Thursday 25 March 2004 02:05 am, Ivan Adzhubey wrote: > > On Thursday 25 March 2004 01:42 am, Grigory Batalov wrote: > > > On Wed, 24 Mar 2004 23:36:15 -0500 > > > > > > Ivan Adzhubey <iadzhubey@rics.bwh.harvard.edu> wrote: > > > > Видимо придется все же самому разбираться. Может кто-нибудь поделится > > > > исходниками чего-то работающего с shm, что у него самого - работает? > > > > Или хотя бы фрагментом. Буду признателен. > > > > > > У меня сохранился небольшой тест. Кажется, без ошибок =). > > > Во время sleep(5) запустите ipcs - увидите выделенный 1К. > > > > > > $ gcc -g -Wall -O2 -o shmtest shmtest.c > > > $ ./shmtest & > > > $ ipcs > > > > > > ------ Shared Memory Segments -------- > > > key shmid owner perms bytes nattch > > > status 0x00000000 1245187 bga 700 1048576 1 > > > > Спасибо, Григорий! > > > > К сожалению, там все сложнее. Ваша программа работает, и такие простые > > тесты я уже научился сам писать ;). Проблема возникает когда a) есть > > минимум два процесса пользующихся этой памятью (хотя бы по очереди, > > например форкнутый child и его parent) b) используется блокировка (lock) > > > > А хотя нет, погодите! Кажется что-то видно... у вас запрашивается 2K > > памяти и выделяется 2K. А у меня вашей программе выделяется в четыре раза > > больше: > > > > ------ Shared Memory Segments -------- > > key shmid owner perms bytes nattch status > > 0x00000000 1736711 ivan 700 4194304 1 > > > > Кажется это все-таки баг. Сейчас проверю под другим ядром... > > Конечно, 2MB а не 2KB, опечатка. > > Странно, проверил на кластерном ноде под 2.4.22, там тоже выделяется 4MB. > Что-то с выравниванием памяти? Вы каким компилятором собирали? И на какой > системе запускали (ядро, libc)? Может это из-за того что я пробовал только > на smp ядрах, сейчас буду дальше проверять, где-то в сетке у меня up ядро > должно было остаться... Проверил, на 2.4.25-std-up-alt1 тоже самое - выделяется 4MB вместо 2MB. И 8-й тест IPC::ShareLite так же виснет. Похоже это все-таки баг. Только на что его вешать? На ядро, glibc, gcc? Еще раз спасибо за помощь! -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 7:29 ` Ivan Adzhubey @ 2004-03-25 7:59 ` Ivan Adzhubey 0 siblings, 0 replies; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 7:59 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thursday 25 March 2004 02:29 am, Ivan Adzhubey wrote: > > > > ------ Shared Memory Segments -------- > > > > key shmid owner perms bytes nattch > > > > status 0x00000000 1245187 bga 700 1048576 1 > > > > > > Спасибо, Григорий! > > > > > > К сожалению, там все сложнее. Ваша программа работает, и такие простые > > > тесты я уже научился сам писать ;). Проблема возникает когда a) есть > > > минимум два процесса пользующихся этой памятью (хотя бы по очереди, > > > например форкнутый child и его parent) b) используется блокировка > > > (lock) > > > > > > А хотя нет, погодите! Кажется что-то видно... у вас запрашивается 2K > > > памяти и выделяется 2K. А у меня вашей программе выделяется в четыре > > > раза больше: > > > > > > ------ Shared Memory Segments -------- > > > key shmid owner perms bytes nattch > > > status 0x00000000 1736711 ivan 700 4194304 1 > > > > > > Кажется это все-таки баг. Сейчас проверю под другим ядром... > > > > Конечно, 2MB а не 2KB, опечатка. > > > > Странно, проверил на кластерном ноде под 2.4.22, там тоже выделяется 4MB. > > Что-то с выравниванием памяти? Вы каким компилятором собирали? И на какой > > системе запускали (ядро, libc)? Может это из-за того что я пробовал > > только на smp ядрах, сейчас буду дальше проверять, где-то в сетке у меня > > up ядро должно было остаться... > > Проверил, на 2.4.25-std-up-alt1 тоже самое - выделяется 4MB вместо 2MB. И > 8-й тест IPC::ShareLite так же виснет. Похоже это все-таки баг. Только на > что его вешать? На ядро, glibc, gcc? > > Еще раз спасибо за помощь! Так, слегка запутался: man shmget: int shmget(key_t key, int size, int shmflg); ...shmget() returns the identifier of the shared memory segment associated with the value of the argument key. A new shared memory segment, with size equal to the value of size rounded up to a multiple of PAGE_SIZE, ... PAGE_SIZE у нас вроде бы 0x400 == 1024 bytes shm.h: #define SHMMIN 1 /* min shared seg size (bytes) */ но shmget работает как-то странно: shmtest.c: shmid = shmget(IPC_PRIVATE, 1, IPC_CREAT|0700); ipcs: ------ Shared Memory Segments -------- key shmid owner perms bytes nattch status 0x00000000 1966087 ivan 700 0 1 <size=2...1022> аналогично shmtest.c: shmid = shmget(IPC_PRIVATE, 1023, IPC_CREAT|0700); ipcs: ------ Shared Memory Segments -------- key shmid owner perms bytes nattch status 0x00000000 1966087 ivan 700 0 1 то есть никакой памяти не выделяется, хотя и ошибки тоже не генерируется. shmtest.c: shmid = shmget(IPC_PRIVATE, 1024, IPC_CREAT|0700); ipcs: ------ Shared Memory Segments -------- key shmid owner perms bytes nattch status 0x00000000 1966087 ivan 700 4096 1 Опа, сразу 4 страницы! shmtest.c: shmid = shmget(IPC_PRIVATE, 2*1024, IPC_CREAT|0700); ipcs: ------ Shared Memory Segments -------- key shmid owner perms bytes nattch status 0x00000000 1966087 ivan 700 8192 1 И так далее, в два раза больше чем запрошено. Грустно, но курение манов совершенно не помогает. Не перекинет ли кто из подписантов этот тред в devel@? Может гуру курят что-то более подходящее к случаю и смогут помочь мне узреть истину? -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 7:17 ` Ivan Adzhubey 2004-03-25 7:29 ` Ivan Adzhubey @ 2004-03-25 7:44 ` Grigory Batalov 2004-03-25 8:09 ` Ivan Adzhubey 2004-03-25 8:24 ` Ivan Adzhubey 1 sibling, 2 replies; 33+ messages in thread From: Grigory Batalov @ 2004-03-25 7:44 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thu, 25 Mar 2004 02:17:54 -0500 Ivan Adzhubey <iadzhubey@rics.bwh.harvard.edu> wrote: > > А хотя нет, погодите! Кажется что-то видно... у вас запрашивается 2K памяти > > и выделяется 2K. Разве? Запрашивается и выделяется 1024*1024 байт, т.е. 1Мбайт =) > > А у меня вашей программе выделяется в четыре раза больше: > > > > ------ Shared Memory Segments -------- > > key shmid owner perms bytes nattch status > > 0x00000000 1736711 ivan 700 4194304 1 > > > > Кажется это все-таки баг. Сейчас проверю под другим ядром... > > Конечно, 2MB а не 2KB, опечатка. > > Странно, проверил на кластерном ноде под 2.4.22, там тоже выделяется 4MB. > Что-то с выравниванием памяти? man shmget: ...A new shared memory segment, with size equal to the value of size rounded up to a multiple of PAGE_SIZE, is created... Может быть, из-за этого? > Вы каким компилятором собирали? И на какой > системе запускали (ядро, libc)? Может это из-за того что я пробовал только на > smp ядрах, сейчас буду дальше проверять, где-то в сетке у меня up ядро должно > было остаться... 1. Intel P-IV с гипер-тредингом ------------------------------- $ gcc --version i586-alt-linux-gcc (GCC) 3.3.2 20031202 (ALT Linux, build 3.3.2-alt1) $ uname -r 2.4.22-vs-smp-alt17.1 $ rpm -q glibc glibc-2.2.6-alt0.11 2. Два Intel P-III ------------------ $ gcc --version 2.96 $ uname -r 2.4.20-alt12-smp $ rpm -q glibc glibc-2.2.6-alt0.7 -- Григорий Баталов, начальник бюро системного администрирования ОАО "Ковдорский ГОК" +7-(81535)-76036 ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 7:44 ` Grigory Batalov @ 2004-03-25 8:09 ` Ivan Adzhubey 2004-03-25 8:24 ` Ivan Adzhubey 1 sibling, 0 replies; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 8:09 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thursday 25 March 2004 02:44 am, Grigory Batalov wrote: > On Thu, 25 Mar 2004 02:17:54 -0500 > > Ivan Adzhubey <iadzhubey@rics.bwh.harvard.edu> wrote: > > > А хотя нет, погодите! Кажется что-то видно... у вас запрашивается 2K > > > памяти и выделяется 2K. > > Разве? Запрашивается и выделяется 1024*1024 байт, т.е. 1Мбайт =) Угу, бывает, это у нас уже четвертый час утра, и работаю я третьи сутки почти без сна ;(( > > Странно, проверил на кластерном ноде под 2.4.22, там тоже выделяется 4MB. > > Что-то с выравниванием памяти? > > man shmget: > > ...A new shared memory segment, with > size equal to the value of size rounded up to a multiple of PAGE_SIZE, > is created... > > Может быть, из-за этого? Не получается оно rounded up, просто size умножается на 2. > > Вы каким компилятором собирали? И на какой > > системе запускали (ядро, libc)? Может это из-за того что я пробовал > > только на smp ядрах, сейчас буду дальше проверять, где-то в сетке у меня > > up ядро должно было остаться... Примерно то же самое и у меня, только i586-alt-linux-gcc (GCC) 3.3.3 20040216 (ALT Linux, build 3.3.3-alt2) 2.96 пробовал, то же самое ну и ядро 2.4.25-smp/std-alt1, но на 2.4.22 то же самое. ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 7:44 ` Grigory Batalov 2004-03-25 8:09 ` Ivan Adzhubey @ 2004-03-25 8:24 ` Ivan Adzhubey 2004-03-25 11:54 ` Sergey Vlasov 1 sibling, 1 reply; 33+ messages in thread From: Ivan Adzhubey @ 2004-03-25 8:24 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thursday 25 March 2004 02:44 am, Grigory Batalov wrote: > On Thu, 25 Mar 2004 02:17:54 -0500 > > man shmget: > > ...A new shared memory segment, with > size equal to the value of size rounded up to a multiple of PAGE_SIZE, > is created... То есть должно быть: size = [1..1024] shmblock = 1024 (или 1 * PAGE_SIZE) size = [1025..2047] shmblock = 2048 (или 2 * PAGE_SIZE) size = [2048..3071] shmblock = 3072 (или 3 * PAGE_SIZE) и тд. Вместо этого получаем: size = [1..1024] shmblock = 0 size = [1025..2047] shmblock = 4096 size = [2048..4095] shmblock = 8192 size = [4096..5119] shmblock = 16384 и тд. Какое же это rounded up to a multiple of PAGE_SIZE, даже если например PAGE_SIZE == 4096? -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-25 8:24 ` Ivan Adzhubey @ 2004-03-25 11:54 ` Sergey Vlasov 0 siblings, 0 replies; 33+ messages in thread From: Sergey Vlasov @ 2004-03-25 11:54 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list; +Cc: devel On Thu, Mar 25, 2004 at 03:24:31AM -0500, Ivan Adzhubey wrote: > size = [1..1024] > shmblock = 0 > size = [1025..2047] > shmblock = 4096 > size = [2048..4095] > shmblock = 8192 > size = [4096..5119] > shmblock = 16384 > > и тд. > > Какое же это rounded up to a multiple of PAGE_SIZE, даже если например > PAGE_SIZE == 4096? Это делает ipcs. Кто-нибудь может пояснить происхождение патча util-linux-2.11y-rh-ipcs-84243-86285.patch в пакете util-linux? Правильные данные о размере можно найти в /proc/sysvipc/shm. A PAGE_SIZE на x86 действительно 4096. ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-24 22:17 ` [sisyphus] Shared memory - HELP PLEASE! Ivan Adzhubey 2004-03-25 4:14 ` Eugene Ostapets @ 2004-03-25 4:22 ` Denis S. Filimonov 2004-03-25 12:22 ` Sergey Vlasov 2004-04-06 8:57 ` [sisyphus] Shared memory - HELP PLEASE! Sergey Vlasov 3 siblings, 0 replies; 33+ messages in thread From: Denis S. Filimonov @ 2004-03-25 4:22 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thursday 25 March 2004 04:17, Ivan Adzhubey wrote: > Приветствую! > > На 2.4.25-std-smp-alt1 по-прежнему не работает SysV shared memory, > shmget() падает молча. Не работает ни от пользователя, ни от рута. Не > работают ни собственные программы (C), ни сторонние бинарники, ни > Perl modules. Может надо пользователя куда добавить? Но почему тогда > даже от рута не работает? Это какой-то секурити патч подсуетился? На > ванильном ядре на той же машине все работает as expected. > > Помогите пожалуйста, иначе придется Альт сносить! это все же не похоже на правду, приведите хотя бы лог strace, чтобы можно было хоть что-то понять... -- Sincerely, Denis. ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-24 22:17 ` [sisyphus] Shared memory - HELP PLEASE! Ivan Adzhubey 2004-03-25 4:14 ` Eugene Ostapets 2004-03-25 4:22 ` Denis S. Filimonov @ 2004-03-25 12:22 ` Sergey Vlasov 2004-03-25 12:58 ` [JT] снова проблемы от security fixes? (WAS: Re: [sisyphus] Shared memory - HELP PLEASE!) Andrei Bulava 2004-04-06 8:57 ` [sisyphus] Shared memory - HELP PLEASE! Sergey Vlasov 3 siblings, 1 reply; 33+ messages in thread From: Sergey Vlasov @ 2004-03-25 12:22 UTC (permalink / raw) To: sisyphus; +Cc: devel-kernel [-- Attachment #1: Type: text/plain, Size: 1243 bytes --] On Wed, Mar 24, 2004 at 05:17:29PM -0500, Ivan Adzhubey wrote: > На 2.4.25-std-smp-alt1 по-прежнему не работает SysV shared memory, > shmget() падает молча. Не работает ни от пользователя, ни от рута. Не > работают ни собственные программы (C), ни сторонние бинарники, ни Perl > modules. Может надо пользователя куда добавить? Но почему тогда даже от > рута не работает? Это какой-то секурити патч подсуетился? На ванильном > ядре на той же машине все работает as expected. Действительно, дело в патче Openwall, точнее, в его конфигурации. В ядрах std включена опция CONFIG_HARDEN_SHM - при этом неиспользуемые сегменты разделяемой памяти уничтожаются немедленно, не дожидаясь IPC_RMID. Программы, которые постоянно сохраняют хотя бы одно подключение к области разделяемой памяти, при этом работают нормально. Проблемы возникают в том случае, если все процессы отсоединяются от области, а потом пытаются вновь к ней подключиться; в этом случае область оказывается уничтоженной. Эта опция появилась в конфигурации довольно давно (ещё до появления kernel CVS - т.е., до 2.4.21rel-alt13). Видимо, придётся либо убирать CONFIG_HARDEN_SHM, либо добавлять какую-то возможность настройки этого поведения (/proc/sys/kernel/shm_destroy_unused ?) [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 33+ messages in thread
* [JT] снова проблемы от security fixes? (WAS: Re: [sisyphus] Shared memory - HELP PLEASE!) 2004-03-25 12:22 ` Sergey Vlasov @ 2004-03-25 12:58 ` Andrei Bulava 2004-03-25 13:12 ` Sergey Vlasov 0 siblings, 1 reply; 33+ messages in thread From: Andrei Bulava @ 2004-03-25 12:58 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Thu, 25 Mar 2004, Sergey Vlasov wrote: <skip> > Видимо, придётся либо убирать CONFIG_HARDEN_SHM, либо добавлять > какую-то возможность настройки этого поведения > (/proc/sys/kernel/shm_destroy_unused ?) > No offense or flame, pls. Однако на моей памяти это уже не первая попытка сначала закрутить гайки, а потом, когда пользователи плачут, колются, но продолжают кушать кактус, искать слесарный инструмент :-((( У меня тоже зачастую нечем отмахаться от фанатов других дистрибутивов в такие щекотливые моменты, ибо моих скромных способностей не хватает для обоснованной аргументации против фанатизма. Нести в массы ALT Linux на родине BCL - то ещё развлечение ;-( Предлагаю принять меры по освещению новых затяжек гаек в области безопасности, чреватых нарушением работы ПО. Из чтения changelog ядра этого не видно :-( Или плохо / не туда смотрю? // AB1002-UANIC ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [JT] снова проблемы от security fixes? (WAS: Re: [sisyphus] Shared memory - HELP PLEASE!) 2004-03-25 12:58 ` [JT] снова проблемы от security fixes? (WAS: Re: [sisyphus] Shared memory - HELP PLEASE!) Andrei Bulava @ 2004-03-25 13:12 ` Sergey Vlasov 0 siblings, 0 replies; 33+ messages in thread From: Sergey Vlasov @ 2004-03-25 13:12 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list [-- Attachment #1: Type: text/plain, Size: 1448 bytes --] On Thu, Mar 25, 2004 at 02:58:03PM +0200, Andrei Bulava wrote: > On Thu, 25 Mar 2004, Sergey Vlasov wrote: > > <skip> > > > Видимо, придётся либо убирать CONFIG_HARDEN_SHM, либо добавлять > > какую-то возможность настройки этого поведения > > (/proc/sys/kernel/shm_destroy_unused ?) > > > > No offense or flame, pls. Однако на моей памяти это уже не первая > попытка сначала закрутить гайки, а потом, когда пользователи > плачут, колются, но продолжают кушать кактус, искать слесарный > инструмент :-((( > > У меня тоже зачастую нечем отмахаться от фанатов других > дистрибутивов в такие щекотливые моменты, ибо моих скромных > способностей не хватает для обоснованной аргументации против > фанатизма. Нести в массы ALT Linux на родине BCL - то ещё > развлечение ;-( > > Предлагаю принять меры по освещению новых затяжек гаек в области > безопасности, чреватых нарушением работы ПО. Из чтения changelog > ядра этого не видно :-( > > Или плохо / не туда смотрю? Последний раз подобные настройки менялись в 2.4.22-alt13 - там была добавлена проверка флага монтирования noexec при выполнении mmap с флагом PROT_EXEC, чтобы заблокировать обходной метод запуска исполняемых файлов с таких файловых систем через прямой вызов /lib/ld-linux.so.2. Позднее этот патч вошёл в upstream (в 2.4.25). Ну а в 2.4.22-alt11 включили защиту от исполнения кода в стеке и урезали доступ к /proc (средствами патча Openwall). Всё это написано в changelog ядра. [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-03-24 22:17 ` [sisyphus] Shared memory - HELP PLEASE! Ivan Adzhubey ` (2 preceding siblings ...) 2004-03-25 12:22 ` Sergey Vlasov @ 2004-04-06 8:57 ` Sergey Vlasov 2004-04-06 9:08 ` Ivan Adzhubey 3 siblings, 1 reply; 33+ messages in thread From: Sergey Vlasov @ 2004-04-06 8:57 UTC (permalink / raw) To: sisyphus [-- Attachment #1: Type: text/plain, Size: 898 bytes --] On Wed, Mar 24, 2004 at 05:17:29PM -0500, Ivan Adzhubey wrote: > На 2.4.25-std-smp-alt1 по-прежнему не работает SysV shared memory, > shmget() падает молча. Не работает ни от пользователя, ни от рута. Не > работают ни собственные программы (C), ни сторонние бинарники, ни Perl > modules. Может надо пользователя куда добавить? Но почему тогда даже от > рута не работает? Это какой-то секурити патч подсуетился? На ванильном > ядре на той же машине все работает as expected. В ядре 2.4.25-std-{up,smp}-alt3 добавлена возможность настройки поведения ядра при обнаружении неиспользуемых сегментов разделяемой памяти. Это делается через sysctl kernel.shm_destroy_unused. По умолчанию установлено значение 1 - неиспользуемые сегменты разделяемой памяти будут уничтожаться немедленно. При установке этого параметра в 0 сегменты разделяемой памяти будут уничтожаться только при явном вызове IPC_RMID. [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-04-06 8:57 ` [sisyphus] Shared memory - HELP PLEASE! Sergey Vlasov @ 2004-04-06 9:08 ` Ivan Adzhubey 2004-04-06 9:24 ` Dmitry V. Levin 2004-04-06 9:50 ` Sergey Vlasov 0 siblings, 2 replies; 33+ messages in thread From: Ivan Adzhubey @ 2004-04-06 9:08 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Tuesday 06 April 2004 04:57 am, Sergey Vlasov wrote: > On Wed, Mar 24, 2004 at 05:17:29PM -0500, Ivan Adzhubey wrote: > > На 2.4.25-std-smp-alt1 по-прежнему не работает SysV shared memory, > > shmget() падает молча. Не работает ни от пользователя, ни от рута. Не > > работают ни собственные программы (C), ни сторонние бинарники, ни Perl > > modules. Может надо пользователя куда добавить? Но почему тогда даже от > > рута не работает? Это какой-то секурити патч подсуетился? На ванильном > > ядре на той же машине все работает as expected. > > В ядре 2.4.25-std-{up,smp}-alt3 добавлена возможность настройки > поведения ядра при обнаружении неиспользуемых сегментов разделяемой > памяти. Это делается через sysctl kernel.shm_destroy_unused. По > умолчанию установлено значение 1 - неиспользуемые сегменты > разделяемой памяти будут уничтожаться немедленно. При установке > этого параметра в 0 сегменты разделяемой памяти будут уничтожаться > только при явном вызове IPC_RMID. С этим я уже разобрался, но видимо что-то еще сломано (пардон, пропатчено ;). Процесс запрашивает блок shm, форкает другой и этот другой уже не может к сегменту обращаться. Причем это как-то связано с размером, блок должен быть или достаточно большой или очень маленький. Точнее пока не разобрался, нет времени. Но обидно что эти же программы прекрасно работают на всех других ядрах, кроме альтовского. Неохота честно говоря тратить время на научный проект по выявлению различий. Может кто-то из разработчиков все же примет на себя труд потестировать? Программы могу выслать. Или вот хотя бы тест из модуля IPC::SharedSimple прогнать. Неужели никому это неинтересно, никто shm интерфейс не использует в своих программах? И не надо опять писать, что вот XFree86 и MySQL работают значит все в порядке. Мне от этого не легче - хотелось бы узнать почему они работают, а другие программы - нет?? -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-04-06 9:08 ` Ivan Adzhubey @ 2004-04-06 9:24 ` Dmitry V. Levin 2004-04-06 9:50 ` Sergey Vlasov 1 sibling, 0 replies; 33+ messages in thread From: Dmitry V. Levin @ 2004-04-06 9:24 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list [-- Attachment #1: Type: text/plain, Size: 2116 bytes --] On Tue, Apr 06, 2004 at 05:08:36AM -0400, Ivan Adzhubey wrote: > On Tuesday 06 April 2004 04:57 am, Sergey Vlasov wrote: > > On Wed, Mar 24, 2004 at 05:17:29PM -0500, Ivan Adzhubey wrote: > > > На 2.4.25-std-smp-alt1 по-прежнему не работает SysV shared memory, > > > shmget() падает молча. Не работает ни от пользователя, ни от рута. Не > > > работают ни собственные программы (C), ни сторонние бинарники, ни Perl > > > modules. Может надо пользователя куда добавить? Но почему тогда даже от > > > рута не работает? Это какой-то секурити патч подсуетился? На ванильном > > > ядре на той же машине все работает as expected. > > > > В ядре 2.4.25-std-{up,smp}-alt3 добавлена возможность настройки > > поведения ядра при обнаружении неиспользуемых сегментов разделяемой > > памяти. Это делается через sysctl kernel.shm_destroy_unused. По > > умолчанию установлено значение 1 - неиспользуемые сегменты > > разделяемой памяти будут уничтожаться немедленно. При установке > > этого параметра в 0 сегменты разделяемой памяти будут уничтожаться > > только при явном вызове IPC_RMID. > > С этим я уже разобрался, но видимо что-то еще сломано (пардон, пропатчено ;). > Процесс запрашивает блок shm, форкает другой и этот другой уже не может к > сегменту обращаться. Причем это как-то связано с размером, блок должен быть > или достаточно большой или очень маленький. Точнее пока не разобрался, нет > времени. Но обидно что эти же программы прекрасно работают на всех других > ядрах, кроме альтовского. Неохота честно говоря тратить время на научный > проект по выявлению различий. Может кто-то из разработчиков все же примет на > себя труд потестировать? Программы могу выслать. Или вот хотя бы тест из > модуля IPC::SharedSimple прогнать. Неужели никому это неинтересно, никто shm > интерфейс не использует в своих программах? И не надо опять писать, что вот > XFree86 и MySQL работают значит все в порядке. Мне от этого не легче - > хотелось бы узнать почему они работают, а другие программы - нет?? Если есть тест на C небольшого размера, то я могу посмотреть. -- ldv [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-04-06 9:08 ` Ivan Adzhubey 2004-04-06 9:24 ` Dmitry V. Levin @ 2004-04-06 9:50 ` Sergey Vlasov 2004-04-06 21:06 ` Ivan Adzhubey 1 sibling, 1 reply; 33+ messages in thread From: Sergey Vlasov @ 2004-04-06 9:50 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list [-- Attachment #1: Type: text/plain, Size: 1585 bytes --] On Tue, Apr 06, 2004 at 05:08:36AM -0400, Ivan Adzhubey wrote: > > В ядре 2.4.25-std-{up,smp}-alt3 добавлена возможность настройки > > поведения ядра при обнаружении неиспользуемых сегментов разделяемой > > памяти. Это делается через sysctl kernel.shm_destroy_unused. По > > умолчанию установлено значение 1 - неиспользуемые сегменты > > разделяемой памяти будут уничтожаться немедленно. При установке > > этого параметра в 0 сегменты разделяемой памяти будут уничтожаться > > только при явном вызове IPC_RMID. > > С этим я уже разобрался, но видимо что-то еще сломано (пардон, пропатчено ;). > Процесс запрашивает блок shm, форкает другой и этот другой уже не может к > сегменту обращаться. Причем это как-то связано с размером, блок должен быть > или достаточно большой или очень маленький. Точнее пока не разобрался, нет > времени. Но обидно что эти же программы прекрасно работают на всех других > ядрах, кроме альтовского. Неохота честно говоря тратить время на научный > проект по выявлению различий. Может кто-то из разработчиков все же примет на > себя труд потестировать? Программы могу выслать. Или вот хотя бы тест из > модуля IPC::SharedSimple прогнать. search.cpan.org именно такого модуля не находит - где его брать? Тесты IPC::ShareLite у меня на новом ядре проходили (после отключения shm_destroy_unused). Только там после ошибки надо чистить руками, иначе следующий запуск не проходит из-за оставшихся объектов IPC (собственно, именно этим SysV IPC и отвратителен - CONFIG_HARDEN_SHM как раз и делает его поведение более предсказуемым хотя бы для shm). [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-04-06 9:50 ` Sergey Vlasov @ 2004-04-06 21:06 ` Ivan Adzhubey 2004-04-07 6:25 ` Sergey Vlasov 0 siblings, 1 reply; 33+ messages in thread From: Ivan Adzhubey @ 2004-04-06 21:06 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Tue, 6 Apr 2004 13:50:40 +0400 Sergey Vlasov <vsu@altlinux.ru> wrote: > > С этим я уже разобрался, но видимо что-то еще сломано (пардон, > > пропатчено ;). Процесс запрашивает блок shm, форкает другой и этот > > другой уже не может к сегменту обращаться. Причем это как-то связано > > с размером, блок должен быть или достаточно большой или очень > > маленький. Точнее пока не разобрался, нет времени. Но обидно что эти > > же программы прекрасно работают на всех других ядрах, кроме > > альтовского. Неохота честно говоря тратить время на научный проект > > по выявлению различий. Может кто-то из разработчиков все же примет > > на себя труд потестировать? Программы могу выслать. Или вот хотя бы > > тест из модуля IPC::SharedSimple прогнать. > > search.cpan.org именно такого модуля не находит - где его брать? > > Тесты IPC::ShareLite у меня на новом ядре проходили (после > отключения shm_destroy_unused). Только там после ошибки надо > чистить руками, иначе следующий запуск не проходит из-за оставшихся > объектов IPC (собственно, именно этим SysV IPC и отвратителен - > CONFIG_HARDEN_SHM как раз и делает его поведение более предсказуемым > хотя бы для shm). Извините, перепутал с другим модулем, имелся в виду конечно IPC::ShareLite. А в каком ядре появилась эта возможность? У меня не видно: # uname -r 2.4.25-std-smp-alt1 # ls -l /proc/sys/kernel/ -rw-r--r-- 1 root proc 0 Apr 6 17:05 acct -rw------- 1 root proc 0 Apr 6 17:05 cad_pid -rw------- 1 root proc 0 Apr 6 17:05 cap-bound -rw-r--r-- 1 root proc 0 Apr 6 17:05 core_pattern -rw-r--r-- 1 root proc 0 Apr 6 17:05 core_setuid_ok -rw-r--r-- 1 root proc 0 Apr 6 17:05 core_uses_pid -rw-r--r-- 1 root proc 0 Apr 6 17:05 ctrl-alt-del -rw-r--r-- 1 root proc 0 Apr 6 17:05 domainname -rw-r--r-- 1 root proc 0 Apr 6 17:05 hostname -rw-r--r-- 1 root proc 0 Apr 6 17:05 hotplug -rw-r--r-- 1 root proc 0 Apr 6 17:05 modprobe -rw-r--r-- 1 root proc 0 Apr 6 17:05 msgmax -rw-r--r-- 1 root proc 0 Apr 6 17:05 msgmnb -rw-r--r-- 1 root proc 0 Apr 6 17:05 msgmni -r--r--r-- 1 root proc 0 Apr 6 17:05 osrelease -r--r--r-- 1 root proc 0 Apr 6 17:05 ostype -rw-r--r-- 1 root proc 0 Apr 6 17:05 overflowgid -rw-r--r-- 1 root proc 0 Apr 6 17:05 overflowuid -rw-r--r-- 1 root proc 0 Apr 6 17:05 panic -rw-r--r-- 1 root proc 0 Apr 6 17:05 printk dr-xr-xr-x 2 root proc 0 Apr 6 17:05 random -rw-r--r-- 1 root proc 0 Apr 6 17:05 real-root-dev -rw-r--r-- 1 root proc 0 Apr 6 17:05 rtsig-max -r--r--r-- 1 root proc 0 Apr 6 17:05 rtsig-nr -rw-r--r-- 1 root proc 0 Apr 6 17:05 sem -rw-r--r-- 1 root proc 0 Apr 6 17:05 shmall -rw-r--r-- 1 root proc 0 Apr 6 17:05 shmmax -rw-r--r-- 1 root proc 0 Apr 6 17:05 shmmni -rw-r--r-- 1 root proc 0 Apr 6 17:05 sysrq -rw-r--r-- 1 root proc 0 Apr 6 17:05 tainted -rw-r--r-- 1 root proc 0 Apr 6 17:05 threads-max -r--r--r-- 1 root proc 0 Apr 6 17:05 version -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-04-06 21:06 ` Ivan Adzhubey @ 2004-04-07 6:25 ` Sergey Vlasov 2004-04-07 16:12 ` Ivan Adzhubey 0 siblings, 1 reply; 33+ messages in thread From: Sergey Vlasov @ 2004-04-07 6:25 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list [-- Attachment #1: Type: text/plain, Size: 279 bytes --] On Tue, Apr 06, 2004 at 05:06:51PM -0400, Ivan Adzhubey wrote: > Извините, перепутал с другим модулем, имелся в виду конечно > IPC::ShareLite. > > А в каком ядре появилась эта возможность? У меня не видно: > > # uname -r > 2.4.25-std-smp-alt1 Я же написал, что в сборке alt3. [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 33+ messages in thread
* Re: [sisyphus] Shared memory - HELP PLEASE! 2004-04-07 6:25 ` Sergey Vlasov @ 2004-04-07 16:12 ` Ivan Adzhubey 0 siblings, 0 replies; 33+ messages in thread From: Ivan Adzhubey @ 2004-04-07 16:12 UTC (permalink / raw) To: ALT Linux Sisyphus discussion list On Wednesday 07 April 2004 02:25 am, Sergey Vlasov wrote: > On Tue, Apr 06, 2004 at 05:06:51PM -0400, Ivan Adzhubey wrote: > > Извините, перепутал с другим модулем, имелся в виду конечно > > IPC::ShareLite. > > > > А в каком ядре появилась эта возможность? У меня не видно: > > > > # uname -r > > 2.4.25-std-smp-alt1 > > Я же написал, что в сборке alt3. Спасибо, я не знал что версии сборки могут отличаться по features. Попробую обновиться. -- Иван ^ permalink raw reply [flat|nested] 33+ messages in thread
end of thread, other threads:[~2004-04-07 16:12 UTC | newest] Thread overview: 33+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2004-03-24 22:17 ` [sisyphus] Shared memory - HELP PLEASE! Ivan Adzhubey 2004-03-25 4:14 ` Eugene Ostapets 2004-03-25 4:36 ` Ivan Adzhubey 2004-03-25 4:43 ` Denis S. Filimonov 2004-03-25 4:50 ` Ivan Adzhubey 2004-03-25 5:04 ` Eugene Ostapets 2004-03-25 6:53 ` Ivan Adzhubey 2004-03-25 7:44 ` Serj 2004-03-25 8:28 ` Ivan Adzhubey 2004-03-25 5:09 ` Mike Lykov 2004-03-25 5:23 ` Ivan Adzhubey 2004-03-25 5:28 ` Mike Lykov 2004-03-25 5:30 ` Ivan Adzhubey 2004-03-25 6:42 ` Grigory Batalov 2004-03-25 7:05 ` Ivan Adzhubey 2004-03-25 7:17 ` Ivan Adzhubey 2004-03-25 7:29 ` Ivan Adzhubey 2004-03-25 7:59 ` Ivan Adzhubey 2004-03-25 7:44 ` Grigory Batalov 2004-03-25 8:09 ` Ivan Adzhubey 2004-03-25 8:24 ` Ivan Adzhubey 2004-03-25 11:54 ` Sergey Vlasov 2004-03-25 4:22 ` Denis S. Filimonov 2004-03-25 12:22 ` Sergey Vlasov 2004-03-25 12:58 ` [JT] снова проблемы от security fixes? (WAS: Re: [sisyphus] Shared memory - HELP PLEASE!) Andrei Bulava 2004-03-25 13:12 ` Sergey Vlasov 2004-04-06 8:57 ` [sisyphus] Shared memory - HELP PLEASE! Sergey Vlasov 2004-04-06 9:08 ` Ivan Adzhubey 2004-04-06 9:24 ` Dmitry V. Levin 2004-04-06 9:50 ` Sergey Vlasov 2004-04-06 21:06 ` Ivan Adzhubey 2004-04-07 6:25 ` Sergey Vlasov 2004-04-07 16:12 ` Ivan Adzhubey
ALT Linux Sisyphus discussions This inbox may be cloned and mirrored by anyone: git clone --mirror http://lore.altlinux.org/sisyphus/0 sisyphus/git/0.git # If you have public-inbox 1.1+ installed, you may # initialize and index your mirror using the following commands: public-inbox-init -V2 sisyphus sisyphus/ http://lore.altlinux.org/sisyphus \ sisyphus@altlinux.ru sisyphus@altlinux.org sisyphus@lists.altlinux.org sisyphus@lists.altlinux.ru sisyphus@lists.altlinux.com sisyphus@linuxteam.iplabs.ru sisyphus@list.linux-os.ru public-inbox-index sisyphus Example config snippet for mirrors. Newsgroup available over NNTP: nntp://lore.altlinux.org/org.altlinux.lists.sisyphus AGPL code for this site: git clone https://public-inbox.org/public-inbox.git