Announcement

Collapse
No announcement yet.

New Wake Locks Patches Published For Linux Kernel

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • DeiF
    replied
    I hope this patch doesn't introduce additional latency (that's usually the case with low-power states).

    Leave a comment:


  • Wildfire
    replied
    Originally posted by Cyborg16 View Post
    I think you're totally missing something, yes. This isn't S3 suspend-to-RAM or whatever, this is suspending just the CPU to put the device into a low-power mode like Android does ? these wake/sleep cycles could take place several times a second if necessary. "Wake Locks" are signals that something requires processing either now or at some specified time in the future; any CPU jobs without Wake Locks are assumed not to require computation immediately, so if nothing else is locking the CPU "awake", the device can go to sleep and save some power.
    That's what I thought at first, but the article wasn't exactly clear on that. I did some searching through Google, but couldn't find any clear "evidence" either way. In any case, it does sound like a nice feature.

    @schmidtbag: Isn't that, what a modular kernel is for? The kernel contains just the bare essentials, everything else is a module that is loaded on demand. All you're "wasting" by having modules you never use is a little disk space. I'd rather have some "useless" modules on my disk instead of having to recompile my kernel after buying some new hardware.

    Leave a comment:


  • Ansla
    replied
    Your distribution of choice can and should be handling this aspect, why remove them from the kernel source and make it harder for those building images for less popular configurations when your only problem is with what *.ko files are installed on your system?

    Leave a comment:


  • schmidtbag
    replied
    Originally posted by Wildfire View Post
    And how do you download all of these things, if your particulare network card isn't supported ootb? This sounds pretty much like what Windows is doing. I have a dual boot setup and on a fresh install I always have to use Linux to download all kinds of things (like network drivers) to get Windows into a usable state. On the other hand, my Linux installation just works.
    I think the main point about kernel size is aimed towards maintenance. The larger your code base the more difficult it gets to maintain. But it's not something the user needs to be primarily concerned about.
    Either get yourself a distro that comes with a "reasonable" kernel or, yes, do build it yourself if you're concerned about getting the best possible performance. To be honest, the only place I still do this is my router, to add support for HW encryption (Via Padlock).
    well obviously stuff like network drivers and other essentials like keyboards would be supported by default. but like i said, the average distro would come with most of the necessary drivers and you just uninstall any extras you don't use (if you so choose) or install what has not been included but not necessary to get a functional system.

    @cyborg16
    see, that's exactly what i needed clarification on, and so what you described i think is pretty cool and is something that would be a great addition to the kernel.

    Leave a comment:


  • Cyborg16
    replied
    Originally posted by schmidtbag View Post
    huh? i could have sworn linux already had this ability and if not, it's pretty easy to write a shell script that suspends automatically based around your wake-ups. am i missing something here?

    btw, i don't use suspend and never really have - i've only had a laptop with a working battery for about a year and i don't like suspending my desktops when they're in the middle of something.
    I think you're totally missing something, yes. This isn't S3 suspend-to-RAM or whatever, this is suspending just the CPU to put the device into a low-power mode like Android does ? these wake/sleep cycles could take place several times a second if necessary. "Wake Locks" are signals that something requires processing either now or at some specified time in the future; any CPU jobs without Wake Locks are assumed not to require computation immediately, so if nothing else is locking the CPU "awake", the device can go to sleep and save some power.

    The difference to standard power-saving is that this policy is "sleep unless someone explicitly says something needs to be done now" rather than the usual opportunistic "sleep if there's nothing else to do".

    Leave a comment:


  • Wildfire
    replied
    Originally posted by schmidtbag View Post
    The point is, the kernel is being packed full of things that never belonged there in the first place. if i want to suspend my computer automatically, i'll download something for that. if i have an intel cpu, i'll download the fixes for it. if i use a kinect, i'll download the drivers for it myself. its much easier to add features than remove.
    And how do you download all of these things, if your particulare network card isn't supported ootb? This sounds pretty much like what Windows is doing. I have a dual boot setup and on a fresh install I always have to use Linux to download all kinds of things (like network drivers) to get Windows into a usable state. On the other hand, my Linux installation just works.
    I think the main point about kernel size is aimed towards maintenance. The larger your code base the more difficult it gets to maintain. But it's not something the user needs to be primarily concerned about.
    Either get yourself a distro that comes with a "reasonable" kernel or, yes, do build it yourself if you're concerned about getting the best possible performance. To be honest, the only place I still do this is my router, to add support for HW encryption (Via Padlock).

    Leave a comment:


  • schmidtbag
    replied
    Originally posted by sabriah View Post
    Seriously, how is anyone going to know beforehand which devices you have and don't have?

    As I see it, this is the least disruptive strategy.
    well most distros could ship with packages that install most, or all drivers for you. but even if they didn't, linux is notorious for leaving you in the dark with setting it up anyway. i learned almost everything i know on my own. i checked some forums here and there to figure out a weird problem but other than that i didn't look at any guides because they were either outdated, very slow-paced, or incomplete.

    considering linux is very community driven, cramming all these things into 1 big package kinda shrinks the community from offering alternatives.

    Leave a comment:


  • sabriah
    replied
    Originally posted by schmidtbag View Post
    maybe i don't want drivers for devices i'll never own (such as kinect), but they're added anyway. of course you could argue that i could customize the kernel myself or download a more limited version, but i shouldn't have to.

    Seriously, how is anyone going to know beforehand which devices you have and don't have?

    As I see it, this is the least disruptive strategy.

    Leave a comment:


  • schmidtbag
    replied
    Originally posted by Wildfire View Post
    I guess the big idea here is to add this functionality to the kernel to make it work out of the box, without the need to script anything. The kernel could also possibly be "more intelligent" about guessing if there's something going on or if it's fine to suspend. Instead of saying "sleep if there's no user input for ten minutes" it should be possible to do something like "sleep if there are no active tasks" (watching a movie, listening to music, downloading a file, ...). Not sure you're able to cover all that with a (simple) script.
    well, a simple script couldn't but a script in general could. these are the kinds of things that are being added to the kernel that are multiplying it's size - this is not a necessary feature. to me, all that should be added to the kernel are things that add/fix functionality and make your hardware work to its full potential and nothing more. suspend is a functionality thing, but the kernel deciding when it should happen is just a feature.

    this 1 little thing might not seem like a big deal, but this stuff adds up yet people like linus torvalds complain how big the kernel is getting. there's been a lot of changes like this lately and the kernel is really starting to become too much of an all-in-one thing and it shouldn't be. maybe i don't have an intel cpu, but i have to deal with hundreds, possibly thousands of lines of code that target intel-only processors. maybe i don't want drivers for devices i'll never own (such as kinect), but they're added anyway. of course you could argue that i could customize the kernel myself or download a more limited version, but i shouldn't have to.

    the point is, the kernel is being packed full of things that never belonged there in the first place. if i want to suspend my computer automatically, i'll download something for that. if i have an intel cpu, i'll download the fixes for it. if i use a kinect, i'll download the drivers for it myself. its much easier to add features than remove.

    Leave a comment:


  • mbit
    replied
    "controversial work"

    Could someone provide some detail on why this is "controversial work"?

    Leave a comment:

Working...
X