]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
terminal-util: add debug logging for when TTY ioctls fail
authorLennart Poettering <lennart@poettering.net>
Wed, 12 May 2021 11:45:01 +0000 (13:45 +0200)
committerLennart Poettering <lennart@poettering.net>
Wed, 19 May 2021 14:53:50 +0000 (16:53 +0200)
src/basic/terminal-util.c

index fafdaaa090e94274943e31d19074426433082691..91c404892ea636eed1472159cc6ee26bd2c20365 100644 (file)
@@ -245,17 +245,20 @@ int reset_terminal_fd(int fd, bool switch_to_text) {
          * interfere with that. */
 
         /* Disable exclusive mode, just in case */
-        (void) ioctl(fd, TIOCNXCL);
+        if (ioctl(fd, TIOCNXCL) < 0)
+                log_debug_errno(errno, "TIOCNXCL ioctl failed on TTY, ignoring: %m");
 
         /* Switch to text mode */
         if (switch_to_text)
-                (void) ioctl(fd, KDSETMODE, KD_TEXT);
+                if (ioctl(fd, KDSETMODE, KD_TEXT) < 0)
+                        log_debug_errno(errno, "KDSETMODE ioctl for switching to text mode failed on TTY, ignoring: %m");
+
 
         /* Set default keyboard mode */
         (void) vt_reset_keyboard(fd);
 
         if (tcgetattr(fd, &termios) < 0) {
-                r = -errno;
+                r = log_debug_errno(errno, "Failed to get terminal parameters: %m");
                 goto finish;
         }