从_chkstk说起,谈谈用户栈的管理

上周在XP系统上测试一个驱动的时候,发现驱动加载不上,“net start”命令只是给出一个无意义的错误代码,驱动的DriverEntry()入口程序还没有得到机会运行。

初步怀疑是引入函数的问题,用WDK工具Depends.exe查看了一下驱动文件,果然是由于_chkstk函数无法解析所导致。

_chkstk是个微软C编译器的辅助库函数,MSDN上对其介绍十分简略:

_chkstk Routine is a helper routine for the C compiler. For x86 compilers, _chkstk Routine is called when the local variables exceed 4096 bytes; for x64 compilers it is 8K.

当编译器察觉到局部变量太大超过限值时(X86系统限值是4K,X64t系统上是8K), 编译器会自动插入_chkstk这个函数以保证栈空间所使用页面在内存中。

问题是发现了,但要查出来究竟在哪个函数中还是要费些心思的。从用户层移植过来不少代码,基本锁定问题出在其中,但如果一个函数一个函数寻找实在是个不讨巧的笨办法,也不符合程序人的一贯风格,便用IDA反编译驱动sys文件,于汇编代码中搜索_chkstk字串,直接锁定出了问题函数。此函数所使用的一个结构体中定义了超大数组,对栈的超常使用在内核中是相当危险的。

解决办法很简单,直接将此结构的定义放在一个从内存分配的结构中即可。问题虽已解决,但对于DDK中有关_chkstk的描述,及其相关的疑问一直让我觉得困扰,比如,为什么X86上是4K,而AMD64架构上可以是8K。

这两天终于有了时间,可以彻底地了结这个疑问了。

要想解决这个问题,还要先从用户栈的分配开始。以ReactOS代码为例,当线程创建时,CreateThread()会调用BasepCreateStack()来创建用户栈,具体可以参见ReactOS源码:
~/ReactOS/lib/kernel32/misc/utils.c。

BasepCreateStack()函数主要做三件事:

  1. 1,分配栈空间所需的虚拟内存,大小为Stack Reserve Size
  2. 2,根据Stack Commit Size锁定内存页面,如果Stack Commit Size小于Stack Reserve Size的话,需要增加一个Page,这个额外申请的Page用作Guard Page之用。
  3. 3,将栈底部的Page设定为Guard Page。

当用户栈被用尽时,会访问到栈底部的Guard Page。而对Guard Page的任何访问都会导致Page Fault的发生。Page Fault处理函数MmAccessFault()可以分析出此次Page Fault是由Guard Page导致,便会默认由用户栈处理程序MiCheckForUserStackOverflow()来处理。如果用户栈并没有溢出的话,即Stack Commit Size小于Stack Reserve Size的情况,MiCheckForUserStackOverflow()会自动向下扩展栈空间,扩展大小为GUARD_PAGE_SIZE。 GUARD_PAGE_SIZE针对不同的CPU架构有不同的定义:
X64:  #define GUARD_PAGE_SIZE   (PAGE_SIZE * 2)
X86:  #define GUARD_PAGE_SIZE   PAGE_SIZE

这里便解释了为什么X86系统上的限制是4K(即PAGE_SIZE),而X64上却为8K的原因。

说到此处,该是解答_chkstk()倒底是干什么的时候了。Visual Studio中有_chkstk的源码,以x86为例:

输入参数eax是所需堆栈大小(字节)
labelP  _chkstk,       PUBLIC

        push    ecx                          ; save ecx
        cmp     eax,_PAGESIZE_     ; more than one page requested?
        lea     ecx,[esp] + 8           ;   compute new stack pointer in ecx
                                                   ;   correct for return address and
                                                   ;   saved ecx
        jb      short lastpage           ; no

;------------

probepages:
        sub     ecx,_PAGESIZE_          ; yes, move down a page
        sub     eax,_PAGESIZE_          ; adjust request and...

        test    dword ptr [ecx],eax     ; ...probe it  (如果是guard page,刚会导致page fault,最终用户栈
                                                        ;  将向下扩展一个页面)

        cmp     eax,_PAGESIZE_          ; more than one page requested?
        jae     short probepages          ; no

lastpage:
        sub     ecx,eax                  ; move stack down by eax
        mov     eax,esp                 ; save current tos and do a...

        test    dword ptr [ecx],eax     ; ...probe in case a page was crossed
                                                        ;  调用函数将要访问的堆栈底部 ,如果此页面为guard page,同
                                                        ;  样会导致用户栈的向下延伸

        mov     esp,ecx                        ; set the new stack pointer
                                                        ; 向下更改栈指针,其上直到原ESP的栈空间为调用函数局部变量

        mov     ecx,dword ptr [eax]     ; recover ecx
        mov     eax,dword ptr [eax + 4] ; recover return address
                                                            ; 将返回地址(调用函数中)放入eax

        push    eax                     ; prepare return address
                                              ; 将返回地址(调用函数中)放入当前栈中,准备返回

                                              ; ...probe in case a page was crossed
        ret

        end

_chkstk()的主要作用是保证栈向下连续的生长。如果没有_chkstk(),当局部变量太多并超过guard page下沿时,若再有压栈操作,将会导致Access violation错误。因为此时堆栈内存页面无效,压栈直接将导致page fault的发生,而page fault处理程序因不能识别此fault的发生原因从而不能做出正确判断和有效处理。

相对用户层,内核程序的处理则相当简单,就如Win7内核中_chkstk实际上就是个空函数。其原因就是内核线程的栈空间是固定的。其取值针对X86及X64架构亦有所不同:
X64: #define KERNEL_STACK_SIZE 0x6000   /* 6个内存页面 */
X86: #define KERNEL_STACK_SIZE 12288    /* 3个内存页面 */

内核中栈资源非常紧缺,并驱动程序的编写有较高的要求,特别是有递归的情况下,一定要注意嵌套的层数,否则很容易收到M$发来的蓝屏。

Windows内核中其实还有一种大堆栈机制,以确保一些对堆栈较高消耗的特殊情况能够得到满足,但这部分完全是黑箱,对用户不可见,不是常见情况,此处不再多述。

参考资料:
1, http://support.microsoft.com/kb/100775/en
2, http://msdn.microsoft.com/en-us/library/ms648426(v=vs.85).aspx
3, http://www.reactos.org  ReactOS源码

