soc: qcom: ipc_router_glink_xprt: Fix receive callback

G-Link driver notifies IPC Router about receive events in atomic context.
Allocate the memory from atomic pool to cache the information about rx
events for deferred processing.

CRs-Fixed: 948393
Change-Id: I09fb7ffd38b5a36b9ef99b6adb76c7e1f0168457
Signed-off-by: Karthikeyan Ramasubramanian <kramasub@codeaurora.org>
This commit is contained in:
Karthikeyan Ramasubramanian 2015-12-08 11:13:48 -07:00 committed by David Keitel
parent 4a26a83ecc
commit a203482481

View file

@ -432,7 +432,7 @@ static void glink_xprt_notify_rxv(void *handle, const void *priv,
(struct ipc_router_glink_xprt *)priv; (struct ipc_router_glink_xprt *)priv;
struct read_work *rx_work; struct read_work *rx_work;
rx_work = kmalloc(sizeof(struct read_work), GFP_KERNEL); rx_work = kmalloc(sizeof(*rx_work), GFP_ATOMIC);
if (!rx_work) { if (!rx_work) {
IPC_RTR_ERR("%s: couldn't allocate read_work\n", __func__); IPC_RTR_ERR("%s: couldn't allocate read_work\n", __func__);
glink_rx_done(glink_xprtp->ch_hndl, ptr, true); glink_rx_done(glink_xprtp->ch_hndl, ptr, true);