From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-4.3 required=5.0 tests=ALL_TRUSTED,BAYES_00, RP_MATCHES_RCVD autolearn=unavailable autolearn_force=no version=3.4.1 Message-ID: Date: Fri, 12 Apr 2024 11:14:55 +0700 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird To: ALT Linux Team development discussions Content-Language: en-US From: Ilya Kurdyukov Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit Subject: [devel] rpm-build, AddressSanitizer failed to allocate 0xdfff0001000 X-BeenThere: devel@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: ALT Linux Team development discussions List-Id: ALT Linux Team development discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Apr 2024 04:15:00 -0000 Archived-At: List-Archive: List-Post: На basalt у меня не работает санитайзер в hasher: $ cat test.c int main() {} $ cc test.c -O2 -fsanitize=address && ./a.out ==2140439==ERROR: AddressSanitizer failed to allocate 0xdfff0001000 (15392894357504) bytes at address 2008fff7000 (errno: 12) ==2140439==ReserveShadowMemoryRange failed while trying to map 0xdfff0001000 bytes. Perhaps you're using ulimit -v Aborted Какое-то время назад санитайзер работал. Не в hasher ошибки нет, но может потому, что машину давно не обновляли, за это время в санитайзер сломался в сизифе. "AddressSanitizer failed to allocate 0xdfff0001000" гуглится, но решений не нашел. Мне надо для проверки rpm-build (4.0.4.195-alt1). На e2k поймал такую ошибку при сборке MAKEDEV: free(): invalid pointer Program received signal SIGABRT, Aborted. 0x0000455555aa4308 in __pthread_kill_internal () from /lib64/libc.so.6 (gdb) bt 100 #0  0x0000455555aa4308 in __pthread_kill_internal () from /lib64/libc.so.6 #1  0x000045555593bc70 in raise () from /lib64/libc.so.6 #2  0x00004555559464c0 in abort () from /lib64/libc.so.6 #3  0x0000455555a5db78 in __libc_message () from /lib64/libc.so.6 #4  0x0000455555afe8f0 in malloc_printerr () from /lib64/libc.so.6 #5  0x0000455555af8e20 in _int_free () from /lib64/libc.so.6 #6  0x0000455555aea600 in free () from /lib64/libc.so.6 #7  0x000045555563a050 in freeHardLink () from /usr/lib64/librpm-4.0.4.so #8  0x0000455555643960 in fsmStage () from /usr/lib64/librpm-4.0.4.so #9  0x000045555563b180 in fsmSetup () from /usr/lib64/librpm-4.0.4.so #10 0x0000455555854e00 in cpio_doio () from /usr/lib64/librpmbuild-4.0.4.1.so #11 0x000045555585a458 in writeRPM () from /usr/lib64/librpmbuild-4.0.4.1.so #12 0x000045555585caf0 in packageBinaries ()    from /usr/lib64/librpmbuild-4.0.4.1.so #13 0x000045555581c440 in buildSpec () from /usr/lib64/librpmbuild-4.0.4.1.so #14 0x0000000000017910 in buildForTarget () #15 0x0000000000018440 in build () #16 0x000000000001b200 in main () Подозреваю что в rpm-build может быть выход за пределы буфера. Но на e2k санитайзер сломался на rpm-build, но как-то по другому. Поэтому решил проверить на x86_64.