metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2012-12-04 03:08 am

И вот все у них так делается

http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics/commit/?id=0903d99ada1755f11a2a5cbf89a345de896e18ec
http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics/commit/?id=d14ea867ad5d6f8a758a18223e457e1a56fa6065
http://cgit.freedesktop.org/xorg/driver/xf86-input-synaptics/commit/?id=54f65f3ca1f7a7118bea96915d79acee28721581

Автору показались странными и ненужными фичи синаптик-тачпадов в драйвере для иксов - tap-to-click, scroll edge и аппаратные кнопки скролла. Тестирование налаживать лень. "Надо удалить". Обоснование:
http://lists.x.org/archives/xorg-devel/2012-May/030886.html
"The driver has become mostly unmaintainable, so a few features are shown the door."
http://lists.x.org/archives/xorg-devel/2012-May/030914.html
"the thing with the edge support is that I found it incredibly hard to trigger and very unreliable. So I'd wager it wasn't used that commonly, unless my touchpad is really that different to everyone else's."

Т.е. он даже не пытался проверить свой код на ДРУГИХ тачпадах.

В кошмарном сне не могу себе представить подобное при нормально организованной разработке. Любителям удалять на основании указаний мозговых червей поломали бы руки задолго до попытки удаления.

Вот поэтому линукс на десктопе - это всегда заведомо необходимость мирится с постоянными проблемами подобного рода. "По другому не умеют".

[identity profile] w00dy.livejournal.com 2012-12-04 12:19 am (UTC)(link)
ребе, после того что сделал Дрепер это всё такие мелочи ;)

[identity profile] kiryl.livejournal.com 2012-12-04 06:28 am (UTC)(link)
Что сделал Дреппер?

[identity profile] w00dy.livejournal.com 2012-12-04 09:03 am (UTC)(link)
послал всех в хуй и "поламал" strcpy.

[identity profile] kiryl.livejournal.com 2012-12-04 09:39 am (UTC)(link)
То был memcpy, не strcpy. И, формально, он поломан не был. Заодно было наглядно продемонстрировано, что flash писали рукожопые. ;)

Дриппер, конечно, ещё тот мудак. Хорошо, что его таки подвинули в сторону (он теперь VP в Goldman Sachs %). Апстрим glibc сейчас заметно живее стал.

[identity profile] w00dy.livejournal.com 2012-12-04 09:43 am (UTC)(link)
Да так можно всё то угодно продемонстрировать. Просто сам факт - есть приложение, изменения в оси его ломают. Тут даже Торвальдс адекватно выступил - типа нахуй такие изменения.

[identity profile] max630.livejournal.com 2012-12-04 01:28 pm (UTC)(link)
Врать не надо. Приложение исходно было поломано. Просто это было не заметно.
Edited 2012-12-04 13:28 (UTC)

[identity profile] w00dy.livejournal.com 2012-12-04 01:31 pm (UTC)(link)
Где? Приложение работало. Просто оно опиралось на особености текущей реализации.
Edited 2012-12-04 13:32 (UTC)

[identity profile] kiryl.livejournal.com 2012-12-04 01:35 pm (UTC)(link)
Оно опиралось на распиздяйство и/или незнание различия memcpy() и memmove().

[identity profile] max630.livejournal.com 2012-12-04 01:37 pm (UTC)(link)
Да ни на что оно не опиралось, Просто промограли тупейший баг, но до поры до времени это было незаметно. С чем угодно это может так быть - освобождённая память никому не выдавалась, на многоядерной машине не запускали, неиспользованная переменная не удалялась при оптимизации. Потом условия изменились - и готово, "они поломали моё приложение".

[identity profile] max630.livejournal.com 2012-12-04 01:44 pm (UTC)(link)
Дреппер, кстати, предложил конструктивное решение, но это же надо читать ссылки, куда проще сплетни копипастить. А что он помимо этого сказал про авторов флеша - это же, во-первых, субъективное оценочное суждение, во-вторых, правда.

[identity profile] w00dy.livejournal.com 2012-12-04 01:47 pm (UTC)(link)
ссылку можно?

[identity profile] max630.livejournal.com 2012-12-04 01:52 pm (UTC)(link)
http://www.sourceware.org/bugzilla/show_bug.cgi?id=12518#c4

собственно, с этого коммента всё и началось

[identity profile] max630.livejournal.com 2012-12-04 01:59 pm (UTC)(link)
google for "With this proposed implementation old code remains in working order until thoselousy programmers use a newer platform and then they will experience theproblems themselves and will fix them before releasing their code", короче

[identity profile] w00dy.livejournal.com 2012-12-04 02:22 pm (UTC)(link)
"Buggy" code can be linked to the new memcpy@@GLIBC_2.14 by just recompiling,
no? That doesn't really solve anything.

хорошее решение :) Понятно что если отлучить от компов всех идиотов то настанет рай, но реальность то другая, и её стоит учитывать.

[identity profile] max630.livejournal.com 2012-12-04 06:45 pm (UTC)(link)
ну для closed-source программ, если её пересобирают, то и автор где-нибудь неподалёку. Если их интересует вообще как она работает - исправят. А остальные исправили едва ли не быстрее. В общем, там всё аргументация есть, лень повторять.

и почему "buggy" в кавычках? Это вполне по-настоящему бажный код,
Edited 2012-12-04 18:54 (UTC)

[identity profile] w00dy.livejournal.com 2012-12-04 07:20 pm (UTC)(link)
> и почему "buggy" в кавычках? Это вполне по-настоящему бажный код,

Вы у меня спрашиваете? Вы тоже комментарии не читали? :)

В кавычках потому что код работал раньше. Так уж звёзды совпали что поведение старой memcpy не вызывало ошибок, хотя и является UB в случае пересекающихся диапазонов согласно доки. И тот же Торвальдс (и не только он) правильно заметил что это какой-то анахронизм времён динозавров и что memcpy стоит сделать алиасом на memmove.