Объявление


Форум находится в режиме только для чтения, для комментариев есть блог.

#776 11.01.2019 12:02:00

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

Вот и сбылось предсказание, что будут попадаться другие инструкции из огромного списка, которые сложнее отслеживать. На данный момент встречаются как минимум две команды:


Код:

0x0FAEE8 - lfence
0xF30FE6 - cvtdq2pd

Хотя по-нормальному надо делать сканер всех команд, готового я пока не нашёл.

 

#777 11.01.2019 12:11:21

WAJIM
Advanced Member
Откуда: Новосибирск
Зарегистрирован: 16.05.2017
Сообщений: 111

Re: UpdatePack-XPSP3-Rus Live 19.11.15

simplix
Нормальных сканеров нет, они могут ложно определять коды инструкций в блоках данных (например в строках, которые содержатся в коде). Нужно полное дизассемблирование.

Вобщем надо все бинарники, собранные на VC12, сразу помечать, как требующие SSE2. Разработчики-индусы не отключают в настройках проекта VC12 генерацию SSE2-кода, скорее всего они даже не догадываются об этом.

Отредактировано WAJIM (11.01.2019 12:13:47)

 

#778 11.01.2019 12:36:22

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

Не нужно, я сам напишу сканер без ложных срабатываний.

 

#779 11.01.2019 15:39:22

WAJIM
Advanced Member
Откуда: Новосибирск
Зарегистрирован: 16.05.2017
Сообщений: 111

Re: UpdatePack-XPSP3-Rus Live 19.11.15

Да 3 месяца уже осталось до конца.

 

#780 11.01.2019 15:53:04

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

В общем со сканером стало ещё чудесатее - оказывается многие старые обновления тоже должны работать только с SSE2, а их WU всегда предлагало на все процессоры. Например старющее KB909520, basecsp.dll - 12F45: cvttsd2si; там же рядом три файла с movapd. И таких обновлений десятки, кроме уже исключённых.

 

#781 11.01.2019 16:53:14

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

После тщательной сортировки у меня получилось следующее.

Уже отмечены в наборе, как требующие SSE2:

KB4034775
KB4340937
KB4343674
KB4458000
KB4458006
KB4462987
KB4473077

Требуют SSE2, но сейчас устанавливаются на все процессоры:

KB909520
KB942288-v3
KB951978
KB956572
KB969084
KB2659262
KB2813347-v2
KB2834886
KB2957503
KB3013126
KB3029944
KB3035132
KB3065979
KB3078601
KB3145739
KB3178034
KB3191203
KB4012583
KB4015383
KB4019276
KB4039384
KB4089082
KB4339291
KB4459091
KB4466388
KB4467689
KB4481275

 

#782 11.01.2019 17:28:28

YDean
New member
Зарегистрирован: 30.08.2015
Сообщений: 7

Re: UpdatePack-XPSP3-Rus Live 19.11.15

simplix сообщает:

KB909520, basecsp.dll - 12F45: cvttsd2si;

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

В проверке cpuid также осуществляется сравнение со строчкой "AuthenticAMD".
Что может являться признаком наличия такой проверки.

Отредактировано YDean (11.01.2019 17:31:46)

 

#783 11.01.2019 19:44:54

WAJIM
Advanced Member
Откуда: Новосибирск
Зарегистрирован: 16.05.2017
Сообщений: 111

Re: UpdatePack-XPSP3-Rus Live 19.11.15

YDean
Верно, сначала вызывается инструкция cpuid и опознается процессор.
Потом ветки SSE2/не-SSE2 разделяются по проверке: cmp d,[000415A6C],0. Молодцы, оптимизировали же код в свое время...

Отредактировано WAJIM (11.01.2019 19:46:52)

 

#784 11.01.2019 19:52:10

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

YDean
Спасибо, это ценная информация, и икебана сложилась. Вот что у меня вышло по итогу:

+KB909520
+KB942288-v3
+KB951978
KB956572 - v7.10
+KB969084
+KB2659262
+KB2813347-v2
+KB2834886
+KB2957503
+KB3013126
+KB3029944
+KB3035132
+KB3065979
+KB3078601
+KB3145739
+KB3178034
+KB3191203
+KB4012583
+KB4015383
KB4019276 - v7.10
KB4034775 - v12
+KB4039384
+KB4089082
KB4339291 - v7.10
+KB4340937
+KB4343674
+KB4458000
KB4458006 - v12
KB4459091 - v7.10
+KB4462987
KB4466388 - v7.10
KB4467689 - v7.10
+KB4473077
KB4481275 - v12

