Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753421AbcD0SVI (ORCPT ); Wed, 27 Apr 2016 14:21:08 -0400 Received: from mail-pa0-f53.google.com ([209.85.220.53]:36275 "EHLO mail-pa0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753219AbcD0SVG (ORCPT ); Wed, 27 Apr 2016 14:21:06 -0400 Subject: Re: [PATCH] tty: provide tty_name() even without CONFIG_TTY To: Arnd Bergmann , Paul Moore References: <1461750975-2735137-1-git-send-email-arnd@arndb.de> <7168707.KQDjLLKe2j@wuerfel> Cc: Greg Kroah-Hartman , Jiri Slaby , Richard Guy Briggs , Rasmus Villemoes , linux-kernel@vger.kernel.org From: Peter Hurley Message-ID: <5721030E.7000304@hurleysoftware.com> Date: Wed, 27 Apr 2016 11:21:02 -0700 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0 MIME-Version: 1.0 In-Reply-To: <7168707.KQDjLLKe2j@wuerfel> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1703 Lines: 38 On 04/27/2016 10:24 AM, Arnd Bergmann wrote: > On Wednesday 27 April 2016 12:20:02 Paul Moore wrote: >>> diff --git a/include/linux/tty.h b/include/linux/tty.h >>> index 3b09f235db66..17b247c94440 100644 >>> --- a/include/linux/tty.h >>> +++ b/include/linux/tty.h >>> @@ -371,6 +371,7 @@ extern void proc_clear_tty(struct task_struct *p); >>> extern struct tty_struct *get_current_tty(void); >>> /* tty_io.c */ >>> extern int __init tty_init(void); >>> +extern const char *tty_name(const struct tty_struct *tty); >>> #else >>> static inline void console_init(void) >>> { } >>> @@ -391,6 +392,8 @@ static inline struct tty_struct *get_current_tty(void) >>> /* tty_io.c */ >>> static inline int __init tty_init(void) >>> { return 0; } >>> +static inline const char *tty_name(const struct tty_struct *tty) >>> +{ return "(none)"; } >>> #endif >> >> As it currently stands tty_name() returns "NULL tty" when the passed >> tty_struct is NULL while this patch returns "(none)" in the case of >> CONFIG_TTY=n; it seems like some consistency might be good, yes? Or >> do you think there is value in differentiating between the two cases? >> >> From an audit point of view, we would prefer if both were "(none)". > > Right, I noticed that the audit code prints "(none)" here while the > tty code prints "NULL tty", and that meant I could not make it behave > the same way as all the existing code. I picked "(none)" because > in case of CONFIG_TTY being disabled that is more logical: it's > not a NULL pointer because something went wrong, but instead the > pointer doesn't matter and we know there is no tty. Apologies for not having foreseen this in the review. Arnd's solution looks good to me.