Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753241AbdFRRWM (ORCPT ); Sun, 18 Jun 2017 13:22:12 -0400 Received: from mail-wm0-f68.google.com ([74.125.82.68]:35152 "EHLO mail-wm0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753081AbdFRRWL (ORCPT ); Sun, 18 Jun 2017 13:22:11 -0400 Date: Sun, 18 Jun 2017 18:22:06 +0100 From: Okash Khawaja To: Andy Shevchenko Cc: Greg Kroah-Hartman , Jiri Slaby , Samuel Thibault , "linux-kernel@vger.kernel.org" , William Hubbs , Chris Brannon , Kirk Reiser , speakup@linux-speakup.org, devel@driverdev.osuosl.org Subject: Re: [patch v2 2/3] staging: speakup: check and convert dev name or ser to dev_t Message-ID: <20170618172206.GA393@sanghar> References: <20170618085825.601359240@gmail.com> <20170618093536.021961426@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.8.2 (2017-04-18) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2178 Lines: 73 Hi, Thanks for the reviews. Couple of things inlined below. On Sun, Jun 18, 2017 at 04:35:21PM +0300, Andy Shevchenko wrote: > > > +const char *lp_supported[] = { "acntsa", "bns", "dummy", "txprt" }; > > static ? Sure! > > + if (ser < 0 || ser > (255 - 64)) { > > > + pr_err("speakup: Invalid ser param. \ > > + Must be between 0 and 191 inclusive.\n"); > > Just make it one line. Is it okay if it becomes larger than 80 chars? > > + > > + for (i = 0; i < ARRAY_SIZE(lp_supported); i++) { > > + if (strcmp(synth->name, lp_supported[i]) == 0) > > + break; > > + } > > + > > + if (i >= ARRAY_SIZE(lp_supported)) { > > match_string() Cool, didn't know about it > > > + pr_err("speakup: lp* is only supported on:"); > > > + for (i = 0; i < ARRAY_SIZE(lp_supported); i++) > > + pr_cont(" %s", lp_supported[i]); > > + pr_cont("\n"); > > pr_cont() is not the best idea, though I think it will be rare cases > when it might be broken in pieces. Hmm... I would like to keep it if it doesn't incur an overhead. It also indicates to the reader that this all part of same output line. Let me know what you think. > > > + > > + return -ENOTSUPP; > > + } > > + } > > + > > + return tty_dev_name_to_number(synth->dev_name, dev_no); > > + } > > + > > + return ser_to_dev(synth->ser, dev_no); > > +} > > + > > static int spk_ttyio_ldisc_open(struct tty_struct *tty) > > { > > struct spk_ldisc_data *ldisc_data; > > --- a/drivers/staging/speakup/spk_types.h > > +++ b/drivers/staging/speakup/spk_types.h > > @@ -169,6 +169,7 @@ struct spk_synth { > > int jiffies; > > int full; > > int ser; > > > + char *dev_name; > > const ? This becomes the target of module_param in following patch. It complains when set to const. Thanks! Okash