kernel panic with pure usb2umass pluged on pure usb1only motherboard port

Hans Petter Selasky hselasky at c2i.net
Mon Sep 12 05:58:10 PDT 2005


On Monday 12 September 2005 11:26, Mathieu PREVOT wrote:
> > Do you see something like this at the end of "sysctl -a"
> >
> > dev.umass.0.%desc: Genesys USB2.0 card Reader, rev 2.00/91.38, addr 122
> > dev.umass.0.%driver: umass
> > dev.umass.0.%location: port=5 interface=0
> > dev.umass.0.%pnpinfo: vendor=0x05e3 product=0x0710 devclass=0x00
> > devsubclass=0x0
> > 0 sernum="00571" intclass=0x08 intsubclass=0x06
> > dev.umass.0.%parent: uhub0
>
> I have this with usb1&2umass (txt_sysctl_with_umass2) but nothing with
> pure usb2umass

What do you mean with "pure USB 2.0": 
a) With only ehci compiled into the kernel? 
b) Or a USB2.0 only device?

If there are no "dev.umass" strings shown when you type "sysctl -a |grep 
umass" and you have plugged a umass device, then I have locked the problem 
down to the following. Some device is writing to freed memory, or maybe there 
is something else wrong. In the file "/sys/kern/subr_bus.c", in the function 
"make_device()", add:

if(dev)
{
  u_int8_t *temp = (void *)(dev);
  u_int16_t len = sizeof(struct device);
  while(len) {
    if(temp[0])
    { 
      printf("%s: dirty memory 0x%02x!\n", __FUNCTION__, temp[0]);
      break;
    }
    temp++;
    len--;
  }
  bzero(dev,sizeof(struct device));
}

after:

 dev = malloc(sizeof(struct device), M_BUS, M_NOWAIT|M_ZERO);

Then recompile the kernel.

>

Another thing:
Have you recompiled and installed all modules, or are you using the modules 
supplied with FreeBSD 5.4 ?

> Maybe I can configure a dump device for the kernel panic ? How ?

--HPS


More information about the freebsd-usb mailing list