Merge branch 'master' of /opt/gnu-chroot/home/dtbartle/glibc-opensolaris
[kopensolaris-gnu/glibc.git] / TODO.opensolaris
1 /usr/include/gnu/stubs-32.h
2
3 ptrace details:
4   /proc/PID/{as,ctl,status,sigact,psinfo}
5   PTRACE_PEEK, PTRACE_PEEKDATA: pread(as)
6   PTRACE_PEEKUSR: user_t
7   PTRACE_POKETEXT, PTRACE_POKEDATA: pwrite(as)
8   PTRACE_POKEUSR: user_t
9   PTRACE_CONT:
10   PTRACE_KILL:
11
12   ctl is managed via PC* constants (e.g. PCSTRACE)
13     write command (long) followed by struct
14
15 These are solaris extensions that we should implement:
16   door_*
17   modctl
18   _sharefs
19   _cladm (sys/cladm.h)
20   exportfs, nfs_getfh, nfssvc [SYS_nfssys] (sys/nfssec.h) [maybe not]
21   lgrpsys
22   gethomelgroup
23   atomic_*
24   membar_*
25
26 Insert into headers:
27   resolvpath (unistd.h)
28   issetugid (unistd.h)
29   strlcpy, strlcat (string.h or strings.h)
30   getvmusage (sys/vm_usage.h)
31   uucopy, uucopystr (string.h or strings.h)
32   sysi86 (sys/sysi86.h - see below)
33   str2sig, sig2str (signal.h)
34
35 INVALID_NOT_TERMINATED_TD_P expects to succeed on terminated threads
36
37 More __builtin_expect's
38
39 Since we now use an entirely libc-based rwlock implementation we should be able
40   to support PTHREAD_RWLOCK_PREFER_READER_NP, PTHREAD_RWLOCK_PREFER_WRITER_NP,
41   and PTHREAD_RWLOCK_PREFER_WRITER_NONRECURSIVE_NP.
42
43 More clocks in pthread_condattr_setclock
44
45 List of CDDL headers needed to compile random stuff:
46   sys/dlpi.h [Should be LGPL'd]
47   sys/sysi86.h [Should be LGPL'd]
48   sys/ctf_api.h [libctf]
49   libctf.h [libctf]
50   sys/ctf.h [libctr[
51   libproc.h [libproc]
52   libelf.h [libelf]
53   gelf.h [libelf; need to add Elf64_Cap]
54   sys/tiuser.h
55   sys/tpicommon.h
56   sys/timod.h
57   netconfig.h [libnsl]
58   sys/netconfig.h [libnsl]
59   netdir.h [libnsl]
60 Use cond_t data field for broadcast seqence
61
62 Use timer_* syscalls
63
64 Instead of AT_SECURE we can use AF_SUN_SETUGID [AT_SUN_AUXFLAGS]
65
66 We can't _exit if the main thread goes away since we have daemon threaeds (THR_DAEMON)
67
68 The following are needed by xorg:
69
70   sys/vuid_event.h
71   sys/vuid_queue.h
72   sys/vuid_state.h
73   sys/vuid_store.h
74   sys/vuid_wheel.h
75   sys/msio.h
76   sys/psw.h
77   sys/spl.h
78   sys/audio.h
79   sys/audioio.h
80   ia32/sys/asm_linkage.h
81   sys/sysi86.h
82   sys/kbd.h
83
84 Implement libc-private __priv interface:
85
86     void __priv_free_info (void *data);
87
88     void * __priv_getbynum (priv_data_t *data, int num);
89
90     priv_data_t * __priv_getdata (void);
91
92     int __priv_getsetbyname (const char *name);
93
94     __priv_getsetbynum (priv_data_t *data, int num);
95
96     priv_data_t * __priv_parse_info (priv_impl_info_t *pii);