8.11. 컴파일러 및 개발 도구


pthread_atfork 를 호출할 때 더 이상 애플리케이션이 교착 상태가 되지 않거나 fork 처리기 콜백에서 dclose

이전에는 glibc 에서 내부 잠금을 취득하는 동안 pthread_atfork 처리기 콜백을 호출했습니다. 결과적으로 포크 처리기를 등록하거나 포크 처리기에서 dclose 를 호출하면 애플리케이션이 교착될 수 있었습니다.

포크 처리기가 실행되는 동안 내부 데이터 구조를 보호하는 데 다른 동기화 메커니즘이 사용됩니다. 결과적으로 pthread_atfork 를 호출할 때 애플리케이션이 더 이상 교착되지 않거나 포크 처리기 콜백에서 dclose 되지 않습니다.

(BZ#1888660)

Makefile의 와일드카드 함수는 디렉토리만 예상되는 경우 더 이상 심볼릭 링크를 반환하지 않습니다.

이전에는 glob() 에서 사용하는 GLOB_ONLYDIR 힌트가 특정 XFS 파일 시스템의 디렉터리로 심볼릭 링크를 잘못 보고했습니다. glob() 를 사용할 때 make 는 힌트가 실제로 디렉터리가 있는지 확인하지 않았으며 이로 인해 Makefiles의 와일드카드 함수가 디렉토리만 예상되는 경우 심볼릭 링크를 반환했습니다.

버그가 수정되었으며 Makefile의 와일드카드 함수는 디렉터리만 예상되는 경우 심볼릭 링크를 반환하지 않습니다.

(BZ#1982608)

popen() 이 더 이상 다중 스레드 프로세스가 충돌하지 않음

이전에는 popen() 의 결함으로 인해 다중 스레드 프로세스의 인터페이스를 사용할 때 애플리케이션이 충돌했습니다. 이번 업데이트에서는 popen() 을 사용할 때 버그가 수정되었으며 다중 스레드 프로세스가 더 이상 충돌하지 않습니다.

(BZ#2065588)

일부 IBM 문자 세트의 0xBC 코드 포인트 매핑이 이제 U+00AF MACRON

이전에는 IBM256,IBM277,IBM278,IBM280,IBM284,IBM297, IBM424 문자를 Unicode 문자 U+203E OVERLINE 으로 인코딩했습니다. 그 결과 glibc 에서 제공하는 iconv 프로그램을 사용할 때 0xBC 코드 포인트를 포함하는 해당 문자 세트에서 텍스트를 변환하지 못했습니다. ISO-8859-1 과 같은 비ECDHE 문자 세트에 대해 실패한 이유는 U+203E OVERLINE 문자를 인코딩할 수 없기 때문입니다.

이번 업데이트에서는 버그가 수정되었습니다. 결과적으로 IBM277,IBM278,IBM280,IBM284, IBM297 문자 세트의 입력을 모든 경우에 ISO-8859-1 로 변환할 수 있습니다. IBM256IBM424 문자 세트의 경우 입력 텍스트에 0xBC 코드 포인트가 포함되어 있고 각 출력은 U+00AF MACRON 인 경우 변환이 더 이상 실패하지 않습니다.

(BZ#1961109)

이제 tempnam 함수에서 getrandom 을 사용하여 생성된 파일 이름의 무작위성을 높입니다.

이전에는 Red Hat Enterprise Linux 8.4 이상의 tempnam 함수에서 경로 선택을 위해 시간 파생 임의성을 사용했습니다. 그 결과 tempnam 함수가 빠른 연속으로 반복적으로 호출될 때 가능한 전체 파일 이름 세트를 생성하지 못했습니다. 이 버그는 생성된 파일 이름의 무작위성을 높이기 위해 getrandom 함수를 사용하는 새로운 구현에 의해 수정되었습니다. 그 결과 tempnam 함수가 이제 더 고유한 파일 이름을 생성합니다.

(BZ#2089247)

POWER9-optimized strncpy 함수가 더 이상 잘못된 결과를 제공하지 않음

이전에는 POWER9 strncpy 함수가 패딩을 위한 NUL 바이트의 소스로 올바른 레지스터를 사용하지 않았습니다. 그 결과 출력 버퍼에 NUL 패딩 대신 초기화되지 않은 레지스터 콘텐츠가 포함되었습니다. 이번 업데이트를 통해 strncpy 함수가 수정되었으며 출력 버퍼의 끝은 이제 NUL 바이트로 올바르게 채워집니다.

(BZ#2091553)

이제 en_US@ampm 로케일이 locale -a에 의해 올바르게 나열됩니다.

이전에는 locale -a 명령의 출력에 en_US@ampm 목록에 결함이 있었습니다. 결과적으로 setlocale API는 locale -a 에서 인쇄한 name/alias를 사용하여 이 로케일을 설정하려고 할 때 실패했습니다. 이번 업데이트를 통해 이제 en_US@ampm 이 올바르게 나열되고 locale -a 로 인쇄된 모든 로케일에 대해 setlocale 성공 호출이 있습니다.

(BZ#2104907)

이벤트의 단위 마스크가 모두 papi_xml_event_info 출력에 포함됩니다.

이전에는 papi_xml_event_info 의 이벤트 단위 마스크 정보 테스트가 불완전했습니다. 경우에 따라 이벤트의 단위 마스크가 papi_xml_event_info 출력에 포함되지 않았습니다. 이 버그가 수정되어 결과적으로 papi_xml_event_command 가 이벤트의 모든 단위 마스크를 출력합니다.

(BZ#2037426)

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.