реклама на сайте
подробности

 
 
2 страниц V  < 1 2  
Reply to this topicStart new topic
> scmRTOS (v3) blackfin, переключение контекста + IMASK
dxp
сообщение Mar 7 2008, 13:50
Сообщение #16


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(Сергей Борщ @ Mar 7 2008, 19:28) *
А попробуйте взять OS_Services.h и OS_Services.cpp из этой ветки. Возможно это одно из проявлений правящегося там бага. Я надеюсь, что баг исправил, но может еще чего-то не заметил.

Там, вроде, дело к ошибке вело, когда использовался один и тот же сервис в разных процессах. А тут, я понял, spi_send нигде больше не завязан.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
yes
сообщение Mar 7 2008, 13:57
Сообщение #17


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



Цитата(Сергей Борщ @ Mar 7 2008, 16:28) *
А попробуйте взять OS_Services.h и OS_Services.cpp
Возможно это одно из проявлений правящегося там бага. Я надеюсь, что баг исправил, но может еще чего-то не заметил.


Спасибо.
А обсуждения (описание) бага как посмотреть ?

Цитата(dxp @ Mar 7 2008, 16:50) *
Там, вроде, дело к ошибке вело, когда использовался один и тот же сервис в разных процессах. А тут, я понял, spi_send нигде больше не завязан.


да, посылается в прерывании, ожидается только в одном процессе (причем процесс приоритетный)
Go to the top of the page
 
+Quote Post
Сергей Борщ
сообщение Mar 7 2008, 14:03
Сообщение #18


Гуру
******

Группа: Модераторы
Сообщений: 8 455
Регистрация: 15-05-06
Из: Рига, Латвия
Пользователь №: 17 095



Цитата(yes @ Mar 7 2008, 15:57) *
А обсуждения (описание) бага как посмотреть ?
Там в названии ветки есть номер бага. Его описание можно найти в трекере и вот в этом обсуждении на сахаре.

Цитата(yes @ Mar 7 2008, 15:57) *
да, посылается в прерывании, ожидается только в одном процессе (причем процесс приоритетный)
Если ожидается с таймаутом - то вполне может быть.


--------------------
На любой вопрос даю любой ответ
"Write code that is guaranteed to work, not code that doesn’t seem to break" (C++ FAQ)
Go to the top of the page
 
+Quote Post
dxp
сообщение Mar 7 2008, 14:28
Сообщение #19


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(Сергей Борщ @ Mar 7 2008, 20:03) *
Если ожидается с таймаутом - то вполне может быть.

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

2yes: если не получится обнаружить косяк, может кинете мне проект (или его огрызок), чтобы я у себя мог погонять. Надо выяснить, что там не так.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
yes
сообщение Mar 7 2008, 14:34
Сообщение #20


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



Цитата(Сергей Борщ @ Mar 7 2008, 16:28) *
А попробуйте взять OS_Services.h и OS_Services.cpp из этой ветки. Возможно это одно из проявлений правящегося там бага. Я надеюсь, что баг исправил, но может еще чего-то не заметил.


Еще раз спасибо!
прогнал 6*10^7 переключений - не подвисло

дифом я исходники посмотрел, но увы smile.gif ничего не понял,
но работает (по крайней мере значительно лучше)


Цитата(Сергей Борщ @ Mar 7 2008, 17:03) *
Если ожидается с таймаутом - то вполне может быть.


изначально было без таймаута, с ошибочным поведением. таймаут я поставил, чтобы проверить железо (прерывание SPI) работает

UPD: так как я вносил еще правки - после добавления таймаута, то возможно первоначальная причина была другой
но время таймаута - 10мс (tick=1ms), а SPI работает на 4МГц - на 3 порядка разные времена

Цитата(dxp @ Mar 7 2008, 17:28) *
2yes: если не получится обнаружить косяк, может кинете мне проект (или его огрызок), чтобы я у себя мог погонять. Надо выяснить, что там не так.


если есть интерес - могу кинуть, там ничего секретного нет. но много лишнего и железка, имхо, нужна, чтобы поймать
Go to the top of the page
 
+Quote Post
dxp
сообщение Mar 9 2008, 06:44
Сообщение #21


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(yes @ Mar 7 2008, 20:34) *
если есть интерес - могу кинуть, там ничего секретного нет. но много лишнего и железка, имхо, нужна, чтобы поймать

Что именно от железяки нужно? Я понял, что проблема возникает при совместной работе прерываний - например, SPI и UART. Если оба устройства работают в режиме передачи, то никакое внешнее железо не нужно и можно попытаться восстановить ситуацию на голом проце. Если проблема не ушла, то пришлите (можно сюда: hz<барбос>oesd.ru). Нельзя глюки за спиной оставлять, они обязательно "укусят" сзади в самый неподходящий момент. smile.gif


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
dxp
сообщение Mar 9 2008, 13:50
Сообщение #22


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Проблема, с которой началась ветка, пофиксена. Взять можно из репозитория. Работоспособность проверена на рабочем проекте (но с ним и ранее не было проблем из-за достаточной оптимизации - фукнция не вызывалась, а встраивалась). Попробуйте, если есть время и желание.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post
yes
сообщение Mar 9 2008, 20:44
Сообщение #23


Гуру
******

Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640



Цитата(dxp @ Mar 9 2008, 16:50) *
Проблема, с которой началась ветка, пофиксена. Взять можно из репозитория. Работоспособность проверена на рабочем проекте (но с ним и ранее не было проблем из-за достаточной оптимизации - фукнция не вызывалась, а встраивалась). Попробуйте, если есть время и желание.


спасибо. ну значит свой проект я не отсылаю...

если есть возможность ответить - fix тот который предложил Сергей Борщ или fix переключателя задач ?
Go to the top of the page
 
+Quote Post
dxp
сообщение Mar 10 2008, 13:08
Сообщение #24


Adept
******

Группа: Свой
Сообщений: 3 469
Регистрация: 6-12-04
Из: Novosibirsk
Пользователь №: 1 343



Цитата(yes @ Mar 10 2008, 02:44) *
если есть возможность ответить - fix тот который предложил Сергей Борщ или fix переключателя задач ?

Переключалка задач - то, с чего ветка началась.

В скором времени будем все фиксы объединять (и не только фиксы) и делать новый релиз.

Добавление: эти фиксы не пересекаются. Тот, про который Сергей сказал - это часть Common, а та, про которую я - это порт. Т.ч. можно смело брать файлы из обоих источников одновременно.


--------------------
«Отыщи всему начало, и ты многое поймёшь» К. Прутков
Go to the top of the page
 
+Quote Post

2 страниц V  < 1 2
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 18th July 2025 - 17:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.01436 секунд с 7
ELECTRONIX ©2004-2016