• Home
    • View
    • Login
    This page
    • Normal
    • Export PDF
    • Page Information

    Loading...
  1. Dashboard
  2. Undefined Space
  3. Lanai
  4. High Level Milestones

High Level Milestones

  • Created by Ajit Ghaisas, last modified on Mar 05, 2021

High Level Milestones

MilestonesJIRA IDOwnerTarget Completion Comments
Primitive rendering
Oracle/JetBrains


Implementation is done

Image rendering
JetBrains

Implementation is done (except for Bicubic interpolation - for which SW rendering fallback exists)

Text rendering
Oracle


Implementation is done

1st early access (EA-1)
Oracle/JetBrains

15 May 2020

Released
Stabilization and bug fixing
Oracle/JetBrains

IDE performance Testing
Oracle/JetBrains


Done
Execute JTREG tests and match current passrate
Oracle

Done
Pass all JCK tests
Oracle


Done
Functional complete with performance
Oracle/JetBrains


Done
2D Alias Review Start
Oracle/JetBrains


Lanai does not require reviews before pushing.
Once we are functional complete, we should start reviews of the code to make sure it conforms to style/quality/etc expectations, as well as reviewing the code for correctness, robustness etc.


JEP code review is in progress at - https://github.com/openjdk/jdk/pull/2403

Task List

All active issues (including tasks, subtasks and bugs) in Lanai project can be accessed with JBS filter  : https://bugs.openjdk.java.net/issues/?filter=37832


Early Access Release History


Early Access ReleaseDateContents
EA-1

15 May 2020

First EA release
EA-219 Jun 2020

