CPU Issues and Speculative Execution
Posted: January 21, 2018 Filed under: CPU Issues, Security, Solaris | Tags: CPU Issues, F5, Fortinet, Nexenta, Oracle, Pure Storage, Qubes, Rockwell Automation, Scality, Security, Synology, Wonderware Leave a commenthttp://smooth1.co.uk/security/CPU_issues.html
added
- Debian,Fedora
- LLVM,ZFS,Lustre
- Oracle Sparc,RISC-V
- Oracle,Nexenta,Scality,Pure Storage,Wonderware,Rockwell Automation,Synology,F5,Qubes,Qubes,Fortinet,Netap
Updated Google cloud section to mention Retpoline a compile time fix for Variant 2 (part of Spectre) with “almost no performance loss.”
Huge Pages for Informix on SPARC Solaris
Posted: April 30, 2015 Filed under: Informix, Solaris | Tags: Informix, Solaris Leave a commentTo get hugh pages for Informix on Solaris
1. Set RESIDENT to a value other than 0, >0 means the first N shared memory segments will be pinned in memory.
https://informixdba.wordpress.com/2013/03/08/huge-pages/
2. Make sure IFX_LARGE_PAGES is not set to 0.
http://www-01.ibm.com/support/knowledgecenter/SSGU8G_12.1.0/com.ibm.sqlr.doc/ids_sqr_404.htm
3. To get pages >4MB in size the hardware must have support for 2GB pages, run pagesize -a to check what the hardware supports
https://blogs.oracle.com/mandalika/entry/enabling_2_gb_large_pages
4, Either use ppgsz or mpss.so.1
The three ways to change the default page size for an application are:
- Use the Oracle Solaris OS command ppgsz(1).
- Compile the application with the -xpagesize, -xpagesize_heap, and -xpagesize_stack options. See the compiler man pages for details.
- Use MPSS specific environment variables. See the mpss.so.1(1) man page for details.
http://docs.oracle.com/cd/E24457_01/html/E21996/aewda.html
ppgsz is documented at
https://docs.oracle.com/cd/E19683-01/816-0210/6m6nb7mht/index.html
mpss.so.1 is documented at
http://docs.oracle.com/cd/E19253-01/816-5165/6mbb0m9lf/index.html
5. Note
“Solaris has had large parges for many years. Initially, a large page on SPARC was 4MB. Then, much later, Solaris 9 added new APIs for Multiple Page Size Support. At that time, the maximum supported by hardware was 256MB. Today, the T4 processor supports page sizes up to 2GB.”
https://www.linkedin.com/groups/Solaris-Huge-pages-60651.S.78812448
6. UltraSPARC II/III/III+/IV/IV+ and UltraSPARC T1 (aka Niagara) only support large pages of 4MB
7. Check none of these to disable large pages are being used
https://blogs.oracle.com/mandalika/entry/solaris_disabling_out_of_the
set exec_lpg_disable = 1
This parameter prevents large pages from being used when the kernel is allocating memory for processes being executed. These constitute the memory needed for a processes’ text/data/bss.set use_brk_lpg = 0
This parameter prevents large pages from being used for heap. To enable large pages for heap, set the value of this parameter to 1 or remove this parameter from/etc/system
completely.Note:
brk()
is the kernel routine that is called whenever a user level application invokesmalloc()
.set use_stk_lpg = 0
This parameter disables the large pages for stack. Set it to 1 to retain the default functionality.set use_zmap_lpg = 0
This variable controls the size of anonymous (anon
) pages.set use_text_pgsz4m = 0
This tunable disables the default use of 4M text pages on UltraSPARC-III/III+/IV/IV+/T1 platforms.set use_text_pgsz64k = 0
This tunable disables the default use of 64K text pages on UltraSPARC-T1 (Niagara) platform.set use_initdata_pgsz64k = 0
This tunable disables the default use of 64K data pages on UltraSPARC-T1 (Niagara) platform.
8.The T4 processor was the first to add “Support for a much larger Memory Management Unit page size (2GB)”
Click to access o11-090-sparc-t4-arch-496245.pdf
https://blogs.oracle.com/mandalika/entry/enabling_2_gb_large_pages
“Prerequisites:
OS: Solaris 10 8/11 (Update 10) or later
Hardware: SPARC T4. eg., SPARC T4-1, T4-2 or T4-4”