1. 27 Feb, 2022 2 commits
  2. 10 Feb, 2022 2 commits
  3. 01 Dec, 2021 2 commits
  4. 05 May, 2021 6 commits
  5. 14 Apr, 2021 2 commits
    • Benjamin Berg's avatar
      Release 3.38.2 · e9c50573
      Benjamin Berg authored
      e9c50573
    • Hans de Goede's avatar
      rfkill: set the g_io_channel to unbuffered mode · d2200632
      Hans de Goede authored
      Access to a /dev/foo device should never use buffered mode.
      
      While debugging a gsd-rfkill issue I noticed in the g_debug output
      that the rfkill-glib.c code now seems to be receiving bogus events.
      
      Doing a strace I noticed some read(dev_rfkill_fd, buf, 8) calls,
      even though we call:
        g_io_channel_read_chars(..., sizeof(struct rfkill_event, ...)
      
      Which requests 9 bytes. The problem is the kernel expects us to
      read 1 event per read() system-call and it will throw away
      excess data. The idea is here that the rfkill_event struct can
      be extended by adding new fields at the end and then userspace code
      compiled against older kernel headers will still work since it
      will only read the fields it knows in a single call and the
      extra fields are thrown away.
      
      Since the rfkill-glib.c code was using buffered-io and asking
      g_io_channel_read_chars for 9 bytes when compiled against recent
      kernel headers, what would happen is that 2 events would be consumed
      in 2 read(fd, buf, 8) syscalls and then the first byte of the
      second event read would be appended to the previous event and
      the remaining 7 bytes would be used as the first 7 bytes for the
      next event (and eventually completed with the first 2 bytes of
      the next event, etc.). Leading to completely bogus events.
      
      Enabling unbuffered mode fixes this.
      
      Note this is a relatively new problem, caused by the kernel
      recently extending the rfkill_event struct with an extra byte-field:
      "rfkill: add a reason to the HW rfkill state"
      https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=14486c82612a177cb910980c70ba900827ca0894
      
      Before that kernel change the rfkill_event struct was 8 bytes large
      which allowed us to get away with using buffered io here.
      d2200632
  6. 21 Feb, 2021 2 commits
  7. 15 Jan, 2021 5 commits
  8. 13 Jan, 2021 1 commit
  9. 11 Jan, 2021 3 commits
  10. 10 Jan, 2021 1 commit
  11. 06 Jan, 2021 1 commit
    • Bastien Nocera's avatar
      power: Don't warn more than once per warning level for devices · 60621b90
      Bastien Nocera authored
      A lot of wireless input devices, such as Logitech mice and touchpads, or
      Bluetooth LE input devices, will disconnect and reconnect frequently
      from the computer when unused.
      
      This causes a problem when the battery on the device is low because
      a new notification will be generated each time the device reconnects, as
      if it was the first time it connected.
      
      Saving the last warning-level for every external peripheral ensures that
      we only emit one low battery notification for each warning-level, when
      the threshold is crossed, rather than at every reconnect.
      
      The last warning-level is not stored, so a new session, or a reboot will
      cause devices to warn again once.
      
      Helps: #108
      60621b90
  12. 23 Dec, 2020 1 commit
  13. 11 Dec, 2020 1 commit
  14. 03 Dec, 2020 1 commit
  15. 24 Nov, 2020 1 commit
  16. 23 Nov, 2020 1 commit
  17. 22 Nov, 2020 1 commit
    • Simon McVittie's avatar
      Update from upstream git commit GNOME_SETTINGS_DAEMON_3_38_1-6-gaffebf89 · 3a5ed6ad
      Simon McVittie authored
      * d/patches: Update from upstream git commit
        GNOME_SETTINGS_DAEMON_3_38_1-6-gaffebf89
        - Fix a crash if a filesystem does not provide atime
        - If system-wide power management idle action is set to log out,
          ignore it in the gdm greeter (for which logging out makes no sense)
        - Silence unnecessary warnings if usbguard is not installed
        - Translation updates
      3a5ed6ad
  18. 20 Nov, 2020 1 commit
  19. 02 Nov, 2020 6 commits