On 2024/10/18 12:30, Chunhai Guo wrote:
@@ -789,7 +798,16 @@ static int z_erofs_pcluster_begin(struct 
z_erofs_decompress_frontend *fe)
        DBG_BUGON(fe->owned_head == Z_EROFS_PCLUSTER_NIL);
if (!(map->m_flags & EROFS_MAP_META)) {
-               grp = erofs_find_workgroup(sb, blknr);
+               while (1) {
+                       rcu_read_lock();
+                       grp = xa_load(&EROFS_SB(sb)->managed_pslots, blknr);
+                       if (erofs_workgroup_get(grp)) {
I guess here should be modified as below, please refer to
erofs_find_workgroup().

Yeah, nice catch!  Will fix it in the next version.

Thanks,
Gao Xiang

Reply via email to