URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 74117
[ Назад ]

Исходное сообщение
"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."

Отправлено opennews , 20-Янв-11 13:10 
Разработчики Ubuntu провели (https://lists.ubuntu.com/archives/ubuntu-devel-announce/2011...) эксперимент по пересборке пакетов  репозитория main при помощи тестовой версии набора компиляторов GCC 4.6 (http://gcc.gnu.org/gcc-4.6/). Несмотря на то, что будущий выпуск Ubuntu 11.04 будет базироваться на ветке и GCC 4.5, эксперимент по пересборке более новой веткой GCC, нацелен на ранее выявление регрессивных изменений.


В процессе сборки выявлена всего одна внутренняя ошибка компилятора. Из более чем семи тысяч пакетов из репозитория main, проблемы со сборкой зафиксированы для 174 пакетов (http://people.ubuntuwire.org/~wgrant/rebuild-ftbfs-test/test...), среди которых apt, python, bacula, debian-installer, digikam, evolution, freetype, fuse, grub, emacs23, inkscape, kde4libc, linux-ядро, network-manager, openoffice.org, subversion, thunderbird, xen, firefox, mysql, qt4 и т.п.


Большинство проблем связано (https://wiki.ubuntu.com/GCC4.6...

URL: https://lists.ubuntu.com/archives/ubuntu-devel-announce/2011...
Новость: http://www.opennet.me/opennews/art.shtml?num=29320


Содержание

Сообщения в этом обсуждении
"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено anonymous , 20-Янв-11 13:10 
В чем, собственно, новость? Убунтовщики тут не пионеры, непрерывные тесты на пригодность пакетов и компиляторов делают все ведущие дистрибутиводелы.

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено User294 , 20-Янв-11 15:55 
Как по мне так вполне интересно посмотреть на то что ждет в свежей версии компилера и насколько много грабель ожидается. Не вижу чем это плохо.

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено анонимус , 20-Янв-11 17:22 
А предыдущий оратор спрашивал: "а новость то в чем?". Многие так делают.

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Andrey Mitrofanov , 20-Янв-11 18:04 
В "и Убутнта -- тоже!". Она _смогла.

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Аноним , 20-Янв-11 13:20 
а когда релиз 4,6 ?

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Sylvia , 20-Янв-11 23:23 
> а когда релиз 4,6 ?

when its ready (c) то ли Ричард Гюнтер , то ли Якуб Елинек
когда доведут критические ошибки до нуля.
Впрочем там уже сейчас фаза исправления ошибок, берите, тестируйте, в багзиллу отписывайтесь, компилятор фактически к релизу готов ( в плане реализации новых возможностей и базового QA )


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено анонимище , 20-Янв-11 14:18 
>В процессе сборки выявлена всего одна внутренняя ошибка компилятора.

Зато шаг в сторону от x86, так сыплются как из рога изобилия и всем наплевать.


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Аноним , 20-Янв-11 17:38 
> Зато шаг в сторону от x86, так сыплются как из рога изобилия
> и всем пох.

А вам либо пох также как и всем, либо вы сами виноваты потому что НИХРЕНА не сделали.


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Анонимбус , 20-Янв-11 22:14 
>А вам либо пох также как и всем, либо вы сами виноваты потому что НИХРЕНА не сделали.

Ты серьёзно считаешь, что все подряд могут внести что-то в разработку компиляторов?
Я, положим, простой быдлокодер. С теорией постороения компиляторов знаком весьма отдалённо, в институте её не изучал. Тоже самое относительно околоассемблерных и архитектурных вещей. Баг отрепортил. Чем я ещё могу помочь? Это же не обычная программа, чтобы тут же приступить к написанию патчей нужно долго и упорно готовиться.


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Sylvia , 20-Янв-11 23:29 
пишите в багзиллу хотя бы,
если никто не напишет , то никто и не посмотрит, сейчас до релиза самое время заваливать разрабов багрепортами, а вот потом уже и правда никто ничего делать не станет, в 4.6.1 наиболее очевидные ляпы исправят, а дальше основные разработчики уйдут в 4.7.х, останутся только те, кто могут поковырять, но если не справятся, напишут примерно такое -  
"мы очень старались, но не можем найти где ошибка, да и вообще нам уже не интересно, мы занимаемся несколько иными вещами" (почти с) Мартин Джамбор.

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено QuAzI , 20-Янв-11 23:41 
Что-то я в вашем вбросе логики не вижу - не могу сопоставить, как связана ошибка в коде написанном человеком и платформа, успешно выполняющая миллионы программ.

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено анонимище , 21-Янв-11 12:33 
> Что-то я в вашем вбросе логики не вижу - не могу сопоставить, как связана ошибка в коде написанном человеком и платформа, успешно выполняющая миллионы программ.

В коде конкретной программы для конкретной платформы дофига ошибок. Вот и всё.


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Аноним , 20-Янв-11 14:43 
Хм... "из-за чего некоторые бывшие предупреждения в GCC 4.6 воспринимаются как ошибки"
Сам не проверял, но думал, что main собирается с -Wall. Оказалось, что нет, а жаль.

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Аноним , 20-Янв-11 15:23 
И что с -Wall компилятор выдаст предупреждения и дальше поедет. :) Вот -pedantic  -pedantic-errors это да. :)

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено pavlinux , 20-Янв-11 17:00 
ещё -ansi добавь, ни одна прога ни соберётся :)

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Аноним , 20-Янв-11 18:30 
ах да, про -Werror забыл. Без него действительно от -Wall мало толку. Сам пилю свои проги как минимум до тех пор, пока они с этими опциями не скомпилируются :)

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено тоже Аноним , 20-Янв-11 19:30 
А чужие библиотеки вы, видимо, принципиально не используете?
Любая моя программа при компиляции с этим флагом до моего кода просто не доходит - слишком много "ошибок" в библиотечных файлах... В основном ошибки типа "так до сих пор можно писать, но не модно же!"

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено gegMOPO4 , 20-Янв-11 15:36 
Любопытно, что на i386 ошибок больше, чем на amd64. Разработчики сидят на 64 бит.

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Sylvia , 20-Янв-11 23:21 
к сожалению совсем не любопытно, а факт, причем если речь идет о GCC, то где-то начиная с 4.4 ошибкам специфичным для x86 уделяется мало внимания, многие вещи не исправляются, например 4.5.x до сих пор не может собрать себя с PGO, баг висит..
Неприоритетная платформа стала

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено pavlinux , 20-Янв-11 17:11 
Типа ошибка в ядре:

