I suggest you...

Fix the Linux driver so that it doesn't use 5-15% CPU when my DisplayLink device is _unplugged_.

When unplugged, I consistently (and continuously, not just short spikes) see the DisplayLinkManager process take up 5-15% CPU. I don't understand why it's using so much CPU when there's literally nothing for it to do. It's really hurting my battery life & performance.

22 votes
Vote
Sign in
Check!
(thinking…)
Reset
or sign in with
  • facebook
  • google
    Password icon
    I agree to the terms of service
    Signed in as (Sign out)
    You have left! (?) (thinking…)
    DocWilco shared this idea  ·   ·  Flag idea as inappropriate…  ·  Admin →

    1 comment

    Sign in
    Check!
    (thinking…)
    Reset
    or sign in with
    • facebook
    • google
      Password icon
      I agree to the terms of service
      Signed in as (Sign out)
      Submitting...
      • Wouter Bolsterlee commented  ·   ·  Flag as inappropriate

        i also suffer from this. displaylinkmanager drains my battery when NO external screen is connected. strace reveals a lot of select() syscalls with a 0 timeout. is that really needed?

        [pid 3436] nanosleep({0, 1000000}, NULL) = 0
        [pid 3436] select(10, [5 9], NULL, NULL, NULL) = 1 (in [9])
        [pid 3436] write(15, "\n", 1 <unfinished ...>
        [pid 3438] <... select resumed> ) = 1 (in [10])
        [pid 3436] <... write resumed> ) = 1
        [pid 3438] futex(0x24636f0, FUTEX_WAIT_PRIVATE, 2, NULL <unfinished ...>
        [pid 3436] futex(0x24636f0, FUTEX_WAKE_PRIVATE, 1 <unfinished ...>
        [pid 3438] <... futex resumed> ) = -1 EAGAIN (Resource temporarily unavailable)
        [pid 3436] <... futex resumed> ) = 0
        [pid 3438] read(10, <unfinished ...>
        [pid 3436] nanosleep({0, 1000000}, <unfinished ...>
        [pid 3438] <... read resumed> "\n", 1000) = 1
        [pid 3438] futex(0x24636f0, FUTEX_WAKE_PRIVATE, 1) = 0
        [pid 3438] select(10, [9], NULL, NULL, {0, 0}) = 1 (in [9], left {0, 0})
        [pid 3438] read(9, "", 1) = 0
        [pid 3438] access("/tmp/PmMessagesPort_in", F_OK) = 0
        [pid 3438] select(14, [10 11 13], NULL, NULL, NULL <unfinished ...>
        [pid 3436] <... nanosleep resumed> NULL) = 0

      Feedback and Knowledge Base