On Tue, 12 Aug 2025 00:12:39 GMT, Valerie Peng <valer...@openjdk.org> wrote:
> The current `getNativeKeyInfo(...)` method impl inside SunPKCS11 provider's > p11_keymgmt.c queries key attributes and pack the resulting data into a blob > which is later passed to the `createNativeKey(...)` method to create a native > key handle. Some of these attributes have type CK_ULONG values and this may > lead to SIGBUS errors on Solaris sparc when these attrbute values aren't > 64-bit aligned. > > In order to ensure the proper alignment, one way to fix this is to re-order > the attributes in the template by their value types starting with those > requiring alignments. Also ordered attributes with the same value types > alphabetically. > > Thanks in advance for the review~ Thanks for working on this Valerie. The re-organizing of the attribute fields so that CK_ULONG atts are first makes sense and should help alleviate issues on architectures where reading such data on non 64-bit aligned addresses induces a performance hit (or SIGBUS, something I've seen on Solaris in JDK 11) ------------- Marked as reviewed by coffeys (Reviewer). PR Review: https://git.openjdk.org/jdk/pull/26735#pullrequestreview-3114770057