On Wed, 2 Jun 2010 16:32:44 -0700 Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx> wrote: > On Wed, Jun 02, 2010 at 09:05:21PM +0200, Florian Mickler wrote: > > On Wed, 2 Jun 2010 21:02:24 +1000 > > Neil Brown <neilb@xxxxxxx> wrote: > > > > > > And this decision (to block suspend) really needs to be made in the driver, > > > not in userspace? > > > > Well, it fits. The requirement is a direct consequence of the intimate > > knowledge the driver has about the driven devices. > > That is not really true. A driver does have intimate knowledge of the > device, however it does not necessarily have an idea about the data read > from the device. Consider the gpio_matrix driver: Arve says that it has > to continue scanning matrix once first interrupt arrvies. But it really > depends on what key has been pressed - if user pressed KEY_SUSPEND or > KEY_POWER it cmight be better if we did not wait for key release but > initiated the action right away. The decision on how system reacts to a > key press does not belong to the driver but really to userspace. > I can't follow the gpio_matrix_driver example, but your point is obviously true. A device should never register a constraint because of the data it handles. That belongs into userspace. Or wherever the data is consumed. I'm obviously not trying to say that a network driver should block suspend while I'm on facebook. Or unblock when visiting m$.com. That would be absurd. But, there are of course places in the kernel, where some kernel code listens to data. For example the packet-filtering. Or sysrq-keys. But I don't know how that relates to suspend_blockers now... ? Mind if I rephrase the quote? From: "Well, it fits. The requirement is a direct consequence of the intimate knowledge the driver has about the driven devices." To: "It fits, when the requirement is a direct consequence of the intimate knowledge the driver has about the driven devices." Cheers, Flo p.s.: tsss.... language... what a broken concept. And yet we have to work with it. _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm