Board.KolibriOS.org

Official KolibriOS board
It is currently Sat Dec 07, 2019 3:16 am

All times are UTC+03:00




Post new topic  Reply to topic  [ 253 posts ]  Go to page Previous 1 2 3 4 517 Next
Author Message
 Post subject: Re: Bugzilla
PostPosted: Sat Aug 29, 2009 8:25 pm 
Offline
Mentor
User avatar

Joined: Tue Jan 15, 2008 11:27 am
Posts: 752
Удаляя с помощью kfar каталог с большим количеством вложенных файлов, процессор нереально грузился. Решил посмотреть в cpu. Вот что увидил - загрузка процессора > 100%. Использовалась последняя ночная сборка.


Attachments:
cpu.png
cpu.png [ 40.97 KiB | Viewed 12986 times ]
Top
   
 Post subject: Re: Bugzilla
PostPosted: Sun Oct 11, 2009 6:28 pm 
Выявил подробности зверского бага, когда перекрывающие друг-друга окна приложений могут бесконечно перерисовываться отбирая почти все ресурсы ОС.

Проблема в вызове функции 67 в MainLoop (основной цикл) приложения. Если вызывается 1 раз для контроля ширины и высоты окна приложения, то проявляется баг. Если вызвать 2 раза: 1 для высоты и 1 для ширины соответсвенно (или наоборот), то бага нету.

Вот собственно примеры демонстрирующие этот баг: 1.asm без бага, 2.asm с багом.


Attachments:
f67_bug.7z [654 Bytes]
Downloaded 72 times
Top
   
 Post subject: Re: Bugzilla
PostPosted: Mon Oct 12, 2009 4:52 pm 
mcall 68,22
Можно создать только две именованные области. При попытке создания третьей области поток вываливается.
Каждая именованная область создавалась в уникальном приложении (адресные пространства не пресекаются, не поток), имена областей отличаются. Если завершать одно из двух приложений, то можно снова запустить второе, но запуск третьего опять приведет к падению.
Attachment:
f6822.png
f6822.png [ 3.28 KiB | Viewed 4399 times ]


update 22.15 МСК
Ситуация еще хитрее, если области были просто запрошены, то запрос третьей приводит к вываливанию потока и всех дальнейших попыток получить новую именованную область. Однако если выделенную область какой-нибудь поток открыл на чтение-запись (при наличии разрешения на запись), то такая область возвращается ядру при закрытии всех использующих эту именнованную область процессов.

Программа демонстрирующая вылет на запросе третьей именнованной области в архиве. Запускаем последовательно 3 копии программы, на третьей наблюдаем вылет в BOARD и дальше вылеты, даже если закрыть две первые копии.
Attachment:
f6822_bug.7z [568 Bytes]
Downloaded 77 times


Top
   
 Post subject: Re: Bugzilla
PostPosted: Tue Oct 13, 2009 2:12 pm 
Offline
Kernel Developer

Joined: Wed Mar 08, 2006 6:25 pm
Posts: 3952
Mario

Исправил баг и сделал несколько маленьких поправок. Теперь функция честно возвращает eax=0 edx=E_NOMEM. В примере ошибка. Прежде чем работать с памятью надо настроить кучу приложения 68.11.


Top
   
 Post subject: Re: Bugzilla
PostPosted: Tue Oct 13, 2009 2:27 pm 
Offline

Joined: Sun Feb 04, 2007 2:07 pm
Posts: 178
Serge

После твоих правок в эмуляторе qemu и на моей железяке размер heap постоянен и равен около 16Мб.


Top
   
 Post subject: Re: Bugzilla
PostPosted: Tue Oct 13, 2009 2:44 pm 
Serge
Да с 68.11 в примере я лопухнулся.
Однако даже используя 68.11 раньше я не мог больше двух областей открыть сразу. Пример я писал уже позже просто забыл вставить 68.11.

Большое спасибо теперь все работает.
Открыл 5 копий zSea в связке с 5 копий OpenDialog (именованная область используется для передачи данных между программ). Все 5 копий открыли выбранные файлы. Дальше не стал проверять.


Top
   
 Post subject: Re: Bugzilla
PostPosted: Tue Oct 13, 2009 2:51 pm 
Offline

Joined: Sun Feb 04, 2007 2:07 pm
Posts: 178
Maxis wrote:
Serge

После твоих правок в эмуляторе qemu и на моей железяке размер heap постоянен и равен около 16Мб.


Я ошибся: в последней ночной сборке такое уже наблюдается SVN1194.


