Re: [PATCHv3] tty: Set correct tty name in 'active' sysfs attribute

From: David Herrmann
Date: Thu Feb 27 2014 - 06:33:10 EST


Hi

On Thu, Feb 27, 2014 at 12:16 PM, Kay Sievers <kay@xxxxxxxx> wrote:
> On Tue, Feb 25, 2014 at 10:38 AM, David Herrmann <dh.herrmann@xxxxxxxxx> wrote:
>> On Tue, Feb 25, 2014 at 8:51 AM, Hannes Reinecke <hare@xxxxxxx> wrote:
>
>>> Positive?
>>> I thought this was precisely the problem, ->device() changing the
>>> index '0' into something non-zero.
>>> The reports we had were that the line 'tty0' changed into 'tty1'.
>>> Hence ->device() converted cs[i]->index (which is '0') into index
>>> (which is '1').
>>> Hence the check would be correct, wouldn't it?
>>
>> If "cs[i]" points to tty0, then cs[i]->index is 0. If you call
>> ->device(), it will store 1 (or !=0) in "index". Thus, "(driver &&
>> (index > 0))" will be true and you will write tty1 into the file
>> instead of tty0. So you don't want to check whether the new value is
>> non-zero, but whether the *previous* value was 0, turning this into:
>>
>> if (driver && (cs[i]->index > 0 || driver->major != TTY_MAJOR))
>>
>> So loosely speaking, we use the new code only for devices which either
>> are not a VT or have an idx > 0. Otherwise, we use our fallback.
>
> Hannes, David, care to update the patch to do that? It all sounds fine
> to me. And we should get this merged again.

I have picked it up and resent a fixed patch. I screwed up the version
field, so it's called v3 again.. sorry.

Thanks
David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/