91,366 条评论

  1. Признаки похмелья и абстиненции могут различаться по степени тяжести. Врач учитывает не только субъективные жалобы, но и объективные показатели работы организма. В некоторых случаях медицинская капельница позволяет быстрее облегчить физическое самочувствие, однако тяжелые психические расстройства, судороги, потеря сознания, галлюцинации или признаки делирия требуют экстренного обращения за медицинской помощью и могут стать основанием для госпитализации.
    Дополнительная информация – стоимость капельницы от запоя

  2. Обратиться за помощью стоит не только при длительном запое. Вызов может быть необходим при выраженном похмелье, абстинентном синдроме, ухудшении самочувствия после употребления спиртного, признаках наркотической ломки или повторном срыве. Если проблемы продолжаются несколько лет, одного домашнего визита бывает недостаточно, поэтому врач заранее обсуждает дальнейшее лечение зависимости и реабилитацию.
    Дополнительная информация – https://narcolog-na-dom-krasnoyarsk2.ru/

  3. При наличии таких проявлений лечение подбирается после врачебного осмотра. Очень важно сообщать специалисту правдивую информацию о веществах, лекарствах и хронических заболеваниях. Это помогает повысить безопасность медицинской терапии.
    Ознакомиться с деталями – запой наркологическая клиника Красноярск

  4. А через месяц снова срывается. И родные это понимают лучше всех. Центр реабилитации зависимых — Это программа на несколько месяцев. А не только с симптомом. Реабилитация алкоголиков — Но без него срывы почти неизбежны. Вся информация доступна здесь: реабилитация наркоманов в нижнем новгороде https://lechenie.reabilitaczionnyj-czentr-nnovgorod-fge.ru И про условия размещения по области. Иногда центр — единственный шанс.

  5. Вызов нарколога начинается с обращения в службу. Человек или родственник сообщает основные сведения, после чего бригада готовится к выезду. В Красноярске формат на дому позволяет получить помощь без посещения клиники, если медицинские показания допускают домашнее лечение.
    Изучить вопрос подробнее – врач нарколог на дом в Красноярске

  6. Публикация знакомит читателей с различными подходами к реабилитации. От традиционных методов до современных программ — вы узнаете, как выбрать оптимальный путь к выздоровлению и преодолеть препятствия на этом пути.
    Раскрыть тему полностью – вывод из запоя область

  7. Как сын её прошёл детокс. Работал, держался. Реабилитационный центр для наркозависимых — С психологами, группами и режимом. Поэтому и результат другой. Реабилитация алкоголиков — Но без него срывы почти неизбежны. Можете ознакомиться по ссылке: реабилитация наркоманов в нижнем новгороде https://klinika.reabilitaczionnyj-czentr-nnovgorod-fge.ru И про программы по области. Не ждите очередного срыва.

  8. Дверь заперта, телефон не берёт. Запой жуткий, сам не остановится. Капельница от запоя на дому — это не роскошь, а необходимость. Через пару часов человек задышал спокойно. Срочный вывод из запоя — Без лишних вопросов. Вся информация доступна здесь: капельница от похмелья на дому капельница от похмелья на дому Там и про вывод из запоя цены по Москве. Берегите своих.

  9. Вывод из запоя дома возможен не всегда. Если человек пьет несколько дней, резко ослаб, перестал нормально спать, жалуется на боль в груди, сильную головную боль, галлюцинации или неадекватное поведение, врач должен проверить тяжесть абстинентного синдрома. Особого внимания требуют пожилые люди, пациенты с болезнями сердца, сосудов, печени, почек и желудка, а также те, у кого ранее были судороги, делирий, инфаркт или инсульт. В такой момент стационарная помощь может быть безопаснее попытки вывести человека на дому.
    Подробнее – вывод из запоя дешево

  10. Бывает, человек уже прошёл детокс. Без реабилитации замкнутый круг. Наркологический реабилитационный центр — это не просто стены и койки. А не только с симптомом. Реабилитация алкоголиков — это долгий путь. Вся информация доступна здесь: наркозависимый реабилитация центр https://lechenie.reabilitaczionnyj-czentr-nnovgorod-fge.ru Там и про ребцентры по области. Обращайтесь к специалистам.

  11. И через месяц снова начал. Работал, держался. Реабилитационный центр для наркозависимых — С психологами, группами и режимом. А не только с симптомом. Лечение зависимости — это долгий путь. Можете ознакомиться по ссылке: лечение алкоголизма и наркомании реабилитационный центр нижний новгород лечение алкоголизма и наркомании реабилитационный центр нижний новгород Там и про ребцентры в Нижнем. Не ждите очередного срыва.

  12. Бывает, человек уже прошёл детокс. Без реабилитации замкнутый круг. Наркологический реабилитационный центр — Это программа на несколько месяцев. Поэтому и результат другой. Лечение зависимости — Но без него срывы почти неизбежны. Вся информация доступна здесь: реабилитация наркозависимых в нижнем новгороде https://lechenie.reabilitaczionnyj-czentr-nnovgorod-fge.ru Там и про ребцентры по области. Обращайтесь к специалистам.

  13. Нарколог объясняет родственникам, какие действия допустимы до приезда бригады. Самостоятельно назначать сильнодействующие медикаменты, ставить капельницу или использовать неизвестные препараты не следует.
    Получить больше информации – https://narcolog-na-dom-krasnoyarsk3.ru/

  14. При психозе, белой горячке, судорогах, передозировке или тяжелых расстройствах домашнее лечение может быть опасно. Врач определяет, возможно ли лечение дома или требуется стационарное лечение. Наркологическая помощь должна соответствовать тяжести ситуации.
    Изучить вопрос подробнее – нарколог на дом цена в Красноярске

  15. Жена его на нервах была. Оказалось, опять сорвался. Вывод из запоя на дому — это не роскошь, а необходимость. Приехал, осмотрел, поставил систему. Круглосуточный вывод из запоя — Без лишних вопросов. Вся информация доступна здесь: выход из запоя на дому https://narkolog.vyvod-iz-zapoya-na-domu-msk-wtk.ru И про то, как прокапаться на дому для Москвы. Берегите своих.

  16. В этой статье мы рассматриваем разрушительное влияние зависимости на жизнь человека. Обсуждаются аспекты, такие как здоровье, отношения и профессиональные достижения. Читатели узнают о необходимости обращения за помощью и о путях к восстановлению.
    Ссылка на источник – вызов нарколога на дом капельница

  17. Мы рассмотрим современные вызовы здравоохранения и пути их решения с помощью технологий и научных исследований. В статье собраны данные о новых лекарствах, методах диагностики и системном подходе к улучшению здоровья населения.
    Получить больше информации – вызвать нарколога на дом москва

  18. Жена его на нервах была. Запой жуткий, сам не остановится. Вывод из запоя на дому — Врач реально спасает. Через пару часов человек задышал спокойно. Срочный вывод из запоя — Без постановки на учёт. Вся информация доступна здесь: вывод из запоя на дому стоимость https://narkolog.vyvod-iz-zapoya-na-domu-msk-wtk.ru И про то, как прокапаться на дому в Москве. Иногда один звонок меняет всё.

  19. Частная наркологическая помощь требуется в различных ситуациях: при длительном запое, абстинентном синдроме, регулярном употреблении психоактивных веществ, наркотической зависимости, ухудшении психического состояния или повторном срыве после периода ремиссии. Наркологическая служба работает круглосуточно, поэтому консультацию можно получить в удобное время, включая выходные. При необходимости организуется срочный выезд врача на дом в Балашихе и Московской области либо госпитализация в стационар. Лечение в клинике проводится по индивидуальному плану, а полный курс может включать восстановление организма, психотерапевтические занятия, работу с родственниками и дальнейшую реабилитационную программу.
    Получить больше информации – narkologicheskaya-klinika-telefon

  20. Неотложная наркологическая помощь необходима в ситуациях, когда запой затянулся более чем на двое суток, а состояние пациента ухудшается: появляются дрожь конечностей, выраженное психомоторное возбуждение или, наоборот, спутанность сознания. Важно не откладывать вызов врача, если:
    Изучить вопрос глубже – скорая наркологическая помощь свердловская область

  21. Программа лечения формируется после осмотра и может включать несколько этапов. Их количество и продолжительность зависят от клинической ситуации, физической зависимости, психического состояния и результатов предыдущего лечения. Врач может изменить план, если самочувствие меняется или требуется более интенсивная терапия.
    Узнать больше – наркологическая клиника отзывы

  22. Текст посвящён распространённым мифам о зависимости и их развенчанию. Мы предоставим научно обоснованную информацию и дадим рекомендации по выбору эффективного способа борьбы с зависимым поведением.
    Интересует подробная информация – наркологическая клиника дельта

  23. Если пациенту требуется постоянный мониторинг или комплексное лечение, мы обеспечиваем круглосуточное пребывание в стационаре. Здесь доступны углублённая диагностика — УЗИ органов брюшной полости, расширенные анализы крови, кардиомониторинг — и коррекция терапии в режиме реального времени. Комфортные палаты, ежедневное наблюдение медсестры и консультации психотерапевта создают условия для быстрого и безопасного выхода из зависимости.
    Выяснить больше – скорая наркологическая помощь в екатеринбурге

  24. Наркологическая клиника в клинике в Санкт-Петербурге предлагает широкий спектр медицинских и психотерапевтических услуг, направленных на устранение химической зависимости и стабилизацию психоэмоционального состояния пациентов. Современные методики терапии, внедрённые в практику, позволяют добиваться устойчивых результатов без чрезмерного медикаментозного вмешательства и с учётом индивидуальных особенностей каждого человека. Основой лечения является комплексный подход, включающий детоксикацию, коррекцию поведения и восстановление когнитивных функций. Применение мультидисциплинарных схем обеспечивает снижение риска рецидива и повышение мотивации к трезвому образу жизни.
    Получить больше информации – https://narkologicheskaya-klinika-v-spb16.ru/narkolog-sankt-peterburg

  25. Пил неделю, потом решил бросить. Давление скакало. Нарколог на дом вывод из запоя — Осматривает, ставит капельницу. Потом выравнивают давление. Анонимный вывод из запоя на дому — И в выходные. Советую глянуть источник: вывод из запоя недорого москва https://detoks.vyvod-iz-zapoya-na-domu-msk-wtk.ru Там и про вывод из запоя цены по Москве. Не тяните до последнего.

  26. В данной публикации мы поговорим о процессе восстановления от зависимости, о том, как вернуть себе нормальную жизнь. Мы обсудим преодоление трудностей, значимость поддержки и наличие программ реабилитации. Читатели смогут узнать о ключевых шагах к успешному восстановлению.
    Узнать напрямую – deltaclinic

  27. Психотерапия в лечении алкоголизма играет важнейшую роль. Используются когнитивно-поведенческие техники, групповые занятия, а также индивидуальные консультации с психологами и психотерапевтами. Применение методов мотивационного интервьюирования способствует формированию устойчивой мотивации на трезвость, что подробно описано в исследованиях Американской психиатрической ассоциации. Также актуальную информацию можно найти на портале Психологической ассоциации России.
    Ознакомиться с деталями – лечение алкоголизма в краснодаре

  28. Специалист также может отказаться проводить инфузию на дому, если отсутствует подтвержденное назначение, имеются противопоказания к препарату, требуется постоянное мониторирование показателей или невозможно обеспечить безопасные условия. При наличии инфекционных заболеваний учитываются особенности организации визита и правила обработки материалов. Иногда правильный выбор — не капельница на дому, а прием в клинике, обследование или направление в профильное отделение больницы.
    Изучить вопрос подробнее – kapelnica-na-domu

  29. Этот обзор медицинских исследований собрал самое важное из последних публикаций в области медицины. Мы проанализировали ключевые находки и представили их в доступной форме, чтобы читатели могли легко ориентироваться в актуальных темах. Этот материал станет отличным подспорьем для изучения медицины.
    См. подробности – помощь нарколога на дому

  30. В большинстве случаев лечение начинается с детокса, затем подключается психотерапия и, при желании пациента, кодирование. Чтобы не столкнуться с рецидивом, важно соблюдать все рекомендации доктора и не отказываться от реабилитационного этапа. Только комплексный подход дает устойчивый результат и помогает избежать повторных запоев. Обращаясь в клинику, вы получаете полный спектр услуг — от вывода из запоя до восстановления и ресоциализации.
    Ознакомиться с деталями – врач вывод из запоя

  31. Он не ел, не спал, не разговаривал. Врач приехал быстро. Капельница от запоя на дому — врач ввёл препараты. Цена оказалась приемлемой. Срочный вывод из запоя — Когда счёт идёт на часы, медлить нельзя. Нарколог на дом реально помогает. вывод из запоя в москве на дому вывод из запоя в москве на дому По ссылке — подробная информация в Москве. Это надёжный способ. Нарколог на дом — быстро, анонимно, эффективно!

  32. Помню, у знакомого была ситуация. Давление скакало. Детокс вывод из запоя — Осматривает, ставит капельницу. И человеку реально становится легче. Анонимный вывод из запоя на дому — Без осуждения и лишних вопросов. Советую глянуть источник: вывод из запоя на дому стоимость вывод из запоя на дому стоимость И про капельницу от похмелья на дому для жителей столицы. Не тяните до последнего.

  33. Я боялась, что он не выживет. Врач приехал быстро. Вывод из запоя на дому — врач ввёл препараты. Врач дал рекомендации. Круглосуточный вывод из запоя — это не роскошь, а необходимость. Нарколог на дом реально помогает. вывод из запоя стоимость https://vrach.vyvod-iz-zapoya-na-domu-msk-wtk.ru По ссылке — подробная информация по Москве. Хотите быстро вывести из запоя — переходите по ссылке. Нарколог на дом — быстро, анонимно, эффективно!

  34. До начала лечения врач собирает данные, уточняет жалобы и определяет подход. Нарколог рассматривает лечение на дому и лечение в клинике как два возможных формата. Для дома выбирается услуга с выездом, для клиники — лечение в условиях центра. Пациент получает объяснение, какие процедуры предполагаются и какое лечение будет продолжено. Следует, чтобы помощь соответствовала выбранному формату.
    Дополнительная информация – нарколог вывод из запоя Красноярск

  35. Эта последовательность действий обеспечивает безопасное прекращение запоя и предотвращает развитие синдрома отмены.
    Получить дополнительную информацию – http://vyvod-iz-zapoya-v-rostove-na-donu16.ru/

  36. Я боялась, что он не выживет. Врач приехал быстро. Вывод из запоя на дому — врач ввёл препараты. Врач дал рекомендации. Анонимный вывод из запоя на дому — это не роскошь, а необходимость. Если у вас похожая ситуация — не тяните. вывод из запоя москва вывод из запоя москва По ссылке — подробная информация для Москвы. Это надёжный способ. Нарколог на дом — быстро, анонимно, эффективно!

  37. Состояние пациента отслеживается на каждом этапе, от первичной консультации до дальнейших рекомендаций.
    Ознакомиться с деталями – kapelnicy-ot-alkogolya-na-domu

  38. Психоэмоциональное состояние играет ключевую роль в лечении зависимости. В «ЮгМед» психологи и психотерапевты обеспечивают сопровождение на всех этапах реабилитации, помогая пациенту справиться с тревогой, сниженной самооценкой и стрессом. Одна только медикаментозная детоксикация не гарантирует успеха — важно разобраться в причинах зависимости и выработать навыки противодействия соблазнам.
    Разобраться лучше – http://lechenie-alkogolizma-sochi0.ru/

  39. Главное при обращении за помощью — не выбирать препараты самостоятельно и не пытаться максимально быстро вывести человека из тяжелого запоя без диагностики. В некоторых случаях домашняя капельница возможна, однако при судорогах, выраженных нарушениях сознания, галлюцинациях, признаках алкогольного психоза, резких скачках давления или других угрожающих жизни симптомах требуется стационарное лечение либо экстренное обращение в скорую помощь. Специалисты «Мед Алко» оценивают ситуацию перед началом процедуры и объясняют родственникам, какой вариант медицинской помощи является оптимальным.
    Получить больше информации – kapelnica-ot-zapoya-na-domu-kruglosutochno

  40. Нарколог на дом в Красноярске — формат медицинской помощи, при котором врач приезжает по указанному адресу, проводит первичный осмотр и определяет дальнейший план лечения. Выезд подходит в случаях, когда человеку сложно самостоятельно посетить центр, требуется быстро получить консультацию или начать вывод из запоя в домашних условиях. Наркологическая служба работает с проблемами алкоголизма, наркомании и других зависимостей, а медицинские процедуры проводятся после оценки показаний и противопоказаний.
    Получить больше информации – нарколог на дом вывод в Красноярске

  41. Этапы могут меняться в зависимости от тяжести состояния. Некоторым пациентам достаточно амбулаторного лечения и регулярных консультаций, другим требуется пребывание в стационаре под постоянным наблюдением. При тяжелом состоянии безопасное лечение в условиях клиники позволяет проводить процедуры круглосуточно и быстрее реагировать на изменения самочувствия.
    Получить больше информации – частная наркологическая клиника

  42. Мы предлагаем гибкую систему оплаты и прозрачные цены в Челябинске, без скрытых платежей и переплат. Стоимость услуг начинается от 3500??, и вы всегда будете заранее информированы о стоимости процедур.
    Выяснить больше – помощь вывод из запоя челябинск

  43. Срочная наркологическая помощь — это не «универсальная капельница», а управляемый клинический процесс, где каждое действие проверяется измеримыми маркерами и выполняется в правильной последовательности. В наркологической клинике «ВолгаМед Альтернатива» маршрут выстроен вокруг принципа минимально достаточных вмешательств: сначала безопасный старт и телескрининг, затем очный осмотр с выбором контура инфузии и, только после теста переносимости, — основная терапия. Такой подход уменьшает реактивность организма, снижает риск побочных ощущений и делает результат предсказуемым для пациента и близких. Команда работает круглосуточно, выезжает на немаркированном транспорте, общение ведётся через одного доверенного человека, а документы оформляются в нейтральной терминологии без стигматизирующих формулировок.
    Выяснить больше – центр наркологической помощи в казани

  44. Экстренное вытрезвление в Челябинске — помощь при острых состояниях. Мы обеспечиваем быстрое и безопасное восстановление после сильного алкогольного опьянения.
    Углубиться в тему – скорая вывод из запоя челябинск

  45. Если дома нет возможности обеспечить тишину (ремонт, маленькие дети, гости), можно кратко перейти в «тихий стационар» с отдельным входом; после стабилизации сопровождение возвращается на дом, и маршрут продолжается «зеркально» — с теми же целями и окнами оценки. Такой перенос сохраняет управляемость процесса и снижает тревогу семьи: никто не «начинает сначала», меняется только место, а логика остаётся прежней.
    Детальнее – https://narkologicheskaya-pomoshh-v-kazani16.ru/narkologicheskaya-sluzhba-kazan/

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注