Re: "Resource Temporarily Unavailable" error opening device file beginning with linux kernel 2.6.37.1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks for the assist. I am sure I am doing something in my driver or kernel configuration that causes this.

I am new to pulling kernel code via git, we use the tarballs, so a little guidance is needed. First, I went to find the git repository and have git.kernel.org in my browser with the list of project paths. Is the one I need 'linux/kernel/git/torvalds/linux-2.6.git'?

The reasons these drivers aren't in kernel.org has been that I don't believe it is of any use to the community. These are devices only found in our products. Furthermore, I write the firmware for at least 10 USB devices, all of that code is proprietary. I would have to find a way to not expose those interfaces. I also write the drivers in Windows and Linux, as well as application libraries that interface with the driver API. If I were to add publishing these drivers I couldn't get it done. I couldn't maintain these drivers at the pace the kernel changes. I couldn't test and verify they work and nobody could do it for me without being here with hardware to test. Sounds like work for no benefit.

I will run bisect when I get the kernel pulled correctly.

Thanks,
Donald

On Jun 20, 2012, at 5:47 PM, Greg KH wrote:

On Wed, Jun 20, 2012 at 05:38:44PM -0500, Donald Kayser wrote:
Hello,

I develop linux drivers for an embedded system with USB devices. The
USB drivers in question have been stable for a while, at least since
linux 2.6.26.n.

Nice.  Any reason why they aren't in the main kernel.org tree?

We have to move the system to the newest 2.6 kernel
(2.6.39.4) that has support for video hardware. When I built the
embedded system's USB drivers for the 2.6.39.4 kernel, I keep
getting the error message "Resource Temporarily Unavailable" when
attempting to 'cat' the device file. No error message appear in the
syslog. My USB driver uses the same kind of calls as usb-skeleton.c
to create the device file via usb_register() in the init function
and usb_register_dev() in the probe callback. The device is create
with a dynamic minor number in its name in /dev as expected. But
every use of this file comes back with the error. My debug printk
indicate my open function is not ever being called.

Can you run 'git bisect' to track down the offending patch? 2.6.39 was
years ago, I can't remember what happened in the kernel tree one month
ago...

I checked the difference between usb-skeleton.c files and there has
only been an addition of adding a llseek entry in the file
operations structure. I modified my driver and it didn't make a
difference - long shot.

I wouldn't trust the usb-skeleton.c to have been kept up to date.

I tested kernels 2.6.39.4, 2.6.38.8, 2.6.37.7, 2.6.37.1, 2.6.36.4.
It works in kernels before and including 2.6.36.4. It stops working
for all kernels tested beyond and including 2.6.37.1.

That gives you a good start to run 'git bisect' on.

thanks,

greg k-h


--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux