linux-ide.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jeff Garzik <jeff@garzik.org>
To: kristen.c.accardi@intel.com
Cc: Mark Lord <liml@rtr.ca>, Alan Cox <alan@lxorguk.ukuu.org.uk>,
	Pavel Machek <pavel@ucw.cz>, Theodore Tso <tytso@mit.edu>,
	linux-ide@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] ata: ahci: power off unused ports
Date: Mon, 02 Jun 2008 14:38:55 -0400	[thread overview]
Message-ID: <48443E3F.8050306@garzik.org> (raw)
In-Reply-To: <20080602111644.54738d57@appleyard>

Kristen Carlson Accardi wrote:
> On Mon, 02 Jun 2008 14:15:27 -0400
> Jeff Garzik <jeff@garzik.org> wrote:
> 
>> Kristen Carlson Accardi wrote:
>>> Here you can see that it would be very easy for another driver
>>> to just add code to set the NO_HOTPLUG flag and then this code
>>> will work for them as well, since we power off the phy using
>>> DET which is specified by SATA.
>>> here's that code:
>> Agreed.  The main discussion in this sub-thread is more about user 
>> interface.  The user interface in this case, a module option, is 
>> specific to AHCI.
>>
>> Surely you can see how it is a bit silly to force each driver writer to 
>> create the same user interface in each driver, to support a generic concept.
>>
>> 	Jeff
>>
>>
> Not all drivers will need a user interface to turn off hotplug
> I would think.  At any rate - I would think it'd be better to let
> driver writers decide how they want their drivers to behave wrt
> hotplug and power instead of forcing a generic policy on everyone.
> 
> This patch would provide users of AHCI controllers a way to save
> power now, while you work on the grand scheme for polling/turning on off
> hotplug via sysfs.  It's an interim solution that impacts nobody but
> ahci users and is can be easily integrated into whatever solution you
> eventually work out.

It's a one-off driver-specific interface that will have to be supported 
even after the same feature is available via libata core...  that's not 
the path to scalable, sustainable engineering.

I know user interfaces are annoying because you have to think about 
chips other than your own, but that's life.  Other hardware vendors have 
to do it too.

Letting each driver have a different user interface is /unfriendly/ to 
both developers users.  It's easiest for Intel kernel developers, but 
that is not our target audience :)

The biggest power savings for the largest amount of users can be had if 
you take a moment and figure out what's best for Linux, rather than what 
is best for Intel.

Because you can be damned sure SATA users with non-AHCI chips want this 
power savings too...  let's not put roadblocks to that in place in the 
beginning (by adding one-off interfaces).

	Jeff




  parent reply	other threads:[~2008-06-02 18:39 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-05-08 23:10 [PATCH] ata: ahci: power off unused ports Kristen Carlson Accardi
2008-05-08 23:37 ` Matthew Garrett
2008-05-08 23:35   ` Kristen Carlson Accardi
2008-05-09  0:14     ` Matthew Garrett
2008-05-09  0:28       ` Kristen Carlson Accardi
2008-05-09 15:58   ` Lennart Sorensen
2008-05-09 16:06     ` Matthew Garrett
2008-05-09 16:14       ` Lennart Sorensen
2008-05-09 17:14         ` Kristen Carlson Accardi
2008-05-09 15:06 ` Mark Lord
2008-05-09 15:28   ` Port control interface (was Re: [PATCH] ata: ahci: power off unused ports) Jeff Garzik
2008-05-27  3:08 ` [PATCH] ata: ahci: power off unused ports Theodore Tso
2008-05-27 21:32   ` Kristen Carlson Accardi
2008-05-27 22:59     ` Theodore Tso
2008-05-27 23:32       ` Kristen Carlson Accardi
2008-05-31  8:00         ` Pavel Machek
2008-06-01 19:16           ` Jeff Garzik
2008-06-02  7:04             ` Alan Cox
2008-06-02  7:43               ` Jeff Garzik
2008-06-02  8:22                 ` Alan Cox
2008-06-02  9:48                   ` Jeff Garzik
2008-06-02 13:54                     ` Alan Cox
2008-06-02 16:55                     ` Kristen Carlson Accardi
2008-06-02 13:03                 ` Mark Lord
2008-06-02 16:07                   ` Jeff Garzik
2008-06-02 17:00                     ` Kristen Carlson Accardi
2008-06-02 17:45                       ` Jeff Garzik
2008-06-02 17:47                         ` Kristen Carlson Accardi
2008-06-02 18:15                           ` Jeff Garzik
2008-06-02 18:16                             ` Kristen Carlson Accardi
2008-06-02 18:30                               ` Ric Wheeler
2008-06-02 18:40                                 ` Jeff Garzik
2008-06-02 18:49                                   ` Ric Wheeler
2008-06-02 18:52                                     ` Jeff Garzik
2008-06-02 20:00                                   ` Matthew Garrett
2008-06-02 18:38                               ` Jeff Garzik [this message]
2008-06-03 16:49                                 ` Kristen Carlson Accardi
2008-06-02 17:07                     ` Greg Freemyer
2008-06-02 16:57                   ` Kristen Carlson Accardi
2008-06-02 17:44                     ` Jeff Garzik

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=48443E3F.8050306@garzik.org \
    --to=jeff@garzik.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=kristen.c.accardi@intel.com \
    --cc=liml@rtr.ca \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=pavel@ucw.cz \
    --cc=tytso@mit.edu \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).