1.1, pavlinux (ok), 23:13, 30/01/2011 [ответить] [﹢﹢﹢] [ · · · ]
| +8 +/– |
http://www4.informatik.uni-erlangen.de/Research/VAMOS/linux-trees/v2.6.38-rc1
537 строка
#ifdef CONFIG_PCI_MMCONFIG
else if (!strcmp(str, "nommconf")) {
pci_probe &= ~PCI_PROBE_MMCONF;
return NULL;
}
else if (!strcmp(str, "check_enable_amd_mmconf")) {
pci_probe |= PCI_CHECK_ENABLE_AMD_MMCONF;
return NULL;
}
#endif
Это оно считает не корректно?
А по-моему, если CONFIG_PCI_MMCONFIG в ядре нету, то и сравнивать не надо (strcmp)
и снимать флаг PCI_PROBE_MMCONF или добавлять PCI_CHECK_ENABLE_AMD_MMCONF,
чтоб потом PCI проверяло то, чего нет. :-/
----
За то я нашёл другой косяк :),
там же на 20-ой строке:
unsigned int pci_probe = PCI_PROBE_BIOS | PCI_PROBE_CONF1 | PCI_PROBE_CONF2 | PCI_PROBE_MMCONF;
Причем пофиг, есть или нет CONFIG_PCI_MMCONFIG
---
Порадовало вот это
/* Define this to allow debugging output */
#undef IPCONFIG_DEBUG
#ifdef IPCONFIG_DEBUG
#define DBG(x) printk x
....
| |
|
2.3, pavlinux (ok), 00:05, 31/01/2011 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Так держать.
undertaker.cpp: В функции ‘int main(int, char**)’:
undertaker.cpp:346:49: предупреждение: из-за ограниченности диапазона типа данных, результат сравнения всегда ложь
undertaker.cpp:346:72: предупреждение: из-за ограниченности диапазона типа данных, результат сравнения всегда ложь
:-)
Это млин, какая-то курсовая работа студней Универа Santa Catarina из Бразилии,
где много диких абизян.
int threads = 1;
...
threads = strtol(optarg, (char **)0, 10);
strtol - переводиться как String To Long, у ниха threads = int
--- undertaker/undertaker.cpp 2011-01-31 00:14:46.713000046 +0300
+++ undertaker/undertaker.cpp 2011-01-31 00:13:49.622000068 +0300
@@ -314,7 +314,7 @@
char *worklist = NULL;
char *whitelist = NULL;
- int threads = 1;
+ long int threads = 1;
std::list<std::string> models;
std::string main_model = "x86";
/* Default is dead/undead analysis */
И ЭТИ ЛЮДИ ЗАНИМАЮТСЯ АНАЛИЗОМ КАЧЕСТВА КОДА ЯДРА ..... :)
| |
|
3.4, cmp (ok), 05:10, 31/01/2011 [^] [^^] [^^^] [ответить]
| –1 +/– |
А чему удивляться, корпасты же рулят, нормальных проектов по пальцам перещитать, либо студентики проги недоделки клепают, либо корпоративные гиганты поекты открывают (или не открывают), такие что на 10Гб система уже не лезет, зато wma в mp3 конвертнуть нечем.
| |
|
4.6, fr0ster (ok), 09:56, 31/01/2011 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вот именно, половина проектов пишется студентами, потому как имея чуть больший опыт, легко находится существующее решение проблемы и не изобретается очередной велосипед. А большая часть проектов в мире это таки велосипеды разной степени свежести.
| |
|
5.8, cmp (ok), 10:47, 31/01/2011 [^] [^^] [^^^] [ответить]
| +/– |
Ваша правда.
Только сколько Вы можете назвать законченных проектов. Законченных и поддерживаемых, а не заброшенных. Большенство выходят за рамки первоначального функционала, разбухают как на дрожжах, грузят систему "дополнительными возможностями" так, что на основные ресурсов не хватает, вот и пишут.
| |
|
6.9, fr0ster (ok), 10:55, 31/01/2011 [^] [^^] [^^^] [ответить]
| +/– |
> Ваша правда.
> Только сколько Вы можете назвать законченных проектов. Законченных и поддерживаемых, а
> не заброшенных. Большенство выходят за рамки первоначального функционала, разбухают как
> на дрожжах, грузят систему "дополнительными возможностями" так, что на основные ресурсов
> не хватает, вот и пишут.
Ни одного. Таких не бывает в принципе. Проекты развиваются по тем же законам, что и любая система. Пока проект нужен разработчику, проект будет развиваться и поддерживаться. как только интерес разработчика угасает, проект ничто не спасет. И все характеристики типа "на дрожжах, грузят систему" субъективны.
| |
|
7.11, cmp (ok), 11:16, 31/01/2011 [^] [^^] [^^^] [ответить]
| +/– |
Хм.. интересная позиция, то есть по-вашему, проект не может быть подхвачен кем-то другим?
или разработчики не могут умеренно расширять функционал.. Ядро линухи, наглядный пример того, что могут.
| |
|
|
9.13, cmp (ok), 11:29, 31/01/2011 [^] [^^] [^^^] [ответить] | +/– | Больные на голову кошки, бывают И разрабы по большей части люди, со свойственно... текст свёрнут, показать | |
|
|
11.15, cmp (ok), 11:57, 31/01/2011 [^] [^^] [^^^] [ответить] | +/– | Ну почему же только ему, мне как юзеру тоже важно, я как ни как учился его софто... текст свёрнут, показать | |
|
|
13.18, cmp (ok), 12:22, 31/01/2011 [^] [^^] [^^^] [ответить] | +/– | Переводом справки и условие разрабам ставить да-да, они послушают Развити... текст свёрнут, показать | |
|
|
15.20, cmp (ok), 12:57, 31/01/2011 [^] [^^] [^^^] [ответить] | +/– | Да причем тут Задолбали просто всякие со своими аймудами, и медведы которые и... текст свёрнут, показать | |
|
|
|
|
|
|
|
|
|
|
|
|
3.17, Карбофос (ok), 12:15, 31/01/2011 [^] [^^] [^^^] [ответить]
| +/– |
не прикапывайся к студентам! :) у них еще всё впереди
только конструктивная критика!
| |
3.25, Вова (?), 15:56, 01/02/2011 [^] [^^] [^^^] [ответить]
| +/– |
>[оверквотинг удален]
> @@ -314,7 +314,7 @@
> char *worklist = NULL;
> char *whitelist = NULL;
> - int threads = 1;
> + long int threads = 1;
> std::list<std::string> models;
> std::string main_model = "x86";
> /* Default is dead/undead analysis */
>
> И ЭТИ ЛЮДИ ЗАНИМАЮТСЯ АНАЛИЗОМ КАЧЕСТВА КОДА ЯДРА ..... :)
этот threads задаёт количество процессов, на которые надо распараллелить анализ ядра.
Если кто-то задаст значение, которое приведёт к переполнению, это уже само по себе некорректно.
Вполне нормальный кусок кода/
| |
|
4.26, pavlinux (ok), 17:13, 01/02/2011 [^] [^^] [^^^] [ответить]
| +/– |
>[оверквотинг удален]
>> char *worklist = NULL;
>> char *whitelist = NULL;
>> - int threads = 1;
>> + long int threads = 1;
>> std::list<std::string> models;
>> std::string main_model = "x86";
>> /* Default is dead/undead analysis */
>>
>> И ЭТИ ЛЮДИ ЗАНИМАЮТСЯ АНАЛИЗОМ КАЧЕСТВА КОДА ЯДРА ..... :)
> этот threads задаёт количество процессов, на которые надо распараллелить анализ ядра.
Пох...ю что он задаёт.
> Если кто-то задаст значение, которое приведёт к переполнению, это уже само по
Понятия "кто-то" в Си нету. Кода статистического анализа и расчёта вероятности не вижу.
> себе некорректно. Вполне нормальный кусок кода/
Функция возвращает long, значит присваиваться этот результат должен переменной
такого же типа, и нипёт, что "когда-то никогда что-то как-то" не случиться.
Надо было юзать atoi()
| |
|
5.27, Вова (?), 17:28, 01/02/2011 [^] [^^] [^^^] [ответить]
| +/– |
Нет, это очередная ошибка, излишний пуризм. Данная переменная будет иметь значения от единицы (умолчательное значение) до нескольких десятков, проверка на ошибочную работу strtol - имеется, проверка на значение переменной - тоже имеется. Вывод - если кто-то задал количество процессов в 24145123525523323242342343422 - тот сам себе злобный буратино.
Займись чем-нибудь полезным?
| |
|
6.30, pavlinux (ok), 17:42, 01/02/2011 [^] [^^] [^^^] [ответить]
| +/– |
> - если кто-то задал количество процессов в
Программы делаются в помощь людям, а не для развития геморроя.
| |
|
7.31, Вова (?), 17:58, 01/02/2011 [^] [^^] [^^^] [ответить]
| +/– |
Сценарий геморроя в данном конкретном случае?
Предусмотрен опциональный параметр: количество параллельно работающих потоков, аналог make -jN; параметр читается, значение параметра после этого проверяется, есть умолчательное значение - 1.
Какой геморрой?
| |
|
|
9.34, Вова (?), 18:55, 01/02/2011 [^] [^^] [^^^] [ответить] | +/– | код, который вы пытаетесь исправить , корректно поддерживает задание максимум 2... текст свёрнут, показать | |
|
|
11.36, Вова (?), 09:46, 02/02/2011 [^] [^^] [^^^] [ответить] | +/– | жги Сразу два варианта остри - вариант на да, я принимаю участие и вариант н... текст свёрнут, показать | |
|
|
|
|
|
6.37, nuclight (ok), 18:06, 06/02/2011 [^] [^^] [^^^] [ответить]
| +/– |
> Нет, это очередная ошибка, излишний пуризм. Данная переменная будет иметь значения
> от единицы (умолчательное значение) до нескольких десятков, проверка на ошибочную работу
Соль в том, что этот проект как раз посвящен проверке качества и пуризма. А получается сапожник без сапог, хочется сказать авторам, "Врачу, исцелися сам".
| |
|
|
|
|
|
|