Здесь "+" отмечены обновления (со всеми файлами), в которых я нашёл процедуру проверки инструкций. Причём процедура есть даже в тех обновлениях, которые мы исключали раньше, поэтому их я добавлю для установки на все процессоры. Остальные обновления, где я не нашёл процедуру, отмечены версией линкера, причём v7.10 тоже не требуют SSE2, учитывая их старость и сам компилятор. Остаётся всего три обновления с v12, в которых нет проверки и есть инструкции SSE2. К тому же, о KB4034775 раньше был отчёт о сбое.

P. S. Список литературы для истории: Intrinsics Guide, SSE2 instructions.

 

#785 11.01.2019 20:07:02

WAJIM
Advanced Member
Откуда: Новосибирск
Зарегистрирован: 16.05.2017
Сообщений: 111

Re: UpdatePack-XPSP3-Rus Live 19.11.15

simplix
Проверка cpuid не дает гарантии, что в коде есть ветки для не-SSE2 вариантов, надо дизассемблировать и проверять вручную.

Вы же не проверяли xpsp2res.dll ? Там кода нет, только ресурсы.

Добавьте для KB4481275 условие наличия SSE2 и пока больше ничего не меняйте в скрипте в плане SSE2. Если у кого-то будут проблемы - напишет.

Отредактировано WAJIM (11.01.2019 20:13:19)

 

#786 11.01.2019 20:45:23

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

WAJIM
Я искал не только проверку cpuid, но и другие инструкции, плюс выборочно проверял чтобы были две ветки инструкций. Единственное что пока не понял до конца, это почему в обновлениях с линкером v7.10 вообще нет проверки cpuid и других аналогичных проверок. Но, учитывая что они старые и раньше мы их не исключали, эти можно оставить.

 

#787 11.01.2019 21:15:11

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

UpdatePack-XPSP3-Rus Live 19.1.11 (заменяет 19.1.10)

• Добавлен KB4480965 из Windows XP Embedded (IE8, заменяет KB4470199)
• Добавлен KB4481275 из Windows XP Embedded (заменяет KB4463573)
• Adobe Flash 32.0.0.114 ActiveX & Plugin

Внесены все необходимые корректировки по проверке SS2.

 

#788 13.01.2019 03:18:38

vasp
New member
Зарегистрирован: 13.01.2019
Сообщений: 1

Re: UpdatePack-XPSP3-Rus Live 19.11.15

Подскажите, новые методы https шифрования включаются в каком нибудь из обновлений? Смутно припоминаю, что была про них информация, но, к примеру, попался мне сайт maps-for-free.com, который IE 8 не берет. Или помимо обновления там еще в реестре что то нужно включать?

 

#789 13.01.2019 08:30:14

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

vasp
Если после установки набора не открывает, то и не откроет, но вместо IE можно пользоваться Firefox'ом, у него свои методы.

 

#790 13.01.2019 14:50:55

$DR@GON$
Member
Зарегистрирован: 01.01.2015
Сообщений: 88
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

simplix  проверка SS2 также применяется для Adobe Flash 32.0.0.114 ActiveX & Plugin?

 

#791 13.01.2019 17:44:43

WAJIM
Advanced Member
Откуда: Новосибирск
Зарегистрирован: 16.05.2017
Сообщений: 111

Re: UpdatePack-XPSP3-Rus Live 19.11.15

$DR@GON$
Конечно, без SSE2 ищите версию 29.0.0.171.

Отредактировано WAJIM (13.01.2019 17:46:13)

 

#792 14.01.2019 07:16:23

alexey65536
Member
Зарегистрирован: 12.10.2017
Сообщений: 39

Re: UpdatePack-XPSP3-Rus Live 19.11.15

Установил 19.1.11 на ПК с р3. Перестал работать Ping Plotter.
Установились, судя по логу, 4340937, 4343674, 4458000, 4462987, 4473077. Они вроде бы тут выше указаны как обновления для машин с SSE2. Похоже, в алгоритм определения проца влезла какая-то ошибка.

Да, и винрар не работает. Сейчас буду откатывать.
ps. Откатил, заработали программы. Конкретно это было из-за 4343674 (mf3216.dll).

Отредактировано alexey65536 (14.01.2019 08:31:15)

 

#793 14.01.2019 10:00:21

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

