Re: [PATCH -next 05/10] tty: Document defunct ASYNC_* bits in uapi header

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/17/2014, 02:44 PM, Peter Hurley wrote:
> Hi Jiri,
> 
> On 10/17/2014 04:46 AM, Jiri Slaby wrote:
>> On 10/16/2014, 10:54 PM, Peter Hurley wrote:
>>> Note the serial_struct flags for which the kernel ignores and performs
>>> no action. The flags cannot be removed since they form part of the
>>> userspace interface via the TIOCSSERIAL/TIOCGSERIAL ioctls.
>>
>> Hello,
>>
>> would it make sense to mark them deprecated somehow? At build time
> 
> A build warning when the macro is expanded would be best, but my
> c-preprocessor-fu is terrible, so I have no idea how to make that work.

We can define a deprecated type like:

typedef __u32 __attribute__((deprecated)) depr_tty_t

and then do define:

#define ASYNCB_FLAG_1 (depr_tty_t)1
#define ASYNCB_FLAG_2 (depr_tty_t)2

Etc.

However, I do not know if it is desirable AND whether all compilers out
there used in userspace support that attribute.

>> or
>> at least warn in the serial core that "current->comm is using a
>> deprecated flag"_ratelimited()?
> 
> If we just print the message at TIOCSSERIAL if any of the deprecated
> bits are set, that would be ok. Probably the only issue would be that
> setserial could cause this message at will, so log flooding would be
> a concern.

That's why _ratelimited(). So something like the patch attached. But it
needs to be put to a separate function, out of the line.

/me currently builds a kernel to see who, if anybody, uses the flags on
a up-to-date system...

thanks,
-- 
js
suse labs

Attachment: 0001-tty-warn-on-deprecated-flags.patch
Description: application/mbox


[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux