2009/5/4 Alok Aggarwal <Alok.Aggarwal at sun.com>:
> I am sending this code review request on behalf
> of Moinak Ghosh (CC'd). Please review the changes
> for -
>
> 6802997 Clofi memory allocation behavior can be improved
>
> Webrev location -
>
> http://cr.opensolaris.org/~aalok/sponsor-6802997/
>
> Moinak's testing has showed that these changes result
> in a performance improvement during installation.

In lofi.c, lines 1123 .. 1133:

1123                 mutex_enter(&lsp->ls_comp_bufs_lock);
1124                 for (i = 0; i < lofi_taskq_nthreads; i++) {
1125                         if (lsp->ls_comp_bufs[i].inuse == 0) {
1126                                 lsp->ls_comp_bufs[i].inuse = 1;
1127                                 j = i;
1128                                 break;
1129                         }
1130                 }
1131
1132                 mutex_exit(&lsp->ls_comp_bufs_lock);
1133                 ASSERT(j < lofi_taskq_nthreads);

I think this needs to handle the case when all
buffers are in use.  With the current code we
exit from the loop with 'j' uninitialized, and could
panic a debug kernel with the
ASSERT(j < lofi_taskq_nthreads)

Reply via email to