Actually, we fully control the RX buffer, so DMA shouldn't be a concern.
Fixes: 40ac32acdae89383ae44f32e612bf37fa0493631
int txleft; /* Bytes left to TX */
/* TTY RX helpers */
- unsigned char *rxbuf;
+ unsigned char rxbuf[ELM327_SIZE_RXBUF];
int rxfill;
/* State machine */
return -ENFILE;
elm = netdev_priv(dev);
- elm->rxbuf = kmalloc(ELM327_SIZE_RXBUF, GFP_KERNEL);
elm->txbuf = kmalloc(ELM327_SIZE_TXBUF, GFP_KERNEL);
- if (!elm->rxbuf || !elm->txbuf) {
+ if (!elm->txbuf) {
err = -ENOMEM;
goto out_err;
}
out_err:
if (elm->txbuf)
kfree(elm->txbuf);
- if (elm->rxbuf)
- kfree(elm->rxbuf);
free_candev(elm->dev);
return err;
}
netdev_info(elm->dev, "elmcan off %s.\n", tty->name);
kfree(elm->txbuf);
- kfree(elm->rxbuf);
free_candev(elm->dev);
}