Received: by 2002:a05:6a10:f347:0:0:0:0 with SMTP id d7csp4868265pxu; Thu, 10 Dec 2020 07:23:10 -0800 (PST) X-Google-Smtp-Source: ABdhPJwIP8u28vIFuQ1pcM0vekrQOviKoTDhD1iSu06lMPVPtL+yZAdb8vk2VJPTNU1lalb9xVav X-Received: by 2002:a50:c3c5:: with SMTP id i5mr7320294edf.166.1607613790155; Thu, 10 Dec 2020 07:23:10 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1607613790; cv=none; d=google.com; s=arc-20160816; b=oSR3i1RFPy2frju1Ru1tAD30fGM5M5zrSF8LvoVp67ZV1Ne77QSmdOO8+zrH+OyCYD l44MkNVRmXK0JBcDgUGe4tDi7rj8Rv2zyOe0/q0ZV1c+q26n/YKpBXAuL5/Ffy6FV+I+ a9m4biZKIAae5edffGvXuKYfIWHNlrv9/vh0MXtBUFM7Gzit7EpoR2STqczYfMqHebjA +msixmcXuhX9yd/bV/ycnuuSBaq8FG5XoAm9I4xRYd995vG5rhCvROTl7NEczIdFTMzo 0Xk7w2DLhHKZLUldPA427vO2abSerkZBYRNpscfE9KZb38J010S7nTktNU48EWaQYwZ2 A+dA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:dkim-signature:date; bh=guX8oApXYCcmB2tp40KUiHDYOXBRWp13MXN9brPkj5Q=; b=nmqJTOQjx75WP+nAUR7j1ycguSkQjrRx5CbFn7J9Vo0LZWaQz3sjrY6pYXha0rgMjQ YOa7k5DpfRrVMytL6ajaJSfm6evC0aQDF4wq75sB3AIwiB7Hm6WUhmyAMxnxe/K1Y6va ZLFH/sPD3NHN4hRcaJkqUNSWhDhvCVxmrGHL/o41GqrCrpAXqQaKGPPGlcq+m4ulDUip kQpt/RNlXkenvopzsD1yBV0O0eXkDegpm8gBB8xgx1dxR3hM5UlG/7m5ndeoiyl4/OSt jdjStW2hBzJ5Y6ZamHG49PrlXf1mXY6wskpQgQEGphB4/8opNyLOz91+RSlytv4vFLWY M4HA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=tzznl9Vw; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id m7si3205416edq.548.2020.12.10.07.22.47; Thu, 10 Dec 2020 07:23:10 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linuxfoundation.org header.s=korg header.b=tzznl9Vw; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linuxfoundation.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2391665AbgLJPMW (ORCPT + 99 others); Thu, 10 Dec 2020 10:12:22 -0500 Received: from mail.kernel.org ([198.145.29.99]:38348 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2389313AbgLJPMO (ORCPT ); Thu, 10 Dec 2020 10:12:14 -0500 Date: Thu, 10 Dec 2020 16:12:47 +0100 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linuxfoundation.org; s=korg; t=1607613093; bh=8LnWVA9tBVBdECrQ3EZYa9gCyEM1NCSqT1EEqJu33xI=; h=From:To:Cc:Subject:References:In-Reply-To:From; b=tzznl9VwtMU11kfBVsYPiq/XCWLCkOt7wdNqvWMDAV2GjBIB6aLQSxFw5lteXzToP B4axthHsWP2XHwen8+en5RX6qzTalFAV61H72WIQyJdAQdfMF0L16SUSqixNJY2IeH RvZ0aEq+D0rEoZLQE1MexoTHS6VBQFughLDFFkuA= From: Greg Kroah-Hartman To: Peter Chen Cc: Jack Pham , "balbi@kernel.org" , "willmcvicker@google.com" , "linux-usb@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "taehyun.cho" , stable Subject: Re: [PATCH v2 4/5] USB: gadget: f_fs: add SuperSpeed Plus support Message-ID: References: <20201127140559.381351-1-gregkh@linuxfoundation.org> <20201127140559.381351-5-gregkh@linuxfoundation.org> <20201130091259.GB31406@jackp-linux.qualcomm.com> <20201201023149.GA11393@b29397-desktop> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20201201023149.GA11393@b29397-desktop> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Dec 01, 2020 at 02:32:18AM +0000, Peter Chen wrote: > On 20-11-30 01:13:00, Jack Pham wrote: > > On Fri, Nov 27, 2020 at 03:05:58PM +0100, Greg Kroah-Hartman wrote: > > > From: "taehyun.cho" > > > > > > Setup the descriptors for SuperSpeed Plus for f_fs. This allows the > > > gadget to work properly without crashing at SuperSpeed rates. > > > > > > Cc: Felipe Balbi > > > Cc: stable > > > Signed-off-by: taehyun.cho > > > Signed-off-by: Will McVicker > > > Reviewed-by: Peter Chen > > > Signed-off-by: Greg Kroah-Hartman > > > --- > > > drivers/usb/gadget/function/f_fs.c | 5 +++++ > > > 1 file changed, 5 insertions(+) > > > > > > diff --git a/drivers/usb/gadget/function/f_fs.c b/drivers/usb/gadget/function/f_fs.c > > > index 046f770a76da..a34a7c96a1ab 100644 > > > --- a/drivers/usb/gadget/function/f_fs.c > > > +++ b/drivers/usb/gadget/function/f_fs.c > > > @@ -1327,6 +1327,7 @@ static long ffs_epfile_ioctl(struct file *file, unsigned code, > > > struct usb_endpoint_descriptor *desc; > > > > > > switch (epfile->ffs->gadget->speed) { > > > + case USB_SPEED_SUPER_PLUS: > > > case USB_SPEED_SUPER: > > > desc_idx = 2; > > > break; > > > @@ -3222,6 +3223,10 @@ static int _ffs_func_bind(struct usb_configuration *c, > > > func->function.os_desc_n = > > > c->cdev->use_os_string ? ffs->interfaces_count : 0; > > > > > > + if (likely(super)) { > > > + func->function.ssp_descriptors = > > > + usb_copy_descriptors(func->function.ss_descriptors); > > > + } > > > /* And we're done */ > > > ffs_event_add(ffs, FUNCTIONFS_BIND); > > > return 0; > > > -- > > > > Hi Greg, > > > > FWIW I had sent a very similar patch[1] a while back (twice in fact) > > but got no response about it. Looks like Taehyun's patch already went > > through Google for this, I assume it must be working on their Android > > kernels so I've no problem with you or Felipe taking this instead. > > > > Only one difference with my patch though is mine additionally clears the > > func->function.ssp_descriptors member to NULL upon ffs_func_unbind() as > > otherwise it could lead to a dangling reference in case the function is > > re-bound and userspace does not issue SS descriptors the next time. > > Realistically I don't think that's possible, except maybe when fuzzing? > > > > Yours is better, since there is no judgement for > func->function.ssp_descriptors at __ffs_func_bind_do_descs, without > clearing its value can't cause problem. Ok, I've taken the older patch instead, thanks! greg k-h