Fixes on top of EA-1

  • 8247464: Memory Leak in MTLBlitLoops_CopyArea() method
  • 8247304: Use separate MTLCommandQueue for final blit and MTLDrawable
  • 8246495: Lanai: update AA clip info on GPU via compute shader
  • 8246454: Lanai: Create RenderPerf tests for rectangular and shape clips
  • 8242952: fixed MTLBlitLoops::replaceTextureRegion (add correct offset
  • 8242354: support for bufImgOps (RescaleOp, LookupOp, ConvolveOp)
  • 8246331: Lanai: do not update AA clip info in nonAA mode
  • 8246239: Revert JDK-8244193 as it causes performance regression
EA-310 Jul 2020

Fixes on top of EA-2

  • 8242950: Files which can't be selected has different color with metal than opengl in JFileChooser

  • 8247772: Lanai: Several jtreg tests fails with assertion validateTextureDimensions: 759: failed assertion
    'MTLTextureDescriptor has width greater than maximum allowed size of 16384'

  • 8248301: Lanai - Change MTLStorageMode of MTLSurfaceData texture (render backbuffer) to private

EA-408 Aug 2020

Fixes on top of EA-3

  • 8233226: Implement XOR Mode rendering option
  • 8247564: Lanai - SwingSet2 - Motif LF - UI controls border is incorrectly drawn with uiScale=1.0
  • 8244402: Lanai - Motif L&F - Non selected Radio button is barely rendered on non-retina display
  • 8248831: Lanai : SwingSet2Demo Input dialog is not proper for MetalLookAndFeel with default non-retina display
  • 8240221: XOR mode rendering option does not work with Texture paint and Gradient Paint
  • 8247556: Lanai : J2DDemo - ImageOps demo - Few options are not working...
  • 8247831: Clamp texture height to maxTextureSize(16384)
  • 8249174: Fix improper glyph cache initialization logic for text rende...
  • 8243953: Optimize encoder creation/deletion logic for LCD text rendering
EA-518 Sep 2020

Fixes on top of EA-4

  • 8252845: Regressions in Sanity tests after JDK-8251032
  • 8252798: Cleanup LCD text rendering code
  • 8252386: Lanai: Implement RadialGradientPaint in shader
  • 8252706: Enable usage of rowBytesOffset for LCD non cache rendering
  • 8251032: Colors with texture background look different with Alpha Com...
  • 8252385: Lanai: Implement LinearGradient paint in shader
  • 8243547: Lanai - Netbeans IDE has BLACK background for the Toolbar and Statusbar
  • 8240164: Test java/awt/Window/TranslucentShapedFrameTest/TranslucentShapedFrameTest.java fails for metal
  • 8240074: Test java/awt/Window/TranslucentJAppletTest/TranslucentJAppletTest.java fails for metal
  • 8251027: DrawString with TexturePaint is corrupted
  • 8242920: Gradient Paint doesn't work with metal
  • 8252371: LCD text rendered with Metal pipeline is corrupted
  • 8252217: Crash in metal pipeline which running J2DBench test
  • 8252057: Crash in metal pipeline when dragging any Swing app to other...
  • 8251484: Performace drop in FlatBoxAA renderperf test for metal pipeline
  • 8251242: Tile based rendering results in artifacts in last column while using metal pipeline
  • 8249659: [Lanai] Crash while running RenderPerfTest with metal pipeli...
  • 8251167: Drawing polyline twice in XOR mode leaves out some traces on screen (only with uiScale=1.0)
EA-608-Oct-2020

Fixes on top of EA-5

  • 8253931: Lanai: MTLTexturePool refactoring
  • 8253840: Lanai - MTLClip.beginShapeClip method uses a larger temporary buffer than needed
  • 8252790: Lanai: Refactor RenderPerfTest to run single test by name
  • 8253657: Lanai: Refactor MTLTexturePool - getTexture
  • 8251475: sun/java2d/pipe/hw/RSLAPITest/RSLAPITest.java fails with metal pipeline
  • 8246194: Performance of Mix.Balls decreases when Rendering Quality option is Selected
  • 8252796: Lanai: Shape clip test artifacts on MacBook Air 2020
  • 8252499: UI text of application with metal pipeline is lost when another application is launched with OpenGL pipeline
  • 8253301: Lanai: Memory leak in MTLContext code
  • 8253260: Fix whitespace errors in .m and .metal files in lanai repo
  • 8252795: Lanai: Refactor native implementation of MTLPaint
  • 8251023: Clipping of Image doesnt work when Alpha composite is enabled in J2DDemo
  • 8252880: Image operations are not working with metal
  • 8252895: Black background in SwingSet2 in Nimbus LAF
  • 8252949: Shape clip should use identity transform for drawing clip spans
EA-718-Nov-2020

Fixes on top of EA-6

  • 8256331: Lanai: DrawImage/IncorrectAlphaSurface2SW fails
  • 8252954: Lanai : java/awt/datatransfer/DataFlavor/DataFlavorRemoteTest.java fails
  • 8252951: Lanai : java/awt/Robot/NonEmptyErrorStream.java fails
  • 8251033: Background texture is not visible when Alpha Composite is enabled
  • 8238533: [Lanai] Support texture paint where source is transparent
  • 8248129: Swingmark numbers are not good for Nimbus LAF
  • 8255212: J2DDemo : Rectangle in Texture paint disappears if we enable AA
  • 8255149: Lanai: DrawImage/IncorrectAlphaConversionBicubic.java failure
  • 8244718: J2DDemo - AlphaComposite tab - output colors are different with AA & non-AA
  • 8254881: Commit commandbuffer after draw happens through JNI
  • 8254879: Implement JNI path for Draw Poly
  • 8254869: Refactor check_previous_op usage in Mask Fill
  • 8244845: Lanai : J2DDemo - Clipping - Two parallel lines do not appear with AA Rendering
  • 8242924: Selection is not correct in Paint.TextureAnim
  • 8253994: J2DDemo: Buttcap, SquareCap color is different in AlphaComposite mode
  • 8252726: Lanai: IDEA Editor Rendering OGL vs Metal 1:2
  • 8254176: Lanai: MTLTexturePool optimize lookup of expired textures
EA-817-Dec-2020

Fixes on top of EA-7

  • 8257886: Build issue in macOS 10.14
  • 8256683: Lanai: NetBeans IDE - AA Text rendering appears brighter compared to OpenGL
  • 8242925: J2DDemo - Anti-Aliasing with Metal differs from OGL
  • 8257618: Lanai: GradientPaint interpolates over stops limits
  • 8257566: Lanai: System runs out of application memory while running the Unmanaged_BufferredImage_draw_NearestNeighbor test multiple times
  • 8257441: Lanai: java/awt/image/VolatileImage/DrawHugeImageTest fails
  • 8257442: Lanai: Create RenderPerf tests for SW to HW blits
  • 8257413: Lanai - Use optimum sized temporary buffer while replacing texture region
  • 8238285: Lanai: java/awt/image/DrawImage tests fail
  • 8256576: DrawImage/BlitRotateClippedArea fails
EA-926-Jan-2021

Fixes on top of EA-8

  • 8258658: Print log that metal pipeline is enabled when -Dsun.java2d.metal=True is set
  • 8260000: Remove JNF_COCOA_ENTER/EXIT usage from MTLGraphicsConfig.m
  • 8258754: Gracefully fallback to the OpenGL rendering pipeline if Metal rendering pipeline initialization fails
  • 8259853: Lanai: nonAA Gradient painting is not precise for VI
  • 8259939: Remove JNF_COCOA_ENTER/EXIT usage from Lanai project
  • 8258202: Lanai: Buffered image loses its shape after clicking on Alpha Composite option
  • 8258202: Lanai: Buffered image loses its shape after clicking on Alpha Composite option
  • 8252950: Lanai : sun/java2d/DirectX/OpaqueImageToSurfaceBlitTest/OpaqueImageToSurfaceBlitTest.java fails
  • 8259653: Multistop gradients incorrectly works with non uniform stops
  • 8245256: Cleanup OpenGL references in Metal documentation
  • 8259341:Remove useage of JNFCallVoidMethod from Metal.
  • 8259038: Stop CVDisplayLink when there is no active rendering
  • 8247332: Checkbox reaches inconsistent state on tap to click
  • 8251477: java/awt/Frame/MiscUndecorated/RepaintTest.java fails with metal pipeline
  • 8247739: Lanai : SwingSet2Demo -More than one radio button can be selected the same time
  • 8252501: Sometimes more than one menu items are shown as highlighted on hover
  • 8242187: Lanai - JCheckBox and JRadioButton can get into inconsitent visual state – but recover on window refresh
  • 8252907: Motif L&F - SwingSet2 - Two Toolbar buttons are shown as selected
  • 8258482: Lanai: reduce data for shape clip using bounding box
  • 8258257: Lanai: optimize stencil texture clear code
EA-1003-Mar-2021

Fixes on top of EA-9

  • 8262750: Crash in J2DDemo after multiple plug/unplug of monitor
  • 8262729: Cleanup OpenGL references from Metal implementation
  • 8262496: Lanai: Do not use resources of off-line MTLDevice
  • 8262313: Override stencilAttachmentPixelFormat to maintain appropriate state
  • 8262293: Remove redundant end of encoder for AAShader rendering
  • 8261891: sanity/client/SwingSet/src/EditorPaneDemoTest.java fails with Metal API Validation
  • 8262115: Crash on graphics card switch when Metal API validation enabled
  • 8262091: Add RenderPerfTest for XOR mode rendering
  • 8261646: Crash in MTLBlitLoops when Metal API Validation enabled
  • 8261960: replaceTextureRegion throws error when Metal API validation is enabled
  • 8260715: Lanai: MTLGraphicsConfig.m _getMTLConfigInfo optimization
  • 8261703: Many java/awt/ tests fail with Metal API Validation Stencil PixelFormat error
  • 8261908: DrawScanline vertex calculation is not proper
  • 8261734: Some jtreg tests are failing with invalid setRectClip
  • 8261789: Add bounds check to MTLBlitLoops CopyArea method
  • 8261705: Swing jtreg tests fail Metal API Validation with missing buffer binding
  • 8261706: Swing test fails Metal API Validation with setVertexBytes error
  • 8261712: Lanai: Crash in MTLClip when Metal API Validation enabled
  • 8261704: Many java/awt/ tests fail with Metal API Validation synchronizeTexture error
  • 8261638: Lanai: crash in Clipping tab of J2Demo
  • 8261632: Cached text AA rendering crashes with Metal API validation
  • 8261620: Running metal with API validation crashes immediately
  • 8261547: Minor memory leak reported for Metal Rendering pipeline
  • 8261143: Code in MTLGraphicsConfig.m can use ThreadUtilities performOnMainThreadWaiting:YES block:^()
  • 8261546: Cleanup deadcode in MTLBlitLoops
  • 8261402: Verify whether we need ContextCaps in metal
  • 8261273: RenderPerf test files should have GPL license without Classpath exception
  • 8261430: Remove redundant #ifndef HEADLESS checks from metal native code
  • 8261399: Cleanup code based on code review comments
  • 8261304: Clean up anomalies identified in code review comments
  • 8261234: Lanai build fails due to leftover import of JavaNativeFoundation.h
  • 8261134: Remove additional blank lines at EOF
  • 8260857: Remove JNFWeakJObjectWrapper from Lanai Project
  • 8260711: Lanai: Refactor MTLContext, MTLGraphicsConfig, MTLSurfaceData
  • 8260706: Minor cleanup - CGLGraphicsConfig.java and MTLBlitLoops.m
  • 8260681: Lanai: Refactor MTLBlitLoops.m, common.h, shaders.metal
  • 8260672: Lanai: refactor MTLBlitLoops, MTLLayer, MTLSurfaceData
  • 8260651: Build fails after fix for JDK-8260640
  • 8254868: Remove additional logging added under JDK-8229819
  • 8260640: Cleanup dead code and comments imported from OpenGL
  • 8260553: Lanai: pipeline substates use while loop for resize
  • 8260582: Clean up MacOSFlags implementation
  • 8260578: Replace wildcard imports with specific ones
  • 8260554: Missing copyright headers on some Lanai files
  • 8260247: Move RenderPerfTest from demo to test directory
  • 8252952: Lanai: VolatileImage/BitmaskVolatileImage test fails
Overview
Content Tools
ThemeBuilder
  • No labels

Terms of Use
• License: GPLv2
• Privacy • Trademarks • Contact Us

Powered by a free Atlassian Confluence Open Source Project License granted to https://www.atlassian.com/software/views/opensource-community-additional-license-offer. Evaluate Confluence today.

  • Kolekti ThemeBuilder Powered by Atlassian Confluence 8.5.21
  • Kolekti ThemeBuilder printed.by.atlassian.confluence
  • Report a bug
  • Atlassian News
Atlassian
Kolekti ThemeBuilder EngineAtlassian Confluence
{"serverDuration": 183, "requestCorrelationId": "37f8dc356a366bef"}