If the high watermark is exceeded, then msm_smux_write() will return -EAGAIN and then rmnet_xmit() will return NETDEV_TX_BUSY to have the TCP/IP stack reschedule the packet. In the case where the high watermark is hit, but not exceeded, then the function improperly returns NETDEV_TX_BUSY resulting in the packet being sent a second time. Since the packets are deleted in the write-done notification, the second transmit will result in either an access-after-delete or a double-delete crash. Remove check for high-water mark hit in the transmit function since it is handled by a high-watermark event from SMUX already. CRs-Fixed: 403691 Change-Id: Iadf3ac249d3fb8ccb378fc243415acbbfc3a1ff1 Signed-off-by: Eric Holmberg <eholmber@codeaurora.org>