Subject: bug#77232: [PATCH] Allow also to get attributes of the terminal line

From: Philipp Stephani <[email-masked]>
Date: Tue, 25 Mar 2025 17:22:22 +0100

> Am 25.03.2025 um 16:24 schrieb Dr. Werner Fink <[email-masked]>:
> 
> On 2025/03/25 16:06:39 +0100, Philipp Stephani wrote:
>>>> #endif
>>>> 
>>>> +/* https://github.com/torvalds/linux/commit/9651fcedf7b92d3f7f1ab179e8ab55b85ee10fc1 */
>>>> +#ifndef MAP_DROPPABLE
>>>> +#define MAP_DROPPABLE 0x0
>> 
>> Shouldn't this be 0x08? At least that's how it's defined in mman.h.
> 
> If the kernel does not know (means header does not know) we should not
> set an unknown flags as this will fail also (IMHO).
> Only if older header files are used in combination with newer kernel
> we would see the current behaviour.

The code in question doesn't actually call mmap, it creates a syscall filter that tests whether any unknown flags are set.  Basically
  if ((flags & ~known_flags) != 0) abort();
So putting something into known_flags that might not be known to the kernel when Emacs is run is harmless.  In fact, it's beneficial for the case where the mman.h that's used when compiling seccomp-filter.c is older than the kernel that will be used to run Emacs.