From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Miller Subject: Re: [PATCH] net/usb: cancel pending work when unbinding smsc75xx Date: Thu, 04 Oct 2018 13:52:02 -0700 (PDT) Message-ID: <20181004.135202.1340830794025516563.davem@davemloft.net> References: <20180928230430.125003-1-yuzhao@google.com> Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: steve.glendinning@shawell.net, netdev@vger.kernel.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org To: yuzhao@google.com Return-path: In-Reply-To: <20180928230430.125003-1-yuzhao@google.com> Sender: linux-kernel-owner@vger.kernel.org List-Id: netdev.vger.kernel.org From: Yu Zhao Date: Fri, 28 Sep 2018 17:04:30 -0600 > Cancel pending work before freeing smsc75xx private data structure > during binding. This fixes the following crash in the driver: > > BUG: unable to handle kernel NULL pointer dereference at 0000000000000050 > IP: mutex_lock+0x2b/0x3f > > Workqueue: events smsc75xx_deferred_multicast_write [smsc75xx] > task: ffff8caa83e85700 task.stack: ffff948b80518000 > RIP: 0010:mutex_lock+0x2b/0x3f > > Call Trace: > smsc75xx_deferred_multicast_write+0x40/0x1af [smsc75xx] > process_one_work+0x18d/0x2fc > worker_thread+0x1a2/0x269 > ? pr_cont_work+0x58/0x58 > kthread+0xfa/0x10a > ? pr_cont_work+0x58/0x58 > ? rcu_read_unlock_sched_notrace+0x48/0x48 > ret_from_fork+0x22/0x40 > > Signed-off-by: Yu Zhao Applied and queued up for -stable.