[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <s5hr3nrs0kc.wl-tiwai@suse.de>
Date: Wed, 29 Jul 2015 12:46:59 +0200
From: Takashi Iwai <tiwai@...e.de>
To: Dmitry Torokhov <dmitry.torokhov@...il.com>
Cc: linux-input@...r.kernel.org, linux-kernel@...r.kernel.org,
"Dr. Werner Fink" <werner@...e.de>
Subject: May close() return any error code?
Hi,
while debugging a problem of X and gdm with the old systemd-210, we
encountered a sudden death of systemd-logind, and this turned out to
be an unexpected errno from close(). The close() call for input
devices returns ENODEV error. The logind in systemd-210 treats this
error code as fatal, triggers assert() and eventually kills itself.
The details are found in an openSUSE bugzilla thread:
https://bugzilla.opensuse.org/show_bug.cgi?id=939571
This seems coming from evdev_flush(). As there is no fd leak, it's no
big problem per se. But, now the question is whether returning such
an error code is correct behavior at all. At least, it doesn't seem
defined in POSIX:
http://pubs.opengroup.org/onlinepubs/009695399/functions/close.html
I myself have no strong opinion here, so would like just to ask others
suggestions / comments.
thanks,
Takashi
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists