[devel] Q: [python3-3.3.1] RLIMIT в hasher`е
Dmitry V. Levin
ldv на altlinux.org
Ср Апр 10 19:47:04 MSK 2013
On Wed, Apr 10, 2013 at 06:41:36PM +0400, Aleksey Avdeev wrote:
> 10.04.2013 17:45, Dmitry V. Levin пишет:
> > On Wed, Apr 10, 2013 at 05:36:15PM +0400, Aleksey Avdeev wrote:
> >> 10.04.2013 16:53, Dmitry V. Levin пишет:
> >>> On Wed, Apr 10, 2013 at 01:11:56PM +0400, Aleksey Avdeev wrote:
> >>>> Приветствую.
> >>>>
> >>>> Я правильно понимаю, что установка пользовательским процессом RLIMIT
> >>>> в 1000000, запрещена настройками hasher`а?
> >>>
> >>> $ hsh-run -- sh -c 'ulimit -Ha'
> >>> core file size (blocks, -c) unlimited
> >>> data seg size (kbytes, -d) unlimited
> >>> scheduling priority (-e) 0
> >>> file size (blocks, -f) unlimited
> >>> pending signals (-i) 1032915
> >>> max locked memory (kbytes, -l) 64
> >>> max memory size (kbytes, -m) unlimited
> >>> open files (-n) 4096
> >>> pipe size (512 bytes, -p) 8
> >>> POSIX message queues (bytes, -q) 819200
> >>> real-time priority (-r) 0
> >>> stack size (kbytes, -s) unlimited
> >>> cpu time (seconds, -t) 7260
> >>> max user processes (-u) 1024
> >>> virtual memory (kbytes, -v) unlimited
> >>> file locks (-x) unlimited
> >>>
> >>> Привысить значения этих hard limits ядро не даст.
> >>>
> >>>> PS: В Python-3.3.1 такую операцию пытается сделать
> >>>> test.test_resource.ResourceTest. Если у нас это запрещено -- отключу тест.
> >>>
> >>> Какой именно лимит?
> >>
> >> В коде (см.
> >> <http://git.altlinux.org/people/solo/packages/?p=python3.git;a=blob;f=python3/Lib/test/test_resource.py;h=f3416b7b43ef2db9094401f65abe78222af7746a;hb=001b4a54de71226a2f7e0d9f5a409774a686effd>):
> >>
> >> # Issue 6083: Reference counting bug
> >> def test_setrusage_refcount(self):
> >> try:
> >> limits = resource.getrlimit(resource.RLIMIT_CPU)
> >> except AttributeError:
> >> pass
> >> else:
> >> class BadSequence:
> >> def __len__(self):
> >> return 2
> >> def __getitem__(self, key):
> >> if key in (0, 1):
> >> return len(tuple(range(1000000)))
> ^^^^^^^
> >> raise IndexError
> >>
> >> resource.setrlimit(resource.RLIMIT_CPU, BadSequence())
> >
> > И какие значения RLIMIT_CPU в результате пытается установить этот код?
>
> 1000000 (см. выделение).
>
> Там в конечном итоге setrlimit(resource, &rl)(см. функцию
> resource_setrlimit(PyObject *self, PyObject *args) в
> <http://git.altlinux.org/people/solo/packages/?p=python3.git;a=blob;f=python3/Modules/resource.c;h=b294a8cfe169bbc209e7e183b2eedbe018ed14b0;hb=001b4a54de71226a2f7e0d9f5a409774a686effd>)
> возвращает errno == EPERM.
Сколько значений RLIMIT_CPU передается в одном вызове setrlimit?
Какие значения RLIMIT_CPU в результате пытается установить этот код?
На какое поведение setrlimit рассчитывает этот тест?
Что вообще тестирует тест по имени test_setrusage_refcount?
--
ldv
----------- следующая часть -----------
Было удалено вложение не в текстовом формате...
Имя : отсутствует
Тип : application/pgp-signature
Размер : 198 байтов
Описание: отсутствует
Url : <http://lists.altlinux.org/pipermail/devel/attachments/20130410/4f9279ad/attachment.bin>
Подробная информация о списке рассылки Devel