From: David S. Miller Date: Mon, 2 Sep 2019 18:20:17 +0000 (-0700) Subject: Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net X-Git-Tag: v5.15~5506^2~95 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=765b7590c92d849806e9a27ab3a5a17cfc6a47a9;p=platform%2Fkernel%2Flinux-starfive.git Merge git://git./linux/kernel/git/netdev/net r8152 conflicts are the NAPI fixes in 'net' overlapping with some tasklet stuff in net-next Signed-off-by: David S. Miller --- 765b7590c92d849806e9a27ab3a5a17cfc6a47a9 diff --cc drivers/net/usb/r8152.c index c6fa0c1,04137ac..778d27d --- a/drivers/net/usb/r8152.c +++ b/drivers/net/usb/r8152.c @@@ -4214,9 -4021,7 +4214,8 @@@ static int rtl8152_close(struct net_dev #ifdef CONFIG_PM_SLEEP unregister_pm_notifier(&tp->pm_notifier); #endif + tasklet_disable(&tp->tx_tl); - if (!test_bit(RTL8152_UNPLUG, &tp->flags)) - napi_disable(&tp->napi); + napi_disable(&tp->napi); clear_bit(WORK_ENABLE, &tp->flags); usb_kill_urb(tp->intr_urb); cancel_delayed_work_sync(&tp->schedule); @@@ -5604,8 -5352,6 +5603,7 @@@ static int rtl8152_probe(struct usb_int return 0; out1: - netif_napi_del(&tp->napi); + tasklet_kill(&tp->tx_tl); usb_set_intfdata(intf, NULL); out: free_netdev(netdev); @@@ -5620,9 -5366,7 +5618,8 @@@ static void rtl8152_disconnect(struct u if (tp) { rtl_set_unplug(tp); - netif_napi_del(&tp->napi); unregister_netdev(tp->netdev); + tasklet_kill(&tp->tx_tl); cancel_delayed_work_sync(&tp->hw_phy_work); tp->rtl_ops.unload(tp); free_netdev(tp->netdev); diff --cc net/rxrpc/call_object.c index 60cbc81,014548c..32d8dc6 --- a/net/rxrpc/call_object.c +++ b/net/rxrpc/call_object.c @@@ -476,18 -488,10 +488,12 @@@ void rxrpc_release_call(struct rxrpc_so _debug("RELEASE CALL %p (%d CONN %p)", call, call->debug_id, conn); - if (conn) + if (conn) { rxrpc_disconnect_call(call); + conn->security->free_call_crypto(call); + } - for (i = 0; i < RXRPC_RXTX_BUFF_SIZE; i++) { - rxrpc_free_skb(call->rxtx_buffer[i], - (call->tx_phase ? rxrpc_skb_tx_cleaned : - rxrpc_skb_rx_cleaned)); - call->rxtx_buffer[i] = NULL; - } - + rxrpc_cleanup_ring(call); _leave(""); }