|
Message-ID: <CAKwRgPVSNuqiGo9MghzhWLyg8w-Y2R0EfuaU=1S3cAKTaDvTBw@mail.gmail.com>
Date: Mon, 24 Jun 2019 14:41:16 +0530
From: bharath appali <bharath.appali@...il.com>
To: musl@...ts.openwall.com
Subject: Requesting details about making `cpu_set_t` unguarded by `_GNU_SOURCE`
Hi I'm trying to port some of my programs from glibc to MUSL libc, and i
have faced problems with `cpu_set_t` struct (I was required to add
`_GNU_SOURCE` definition to work on MUSL).
In glibc i see that the struct `cpu_set_t` is not dependent on
`_GNU_SOURCE` or `_USE_GNU`
on glibc 2.17 :
```
Name : glibc
Arch : i686
Version : 2.17
```
bits/sched.h:125 (on glibc):
```
/* Data structure to describe CPU mask. */
typedef struct
{
__cpu_mask __bits[__CPU_SETSIZE / __NCPUBITS];
} cpu_set_t;
```
Here `cpu_set_t` is not dependent on `_USE_GNU`(_GNU_SOURCE)
sched.h:79 (on musl) :
```
#ifdef _GNU_SOURCE
#define CSIGNAL 0x000000ff
.
.
.
#define CLONE_IO 0x80000000
int clone (int (*)(void *), void *, int, void *, ...);
.
.
.
void free(void *);
typedef struct cpu_set_t { unsigned long __bits[128/sizeof(long)]; }
cpu_set_t;
```
Here `cpu_set_t` is exposed only if its defined `_GNU_SOURCE`
I would like to know if there are any challenges to expose `cpu_set_t`
irrespective of `_GNU_SOURCE` definition.
If its possible to define `cpu_set_t` by default(independent of
`_GNU_SOURCE`), It will be helpful to have compatibility with glibc.
-With regards,
Bharath Appali
Content of type "text/html" skipped
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.