iap: Increase the IAP thread's stack size from 6K to 8K.

rockbox-gerrit-noreply--- via rockbox-cvs <[email protected]> Sun, 2 Aug 2026 08:53:08 -0400
Newsgroups gmane.comp.systems.archos.rockbox.cvs
Message-ID <[email protected]>
commit 104f57252bcfab71de2792b918c56747f0f686d1
Author: Solomon Peachy <[email protected]>
Date:   Sun Aug 2 08:17:09 2026 -0400

    iap:  Increase the IAP thread's stack size from 6K to 8K.
    
    iAP accessories that query the track information via mode3/mode4 result
    in a call to get_metatada(). This routinely overlows the current 6KB
    thread stack into the iAP RX buffer, possibly corrupting the current iAP
    packet being received/processed.  Bumping this to 8K should yield over
    1K of headroom.
    
    (The tagcache scanning thread uses a 16KB stack in comparison)
    
    Inspired by commit 99b21cd6c on the rockpod fork. (Nux Li)
    
    Change-Id: Ibe997f3ae9dab2dcc2d9947f0b49d206a5b006b6

diff --git a/apps/iap/iap-core.c b/apps/iap/iap-core.c
index 0b4ad13477..6627259e36 100644
--- a/apps/iap/iap-core.c
+++ b/apps/iap/iap-core.c
@@ -96,7 +96,7 @@ int iap_repeatbtn = 0;
 unsigned int iap_timeoutbtn = 0;
 bool iap_btnrepeat = false, iap_btnshuffle = false;
 
-static long thread_stack[(DEFAULT_STACK_SIZE*6)/sizeof(long)];
+static long thread_stack[(DEFAULT_STACK_SIZE*8)/sizeof(long)];
 static struct event_queue iap_queue;
 
 /* These are pointer used to manage a dynamically allocated buffer which
-- 
rockbox-cvs mailing list
[email protected]
https://lists.haxx.se/mailman/listinfo/rockbox-cvs