lkml.org 
[lkml]   [2006]   [Jul]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: Generic battery interface
    On 7/30/06, Shem Multinymous <multinymous@gmail.com> wrote:
    > Alternatively, we can add an extra parameter to that new
    > syscall/ioctl: "block until the time is T+N and you have a refresh
    > that was received from the hardware at time T+M, whichever is later"
    > (where T is the current time and N>M).
    >
    > That's semantically equivalent to an msleep(M) followed by the
    > original delayed_update(N-M), but will save one timer interrupt per
    > iteration in some cases (e.g., an event-based hardware data source).

    No, wait, the explicit two-parameter version is far superior.

    First, it makes it easier to poll multiple attributes. How'd you do
    that with the one-parameter version, if you need to sleep separately
    for each attribute?

    Second, it gives the driver (or its sysfs support infrastructure) a
    better picture of the future, which it can use to optimize the
    hardware query scheduling. No, I don't think anyone will implement
    *that* soon, but it's good to have an API that lets us add it later
    without affecting userspace.


    Is anyone interested in adding this "delayed updates" support to
    sysfs, for the benefit of hwmon, tp_smapi and probably numerous other
    drivers?
    I have some ideas for how to do it so that that per-driver support is
    really easy (or even free), but I don't know sysfs well enough to
    implement it and don't have the resources.

    Shem
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2006-07-30 13:35    [W:5.085 / U:0.048 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site