On Mon, Jul 23, 2012 at 09:23:53AM +0800, Lan Tianyu wrote: > Sorry for later reply. :) > > On 2012年07月21日 01:08, Sarah Sharp wrote: > >On Thu, Jul 19, 2012 at 11:42:57AM +0200, Oliver Neukum wrote: > >>On Thursday 19 July 2012 15:42:37 Lan Tianyu wrote: > >>>On 2012年07月19日 14:37, Oliver Neukum wrote: > >> > >>>>But this leaves me with a question. Has anybody ever measured the additional > >>>>power savings compared to a suspended state for devices? Or are you doing > >>>>this only as a prelude to become able to send host controllers to D3cold? > >>>hi Oliver: > >>> I have done a test on a usb3.0 ORICO SSD which may cost 3w normally. > >>>Traditional suspend can save 1w. Power off can save additional 2w. I also test > >> > >>Well, then the device violates the standard for power consumption. > > > >Not necessarily. > > > >Tianyu, are you measuring the whole system power consumption or just the > >power drawn by the device? How are you measuring power consumption? > I measure the whole system power consumption. First, boot system and wait > for the power consumption stable. Second, kill udev and disable block layer > check event. Why kill udev? It's not doing anything on its own. > Third, enable the device runtime pm. Observe the power consumption > change. Get result. > > > > >Also, are you sure the mass storage device was actually suspended? > I am sure the device was suspended via power/runtime_status. > > >Unfortunately, userspace polls unmounted drives every two seconds or so > >to see if there's a medium change. So even though you may have enabled > >auto-suspend, userspace will still be waking the device out of suspend > >every two seconds. That might explain your high suspend power > >consumption. > Just like you said, udev may poll usb device drives every two seconds. udev does this? Really? Where does that happen in the udev code? I though that was some cdrom probing stuff from gnome daemons or somewhere else, but not in udev itself. > Moreover, the block layer also will check the disk status periodically. > AS alan pointed, echo 0 >/sys/block/sdX/events_poll_msec to stop check > event. So before I tested, I kill udev and disable the block layer check > event. Finally, I got stable power consumption. I will also test other > usb3.0 devices. By disabling this, you are not creating a real-world situation. Those disks need to be polled for a reason, right? 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