ALT Linux Sisyphus discussions
 help / color / mirror / Atom feed
* [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-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-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  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  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  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  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: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: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: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  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  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-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