Re: USB device just moves



On Thu, 14 Feb 2008 05:22:55 GMT Tim Roberts <timr@xxxxxxxxx> wrote:
| phil-news-nospam@xxxxxxxx wrote:
|>
|>So tell me how it is that "udev" can do better than the kernel itself to
|>make sure that when the USB device is re-attached that it will always get
|>exactly the same major/minor device number? I thought that what "udev"
|>did was automatically make a device node in the name space to refer to
|>the new major/minor. Remember, this involves an already mounted filesystem
|>with files still open.
|
| Well, perhaps I misunderstood (or underestimated) the issue. Your
| description of udev is correct. If the major/minor number is critical,
| than perhaps udev doesn't help.

Would it not be critical if that major/minor is a block device that is
currently mounted?


|>The real culprit in this is the poor design of USB, which follows the poor
|>design of PC. There should be a hardware layer consistency of addresses
|>based on where something is plugged in (bus number, controller number, port
|>number, hub port number, hubbed hub port number, etc). Then on top of that
|>there should be consistent device ID numbers much like ethernet MAC (but at
|>least 64 bits). If the same device is plugged back into the same port, no
|>address should change. Nothing should need to be run to "change it back"
|>as it should just _be_ the same.
|
| There's nothing wrong with the design of USB. As long as the device has a
| serial number, the combination of VID, PID, and serial number is unique,
| and Windows (at least) will recognize it as the same device no matter what
| port of which hub it is plugged into.

So are you saying the Linux USB driver design is all wrong?

If I had designed these things, I would have started at the computer bus
level and made as many things as possible message based, with the only
polling to be as a result of a timeout (expected a message but none has
arrived, so ask in case it sent it and somehow it was lost, much like
TCP does).

People whose first experience in computer architecture is the PC are doomed
to create bad designs, unless they learn from the beginning that the PC is
a terrible architecture.

The bad design of USB extends all the way to a PoS connector, too.

--
|---------------------------------------/----------------------------------|
| Phil Howard KA9WGN (ka9wgn.ham.org) / Do not send to the address below |
| first name lower case at ipal.net / spamtrap-2008-02-14-1133@xxxxxxxx |
|------------------------------------/-------------------------------------|
.



Relevant Pages

  • Re: printing via serial to usb cable
    ... I borrowed a serial to usb cable. ... Parallel port to a USB port. ... You have data arriving in parallel and sent out in serial by the USB ... Now going from Serial to USB is a much better thing to design. ...
    (Ubuntu)
  • usb_insert_transfer panic with if_zyd
    ... When I use my ZyXEL G-220 Wireless USB Stick with the if_zyd driver, ... <ACPI PCI bus> on pcib0 ... device problem, disabling port 1 ... <Ethernet over FireWire> on firewire0 ...
    (freebsd-current)
  • 2.6.10-rc1 & ahci & IHC6R & 925X & raid1
    ... usb modules for console, usb keyboard, network and starting a shell. ... ACPI: PM-Timer IO Port: 0x808 ... PCI: PCI BIOS revision 2.10 entry at 0xfb768, ... usbcore: registered new driver hub ...
    (Linux-Kernel)
  • usb does not work on vias smp mainboard
    ... I installed kernel 2.4.21 on an via's mainboard, it seems that the usb ... number of MP IRQ sources: ... PCI Interrupt Link ... Port indicators are not supported ...
    (Linux-Kernel)
  • Boot time Bluetooth BUG: warning: (value > m) at hid-core.c:793
    ... When the USB reciever is already plugged-in at boot-time and the ... hub 2-2:1.0: USB hub found ... Interface Descriptor: ... Hub Port Status: ...
    (Linux-Kernel)