alexey65536
Спасибо, пересмотрю эти файлы. Извините за временные неудобства, но лучше перепробовать на практике, чем оставался бы шанс, что нужные обновления не установлены. К тому же в этом нет ничего критичного, т. к. на загрузку системы эти обновления не влияют, бекапы создаются, а набор я делаю таким образом, чтобы новая версия автоматически удаляла несовместимые обновления.

 

#794 14.01.2019 11:46:39

APavs
New member
Зарегистрирован: 23.09.2015
Сообщений: 9

Re: UpdatePack-XPSP3-Rus Live 19.11.15

simplix
А по итогу всего вышесказанного и новых "исследований" можно будет опубликовать список всех обновлений требующих SSE2?

 

#795 14.01.2019 12:01:05

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

alexey65536
Слушайте, ну я не вижу в KB4343674\mf3216.dll инструкций SSE2 и линкер там v7.10. Более новая версия этого же файла есть в KB4458000, там всё так же. Вы определили это обновление только удалением? Хотелось бы взглянуть на скриншоты ошибок (если есть) и системные логи во время возникновения проблем, а если сможете запустить TeamViewer - будет идеально. Не исключено, что здесь какая-то проблема, не связанная с SSE2.

APavs
На этой же странице список с отметками "v12".

 

#796 14.01.2019 12:38:10

alexey65536
Member
Зарегистрирован: 12.10.2017
Сообщений: 39

Re: UpdatePack-XPSP3-Rus Live 19.11.15

Определил удалением.
У вас нет отдельного 4343674, чтобы снова всю пачку не ставить?
Вот сообщение от винрара:


Код:

Ошибка приложения winrar.exe, версия 5.61.0.0, модуль gdiplus.dll, версия 5.2.6002.24439, адрес 0x0007b374.

Информация события:
0000   41 70 70 6C 69 63 61 74 69 6F 6E 20 46 61 69 6C    Application Fail
0010   75 72 65 20 20 77 69 6E 72 61 72 2E 65 78 65 20    ure  winrar.exe 
0020   35 2E 36 31 2E 30 2E 30 20 69 6E 20 67 64 69 70    5.61.0.0 in gdip
0030   6C 75 73 2E 64 6C 6C 20 35 2E 32 2E 36 30 30 32    lus.dll 5.2.6002
0040   2E 32 34 34 33 39 20 61 74 20 6F 66 66 73 65 74    .24439 at offset
0050   20 30 30 30 37 62 33 37 34 0D 0A                    0007b374..

А у пингплоттера там собственное окно вылазит, в общий лог это не идет.

Отредактировано alexey65536 (14.01.2019 12:42:49)

 

#797 14.01.2019 13:11:08

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

Спасибо, пока ставить не нужно. Из сообщения видно, что проблема в gdiplus.dll, а не mf3216.dll. Как и предполагал WAJIM, это именно тот случай, когда SSE2-инструкция выполняется без проверки на возможности процессора (проверил), хотя первая по коду инструкция cvttsd2si (1bb5e) имеет такую проверку.

 

#798 14.01.2019 13:19:04

alexey65536
Member
Зарегистрирован: 12.10.2017
Сообщений: 39

Re: UpdatePack-XPSP3-Rus Live 19.11.15

Я поднял еще один дровяной комп с п3, если нужно будет что-то делать по удаленке - можно попробовать.

 

#799 14.01.2019 13:57:46

WAJIM
Advanced Member
Откуда: Новосибирск
Зарегистрирован: 16.05.2017
Сообщений: 111

Re: UpdatePack-XPSP3-Rus Live 19.11.15

simplix
Это потому, что инструкцию lfence вставляли в код вручную, она необходима для защиты от Spectre. Делать это опционально, в зависимости от наличия SSE2, индусы не захотели.

 

#800 14.01.2019 15:19:22

simplix
Administrator
Зарегистрирован: 28.07.2008
Сообщений: 3011
Вебсайт

Re: UpdatePack-XPSP3-Rus Live 19.11.15

UpdatePack-XPSP3-Rus Live 19.1.14

Итог: указанные выше обновления снова не будут устанавливаться на процессоры без SSE2, т. к. там везде есть lfence без проверок. Дополнительно прошёлся по всем обновлениям, чтобы убедиться, что только у этих линкер v12, все остальные имеют более низкие версии, так что это самый простой признак. Также без SSE2 будут устанавливаться ближайшие заменённые обновления, лучше так, чем никак (их всего пару штук).

 

Board footer


© simplix