I think you should put it in. It seems to just work.
OK florian fwiw

On Tue, Feb 12, 2019 at 08:56:13AM +0100, Florian Obser wrote:
> On Sun, Feb 10, 2019 at 03:55:32PM -0200, Martin Pieuchot wrote:
> > On 10/02/19(Sun) 10:25, Florian Obser wrote:
> > > on resume I was greeted by:
> > > [typed from a photo (http://sha256.net/dump/usbd_fill_deviceinfo.jpg)]
> > > kernel: page fault trap, code =0
> > > Stopped at strlcpy+0x35: movzbl 0(%rsi, %rax,1), %ecx
> > > strlcpy(ffff800001459c81,0,7f) at strlcpy+0x35
> > > usbd_fill_deviceinfo at usbd_fill_deviceinfo+0x4f
> > > usbioctl at usbioctl+0x409
> > > VOP_IOCTL at VOP_IOCTL+0x61
> > > vn_ioctl at vn_ioctl+0x6e
> > > sys_ioctl at sys_ioctl+0x3d5
> > > syscall at syscall+0x338
> > > Xsyscall(6,36,4,36,3,0) at Xsyscall+0x128
> > > 
> > > I have a suspicion that this is related to my external monitor that
> > > acts as a usb hub. Upon wake up I also turn on the monitor and then
> > > random usb devices show up.
> > 
> > Looks like a race.  Does the diff below help?
> 
> I don't know :(
> I tried to reproduce without the diff but I was unsuccessful.
> 
> I'm running with the diff now. But it will be hard to declare success.
> 
> > 
> > Index: usb_subr.c
> > ===================================================================
> > RCS file: /cvs/src/sys/dev/usb/usb_subr.c,v
> > retrieving revision 1.147
> > diff -u -p -r1.147 usb_subr.c
> > --- usb_subr.c      22 Jan 2019 14:25:56 -0000      1.147
> > +++ usb_subr.c      10 Feb 2019 17:52:26 -0000
> > @@ -1208,7 +1208,6 @@ usbd_new_device(struct device *parent, s
> >      * address does not correspond to the hardware one.
> >      */
> >     dev->address = addr;
> > -   bus->devices[addr] = dev;
> >  
> >     err = usbd_reload_device_desc(dev);
> >     if (err) {
> > @@ -1244,6 +1243,8 @@ usbd_new_device(struct device *parent, s
> >             up->device = NULL;
> >             return (err);
> >     }
> > +
> > +   bus->devices[addr] = dev;
> >  
> >     err = usbd_probe_and_attach(parent, dev, port, addr);
> >     if (err) {
> > 
> 
> 
> -- 
> I'm not entirely sure you are real.
> 

-- 
I'm not entirely sure you are real.

Reply via email to