From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 7868) id E31EC3858D3C; Wed, 16 Feb 2022 11:00:03 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org E31EC3858D3C Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Takashi Yano To: cygwin-cvs@sourceware.org Subject: [newlib-cygwin] Cygwin: wincap: Add capabilities for Windows 11. X-Act-Checkin: newlib-cygwin X-Git-Author: Takashi Yano X-Git-Refname: refs/heads/master X-Git-Oldrev: 97b8a93b3cc03329e79c395623a57c288736b02c X-Git-Newrev: 9f1930bf34123e95b7fbbb1ff05be0caf2ca9881 Message-Id: <20220216110003.E31EC3858D3C@sourceware.org> Date: Wed, 16 Feb 2022 11:00:03 +0000 (GMT) X-BeenThere: cygwin-cvs@cygwin.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Cygwin core component git logs List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Feb 2022 11:00:04 -0000 https://sourceware.org/git/gitweb.cgi?p=3Dnewlib-cygwin.git;h=3D9f1930bf341= 23e95b7fbbb1ff05be0caf2ca9881 commit 9f1930bf34123e95b7fbbb1ff05be0caf2ca9881 Author: Takashi Yano Date: Wed Feb 16 18:13:02 2022 +0900 Cygwin: wincap: Add capabilities for Windows 11. =20 - The capability changes since Windows 11 have been reflected in wincap.cc. The capability has_con_broken_tabs is added, which is false since Windows 11. Diff: --- winsup/cygwin/wincap.cc | 47 +++++++++++++++++++++++++++++++++++++++++++++= +- winsup/cygwin/wincap.h | 2 ++ 2 files changed, 48 insertions(+), 1 deletion(-) diff --git a/winsup/cygwin/wincap.cc b/winsup/cygwin/wincap.cc index b8376b8ed..ffc32140b 100644 --- a/winsup/cygwin/wincap.cc +++ b/winsup/cygwin/wincap.cc @@ -46,6 +46,7 @@ wincaps wincap_7 __attribute__((section (".cygwin_dll_com= mon"), shared)) =3D { has_linux_tcp_keepalive_sockopts:false, has_tcp_maxrtms:false, has_query_process_handle_info:false, + has_con_broken_tabs:false, }, }; =20 @@ -77,6 +78,7 @@ wincaps wincap_8 __attribute__((section (".cygwin_dll_com= mon"), shared)) =3D { has_linux_tcp_keepalive_sockopts:false, has_tcp_maxrtms:false, has_query_process_handle_info:true, + has_con_broken_tabs:false, }, }; =20 @@ -108,6 +110,7 @@ wincaps wincap_8_1 __attribute__((section (".cygwin_dll= _common"), shared)) =3D { has_linux_tcp_keepalive_sockopts:false, has_tcp_maxrtms:false, has_query_process_handle_info:true, + has_con_broken_tabs:false, }, }; =20 @@ -139,6 +142,7 @@ wincaps wincap_10_1507 __attribute__((section (".cygwi= n_dll_common"), shared)) has_linux_tcp_keepalive_sockopts:false, has_tcp_maxrtms:false, has_query_process_handle_info:true, + has_con_broken_tabs:false, }, }; =20 @@ -170,6 +174,7 @@ wincaps wincap_10_1607 __attribute__((section (".cygwi= n_dll_common"), shared)) has_linux_tcp_keepalive_sockopts:false, has_tcp_maxrtms:true, has_query_process_handle_info:true, + has_con_broken_tabs:false, }, }; =20 @@ -201,6 +206,7 @@ wincaps wincap_10_1703 __attribute__((section (".cygwin= _dll_common"), shared)) =3D has_linux_tcp_keepalive_sockopts:false, has_tcp_maxrtms:true, has_query_process_handle_info:true, + has_con_broken_tabs:true, }, }; =20 @@ -232,6 +238,7 @@ wincaps wincap_10_1709 __attribute__((section (".cygwin= _dll_common"), shared)) =3D has_linux_tcp_keepalive_sockopts:true, has_tcp_maxrtms:true, has_query_process_handle_info:true, + has_con_broken_tabs:true, }, }; =20 @@ -263,6 +270,7 @@ wincaps wincap_10_1803 __attribute__((section (".cygwin= _dll_common"), shared)) =3D has_linux_tcp_keepalive_sockopts:true, has_tcp_maxrtms:true, has_query_process_handle_info:true, + has_con_broken_tabs:true, }, }; =20 @@ -294,6 +302,7 @@ wincaps wincap_10_1809 __attribute__((section (".cygwin= _dll_common"), shared)) =3D has_linux_tcp_keepalive_sockopts:true, has_tcp_maxrtms:true, has_query_process_handle_info:true, + has_con_broken_tabs:true, }, }; =20 @@ -325,6 +334,7 @@ wincaps wincap_10_1903 __attribute__((section (".cygwin= _dll_common"), shared)) =3D has_linux_tcp_keepalive_sockopts:true, has_tcp_maxrtms:true, has_query_process_handle_info:true, + has_con_broken_tabs:true, }, }; =20 @@ -356,6 +366,39 @@ wincaps wincap_10_2004 __attribute__((section (".cygwi= n_dll_common"), shared)) =3D has_linux_tcp_keepalive_sockopts:true, has_tcp_maxrtms:true, has_query_process_handle_info:true, + has_con_broken_tabs:true, + }, +}; + +wincaps wincap_11 __attribute__((section (".cygwin_dll_common"), shared)) = =3D { + def_guard_pages:2, + mmap_storage_high:0x700000000000LL, + { + is_server:false, + needs_query_information:false, + has_gaa_largeaddress_bug:false, + has_precise_system_time:true, + has_microsoft_accounts:true, + has_broken_prefetchvm:false, + has_new_pebteb_region:true, + has_broken_whoami:false, + has_unprivileged_createsymlink:true, + has_precise_interrupt_time:true, + has_posix_unlink_semantics:true, + has_posix_unlink_semantics_with_ignore_readonly:true, + has_case_sensitive_dirs:true, + has_posix_rename_semantics:true, + no_msv1_0_s4u_logon_in_wow64:false, + has_con_24bit_colors:true, + has_con_broken_csi3j:false, + has_con_broken_il_dl:false, + has_con_esc_rep:true, + has_extended_mem_api:true, + has_tcp_fastopen:true, + has_linux_tcp_keepalive_sockopts:true, + has_tcp_maxrtms:true, + has_query_process_handle_info:true, + has_con_broken_tabs:false, }, }; =20 @@ -396,7 +439,9 @@ wincapc::init () break; case 10: default: - if (likely (version.dwBuildNumber >=3D 19041)) + if (likely (version.dwBuildNumber >=3D 22000)) + caps =3D &wincap_11; + else if (version.dwBuildNumber >=3D 19041) caps =3D &wincap_10_2004; else if (version.dwBuildNumber >=3D 18362) caps =3D &wincap_10_1903; diff --git a/winsup/cygwin/wincap.h b/winsup/cygwin/wincap.h index ba9a3b59d..1602ed6e1 100644 --- a/winsup/cygwin/wincap.h +++ b/winsup/cygwin/wincap.h @@ -40,6 +40,7 @@ struct wincaps unsigned has_linux_tcp_keepalive_sockopts : 1; unsigned has_tcp_maxrtms : 1; unsigned has_query_process_handle_info : 1; + unsigned has_con_broken_tabs : 1; }; }; =20 @@ -103,6 +104,7 @@ public: bool IMPLEMENT (has_linux_tcp_keepalive_sockopts) bool IMPLEMENT (has_tcp_maxrtms) bool IMPLEMENT (has_query_process_handle_info) + bool IMPLEMENT (has_con_broken_tabs) =20 void disable_case_sensitive_dirs () {