jerpelea opened a new pull request, #19285:
URL: https://github.com/apache/nuttx/pull/19285

   ## Summary
   
   The existing first-order LCG (seed = 470001 * seed % 999563) has several 
quality problems:
   - Output range limited to [1, 999562] (~20 bits) instead of full 32-bit
   - Lower bits have very short periods (8-bit period = 1, 16-bit = 105)
   - Overall period only ~1M, far too short for many applications
   - Causes mbedtls_rsa_gen_key to loop forever when rand() consumption aligns 
with the cycle length (issue #16760)
   
   Replace the entire order-based LCG implementation (CONFIG_LIBC_RAND_ORDER 
0-3) with Marsaglia's xorshift32:
   - Full 32-bit output range
   - Period 2^32 - 1 (~4.29 billion)
   - Fast: just three XOR/shift operations
   - No floating-point math needed
   - No CONFIG_LIBC_RAND_ORDER configuration required
   
   Remove the CONFIG_LIBC_RAND_ORDER Kconfig option and clean up all defconfig 
references (12 boards) and related comments.
   
   ## Impact
   
   RELEASE
   
   ## Testing
   
   CI


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to