Loading drivers/platform/msm/gsi/gsi.c +13 −3 Original line number Diff line number Diff line Loading @@ -3386,8 +3386,18 @@ int __gsi_get_gci_cookie(struct gsi_chan_ctx *ctx, uint16_t idx) } } /* TODO: Increase escape buffer size if we hit this */ GSIERR("user_data is full\n"); /* Go over original userdata when escape buffer is full (costly) */ GSIDBG("escape buffer is full\n"); for (i = 0; i < end; i++) { if (!ctx->user_data[i].valid) { ctx->user_data[i].valid = true; return i; } } /* Everything is full (possibly a stall) */ GSIERR("both userdata array and escape buffer is full\n"); BUG(); return 0xFFFF; } Loading Loading @@ -3424,7 +3434,7 @@ int __gsi_populate_gci_tre(struct gsi_chan_ctx *ctx, /* write the TRE to ring */ *tre_gci_ptr = gci_tre; ctx->user_data[idx].p = xfer->xfer_user_data; ctx->user_data[gci_tre.cookie].p = xfer->xfer_user_data; return 0; } Loading Loading
drivers/platform/msm/gsi/gsi.c +13 −3 Original line number Diff line number Diff line Loading @@ -3386,8 +3386,18 @@ int __gsi_get_gci_cookie(struct gsi_chan_ctx *ctx, uint16_t idx) } } /* TODO: Increase escape buffer size if we hit this */ GSIERR("user_data is full\n"); /* Go over original userdata when escape buffer is full (costly) */ GSIDBG("escape buffer is full\n"); for (i = 0; i < end; i++) { if (!ctx->user_data[i].valid) { ctx->user_data[i].valid = true; return i; } } /* Everything is full (possibly a stall) */ GSIERR("both userdata array and escape buffer is full\n"); BUG(); return 0xFFFF; } Loading Loading @@ -3424,7 +3434,7 @@ int __gsi_populate_gci_tre(struct gsi_chan_ctx *ctx, /* write the TRE to ring */ *tre_gci_ptr = gci_tre; ctx->user_data[idx].p = xfer->xfer_user_data; ctx->user_data[gci_tre.cookie].p = xfer->xfer_user_data; return 0; } Loading