Received: by 2002:a25:ad19:0:0:0:0:0 with SMTP id y25csp651889ybi; Fri, 12 Jul 2019 02:27:14 -0700 (PDT) X-Google-Smtp-Source: APXvYqywKo0AKbTbg4CQvKaiWoI+sh5J1pEaMMh3V8T+B1YyGdUpU1qPZ1TuwroxwYX8b9HWKAOk X-Received: by 2002:a63:5550:: with SMTP id f16mr9937659pgm.426.1562923634078; Fri, 12 Jul 2019 02:27:14 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1562923634; cv=none; d=google.com; s=arc-20160816; b=C9ua3JO4t/pufTVfwbfIE5ixknlJOTzHuPUKIE+HHxLw6wIyj7G6oQzXNJ+AgXssR0 MouJUlhTfsvl+SG7xWnTHPWIt3ILFPqfoWMmJCukUXpklkOzNtkKasGnKvJUMITmb4Tl aWerZwy+xpmSoH21IySp2OLhNLWIujZFyaPw+F/L2UNTPPi2NcxZOuIp+Sw34dkYz5y4 0cnxDwrV9xZSf0aYWox5Jou0wJ8c2OBVJMgbAbGPbz7+8KKiR9ZDr5iSOz7FfC4WBNsX x31UKOgpwrpqsKzD/ePaVCv15k7ie8piVluJE69SRiurFexAPg+RJSLxDw7nfEemP8nJ xnyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=w7AN4MJaiTp8S5G665yzl5pOQEI9Cs2hF/NrwGT6rvM=; b=ZUA53V/d/HfvN9jx8OkgGRBt5SCZ2YxGhbyhWhion9iMkWgVW5WDDK2osgK93HTTLo S/qbydniO3TS3MAqtsZBPbChCpQZtVQmOD01W3y95MJoJnNFZ1MsS1vJ3zRPsdT6DAxq 6HLwrDhGGxn2kafvn8eSfIIn6py6IVafJjYxjfWahYNshgYFJiG3x0ck0Y8T2x5LttGC tEL/TZdY4nxkUwtw4+6l4+i4AFcbOAdAHY4uNoY/7cNyuXPtNP7IjJmXdW8Nc/rpvof5 ch3QM3+nHeYIj1c0mFm5H7FLtz4/AvyksNATtwx4xv1ez+AGvpxiUeBOImKz2eQE9vdJ gU4w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=FhXpkQ8X; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id j185si7642469pfb.107.2019.07.12.02.26.58; Fri, 12 Jul 2019 02:27:14 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=FhXpkQ8X; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726601AbfGLJYo (ORCPT + 99 others); Fri, 12 Jul 2019 05:24:44 -0400 Received: from mail-ot1-f67.google.com ([209.85.210.67]:34138 "EHLO mail-ot1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725987AbfGLJYn (ORCPT ); Fri, 12 Jul 2019 05:24:43 -0400 Received: by mail-ot1-f67.google.com with SMTP id n5so8834324otk.1 for ; Fri, 12 Jul 2019 02:24:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=w7AN4MJaiTp8S5G665yzl5pOQEI9Cs2hF/NrwGT6rvM=; b=FhXpkQ8XZkvwdMgwg6g3SXroGxcGUbsDXcjsUIUJuWahxcbGAhvdAew9hRDPltiWY0 jvrpE2Jk58tHdggs569cvJY+w9XG9wjyrsUaSm4u4ZxFAgAusor+/lUkmlOO/6Nhx9PT zKMnUHmKl/5uoWKYLhz+KIXmBGhYahD7qp2yPpeyzt36U1l78A5GaGG5XuLF5qcH4rRJ F+/AiZSG74SUNnLWt2pvE2SZrZfbosrIXecoognl2mQI54dYNgemJtIcy5g3vKs3Cnal QkMC0iiKrgb72k+bjmrou2BeJWXqvE35hwx/6EUWJ8cUMEb0GXEZI8EFn4eUBKoen++j z/OA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=w7AN4MJaiTp8S5G665yzl5pOQEI9Cs2hF/NrwGT6rvM=; b=ovIenlgUuHBwaE+ByX3iFmJL/ie79ksuOCDE7m/xwbT37aGjrMeudR3Ky836fPLokv ZLZTod+kjD3pfC6BrtOW/MVCDrISVTm3pfWYMvf+heOqGlFXknizE005Xa6M5jt0TA8K tcxvQT7wTrf8pPlldI/fhCy7htUjFc7t08gMufSs2hcPLfDmjERIQz4WALuFC747TWcB 3wTSd2AFFlkCRWcTXTdOC1vmLiBSOjzWr1QBzFjcFqL08XfgrBg2OyMguCgOk51UzCZA W0ulrvuH3gSwh1JSjHzGcLvJtoQmlkVb23rzd4aAUkE1LdY/UNqJMax4ov13Og/sm8GO WV1g== X-Gm-Message-State: APjAAAV2hU1zspY/tU1zVlgjKgso5Pf2ejC2ZVvp0bWLKy+WxZZpKu08 jr3kPzdxNpNRPTEngbpGP6U8kDxdVn+fPdGjD80= X-Received: by 2002:a9d:76da:: with SMTP id p26mr7713787otl.311.1562923482436; Fri, 12 Jul 2019 02:24:42 -0700 (PDT) MIME-Version: 1.0 References: <20190315130035.6a8f16e9@narunkot> <20190316031831.GA2499@kroah.com> <20190706200857.22918345@narunkot> <20190707065710.GA5560@kroah.com> <20190712083819.GA8862@kroah.com> In-Reply-To: <20190712083819.GA8862@kroah.com> From: Okash Khawaja Date: Fri, 12 Jul 2019 10:24:31 +0100 Message-ID: Subject: Re: Staging status of speakup To: Greg Kroah-Hartman Cc: devel@driverdev.osuosl.org, Kirk Reiser , Simon Dickson , "Speakup is a screen review system for Linux." , linux-kernel@vger.kernel.org, Samuel Thibault , Christopher Brannon Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, Jul 12, 2019 at 9:38 AM Greg Kroah-Hartman wrote: > > On Sun, Jul 07, 2019 at 08:57:10AM +0200, Greg Kroah-Hartman wrote: > > On Sat, Jul 06, 2019 at 08:08:57PM +0100, Okash Khawaja wrote: > > > On Fri, 15 Mar 2019 20:18:31 -0700 > > > Greg Kroah-Hartman wrote: > > > > > > > On Fri, Mar 15, 2019 at 01:01:27PM +0000, Okash Khawaja wrote: > > > > > Hi, > > > > > > > > > > We have made progress on the items in TODO file of speakup driver in > > > > > staging directory and wanted to get some clarity on the remaining > > > > > items. Below is a summary of status of each item along with the > > > > > quotes from TODO file. > > > > > > > > > > 1. "The first issue has to do with the way speakup communicates > > > > > with serial ports. Currently, we communicate directly with the > > > > > hardware ports. This however conflicts with the standard serial > > > > > port drivers, which poses various problems. This is also not > > > > > working for modern hardware such as PCI-based serial ports. Also, > > > > > there is not a way we can communicate with USB devices. The > > > > > current serial port handling code is in serialio.c in this > > > > > directory." > > > > > > > > > > Drivers for all external synths now use TTY to communcate with the > > > > > devices. Only ones still using direct communication with hardware > > > > > ports are internal synths: acntpc, decpc, dtlk and keypc. These are > > > > > typically ISA cards and generally hardware which is difficult to > > > > > make work. We can leave these in staging. > > > > > > > > Ok, that's fine. > > > > > > > > > 2. "Some places are currently using in_atomic() because speakup > > > > > functions are called in various contexts, and a couple of things > > > > > can't happen in these cases. Pushing work to some worker thread > > > > > would probably help, as was already done for the serial port > > > > > driving part." > > > > > > > > > > There aren't any uses of in_atomic anymore. Commit d7500135802c > > > > > "Staging: speakup: Move pasting into a work item" was the last one > > > > > that removed such uses. > > > > > > > > Great, let's remove that todo item then. > > > > > > > > > 3. "There is a duplication of the selection functions in > > > > > selections.c. These functions should get exported from > > > > > drivers/char/selection.c (clear_selection notably) and used from > > > > > there instead." > > > > > > > > > > This is yet to be done. I guess drivers/char/selection.c is now > > > > > under drivers/tty/vt/selection.c. > > > > > > > > Yes, someone should update the todo item :) > > > > > > > > > 4. "The kobjects may have to move to a more proper place in /sys.The > > > > > discussion on lkml resulted to putting speech synthesizers in the > > > > > "speech" class, and the speakup screen reader itself > > > > > into /sys/class/vtconsole/vtcon0/speakup, the nasty path being > > > > > handled by userland tools." > > > > > > > > > > Although this makes logical sense, the change will mean changing > > > > > interface with userspace and hence the user space tools. I tried to > > > > > search the lkml discussion but couldn't find it. It will be good to > > > > > know your thoughts on this. > > > > > > > > I don't remember, sorry. I can review the kobject/sysfs usage if you > > > > think it is "good enough" now and see if I find anything > > > > objectionable. > > > > > > > > > Finally there is an issue where text in output buffer sometimes gets > > > > > garbled on SMP systems, but we can continue working on it after the > > > > > driver is moved out of staging, if that's okay. Basically we need a > > > > > reproducer of this issue. > > > > > > > > > > In addition to above, there are likely code style issues which will > > > > > need to be fixed. > > > > > > > > > > We are very keen to get speakup out of staging both, for settling > > > > > the driver but also for getting included in distros which build > > > > > only the mainline drivers. > > > > > > > > That's great, I am glad to see this happen. How about work on the > > > > selection thing and then I can review the kobject stuff in a few > > > > weeks, and then we can start moving things for 5.2? > > > > > > Hi Greg, > > > > > > Apologies for the delay. I de-duplicated selection code in speakup to > > > use code that's already in kernel (commit ids 496124e5e16e and > > > 41f13084506a). Following items are what remain now: > > > > > > 1. moving kobjects location > > > 2. fixing garbled text > > > > > > I couldn't replicate garbled text but Simon (also in CC list) is > > > looking into it. > > > > > > Can you please advise on the way forward? > > > > I don't think the "garbled text" is an issue to get this out of staging > > if others do not see this. It can be fixed like any other bug at a > > later point if it is figured out. > > > > The kobject stuff does need to be looked at. Let me carve out some time > > next week to do that and I will let you know what I see/recommend. > > At first glance, this might all be just fine. > > But, I can't quite figure out what some files are doing. No matter > what, you will need Documentation/ABI/ entries for the speakup code for > these sysfs files. > > Can you make up a patch to create a > drivers/staging/speakup/sysfs-speakup file with the needed information? > That way it will be much easier to determine exactly what these sysfs > files do and my review can be easier, and perhaps not needed at all :) Thanks for looking into this. I agree these descriptions will generally be helpful for future also. Will get back to you once it's done. Okash