Top
   
PostPosted: Mon Nov 09, 2009 6:15 pm 
Offline

Joined: Fri Oct 12, 2007 1:04 pm
Posts: 141
В документации написано:
Quote:
======================================================================
============= Функция 9 - информация о потоке выполнения. ============
======================================================================
* +10 = +0xA: 11 байт: имя процесса
(имя соответствующего исполняемого файла в формате 8+3)

В реальности же расширения там нет (проверял отладчиком). Может стоит исправить документацию или исправить ядро?


Top
   
 Post subject: Re: Bugzilla
PostPosted: Tue Nov 10, 2009 2:05 am 
Offline

Joined: Tue Sep 12, 2006 9:44 pm
Posts: 37
Нашел баг в калькуляторе, в бинарном режиме вводятся только 29 разрядов вместо 32
0001 1111 1111 1111 1111 1111 1111 1111

_________________
Все сложное - просто!


Top
   
 Post subject: Re: Bugzilla
PostPosted: Tue Nov 10, 2009 11:16 am 
Offline
User avatar

Joined: Fri Jan 27, 2006 3:06 pm
Posts: 1071
Это скорее не баг, а костыль, потому как 32 единицы в десятичной системе равны 4 294 967 295 и значения, которые не могут быть обработаны, нужно как-то отсеивать, поэтому где-то стоит ограничение на ввод определенного числа разрядов. Возможно, сделано это кривовато на скорую руку, типа пока и так сойдет :)


Top
   
 Post subject: Re: Bugzilla
PostPosted: Mon Dec 14, 2009 1:07 pm 
Offline
Kernel Developer
User avatar

Joined: Wed Jul 25, 2007 2:26 pm
Posts: 43
косилка в новом дистрибутиве отказывает вверх поворачивать
Spoiler: Show
Image


Top
   
 Post subject: Re: Bugzilla
PostPosted: Tue Dec 29, 2009 12:34 pm 
Offline

Joined: Fri May 22, 2009 5:21 pm
Posts: 56
MTDBG под эмулятором (KlbrInWin) сообщил: "ERROR: cannot read process memory!!!". Ранее не замечалось.


Top
   
 Post subject: Re: Bugzilla
PostPosted: Wed Jan 13, 2010 5:01 am 
Offline
User avatar

Joined: Sat Nov 14, 2009 3:27 am
Posts: 3
Ноутбук fujitsu-siemens, сетевая карта Realtek 8139/810x
DHCP Client не захотел получить адрес и колибри в плане сети вела себя странно.
(адреса раздавал DI-624S)

Если не секрет, как понимать в конфигураторе стека "статус сетевой карты"?

Да, и еще. Я понимаю, что железо очень специфическое, графика встроенная и память берется из оперативной, но при тестировании на ноутбуке Колибри сильно нагружала проц и тормозила. Кроме того, иногда при загрузке не инициализировались устройства ввода-вывода: один раз мышка, один - мышка вместе с клавиатурой. Причем система не висела, если верить часам =)

_________________
Поможем Колибри-OS'у!
Не патчем, так хоть краш-тестом!


Top
   
 Post subject: Re: Bugzilla
PostPosted: Fri Feb 05, 2010 12:06 pm 
Offline
User avatar

Joined: Mon Feb 09, 2009 4:13 am
Posts: 445
В свежей ночной сборке есть BUG. Не работает кнопка минимизаци, в основном на FASM'е. Правда если очень долго работать в системе, кнопка минимизации перестаёт работать под всеми программамими, и иногда появляется глюк ввиде ореола от кнопки. Проверял на реальной системе.

Я смотрю система с каждым днём работает всё хуже и хуже, раньше такого небыло. Я так понимаю это новая ветка развития ОСи? - down и ещё раз down.

_________________
\ Маузер в руке, Путин – на крюке! \ Путину – клизму! Смерть капитализму! \ Путин – параша, победа будет наша!\
\ Застрели буржуя в спину! Он не лучше чем скотина! \
Image


Top
   
 Post subject: Re: Bugzilla
PostPosted: Fri Feb 05, 2010 12:11 pm 
Rock_maniak_forever
Ответ напрашивается сам собой - отсутствие полнокровного тестирования при активной разработке как раз приводит к таким вещам.


Top
   
Display posts from previous:  Sort by  
Post new topic  Reply to topic  [ 253 posts ]  Go to page Previous 1 2 3 4 517 Next

All times are UTC+03:00


Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
cron
Powered by phpBB® Forum Software © phpBB Limited