From: Adam Baker <linux@baker-net.org.uk>
To: Hans de Goede <hdegoede@redhat.com>
Cc: Alan Stern <stern@rowland.harvard.edu>,
Sarah Sharp <sarah.a.sharp@linux.intel.com>,
Greg KH <greg@kroah.com>,
Mauro Carvalho Chehab <mchehab@infradead.org>,
linux-usb@vger.kernel.org, linux-media@vger.kernel.org,
linux-kernel@vger.kernel.org, libusb-devel@lists.sourceforge.net,
Alexander Graf <agraf@suse.de>, Gerd Hoffmann <kraxel@redhat.com>,
hector@marcansoft.com, Jan Kiszka <jan.kiszka@siemens.com>,
Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>,
pbonzini@redhat.com, Anthony Liguori <aliguori@us.ibm.com>,
Jes Sorensen <Jes.Sorensen@redhat.com>,
Oliver Neukum <oliver@neukum.org>, Felipe Balbi <balbi@ti.com>,
Clemens Ladisch <clemens@ladisch.de>,
Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.de>,
Laurent Pinchart <laurent.pinchart@ideasonboard.com>,
Theodore Kilgore <kilgota@banach.math.auburn.edu>
Subject: Re: USB mini-summit at LinuxCon Vancouver
Date: Tue, 9 Aug 2011 21:31:03 +0100 [thread overview]
Message-ID: <201108092131.03818.linux@baker-net.org.uk> (raw)
In-Reply-To: <4E41912F.50901@redhat.com>
On Tuesday 09 August 2011, Hans de Goede wrote:
> Hi,
>
> On 08/09/2011 04:19 PM, Alan Stern wrote:
> > Does it really make sense to combine 5 drivers into one?
>
> Right, that is not the plan. The plan is to simply stop having 2 drivers
> for 1 logical (and physical) block. So we go from 10 drivers, 5 stillcam
> + 5 webcam, to just 5 drivers. We will also likely be able to share
> code between the code for the 2 functionalities for things like generic
> set / get register functions, initialization, etc.
>
Unfortunately as Theodore recently pointed out you don't go from 10 to 5, you
go from 10 to 10 where 5 of the new 10 are only used on Win32, FreeBSD and OSX
(but they aren't any simpler because they still rely on libusb) and the other
5 that are only used on Linux become significantly more complicated than they
currently are.
It has also just occured to me that it might be possible to solve the issues
we are facing just in the kernel. At the moment when the kernel performs a
USBDEVFS_DISCONNECT it keeps the kernel driver locked out until userspace
performs a USBDEVFS_CONNECT. If the kernel reattached the kernel driver when
the device file was closed then, as gvfs doesn't keep the file open the
biggest current issue would be solved instantly. If a mechanism could be found
to prevent USBDEVFS_DISCONNECT from succeeding when the corresponding
/dev/videox file was open then that would seem to be a reasonable solution.
Hans had expressed the opinion that merely having the device open to control
the camera not to stream shouldn't prevent stillcam operation - I disagree
because if you are setting up the controls you are probably already streaming
so you can see what you are doing and if not you are probably about to.
Of course changing the behaviour of USBDEVFS_DISCONNECT is not something to be
done lightly. I don't know how many other users there are for it and if the
current behaviour is actually correct for any of them. Cleaning up on file
close does have the useful side effect though that applications no longer need
to worry about the fact that even if they clean up properly on a normal exit,
if they crash they leave the kernel driver permanently disabled
Regards
Adam
next prev parent reply other threads:[~2011-08-09 20:38 UTC|newest]
Thread overview: 90+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-10 0:21 USB mini-summit at LinuxCon Vancouver Sarah Sharp
2011-06-10 3:18 ` Greg KH
2011-06-10 6:59 ` Gerd Hoffmann
2011-06-10 19:48 ` Sarah Sharp
2011-06-10 20:50 ` Greg KH
2011-06-13 10:44 ` Alexander Graf
2011-06-13 10:44 ` Alexander Graf
2011-06-13 16:29 ` Greg KH
2011-06-13 16:29 ` Greg KH
2011-06-13 17:11 ` Alexander Graf
2011-06-13 17:11 ` Alexander Graf
2011-06-10 7:19 ` Hans de Goede
2011-06-10 7:55 ` Improving kernel -> userspace (usbfs) usb device hand off Hans de Goede
2011-06-10 8:22 ` Felipe Balbi
2011-06-10 8:36 ` Hans de Goede
2011-06-10 8:42 ` Felipe Balbi
2011-06-10 12:19 ` Hans de Goede
2011-06-10 12:28 ` Felipe Balbi
2011-06-10 14:48 ` Alan Stern
2011-06-10 15:07 ` Mauro Carvalho Chehab
2011-06-10 15:21 ` Alan Stern
2011-06-11 9:15 ` Hans de Goede
2011-06-11 16:19 ` Theodore Kilgore
2011-06-12 11:43 ` Hans de Goede
2011-06-12 21:20 ` Theodore Kilgore
2011-06-13 2:03 ` Xiaofan Chen
2011-06-13 2:27 ` [Libusb-devel] " Michael Bender
2011-06-11 16:57 ` Alan Stern
2011-06-10 18:16 ` Theodore Kilgore
2011-06-10 18:34 ` Felipe Balbi
2011-06-10 21:18 ` Alan Stern
2011-06-10 21:46 ` Felipe Balbi
2011-06-10 22:46 ` Theodore Kilgore
2011-06-10 22:43 ` Theodore Kilgore
2011-06-11 1:30 ` Xiaofan Chen
2011-06-11 4:17 ` Theodore Kilgore
2011-06-13 9:05 ` Felipe Balbi
2011-06-13 13:06 ` Mauro Carvalho Chehab
2011-06-13 13:12 ` Felipe Balbi
2011-08-04 22:21 ` USB mini-summit at LinuxCon Vancouver Mauro Carvalho Chehab
2011-08-04 22:56 ` Greg KH
[not found] ` <CAA6KcBBZv7bvVxvEWOYL83igpNZHyzh=bcGxh6Dr5aKsvJK5Cg@mail.gmail.com>
2011-08-05 0:33 ` Mauro Carvalho Chehab
2011-08-05 2:56 ` Theodore Kilgore
2011-08-05 6:57 ` Oliver Neukum
2011-08-05 17:38 ` Theodore Kilgore
2011-08-05 7:45 ` Hans de Goede
2011-08-05 7:59 ` USB mini-summit at LinuxCon Vancouveroliver Oliver Neukum
2011-08-05 8:18 ` Hans de Goede
2011-08-05 13:07 ` USB mini-summit at LinuxCon Vancouver Mauro Carvalho Chehab
2011-08-08 17:58 ` Sarah Sharp
2011-08-08 18:23 ` Theodore Kilgore
2011-08-08 18:32 ` Sarah Sharp
2011-08-08 19:37 ` Mauro Carvalho Chehab
2011-08-09 7:52 ` Hans de Goede
2011-08-09 14:19 ` Alan Stern
2011-08-09 15:03 ` Marko Ristola
2011-08-09 19:57 ` Hans de Goede
2011-08-09 20:31 ` Adam Baker [this message]
2011-08-09 20:57 ` Hans de Goede
2011-08-10 2:05 ` Xiaofan Chen
2011-08-10 23:04 ` Adam Baker
2011-08-11 8:14 ` Hans de Goede
2011-08-09 23:05 ` Theodore Kilgore
2011-08-10 14:19 ` Alan Stern
2011-08-10 15:03 ` Theodore Kilgore
2011-08-10 16:09 ` Alan Stern
2011-08-10 18:33 ` Theodore Kilgore
2011-08-10 19:39 ` Hans Verkuil
2011-08-10 19:43 ` Greg KH
2011-08-10 20:34 ` Theodore Kilgore
2011-08-10 20:14 ` Mauro Carvalho Chehab
2011-08-10 20:39 ` Theodore Kilgore
2011-08-11 8:57 ` Jean-Francois Moine
2011-08-11 11:19 ` Mauro Carvalho Chehab
2011-08-11 8:14 ` Hans de Goede
2011-08-11 14:56 ` Alan Stern
2011-08-11 15:13 ` Mauro Carvalho Chehab
2011-08-11 15:25 ` Alan Cox
2011-08-11 15:49 ` Alan Stern
2011-08-11 20:01 ` Theodore Kilgore
2011-08-11 20:32 ` Mauro Carvalho Chehab
2011-08-11 23:13 ` Theodore Kilgore
2011-08-12 7:16 ` Hans de Goede
2011-08-12 10:11 ` Alan Cox
2011-08-12 1:07 ` Alan Stern
2011-08-12 2:38 ` Theodore Kilgore
2011-08-11 15:44 ` Alan Stern
2011-08-12 7:26 ` Hans de Goede
2011-08-12 15:36 ` Alan Stern
2011-08-09 17:10 ` Sarah Sharp
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=201108092131.03818.linux@baker-net.org.uk \
--to=linux@baker-net.org.uk \
--cc=Jes.Sorensen@redhat.com \
--cc=agraf@suse.de \
--cc=aliguori@us.ibm.com \
--cc=balbi@ti.com \
--cc=clemens@ladisch.de \
--cc=greg@kroah.com \
--cc=hdegoede@redhat.com \
--cc=hector@marcansoft.com \
--cc=jan.kiszka@siemens.com \
--cc=kilgota@banach.math.auburn.edu \
--cc=kraxel@redhat.com \
--cc=laurent.pinchart@ideasonboard.com \
--cc=libusb-devel@lists.sourceforge.net \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mchehab@infradead.org \
--cc=oliver@neukum.org \
--cc=pbonzini@redhat.com \
--cc=perex@perex.cz \
--cc=sarah.a.sharp@linux.intel.com \
--cc=stefanha@linux.vnet.ibm.com \
--cc=stern@rowland.harvard.edu \
--cc=tiwai@suse.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.