> linux-2.6.37/drivers/scsi/aha152x.c:2239:9: warning: variable 'data' set but not used [-Wunused-but-set-variable]

Открываем, видим


while(fifodata>0) {
                   int data;
                   data=GETPORT(DATAPORT);
                   DPRINTK(debug_datai, DEBUG_LEAD "data=%02x\n", CMDINFO(CURRENT_SC), data);
                   fifodata--;
                   DATA_LEN++;
}

Где, ГЦЦ увидел "Unused but set variable"


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено anon2 , 20-Янв-11 17:17 
ну дык DPRINTK работает только под дебагом

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено pavlinux , 20-Янв-11 17:21 
> ну дык DPRINTK работает только под дебагом

дык, присваивание NULL в OpenSSL тоже нифига не давало, а какой эффект был :)
Но с другой стороны, конечно правильней было бы сделать


while(fifodata>0) {
       #ifdef AHA152X_DEBUG
                   int data;
                   data=GETPORT(DATAPORT);
                   DPRINTK(debug_datai, DEBUG_LEAD "data=x\n", CMDINFO(CURRENT_SC), data);
       #endif
                   fifodata--;
                   DATA_LEN++;
}


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Аноним , 20-Янв-11 17:36 
> Где, ГЦЦ увидел "Unused but set variable"

Вы слепой? print не использует data, в форматной строке только один параметр.


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено pavlinux , 20-Янв-11 18:40 
>> Где, ГЦЦ увидел "Unused but set variable"
> Вы слепой? print не использует data, в форматной строке только один параметр.


#define LEAD "(scsi%d:%d:%d) "
#define DEBUG_LEAD      KERN_DEBUG      LEAD
#define CMDINFO(cmd) \
                        (cmd) ? ((cmd)->device->host->host_no) : -1, \
                        (cmd) ? ((cmd)->device->id & 0x0f) : -1, \
                        (cmd) ? ((cmd)->device->lun & 0x07) : -1


http://lxr.linux.no/#linux+v2.6.37/drivers/scsi/aha152x.c#L321

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Аноним , 20-Янв-11 17:37 
>[оверквотинг удален]
>        data=GETPORT(DATAPORT);
>            
>        DPRINTK(debug_datai, DEBUG_LEAD "data=%02x\n", CMDINFO(CURRENT_SC),
> data);
>            
>        fifodata--;
>            
>        DATA_LEN++;
>  }
>

PS. Пипец, это во всём ядре такой yблюдочный стиль кода?


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено тоже Аноним , 20-Янв-11 17:56 
Действительно!
Где километровые структуры с нигде не использующимися полями, перегоняемые из функции в функцию?
Они что, WinAPI не видели никогда, ламеры?!

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Аноним , 20-Янв-11 19:55 
> Где километровые структуры с нигде не использующимися полями, перегоняемые из функции в
> функцию?

Как выдно из кода ядра, километровые структуры совершенно необязательны.


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено pavlinux , 20-Янв-11 18:14 
> PS. Пипец, это во всём ядре такой yблюдочный стиль кода?

Если исключить тебя из большинства использующих этот код,
тогда ты и есть ублюдок, так как большинство всегда право. :)


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Аноним , 20-Янв-11 19:54 
> Если исключить тебя из большинства использующих этот код,
> тогда ты и есть yблюдок, так как большинство всегда право. :)

Большинство пользуется виндовс, так что отдыхай, лaмeрок :))


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено pavlinux , 20-Янв-11 23:16 
>> Если исключить тебя из большинства использующих этот код,
>> тогда ты и есть yблюдок, так как большинство всегда право. :)
> Большинство пользуется виндовс, так что отдыхай, лaмeрок :))

О великий гуру, тебе дали посмотреть код ядра венды!



"нечаянный пингвинукс"
Отправлено maxkit , 21-Янв-11 16:42 
Аргументируйте, интересно послушать зачем.

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Vitaly_loki , 22-Янв-11 12:58 
А ты раньше не смотрел что ли?

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Sylvia , 20-Янв-11 19:58 
а они только собрали или и работоспособность проверяли?
на x86 собирается (даже с безопасными флагами) gawk, но работает нестабильно, иногда падает с ошибками выделения памяти,а без работающего awk собрать что-либо еще уже сложно )

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Sylvia , 20-Янв-11 20:01 
ну и в целом учитывая ретивость и энтузиазм Doko (Маттиас Клосе), ничуть не удивительно что он попытался этот эксперимент провести, тем более что фаза разработки 4.6 - исправление ошибок и регрессий перед тем как будет определена готовность к релизу.

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено segoon , 20-Янв-11 20:42 
Меня интересует вот что - Ubuntu уже на ld gold перешла?  Или они "просто тестируют"?

"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено Sylvia , 20-Янв-11 23:15 
пока нет, вообще проще всего что-то протестировать - пособирать gentoo,
gold иногда выдает странности, хотя в целом как замена ld работать и способен
модули ядра с gold опять же собирать не надо, он это не поддерживает нормально, nvidia.ko например начинает в паре с virtualbox выдавать oopsы

впрочем, в 4.6 полностью переработали LTO, и в binutils теперь разделили бинарники ld на ld.bfd и ld.gold, раньше --enable-gold вместо ld устанавливала gold


"Эксперимент по пересборке пакетной базы Ubuntu при помощи GC..."
Отправлено bircoph , 21-Янв-11 07:56 
Мне интересно, когда graphite доведут до нормального состояния? Во-первых, на 64-битных системах он только ухудшает быстродействие. Во-вторых, gcc 4.5.2 всё ещё приводит к ICE при использовании графита в ряде случаев (для ~500 пакетов гентушки 4 ICE из-за графита).