From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by befuddled.reisers.ca (Postfix, from userid 65534) id B31C31F0C4A; Thu, 26 Jan 2017 03:24:39 -0500 (EST) Received: from mail-qt0-x22f.google.com (mail-qt0-x22f.google.com [IPv6:2607:f8b0:400d:c0d::22f]) by befuddled.reisers.ca (Postfix) with ESMTPS id 477411F0C3A for ; Thu, 26 Jan 2017 03:24:38 -0500 (EST) Received: by mail-qt0-x22f.google.com with SMTP id w20so4502885qtb.1 for ; Thu, 26 Jan 2017 00:24:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=JMP/UoVnfuteIIDhaLhnVqsMkKwVvFTC2ajQwpIqZuY=; b=YBF2XI+sqS5inejCLRgxgHu56DEyQK6NkQZYP7MkRfuhg6da+b6u7dNLmXrhV+mQ0S P3r/Kdou0ft1OQ+yT2tfh54yiPFF6KZyn94KvO7gexmdhjAfp1cratRTsg4ANKhhb1+5 ZIBo/wOfyT07GbFeyZ4LrJls8L2pctbJ4pL7/xWuou24GmcJ7iuXP0MTTDhxpflWqXG5 eO8pkfMpKkrMPcwn3QrDoAlnou3kX1hD6/5Kdi0a+uz5RF2zAHRe2BhiAepPsYEQ8E86 mWSCgObgm3dpZOpr8KkYL2oW8eEEpmsNLmI8KfkBTK4vUjSxashywMK7rfmfT9qMfVWP C6CQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=JMP/UoVnfuteIIDhaLhnVqsMkKwVvFTC2ajQwpIqZuY=; b=VfknqKbZkZF32YD9z344D8CTuq83z/tM8mbVtDcem7kJBzZxiutqdk7MURxPWF/Z0D 9AvnQ2guQuYpj2DRU3xbNrYXyoVGcapM9AYAUSvcoWBJ1BbYWV7Bv0JZAppXf0ABPPHY ntNov/5QMNP0aJHgvjt/x291dtny7nhyka0ZwlalJaCHkE5RaDTFJBC3yJXo2guNRlQd Q4GCoGFOGpYn5a99j7L98JoATDF5Ozp6sMEe+ws5MwuslwcKk1huDsMMjIAlRhEmOZLF HR5tFEQZvHmff8nIHzinzpVL43nUeZYG3VYzSO4kbDwTEj2NAKBEOk6gkIv/m+KSd7AX ibbA== X-Gm-Message-State: AIkVDXL9MjqQS3sUQLFjDVG2+9iSRL63zu9yzO1GEbe6sIznCbSmFTDXapgms+VehFUZ7j2lj3QnzNl5BzriMA== X-Received: by 10.55.100.146 with SMTP id y140mr1446119qkb.108.1485419069871; Thu, 26 Jan 2017 00:24:29 -0800 (PST) MIME-Version: 1.0 Received: by 10.200.44.8 with HTTP; Thu, 26 Jan 2017 00:24:29 -0800 (PST) In-Reply-To: <20170126001801.GQ3119@var.home> References: <20161220010836.GN2895@var.home> <20170124083045.GN2695@var.home> <20170126001801.GQ3119@var.home> From: Okash Khawaja Date: Thu, 26 Jan 2017 08:24:29 +0000 Message-ID: Subject: Re: Line discipline To: Samuel Thibault Cc: "Speakup is a screen review system for Linux." Content-Type: text/plain; charset=UTF-8 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 X-BeenThere: speakup@linux-speakup.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: "Speakup is a screen review system for Linux." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 26 Jan 2017 08:24:39 -0000 Hi, On Thu, Jan 26, 2017 at 12:18 AM, Samuel Thibault wrote: > Hello, > > Okash Khawaja, on Tue 24 Jan 2017 21:52:26 +0000, wrote: >> >> except for problem when unloading speakup.ko - it is in use so can't >> >> be unloaded. I have just got this so investigating it. > > Very probably a missing thing at speakup_dummy removal time. > >> +static void speakup_ldisc_close(struct tty_struct *tty) >> +{ >> + pr_warn("speakup_test_close()\n"); > > Does it get called at speakup_dummy removal time? No > >> +static void release_ldisc(void) >> +{ > > Does it get called at speakup_dummy removal time? Yes > >> @@ -421,6 +533,10 @@ void synth_release(void) >> struct var_t *var; >> unsigned long flags; >> >> + // okashTODO: maybe speakup_tty should be part of synth. >> + >> + release_ldisc(); > > Mmm, I believe calling release_ldisc() rather belongs to the release > method of the synths. And notably: > >> @@ -432,7 +548,7 @@ void synth_release(void) >> sysfs_remove_group(speakup_kobj, &synth->attributes); >> for (var = synth->vars; var->var_id != MAXVARS; var++) >> speakup_unregister_var(var->var_id); >> - spk_stop_serial_interrupt(); >> +// spk_stop_serial_interrupt(); >> synth->release(); > > The spk_stop_serial_interrupt() call should be moved into > spk_serial_release, accent_release, dtpc_release, dtlk_release, and > keynote_release, and we'd have another function like spk_serial_release > for the tty case. Sure, absolutely. I hacked this together just to test it in action so it's not final yet :) > > Samuel