1#         $NetBSD: files.kern,v 1.61 2024/12/22 23:24:20 riastradh Exp $
2
3#
4# kernel sources
5#
6define    kern:     cprng_fast, machdep, uvm
7defflag   opt_heartbeat.h                         HEARTBEAT
8defflag   opt_kern.h                              KERN
9defflag   opt_script.h                            SETUIDSCRIPTS FDSCRIPTS
10defflag                                           KASLR
11defparam opt_cnmagic.h                            CNMAGIC
12defparam heartbeat.h                              HEARTBEAT_MAX_PERIOD_DEFAULT
13
14file      conf/debugsyms.c              kern
15file      conf/param.c                            kern
16file      kern/bufq_disksort.c                    bufq_disksort
17file      kern/bufq_fcfs.c              bufq_fcfs
18file      kern/bufq_priocscan.c                   bufq_priocscan
19file      kern/bufq_readprio.c                    bufq_readprio | new_bufq_strategy
20file      kern/compat_stub.c            kern
21file      kern/core_elf32.c             exec_elf32 & coredump
22file      kern/core_elf64.c             exec_elf64 & coredump
23file      kern/core_netbsd.c            coredump
24file      kern/cnmagic.c                          kern
25file      kern/exec_aout.c              exec_aout
26file      kern/exec_ecoff.c             exec_ecoff
27file      kern/exec_elf32.c             exec_elf32
28file      kern/exec_elf64.c             exec_elf64
29file      kern/exec_script.c            exec_script
30file      kern/exec_subr.c              kern
31file      kern/init_main.c              kern
32file      kern/init_sysctl.c            kern
33file      kern/init_sysctl_base.c                 kern
34file      kern/init_sysent.c            kern
35file      kern/kern_acct.c              kern
36file      kern/kern_auth.c              kern
37file      kern/kern_cfglock.c           kern
38file      kern/kern_clock.c             kern
39file      kern/kern_condvar.c           kern
40file      kern/kern_core.c              coredump
41file      kern/kern_cpu.c                         kern
42
43#kern/kern_ctf.c is only needed as part of dtrace_fbt module
44#file     kern/kern_ctf.c                         kdtrace_hooks
45
46file      kern/kern_descrip.c           kern
47file      kern/kern_entropy.c           kern
48file      kern/kern_event.c             kern
49file      kern/kern_exec.c              kern
50file      kern/kern_exit.c              kern
51file      kern/kern_fork.c              kern
52file      kern/kern_idle.c              kern
53file      kern/kern_heartbeat.c                   kern & heartbeat
54file      kern/kern_hook.c              kern
55file      kern/kern_kthread.c           kern
56file      kern/kern_ktrace.c            ktrace
57file      kern/kern_ktrace_vfs.c                  ktrace
58file      kern/kern_ksyms.c             ksyms | ddb | modular needs-flag
59file      kern/kern_lock.c              kern
60file      kern/kern_lwp.c                         kern
61file      kern/kern_malloc.c            kern
62file      kern/kern_module.c            kern
63file      kern/kern_module_hook.c                 kern
64file      kern/kern_module_vfs.c                  kern
65file      kern/kern_mutex.c             kern
66file      kern/kern_mutex_obj.c                   kern
67file      kern/kern_fileassoc.c                   fileassoc
68file      kern/kern_ntptime.c           kern
69file      kern/kern_pax.c                         pax_mprotect | pax_segvguard | pax_aslr
70file      kern/kern_physio.c            kern
71file      kern/kern_pmf.c                         kern
72file      kern/kern_proc.c              kern
73file      kern/kern_prot.c              kern
74file      kern/kern_ras.c                         kern
75file      kern/kern_rate.c              kern
76file      kern/kern_reboot.c            kern
77file      kern/kern_resource.c                    kern
78file      kern/kern_runq.c              kern
79file      kern/kern_rwlock.c            kern
80file      kern/kern_rwlock_obj.c                  kern
81file      kern/kern_scdebug.c           kern
82file      kern/kern_sdt.c                         kdtrace_hooks
83file      kern/kern_crashme.c           kern
84file      kern/kern_sig.c                         kern
85file      kern/kern_sleepq.c            kern
86file      kern/kern_softint.c           kern
87file      kern/kern_ssp.c                         kern
88file      kern/kern_stub.c              kern
89file      kern/kern_subr.c              kern
90file      kern/kern_synch.c             kern
91file      kern/kern_syscall.c           kern
92file      kern/kern_sysctl.c            kern
93file      kern/kern_tc.c                          kern
94file      kern/kern_threadpool.c                  kern
95file      kern/kern_time.c              kern
96file      kern/kern_timeout.c           kern
97file      kern/kern_turnstile.c                   kern
98file      kern/kern_todr.c              kern
99file      kern/kern_uidinfo.c           kern
100file      kern/kern_uuid.c              kern
101file      kern/kgdb_stub.c              kgdb
102file      kern/sched_4bsd.c             sched_4bsd
103file      kern/sched_m2.c                         sched_m2
104file      kern/subr_acl_posix1e.c                 kern
105file      kern/subr_acl_nfs4.c                    kern
106file      kern/subr_asan.c              kasan
107file      kern/subr_autoconf.c                    kern
108file      kern/subr_blist.c             vmswap
109file      kern/subr_bufq.c              kern
110file      kern/subr_callback.c                    kern
111file      kern/subr_cprng.c             kern
112file      kern/subr_cpu.c                         kern
113file      kern/subr_cpufreq.c           kern
114file      kern/subr_copy.c              kern
115file      kern/subr_csan.c              kcsan
116file      kern/subr_debug.c             debug
117file      kern/subr_device.c            kern
118file      kern/subr_devsw.c             kern
119file      kern/subr_disk.c              kern
120file      kern/subr_disklabel.c                   kern
121defflag opt_disklabel.h                           DISKLABEL_EI
122file      kern/subr_disk_open.c                   kern
123file      kern/subr_emul.c              kern
124file      kern/subr_evcnt.c             kern
125file      kern/subr_exec_fd.c           kern
126file      kern/subr_extent.c            kern
127file      kern/subr_fault.c             fault
128file      kern/subr_hash.c              kern
129file      kern/subr_humanize.c                    kern
130file      kern/subr_interrupt.c                   kern
131file      kern/subr_iostat.c            kern
132file      kern/subr_ipi.c                         kern
133file      kern/subr_kcpuset.c           kern
134file      kern/subr_kcov.c              kcov
135defflag   opt_kmem.h                              KMEM_SIZE
136file      kern/subr_kmem.c              kern
137file      kern/subr_kobj.c              kern
138file      kern/subr_kobj_vfs.c                    kern
139file      kern/subr_localcount.c                  kern
140file      kern/subr_lockdebug.c                   kern
141file      kern/subr_log.c                         kern
142file      kern/subr_lwp_specificdata.c  kern
143file      kern/subr_msan.c              kmsan
144file      kern/subr_once.c              kern
145file      kern/subr_optstr.c            kern
146file      kern/subr_pcq.c                         kern
147file      kern/subr_pcu.c                         kern
148file      kern/subr_percpu.c            kern
149file      kern/subr_pool.c              kern
150file      kern/subr_prf.c                         kern
151file      kern/subr_prof.c              kern
152file      kern/subr_pserialize.c                  kern
153file      kern/subr_psref.c             kern
154file      kern/subr_specificdata.c      kern
155file      kern/subr_tftproot.c                    tftproot
156file      kern/subr_time.c              kern
157file      kern/subr_time_arith.c                  kern
158file      kern/subr_thmap.c             kern
159file      kern/subr_userconf.c                    userconf
160file      kern/subr_vmem.c              kern
161file      kern/subr_workqueue.c                   kern
162file      kern/subr_xcall.c             kern
163file      kern/sys_aio.c                          aio
164file      kern/sys_descrip.c            kern
165file      kern/sys_epoll.c              kern
166file      kern/sys_eventfd.c            kern
167file      kern/sys_futex.c              kern
168file      kern/sys_generic.c            kern
169file      kern/sys_getrandom.c                    kern
170file      kern/sys_memfd.c              kern
171file      kern/sys_module.c             kern
172file      kern/sys_mqueue.c             mqueue
173file      kern/sys_lwp.c                          kern
174file      kern/sys_pipe.c                         !pipe_socketpair
175file      kern/sys_process.c            ptrace_hooks | ktrace
176file      kern/sys_process_lwpstatus.c  kern
177file      kern/sys_ptrace.c             ptrace
178file      kern/sys_ptrace_common.c      ptrace | procfs
179file      kern/sys_pset.c                         kern
180file      kern/sys_select.c             kern
181file      kern/sys_sig.c                          kern
182file      kern/sys_sched.c              kern
183file      kern/sys_socket.c             kern
184file      kern/sys_timerfd.c            kern
185file      kern/syscalls.c                         syscall_debug | kdtrace_hooks
186file      kern/sysv_ipc.c                         sysvshm | sysvsem | sysvmsg
187file      kern/sysv_msg.c                         sysvmsg
188file      kern/sysv_sem.c                         sysvsem
189file      kern/sysv_shm.c                         sysvshm
190file      kern/tty.c                              kern
191file      kern/tty_conf.c                         kern
192file      kern/tty_bsdpty.c             compat_bsdpty
193file      kern/tty_pty.c                          pty                           needs-flag
194file      kern/tty_ptm.c                          pty
195file      kern/tty_subr.c                         kern
196file      kern/tty_tty.c                          kern
197file      kern/uipc_accf.c              kern
198file      kern/uipc_domain.c            kern
199file      kern/uipc_mbuf.c              kern
200file      kern/uipc_mbufdebug.c                   kern & ether & ddb
201file      net/link_proto.c              kern      # XXX
202file      kern/uipc_proto.c             kern
203file      kern/uipc_sem.c                         kern
204file      kern/uipc_socket.c            kern
205file      kern/uipc_socket2.c           kern
206file      kern/uipc_syscalls.c                    kern
207file      kern/uipc_usrreq.c            kern
208
209define    vfs: kern
210file      kern/vfs_acl.c                          vfs
211file      kern/vfs_bio.c                          vfs
212file      kern/vfs_cache.c              vfs
213file      kern/vfs_cwd.c                          vfs
214file      kern/vfs_dirhash.c            vfs
215file      kern/vfs_getcwd.c             vfs
216file      kern/vfs_hooks.c              vfs
217file      kern/vfs_init.c                         vfs
218file      kern/vfs_lockf.c              vfs
219file      kern/vfs_lookup.c             vfs
220file      kern/vfs_mount.c              vfs
221file      kern/vfs_quotactl.c           vfs
222file      kern/vfs_subr.c                         vfs
223file      kern/vfs_syscalls.c           vfs
224file      kern/vfs_trans.c              vfs
225file      kern/vfs_vnode.c              vfs
226file      kern/vfs_vnops.c              vfs
227file      kern/vfs_wapbl.c              wapbl
228file      kern/vfs_xattr.c              vfs
229file      kern/vnode_if.c                         vfs
230file      miscfs/deadfs/dead_vfsops.c   vfs
231file      miscfs/deadfs/dead_vnops.c    vfs
232file      miscfs/fifofs/fifo_vnops.c    vfs
233file      miscfs/genfs/genfs_io.c                 vfs
234file      miscfs/genfs/genfs_rename.c   vfs
235file      miscfs/genfs/genfs_vfsops.c   vfs
236file      miscfs/genfs/genfs_vnops.c    vfs
237
238define    layerfs
239file      miscfs/genfs/layer_subr.c     layerfs
240file      miscfs/genfs/layer_vfsops.c   layerfs
241file      miscfs/genfs/layer_vnops.c    layerfs
242
243file      miscfs/specfs/spec_vnops.c    vfs
244
245defflag   KUBSAN
246prefix    ../common/lib/libc/misc
247file      ubsan.c                                 kubsan
248prefix
249makeoptions         kubsan    CFLAGS+="-fsanitize=undefined"
250makeoptions         kubsan    CPPFLAGS+="-DACPI_MISALIGNMENT_NOT_SUPPORTED"
251