On Tue, Aug 01, 2023 at 02:15:50PM +0800, 周城东 wrote: > Hi, Greg KH > > > I do not understand this text at all, sorry. > > What exactly is broken and what is changed here to resolve the issue? > > The reason for the problem is that the value of struct > usb_function.name is "loopback", while struct usb_function_driver.name > is "Loopback". The same issue exists for sourcesink. When using USB > Config FS, it won't be possible to enable these two functions. Please document this in the changelog text. > > And please use your full name for patches. > > I'm sorry, this is my first time sending kernel patch. How should I > modify my name for the patch that has already been sent? Or should I > resend a new patch? Yes, you need to send a new version, please read the section entitled "The canonical patch format" in the kernel file, Documentation/process/submitting-patches.rst for what needs to be done here. > > You just changed a user-visable api, right? Where did you document this > > and what will it affect? > > Yes, I removed lb_modexit and lb_modinit and used a simpler method for > function initialization. This does not affect any other > functionalities. In the old way, the loopback function was called by > sslb_modinit in sourcesink. I believe this is not a good approach as > the loopback and sourcesink should be independent functionalities. > Their purpose is to provide simple examples for USB beginners like myself. But you changed the name: > > > - ss->function.name = "source/sink"; > > > + ss->function.name = "sourcesink"; isn't that visable to userspace? thanks, greg k-h