head	1.139;
access;
symbols
	netbsd-11-0-RC3:1.137
	netbsd-11-0-RC2:1.137
	netbsd-11-0-RC1:1.137
	perseant-exfatfs-base-20250801:1.137
	netbsd-11:1.137.0.2
	netbsd-11-base:1.137
	netbsd-10-1-RELEASE:1.129
	perseant-exfatfs-base-20240630:1.135
	perseant-exfatfs:1.135.0.2
	perseant-exfatfs-base:1.135
	netbsd-8-3-RELEASE:1.122
	netbsd-9-4-RELEASE:1.122
	netbsd-10-0-RELEASE:1.129
	netbsd-10-0-RC6:1.129
	netbsd-10-0-RC5:1.129
	netbsd-10-0-RC4:1.129
	netbsd-10-0-RC3:1.129
	netbsd-10-0-RC2:1.129
	thorpej-ifq:1.134.0.4
	thorpej-ifq-base:1.134
	thorpej-altq-separation:1.134.0.2
	thorpej-altq-separation-base:1.134
	netbsd-10-0-RC1:1.129
	netbsd-10:1.129.0.4
	netbsd-10-base:1.129
	bouyer-sunxi-drm:1.129.0.2
	bouyer-sunxi-drm-base:1.129
	netbsd-9-3-RELEASE:1.122
	thorpej-i2c-spi-conf2:1.124.0.16
	thorpej-i2c-spi-conf2-base:1.124
	thorpej-futex2:1.124.0.14
	thorpej-futex2-base:1.124
	thorpej-cfargs2:1.124.0.12
	thorpej-cfargs2-base:1.124
	cjep_sun2x-base1:1.124
	cjep_sun2x:1.124.0.10
	cjep_sun2x-base:1.124
	cjep_staticlib_x-base1:1.124
	netbsd-9-2-RELEASE:1.122
	cjep_staticlib_x:1.124.0.8
	cjep_staticlib_x-base:1.124
	thorpej-i2c-spi-conf:1.124.0.6
	thorpej-i2c-spi-conf-base:1.124
	thorpej-cfargs:1.124.0.4
	thorpej-cfargs-base:1.124
	thorpej-futex:1.124.0.2
	thorpej-futex-base:1.124
	netbsd-9-1-RELEASE:1.122
	bouyer-xenpvh-base2:1.123
	phil-wifi-20200421:1.123
	bouyer-xenpvh-base1:1.123
	phil-wifi-20200411:1.123
	bouyer-xenpvh:1.123.0.6
	bouyer-xenpvh-base:1.123
	is-mlppp:1.123.0.4
	is-mlppp-base:1.123
	phil-wifi-20200406:1.123
	netbsd-8-2-RELEASE:1.122
	ad-namecache-base3:1.123
	netbsd-9-0-RELEASE:1.122
	netbsd-9-0-RC2:1.122
	ad-namecache-base2:1.123
	ad-namecache-base1:1.123
	ad-namecache:1.123.0.2
	ad-namecache-base:1.123
	netbsd-9-0-RC1:1.122
	phil-wifi-20191119:1.123
	netbsd-9:1.122.0.20
	netbsd-9-base:1.122
	phil-wifi-20190609:1.122
	netbsd-8-1-RELEASE:1.122
	netbsd-8-1-RC1:1.122
	isaki-audio2:1.122.0.18
	isaki-audio2-base:1.122
	pgoyette-compat-merge-20190127:1.122
	pgoyette-compat-20190127:1.122
	pgoyette-compat-20190118:1.122
	pgoyette-compat-1226:1.122
	pgoyette-compat-1126:1.122
	pgoyette-compat-1020:1.122
	pgoyette-compat-0930:1.122
	pgoyette-compat-0906:1.122
	netbsd-7-2-RELEASE:1.118.2.1
	pgoyette-compat-0728:1.122
	netbsd-8-0-RELEASE:1.122
	phil-wifi:1.122.0.16
	phil-wifi-base:1.122
	pgoyette-compat-0625:1.122
	netbsd-8-0-RC2:1.122
	pgoyette-compat-0521:1.122
	pgoyette-compat-0502:1.122
	pgoyette-compat-0422:1.122
	netbsd-8-0-RC1:1.122
	pgoyette-compat-0415:1.122
	pgoyette-compat-0407:1.122
	pgoyette-compat-0330:1.122
	pgoyette-compat-0322:1.122
	pgoyette-compat-0315:1.122
	netbsd-7-1-2-RELEASE:1.118
	pgoyette-compat:1.122.0.14
	pgoyette-compat-base:1.122
	netbsd-7-1-1-RELEASE:1.118
	tls-maxphys-base-20171202:1.122
	matt-nb8-mediatek:1.122.0.12
	matt-nb8-mediatek-base:1.122
	nick-nhusb-base-20170825:1.122
	perseant-stdc-iso10646:1.122.0.10
	perseant-stdc-iso10646-base:1.122
	netbsd-8:1.122.0.8
	netbsd-8-base:1.122
	prg-localcount2-base3:1.122
	prg-localcount2-base2:1.122
	prg-localcount2-base1:1.122
	prg-localcount2:1.122.0.6
	prg-localcount2-base:1.122
	pgoyette-localcount-20170426:1.122
	bouyer-socketcan-base1:1.122
	jdolecek-ncq:1.122.0.4
	jdolecek-ncq-base:1.122
	pgoyette-localcount-20170320:1.122
	netbsd-7-1:1.118.0.8
	netbsd-7-1-RELEASE:1.118
	netbsd-7-1-RC2:1.118
	nick-nhusb-base-20170204:1.122
	netbsd-7-nhusb-base-20170116:1.118
	bouyer-socketcan:1.122.0.2
	bouyer-socketcan-base:1.122
	pgoyette-localcount-20170107:1.122
	netbsd-7-1-RC1:1.118
	nick-nhusb-base-20161204:1.121
	pgoyette-localcount-20161104:1.121
	netbsd-7-0-2-RELEASE:1.118
	nick-nhusb-base-20161004:1.121
	localcount-20160914:1.121
	netbsd-7-nhusb:1.118.0.6
	netbsd-7-nhusb-base:1.118
	pgoyette-localcount-20160806:1.121
	pgoyette-localcount-20160726:1.121
	pgoyette-localcount:1.120.0.2
	pgoyette-localcount-base:1.120
	nick-nhusb-base-20160907:1.120
	nick-nhusb-base-20160529:1.120
	netbsd-7-0-1-RELEASE:1.118
	nick-nhusb-base-20160422:1.120
	nick-nhusb-base-20160319:1.120
	nick-nhusb-base-20151226:1.120
	netbsd-7-0:1.118.0.4
	netbsd-7-0-RELEASE:1.118
	nick-nhusb-base-20150921:1.120
	netbsd-7-0-RC3:1.118
	netbsd-7-0-RC2:1.118
	netbsd-7-0-RC1:1.118
	nick-nhusb-base-20150606:1.120
	nick-nhusb-base-20150406:1.120
	nick-nhusb:1.119.0.2
	nick-nhusb-base:1.119
	netbsd-5-2-3-RELEASE:1.93.4.1
	netbsd-5-1-5-RELEASE:1.93.4.1
	netbsd-6-0-6-RELEASE:1.107
	netbsd-6-1-5-RELEASE:1.107
	netbsd-7:1.118.0.2
	netbsd-7-base:1.118
	yamt-pagecache-base9:1.114
	yamt-pagecache-tag8:1.106.2.2
	netbsd-6-1-4-RELEASE:1.107
	netbsd-6-0-5-RELEASE:1.107
	tls-earlyentropy:1.112.0.2
	tls-earlyentropy-base:1.118
	riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.112
	riastradh-drm2-base3:1.112
	netbsd-6-1-3-RELEASE:1.107
	netbsd-6-0-4-RELEASE:1.107
	netbsd-5-2-2-RELEASE:1.93.4.1
	netbsd-5-1-4-RELEASE:1.93.4.1
	netbsd-6-1-2-RELEASE:1.107
	netbsd-6-0-3-RELEASE:1.107
	netbsd-5-2-1-RELEASE:1.93.4.1
	netbsd-5-1-3-RELEASE:1.93.4.1
	rmind-smpnet-nbase:1.115
	netbsd-6-1-1-RELEASE:1.107
	riastradh-drm2-base2:1.109
	riastradh-drm2-base1:1.109
	riastradh-drm2:1.109.0.6
	riastradh-drm2-base:1.109
	rmind-smpnet:1.109.0.4
	rmind-smpnet-base:1.115
	netbsd-6-1:1.107.0.14
	netbsd-6-0-2-RELEASE:1.107
	netbsd-6-1-RELEASE:1.107
	khorben-n900:1.109.0.2
	netbsd-6-1-RC4:1.107
	netbsd-6-1-RC3:1.107
	agc-symver:1.108.0.4
	agc-symver-base:1.108
	netbsd-6-1-RC2:1.107
	netbsd-6-1-RC1:1.107
	yamt-pagecache-base8:1.108
	netbsd-5-2:1.93.4.1.0.10
	netbsd-6-0-1-RELEASE:1.107
	yamt-pagecache-base7:1.108
	netbsd-5-2-RELEASE:1.93.4.1
	netbsd-5-2-RC1:1.93.4.1
	matt-nb6-plus-nbase:1.107
	yamt-pagecache-base6:1.108
	netbsd-6-0:1.107.0.12
	netbsd-6-0-RELEASE:1.107
	netbsd-6-0-RC2:1.107
	tls-maxphys:1.107.0.10
	tls-maxphys-base:1.118
	matt-nb6-plus:1.107.0.8
	matt-nb6-plus-base:1.107
	netbsd-6-0-RC1:1.107
	jmcneill-usbmp-base10:1.107
	yamt-pagecache-base5:1.107
	jmcneill-usbmp-base9:1.107
	yamt-pagecache-base4:1.107
	jmcneill-usbmp-base8:1.107
	jmcneill-usbmp-base7:1.107
	jmcneill-usbmp-base6:1.107
	jmcneill-usbmp-base5:1.107
	jmcneill-usbmp-base4:1.107
	jmcneill-usbmp-base3:1.107
	jmcneill-usbmp-pre-base2:1.107
	jmcneill-usbmp-base2:1.107
	netbsd-6:1.107.0.6
	netbsd-6-base:1.107
	netbsd-5-1-2-RELEASE:1.93.4.1
	netbsd-5-1-1-RELEASE:1.93.4.1
	jmcneill-usbmp:1.107.0.4
	jmcneill-usbmp-base:1.107
	jmcneill-audiomp3:1.107.0.2
	jmcneill-audiomp3-base:1.107
	yamt-pagecache-base3:1.106
	yamt-pagecache-base2:1.106
	yamt-pagecache:1.106.0.2
	yamt-pagecache-base:1.106
	rmind-uvmplock-nbase:1.105
	cherry-xenmp:1.105.0.2
	cherry-xenmp-base:1.105
	bouyer-quota2-nbase:1.103
	bouyer-quota2:1.103.0.4
	bouyer-quota2-base:1.103
	jruoho-x86intr:1.103.0.2
	jruoho-x86intr-base:1.103
	matt-mips64-premerge-20101231:1.103
	matt-nb5-mips64-premerge-20101231:1.93.4.1
	matt-nb5-pq3:1.93.4.1.0.8
	matt-nb5-pq3-base:1.93.4.1
	netbsd-5-1:1.93.4.1.0.6
	netbsd-5-1-RELEASE:1.93.4.1
	uebayasi-xip-base4:1.103
	uebayasi-xip-base3:1.103
	yamt-nfs-mp-base11:1.103
	netbsd-5-1-RC4:1.93.4.1
	matt-nb5-mips64-k15:1.93.4.1
	uebayasi-xip-base2:1.103
	yamt-nfs-mp-base10:1.103
	netbsd-5-1-RC3:1.93.4.1
	netbsd-5-1-RC2:1.93.4.1
	uebayasi-xip-base1:1.102
	netbsd-5-1-RC1:1.93.4.1
	rmind-uvmplock:1.101.0.4
	rmind-uvmplock-base:1.105
	yamt-nfs-mp-base9:1.101
	uebayasi-xip:1.101.0.2
	uebayasi-xip-base:1.101
	netbsd-5-0-2-RELEASE:1.93.4.1
	matt-nb5-mips64-premerge-20091211:1.93.4.1
	matt-premerge-20091211:1.101
	yamt-nfs-mp-base8:1.100
	matt-nb5-mips64-u2-k2-k4-k7-k8-k9:1.93.4.1
	matt-nb4-mips64-k7-u2a-k9b:1.93.4.1
	matt-nb5-mips64-u1-k1-k5:1.93.4.1
	yamt-nfs-mp-base7:1.100
	matt-nb5-mips64:1.93.4.1.0.4
	netbsd-5-0-1-RELEASE:1.93.4.1
	jymxensuspend-base:1.100
	yamt-nfs-mp-base6:1.100
	yamt-nfs-mp-base5:1.100
	yamt-nfs-mp-base4:1.99
	jym-xensuspend-nbase:1.100
	yamt-nfs-mp-base3:1.99
	nick-hppapmap-base4:1.99
	nick-hppapmap-base3:1.99
	netbsd-5-0:1.93.4.1.0.2
	netbsd-5-0-RELEASE:1.93.4.1
	netbsd-5-0-RC4:1.93.4.1
	netbsd-5-0-RC3:1.93.4.1
	nick-hppapmap-base2:1.99
	netbsd-5-0-RC2:1.93.4.1
	jym-xensuspend:1.99.0.2
	jym-xensuspend-base:1.99
	netbsd-5-0-RC1:1.93.4.1
	haad-dm-base2:1.96
	haad-nbase2:1.96
	ad-audiomp2:1.96.0.2
	ad-audiomp2-base:1.96
	christos-time_t-nbase:1.96
	netbsd-5:1.93.0.4
	netbsd-5-base:1.93
	nick-hppapmap:1.93.0.2
	nick-hppapmap-base:1.99
	matt-mips64-base2:1.91
	matt-mips64:1.84.0.16
	haad-dm-base1:1.91
	wrstuden-revivesa-base-4:1.91
	netbsd-4-0-1-RELEASE:1.80
	wrstuden-revivesa-base-3:1.91
	wrstuden-revivesa-base-2:1.91
	wrstuden-fixsa-newbase:1.80
	nick-csl-alignment-base5:1.84
	haad-dm:1.91.0.8
	haad-dm-base:1.96
	wrstuden-revivesa-base-1:1.91
	simonb-wapbl-nbase:1.91
	yamt-pf42-base4:1.91
	simonb-wapbl:1.91.0.6
	simonb-wapbl-base:1.91
	yamt-pf42-base3:1.91
	hpcarm-cleanup-nbase:1.91
	yamt-pf42-baseX:1.90
	yamt-pf42-base2:1.91
	yamt-nfs-mp-base2:1.91
	wrstuden-revivesa:1.91.0.4
	wrstuden-revivesa-base:1.91
	yamt-nfs-mp:1.91.0.2
	yamt-nfs-mp-base:1.91
	yamt-pf42:1.90.0.2
	yamt-pf42-base:1.90
	christos-time_t:1.89.0.8
	christos-time_t-base:1.96
	ad-socklock-base1:1.89
	yamt-lazymbuf-base15:1.89
	yamt-lazymbuf-base14:1.89
	keiichi-mipv6-nbase:1.89
	mjf-devfs2:1.89.0.6
	mjf-devfs2-base:1.98
	nick-net80211-sync:1.89.0.4
	nick-net80211-sync-base:1.89
	keiichi-mipv6:1.89.0.2
	keiichi-mipv6-base:1.89
	bouyer-xeni386-merge1:1.85.6.1
	matt-armv6-prevmlocking:1.84
	wrstuden-fixsa-base-1:1.80
	vmlocking2-base3:1.88
	netbsd-4-0:1.80.0.12
	netbsd-4-0-RELEASE:1.80
	bouyer-xeni386-nbase:1.89
	yamt-kmem-base3:1.85
	cube-autoconf:1.85.0.8
	cube-autoconf-base:1.85
	yamt-kmem-base2:1.85
	bouyer-xeni386:1.85.0.6
	bouyer-xeni386-base:1.89
	yamt-kmem:1.85.0.4
	yamt-kmem-base:1.85
	vmlocking2-base2:1.85
	reinoud-bufcleanup-nbase:1.85
	vmlocking2:1.85.0.2
	vmlocking2-base1:1.85
	netbsd-4-0-RC5:1.80
	matt-nb4-arm:1.80.0.10
	matt-nb4-arm-base:1.80
	matt-armv6-nbase:1.89
	jmcneill-base:1.84
	netbsd-4-0-RC4:1.80
	mjf-devfs:1.84.0.14
	mjf-devfs-base:1.89
	bouyer-xenamd64-base2:1.85
	vmlocking-nbase:1.85
	yamt-x86pmap-base4:1.84
	bouyer-xenamd64:1.84.0.12
	bouyer-xenamd64-base:1.85
	netbsd-4-0-RC3:1.80
	yamt-x86pmap-base3:1.84
	yamt-x86pmap-base2:1.84
	netbsd-4-0-RC2:1.80
	yamt-x86pmap:1.84.0.10
	yamt-x86pmap-base:1.84
	netbsd-4-0-RC1:1.80
	matt-armv6:1.84.0.8
	matt-armv6-base:1.88
	matt-mips64-base:1.84
	jmcneill-pm:1.84.0.6
	jmcneill-pm-base:1.85
	hpcarm-cleanup:1.84.0.4
	hpcarm-cleanup-base:1.89
	nick-csl-alignment:1.84.0.2
	nick-csl-alignment-base:1.84
	netbsd-3-1-1-RELEASE:1.71
	netbsd-3-0-3-RELEASE:1.71
	yamt-idlelwp-base8:1.82
	wrstuden-fixsa:1.80.0.8
	wrstuden-fixsa-base:1.80
	thorpej-atomic:1.82.0.8
	thorpej-atomic-base:1.82
	reinoud-bufcleanup:1.82.0.6
	reinoud-bufcleanup-base:1.85
	mjf-ufs-trans:1.82.0.4
	mjf-ufs-trans-base:1.84
	vmlocking:1.82.0.2
	vmlocking-base:1.84
	ad-audiomp:1.81.0.4
	ad-audiomp-base:1.81
	yamt-idlelwp:1.81.0.2
	post-newlock2-merge:1.81
	newlock2-nbase:1.80
	yamt-splraiseipl-base5:1.80
	yamt-splraiseipl-base4:1.80
	yamt-splraiseipl-base3:1.80
	abandoned-netbsd-4-base:1.78
	abandoned-netbsd-4:1.78.0.4
	netbsd-3-1:1.71.0.14
	netbsd-3-1-RELEASE:1.71
	netbsd-3-0-2-RELEASE:1.71
	yamt-splraiseipl-base2:1.80
	netbsd-3-1-RC4:1.71
	yamt-splraiseipl:1.80.0.4
	yamt-splraiseipl-base:1.80
	netbsd-3-1-RC3:1.71
	yamt-pdpolicy-base9:1.80
	newlock2:1.80.0.2
	newlock2-base:1.80
	yamt-pdpolicy-base8:1.80
	netbsd-3-1-RC2:1.71
	netbsd-3-1-RC1:1.71
	yamt-pdpolicy-base7:1.78
	netbsd-4:1.80.0.6
	netbsd-4-base:1.80
	yamt-pdpolicy-base6:1.78
	chap-midi-nbase:1.78
	netbsd-3-0-1-RELEASE:1.71
	gdamore-uart:1.78.0.2
	gdamore-uart-base:1.78
	simonb-timcounters-final:1.77
	yamt-pdpolicy-base5:1.77
	chap-midi:1.77.0.14
	chap-midi-base:1.78
	yamt-pdpolicy-base4:1.77
	yamt-pdpolicy-base3:1.77
	peter-altq-base:1.77
	peter-altq:1.77.0.12
	yamt-pdpolicy-base2:1.77
	elad-kernelauth-base:1.77
	elad-kernelauth:1.77.0.10
	yamt-pdpolicy:1.77.0.8
	yamt-pdpolicy-base:1.77
	yamt-uio_vmspace-base5:1.77
	simonb-timecounters:1.77.0.6
	simonb-timecounters-base:1.77
	rpaulo-netinet-merge-pcb:1.77.0.4
	rpaulo-netinet-merge-pcb-base:1.80
	yamt-uio_vmspace:1.77.0.2
	netbsd-3-0:1.71.0.12
	netbsd-3-0-RELEASE:1.71
	netbsd-3-0-RC6:1.71
	yamt-readahead-base3:1.76
	netbsd-3-0-RC5:1.71
	netbsd-3-0-RC4:1.71
	netbsd-3-0-RC3:1.71
	yamt-readahead-base2:1.76
	netbsd-3-0-RC2:1.71
	yamt-readahead-pervnode:1.76
	yamt-readahead-perfile:1.76
	yamt-readahead:1.76.0.2
	yamt-readahead-base:1.76
	netbsd-3-0-RC1:1.71
	yamt-vop-base3:1.74
	netbsd-2-0-3-RELEASE:1.67
	netbsd-2-1:1.67.0.6
	yamt-vop-base2:1.74
	thorpej-vnode-attr:1.74.0.4
	thorpej-vnode-attr-base:1.74
	netbsd-2-1-RELEASE:1.67
	yamt-vop:1.74.0.2
	yamt-vop-base:1.74
	netbsd-2-1-RC6:1.67
	netbsd-2-1-RC5:1.67
	netbsd-2-1-RC4:1.67
	netbsd-2-1-RC3:1.67
	netbsd-2-1-RC2:1.67
	netbsd-2-1-RC1:1.67
	yamt-lazymbuf:1.73.0.2
	yamt-km-base4:1.71
	netbsd-2-0-2-RELEASE:1.67
	yamt-km-base3:1.71
	netbsd-3:1.71.0.10
	netbsd-3-base:1.71
	yamt-km-base2:1.71
	yamt-km:1.71.0.6
	yamt-km-base:1.71
	kent-audio2:1.71.0.4
	kent-audio2-base:1.71
	netbsd-2-0-1-RELEASE:1.67
	kent-audio1-beforemerge:1.71
	netbsd-2:1.67.0.4
	netbsd-2-base:1.67
	kent-audio1:1.71.0.2
	kent-audio1-base:1.71
	netbsd-2-0-RELEASE:1.67
	netbsd-2-0-RC5:1.67
	netbsd-2-0-RC4:1.67
	netbsd-2-0-RC3:1.67
	netbsd-2-0-RC2:1.67
	netbsd-2-0-RC1:1.67
	netbsd-2-0:1.67.0.2
	netbsd-2-0-base:1.67
	netbsd-1-6-PATCH002-RELEASE:1.63.4.1
	netbsd-1-6-PATCH002:1.63.4.1
	netbsd-1-6-PATCH002-RC4:1.63.4.1
	netbsd-1-6-PATCH002-RC3:1.63.4.1
	netbsd-1-6-PATCH002-RC2:1.63.4.1
	netbsd-1-6-PATCH002-RC1:1.63.4.1
	ktrace-lwp:1.65.0.2
	ktrace-lwp-base:1.76
	netbsd-1-6-PATCH001:1.63
	netbsd-1-6-PATCH001-RELEASE:1.63
	netbsd-1-6-PATCH001-RC3:1.63
	netbsd-1-6-PATCH001-RC2:1.63
	netbsd-1-6-PATCH001-RC1:1.63
	nathanw_sa_end:1.54.2.7
	nathanw_sa_before_merge:1.63
	fvdl_fs64_base:1.63
	gmcgarry_ctxsw:1.63.0.8
	gmcgarry_ctxsw_base:1.63
	gmcgarry_ucred:1.63.0.6
	gmcgarry_ucred_base:1.63
	nathanw_sa_base:1.63
	kqueue-aftermerge:1.63
	kqueue-beforemerge:1.63
	netbsd-1-6-RELEASE:1.63
	netbsd-1-6-RC3:1.63
	netbsd-1-6-RC2:1.63
	netbsd-1-6-RC1:1.63
	netbsd-1-6:1.63.0.4
	netbsd-1-6-base:1.63
	gehenna-devsw:1.63.0.2
	gehenna-devsw-base:1.63
	netbsd-1-5-PATCH003:1.41.4.2
	eeh-devprop:1.61.0.6
	eeh-devprop-base:1.61
	newlock:1.61.0.4
	newlock-base:1.61
	ifpoll-base:1.61
	thorpej-mips-cache:1.60.0.2
	thorpej-mips-cache-base:1.60
	thorpej-devvp-base3:1.60
	thorpej-devvp-base2:1.60
	post-chs-ubcperf:1.58
	pre-chs-ubcperf:1.58
	thorpej-devvp:1.58.0.4
	thorpej-devvp-base:1.58
	netbsd-1-5-PATCH002:1.41.4.2
	kqueue:1.58.0.2
	kqueue-base:1.63
	netbsd-1-5-PATCH001:1.41.4.2
	thorpej_scsipi_beforemerge:1.56
	nathanw_sa:1.54.0.2
	thorpej_scsipi_nbase:1.56
	netbsd-1-5-RELEASE:1.41
	netbsd-1-5-BETA2:1.41
	netbsd-1-5-BETA:1.41
	netbsd-1-4-PATCH003:1.32.2.2
	netbsd-1-5-ALPHA2:1.41
	netbsd-1-5:1.41.0.4
	netbsd-1-5-base:1.41
	minoura-xpg4dl-base:1.41
	minoura-xpg4dl:1.41.0.2
	netbsd-1-4-PATCH002:1.32.2.1
	chs-ubc2-newbase:1.40
	wrstuden-devbsize-19991221:1.39
	wrstuden-devbsize:1.36.0.8
	wrstuden-devbsize-base:1.39
	kame_141_19991130:1.32
	comdex-fall-1999:1.36.0.6
	comdex-fall-1999-base:1.36
	fvdl-softdep:1.36.0.4
	fvdl-softdep-base:1.36
	thorpej_scsipi:1.36.0.2
	thorpej_scsipi_base:1.56
	netbsd-1-4-PATCH001:1.32
	kame_14_19990705:1.32
	kame_14_19990628:1.32
	kame:1.32.0.6
	chs-ubc2:1.32.0.4
	chs-ubc2-base:1.34
	netbsd-1-4-RELEASE:1.32
	netbsd-1-4:1.32.0.2
	netbsd-1-4-base:1.32
	kenh-if-detach:1.27.0.4
	kenh-if-detach-base:1.27
	chs-ubc:1.27.0.2
	chs-ubc-base:1.27;
locks; strict;
comment	@# @;


1.139
date	2025.11.10.15.41.38;	author christos;	state Exp;
branches;
next	1.138;
commitid	4SBgjNJyEQqMp1iG;

1.138
date	2025.11.10.15.34.03;	author christos;	state Exp;
branches;
next	1.137;
commitid	d7uOeAT2cbx2n1iG;

1.137
date	2024.09.28.19.35.55;	author christos;	state Exp;
branches;
next	1.136;
commitid	fAPNzINKOT8BOBrF;

1.136
date	2024.07.01.01.35.53;	author christos;	state Exp;
branches;
next	1.135;
commitid	N1OpVh0jGoxTH4gF;

1.135
date	2024.06.29.13.46.09;	author christos;	state Exp;
branches
	1.135.2.1;
next	1.134;
commitid	jf6SXx4AuJarOSfF;

1.134
date	2023.08.19.17.49.49;	author christos;	state Exp;
branches;
next	1.133;
commitid	lq1Gy3ELP29XhqBE;

1.133
date	2023.08.18.19.41.19;	author christos;	state Exp;
branches;
next	1.132;
commitid	6tkBFnqdux91WiBE;

1.132
date	2023.07.29.15.04.28;	author christos;	state Exp;
branches;
next	1.131;
commitid	IPtJp17rLysK2IyE;

1.131
date	2023.07.28.19.01.11;	author christos;	state Exp;
branches;
next	1.130;
commitid	wqsI7WnCVTYeoByE;

1.130
date	2023.07.10.13.05.27;	author christos;	state Exp;
branches;
next	1.129;
commitid	gviN1eFo0wkd0gwE;

1.129
date	2021.12.02.04.29.48;	author ryo;	state Exp;
branches;
next	1.128;
commitid	mKCsBN5foUfbX1jD;

1.128
date	2021.09.20.02.20.02;	author thorpej;	state Exp;
branches;
next	1.127;
commitid	K8mXaSHdBZI2AD9D;

1.127
date	2021.09.20.00.09.01;	author thorpej;	state Exp;
branches;
next	1.126;
commitid	iO2ZHyElTHo8RC9D;

1.126
date	2021.09.19.23.51.36;	author thorpej;	state Exp;
branches;
next	1.125;
commitid	pcMYBy9yows8LC9D;

1.125
date	2021.09.19.23.01.50;	author thorpej;	state Exp;
branches;
next	1.124;
commitid	b0960e1aU60LtC9D;

1.124
date	2020.04.26.18.53.32;	author thorpej;	state Exp;
branches
	1.124.2.1;
next	1.123;
commitid	xaklHg2Aa3B2wV5C;

1.123
date	2019.11.09.23.44.32;	author jdolecek;	state Exp;
branches;
next	1.122;
commitid	yAyQ8W3yCAgtyeKB;

1.122
date	2017.01.02.16.32.09;	author manu;	state Exp;
branches
	1.122.16.1;
next	1.121;

1.121
date	2016.07.24.13.22.01;	author njoly;	state Exp;
branches;
next	1.120;

1.120
date	2015.03.23.07.30.15;	author ozaki-r;	state Exp;
branches
	1.120.2.1;
next	1.119;

1.119
date	2014.11.22.13.18.45;	author njoly;	state Exp;
branches
	1.119.2.1;
next	1.118;

1.118
date	2014.05.31.08.51.19;	author njoly;	state Exp;
branches
	1.118.2.1;
next	1.117;

1.117
date	2014.05.29.10.35.27;	author njoly;	state Exp;
branches;
next	1.116;

1.116
date	2014.05.20.17.24.49;	author njoly;	state Exp;
branches;
next	1.115;

1.115
date	2014.05.17.09.23.51;	author njoly;	state Exp;
branches;
next	1.114;

1.114
date	2014.05.04.10.08.53;	author njoly;	state Exp;
branches;
next	1.113;

1.113
date	2014.04.08.16.48.01;	author njoly;	state Exp;
branches;
next	1.112;

1.112
date	2013.11.18.01.32.52;	author chs;	state Exp;
branches
	1.112.2.1;
next	1.111;

1.111
date	2013.11.07.19.37.18;	author njoly;	state Exp;
branches;
next	1.110;

1.110
date	2013.09.24.13.27.49;	author njoly;	state Exp;
branches;
next	1.109;

1.109
date	2013.04.08.20.54.48;	author pooka;	state Exp;
branches
	1.109.4.1;
next	1.108;

1.108
date	2012.09.19.21.19.14;	author pooka;	state Exp;
branches;
next	1.107;

1.107
date	2011.11.18.04.03.50;	author christos;	state Exp;
branches
	1.107.10.1;
next	1.106;

1.106
date	2011.07.09.14.49.40;	author christos;	state Exp;
branches
	1.106.2.1;
next	1.105;

1.105
date	2011.05.30.17.50.31;	author alnsn;	state Exp;
branches;
next	1.104;

1.104
date	2011.04.10.15.48.46;	author christos;	state Exp;
branches;
next	1.103;

1.103
date	2010.07.07.01.30.34;	author chs;	state Exp;
branches
	1.103.2.1;
next	1.102;

1.102
date	2010.04.23.03.02.16;	author chs;	state Exp;
branches;
next	1.101;

1.101
date	2009.11.24.10.42.43;	author njoly;	state Exp;
branches
	1.101.2.1
	1.101.4.1;
next	1.100;

1.100
date	2009.06.08.13.26.57;	author njoly;	state Exp;
branches;
next	1.99;

1.99
date	2009.01.17.22.28.52;	author njoly;	state Exp;
branches
	1.99.2.1;
next	1.98;

1.98
date	2009.01.13.22.27.43;	author pooka;	state Exp;
branches;
next	1.97;

1.97
date	2009.01.11.02.45.48;	author christos;	state Exp;
branches;
next	1.96;

1.96
date	2008.11.19.18.36.03;	author ad;	state Exp;
branches;
next	1.95;

1.95
date	2008.11.19.13.09.19;	author njoly;	state Exp;
branches;
next	1.94;

1.94
date	2008.11.12.18.07.40;	author njoly;	state Exp;
branches;
next	1.93;

1.93
date	2008.10.26.16.38.22;	author christos;	state Exp;
branches
	1.93.2.1
	1.93.4.1;
next	1.92;

1.92
date	2008.10.25.23.38.28;	author christos;	state Exp;
branches;
next	1.91;

1.91
date	2008.04.23.14.07.50;	author ad;	state Exp;
branches
	1.91.2.1
	1.91.4.1
	1.91.8.1;
next	1.90;

1.90
date	2008.04.04.12.38.52;	author njoly;	state Exp;
branches
	1.90.2.1;
next	1.89;

1.89
date	2008.01.15.22.38.34;	author njoly;	state Exp;
branches
	1.89.6.1
	1.89.8.1;
next	1.88;

1.88
date	2007.12.24.14.17.18;	author njoly;	state Exp;
branches;
next	1.87;

1.87
date	2007.12.21.22.26.21;	author njoly;	state Exp;
branches;
next	1.86;

1.86
date	2007.12.20.23.02.52;	author dsl;	state Exp;
branches;
next	1.85;

1.85
date	2007.11.16.12.51.55;	author njoly;	state Exp;
branches
	1.85.2.1
	1.85.6.1;
next	1.84;

1.84
date	2007.06.13.20.57.33;	author christos;	state Exp;
branches
	1.84.6.1
	1.84.8.1
	1.84.12.1
	1.84.14.1;
next	1.83;

1.83
date	2007.06.13.14.31.07;	author christos;	state Exp;
branches;
next	1.82;

1.82
date	2007.03.04.06.01.21;	author christos;	state Exp;
branches
	1.82.2.1
	1.82.4.1;
next	1.81;

1.81
date	2007.02.09.21.55.18;	author ad;	state Exp;
branches
	1.81.2.1;
next	1.80;

1.80
date	2006.09.01.20.58.18;	author matt;	state Exp;
branches
	1.80.2.1;
next	1.79;

1.79
date	2006.08.30.11.14.39;	author matt;	state Exp;
branches;
next	1.78;

1.78
date	2006.06.10.21.15.33;	author christos;	state Exp;
branches;
next	1.77;

1.77
date	2005.12.11.12.20.14;	author christos;	state Exp;
branches
	1.77.4.1
	1.77.8.1
	1.77.14.1;
next	1.76;

1.76
date	2005.11.06.18.16.31;	author manu;	state Exp;
branches;
next	1.75;

1.75
date	2005.11.05.10.56.48;	author dogcow;	state Exp;
branches;
next	1.74;

1.74
date	2005.10.18.18.37.44;	author joerg;	state Exp;
branches;
next	1.73;

1.73
date	2005.05.16.21.17.11;	author fvdl;	state Exp;
branches
	1.73.2.1;
next	1.72;

1.72
date	2005.05.16.16.02.20;	author fvdl;	state Exp;
branches;
next	1.71;

1.71
date	2004.09.20.18.41.07;	author jdolecek;	state Exp;
branches;
next	1.70;

1.70
date	2004.09.08.19.45.22;	author jdolecek;	state Exp;
branches;
next	1.69;

1.69
date	2004.08.01.15.34.22;	author jdolecek;	state Exp;
branches;
next	1.68;

1.68
date	2004.08.01.10.32.40;	author jdolecek;	state Exp;
branches;
next	1.67;

1.67
date	2003.08.10.20.16.22;	author jdolecek;	state Exp;
branches;
next	1.66;

1.66
date	2003.07.03.21.24.28;	author christos;	state Exp;
branches;
next	1.65;

1.65
date	2003.06.23.21.25.56;	author christos;	state Exp;
branches
	1.65.2.1;
next	1.64;

1.64
date	2003.01.18.08.02.48;	author thorpej;	state Exp;
branches;
next	1.63;

1.63
date	2002.04.10.18.18.27;	author christos;	state Exp;
branches
	1.63.4.1;
next	1.62;

1.62
date	2002.03.22.15.10.38;	author christos;	state Exp;
branches;
next	1.61;

1.61
date	2002.02.15.16.48.00;	author christos;	state Exp;
branches;
next	1.60;

1.60
date	2001.09.30.20.44.50;	author manu;	state Exp;
branches;
next	1.59;

1.59
date	2001.09.30.18.57.43;	author martin;	state Exp;
branches;
next	1.58;

1.58
date	2001.05.30.11.37.26;	author mrg;	state Exp;
branches
	1.58.2.1
	1.58.4.1;
next	1.57;

1.57
date	2001.05.13.20.54.43;	author manu;	state Exp;
branches;
next	1.56;

1.56
date	2001.03.30.17.59.46;	author jdolecek;	state Exp;
branches;
next	1.55;

1.55
date	2001.03.30.17.16.34;	author jdolecek;	state Exp;
branches;
next	1.54;

1.54
date	2001.01.27.07.54.24;	author thorpej;	state Exp;
branches
	1.54.2.1;
next	1.53;

1.53
date	2000.12.29.20.09.39;	author fvdl;	state Exp;
branches;
next	1.52;

1.52
date	2000.12.27.22.02.41;	author fvdl;	state Exp;
branches;
next	1.51;

1.51
date	2000.12.18.14.36.35;	author fvdl;	state Exp;
branches;
next	1.50;

1.50
date	2000.12.13.21.41.46;	author augustss;	state Exp;
branches;
next	1.49;

1.49
date	2000.12.12.22.23.02;	author jdolecek;	state Exp;
branches;
next	1.48;

1.48
date	2000.12.12.19.01.59;	author jdolecek;	state Exp;
branches;
next	1.47;

1.47
date	2000.12.09.12.23.36;	author jdolecek;	state Exp;
branches;
next	1.46;

1.46
date	2000.12.09.05.27.29;	author mycroft;	state Exp;
branches;
next	1.45;

1.45
date	2000.12.02.16.43.50;	author jdolecek;	state Exp;
branches;
next	1.44;

1.44
date	2000.12.01.21.02.56;	author jdolecek;	state Exp;
branches;
next	1.43;

1.43
date	2000.11.01.20.38.49;	author jdolecek;	state Exp;
branches;
next	1.42;

1.42
date	2000.08.23.16.59.51;	author christos;	state Exp;
branches;
next	1.41;

1.41
date	2000.03.18.22.20.57;	author erh;	state Exp;
branches
	1.41.4.1;
next	1.40;

1.40
date	2000.02.03.10.02.59;	author abs;	state Exp;
branches;
next	1.39;

1.39
date	99.12.12.00.00.17;	author tron;	state Exp;
branches;
next	1.38;

1.38
date	99.12.05.21.24.30;	author tron;	state Exp;
branches;
next	1.37;

1.37
date	99.12.04.22.14.14;	author tron;	state Exp;
branches;
next	1.36;

1.36
date	99.10.04.16.55.55;	author tron;	state Exp;
branches
	1.36.2.1
	1.36.8.1;
next	1.35;

1.35
date	99.08.16.19.13.01;	author tron;	state Exp;
branches;
next	1.34;

1.34
date	99.05.14.18.43.01;	author thorpej;	state Exp;
branches;
next	1.33;

1.33
date	99.05.13.23.42.34;	author thorpej;	state Exp;
branches;
next	1.32;

1.32
date	99.03.30.02.22.49;	author abs;	state Exp;
branches
	1.32.2.1
	1.32.4.1;
next	1.31;

1.31
date	99.03.27.01.10.57;	author tron;	state Exp;
branches;
next	1.30;

1.30
date	99.03.23.03.00.52;	author thorpej;	state Exp;
branches;
next	1.29;

1.29
date	99.02.09.20.37.00;	author christos;	state Exp;
branches;
next	1.28;

1.28
date	98.12.10.17.07.04;	author christos;	state Exp;
branches;
next	1.27;

1.27
date	98.10.03.20.17.39;	author christos;	state Exp;
branches;
next	1.26;

1.26
date	98.10.01.02.03.17;	author erh;	state Exp;
branches;
next	1.25;

1.25
date	98.09.11.12.50.09;	author mycroft;	state Exp;
branches;
next	1.24;

1.24
date	98.08.05.00.44.34;	author perry;	state Exp;
branches;
next	1.23;

1.23
date	98.02.20.18.09.04;	author mycroft;	state Exp;
branches;
next	1.22;

1.22
date	98.02.19.00.41.12;	author thorpej;	state Exp;
branches;
next	1.21;

1.21
date	97.10.16.23.53.07;	author christos;	state Exp;
branches;
next	1.20;

1.20
date	97.10.15.17.18.38;	author mycroft;	state Exp;
branches;
next	1.19;

1.19
date	97.10.10.06.25.36;	author mycroft;	state Exp;
branches;
next	1.18;

1.18
date	97.06.13.17.30.19;	author thorpej;	state Exp;
branches
	1.18.4.1;
next	1.17;

1.17
date	97.04.07.14.13.19;	author augustss;	state Exp;
branches;
next	1.16;

1.16
date	96.05.20.01.59.35;	author fvdl;	state Exp;
branches
	1.16.6.1;
next	1.15;

1.15
date	95.12.18.14.35.10;	author fvdl;	state Exp;
branches;
next	1.14;

1.14
date	95.12.09.04.01.47;	author mycroft;	state Exp;
branches;
next	1.13;

1.13
date	95.10.07.06.27.15;	author mycroft;	state Exp;
branches;
next	1.12;

1.12
date	95.09.07.21.49.02;	author fvdl;	state Exp;
branches;
next	1.11;

1.11
date	95.08.27.20.51.53;	author fvdl;	state Exp;
branches;
next	1.10;

1.10
date	95.08.23.20.17.30;	author fvdl;	state Exp;
branches;
next	1.9;

1.9
date	95.08.21.03.42.12;	author mycroft;	state Exp;
branches;
next	1.8;

1.8
date	95.08.14.01.27.56;	author mycroft;	state Exp;
branches;
next	1.7;

1.7
date	95.07.24.06.35.58;	author fvdl;	state Exp;
branches;
next	1.6;

1.6
date	95.06.11.14.57.01;	author fvdl;	state Exp;
branches;
next	1.5;

1.5
date	95.05.06.18.16.40;	author mycroft;	state Exp;
branches;
next	1.4;

1.4
date	95.04.07.22.23.28;	author fvdl;	state Exp;
branches;
next	1.3;

1.3
date	95.03.10.22.55.14;	author fvdl;	state Exp;
branches;
next	1.2;

1.2
date	95.03.05.23.23.51;	author fvdl;	state Exp;
branches;
next	1.1;

1.1
date	95.02.28.23.26.26;	author fvdl;	state Exp;
branches;
next	;

1.135.2.1
date	2025.08.02.05.56.23;	author perseant;	state Exp;
branches;
next	;
commitid	23j6GFaDws3O875G;

1.124.2.1
date	2020.12.15.14.07.21;	author thorpej;	state Exp;
branches;
next	1.124.2.2;
commitid	SxffrujSvDkrsQzC;

1.124.2.2
date	2020.12.17.03.14.15;	author thorpej;	state Exp;
branches;
next	;
commitid	mwKnDZaUAvwDM2AC;

1.122.16.1
date	2020.04.13.08.04.15;	author martin;	state Exp;
branches;
next	;
commitid	X01YhRUPVUDaec4C;

1.120.2.1
date	2016.07.26.03.24.20;	author pgoyette;	state Exp;
branches;
next	1.120.2.2;

1.120.2.2
date	2017.01.07.08.56.29;	author pgoyette;	state Exp;
branches;
next	;

1.119.2.1
date	2015.04.06.15.18.06;	author skrll;	state Exp;
branches;
next	1.119.2.2;

1.119.2.2
date	2016.10.05.20.55.38;	author skrll;	state Exp;
branches;
next	1.119.2.3;

1.119.2.3
date	2017.02.05.13.40.25;	author skrll;	state Exp;
branches;
next	;

1.118.2.1
date	2017.04.17.05.19.09;	author snj;	state Exp;
branches;
next	;

1.112.2.1
date	2014.08.10.06.54.32;	author tls;	state Exp;
branches;
next	;

1.109.4.1
date	2014.05.18.17.45.32;	author rmind;	state Exp;
branches;
next	;

1.107.10.1
date	2012.11.20.03.01.54;	author tls;	state Exp;
branches;
next	1.107.10.2;

1.107.10.2
date	2013.06.23.06.20.15;	author tls;	state Exp;
branches;
next	1.107.10.3;

1.107.10.3
date	2014.08.20.00.03.32;	author tls;	state Exp;
branches;
next	1.107.10.4;

1.107.10.4
date	2017.12.03.11.36.54;	author jdolecek;	state Exp;
branches;
next	;
commitid	XcIYRZTAh1LmerhA;

1.106.2.1
date	2012.04.17.00.07.16;	author yamt;	state Exp;
branches;
next	1.106.2.2;

1.106.2.2
date	2012.10.30.17.20.41;	author yamt;	state Exp;
branches;
next	1.106.2.3;

1.106.2.3
date	2014.05.22.11.40.16;	author yamt;	state Exp;
branches;
next	;

1.103.2.1
date	2011.06.06.09.07.24;	author jruoho;	state Exp;
branches;
next	;

1.101.2.1
date	2010.04.30.14.42.59;	author uebayasi;	state Exp;
branches;
next	1.101.2.2;

1.101.2.2
date	2010.08.17.06.45.44;	author uebayasi;	state Exp;
branches;
next	;

1.101.4.1
date	2010.05.30.05.17.15;	author rmind;	state Exp;
branches;
next	1.101.4.2;

1.101.4.2
date	2011.03.05.20.52.44;	author rmind;	state Exp;
branches;
next	1.101.4.3;

1.101.4.3
date	2011.04.21.01.41.39;	author rmind;	state Exp;
branches;
next	1.101.4.4;

1.101.4.4
date	2011.05.31.03.04.28;	author rmind;	state Exp;
branches;
next	;

1.99.2.1
date	2009.07.23.23.31.40;	author jym;	state Exp;
branches;
next	;

1.93.2.1
date	2009.01.19.13.17.26;	author skrll;	state Exp;
branches;
next	;

1.93.4.1
date	2008.11.20.03.03.05;	author snj;	state Exp;
branches;
next	;

1.91.2.1
date	2009.05.04.08.12.21;	author yamt;	state Exp;
branches;
next	1.91.2.2;

1.91.2.2
date	2009.06.20.07.20.15;	author yamt;	state Exp;
branches;
next	1.91.2.3;

1.91.2.3
date	2010.03.11.15.03.15;	author yamt;	state Exp;
branches;
next	1.91.2.4;

1.91.2.4
date	2010.08.11.22.53.05;	author yamt;	state Exp;
branches;
next	;

1.91.4.1
date	2008.05.10.23.48.52;	author wrstuden;	state Exp;
branches;
next	1.91.4.2;

1.91.4.2
date	2008.05.14.01.35.04;	author wrstuden;	state Exp;
branches;
next	;

1.91.8.1
date	2008.12.13.01.13.54;	author haad;	state Exp;
branches;
next	;

1.90.2.1
date	2008.05.18.12.33.16;	author yamt;	state Exp;
branches;
next	;

1.89.6.1
date	2008.06.02.13.23.00;	author mjf;	state Exp;
branches;
next	1.89.6.2;

1.89.6.2
date	2009.01.17.13.28.44;	author mjf;	state Exp;
branches;
next	;

1.89.8.1
date	2008.03.29.20.46.59;	author christos;	state Exp;
branches;
next	1.89.8.2;

1.89.8.2
date	2008.11.01.21.22.26;	author christos;	state Exp;
branches;
next	1.89.8.3;

1.89.8.3
date	2008.11.20.20.45.38;	author christos;	state Exp;
branches;
next	;

1.85.2.1
date	2007.12.26.19.49.09;	author ad;	state Exp;
branches;
next	;

1.85.6.1
date	2008.01.02.21.52.22;	author bouyer;	state Exp;
branches;
next	1.85.6.2;

1.85.6.2
date	2008.01.19.12.14.55;	author bouyer;	state Exp;
branches;
next	;

1.84.6.1
date	2007.11.21.21.53.49;	author joerg;	state Exp;
branches;
next	;

1.84.8.1
date	2008.01.09.01.51.01;	author matt;	state Exp;
branches;
next	1.84.8.2;

1.84.8.2
date	2008.03.23.02.04.32;	author matt;	state Exp;
branches;
next	;

1.84.12.1
date	2007.11.18.19.35.04;	author bouyer;	state Exp;
branches;
next	;

1.84.14.1
date	2007.11.19.00.47.21;	author mjf;	state Exp;
branches;
next	1.84.14.2;

1.84.14.2
date	2007.12.27.00.43.59;	author mjf;	state Exp;
branches;
next	1.84.14.3;

1.84.14.3
date	2008.02.18.21.05.24;	author mjf;	state Exp;
branches;
next	;

1.82.2.1
date	2007.07.15.13.27.09;	author ad;	state Exp;
branches;
next	;

1.82.4.1
date	2007.07.11.20.04.11;	author mjf;	state Exp;
branches;
next	;

1.81.2.1
date	2007.03.12.05.52.16;	author rmind;	state Exp;
branches;
next	;

1.80.2.1
date	2007.01.30.13.51.32;	author ad;	state Exp;
branches;
next	;

1.77.4.1
date	2006.09.09.02.45.38;	author rpaulo;	state Exp;
branches;
next	;

1.77.8.1
date	2006.06.26.12.46.01;	author yamt;	state Exp;
branches;
next	;

1.77.14.1
date	2006.06.19.03.45.51;	author chap;	state Exp;
branches;
next	;

1.73.2.1
date	2006.06.21.14.59.01;	author yamt;	state Exp;
branches;
next	1.73.2.2;

1.73.2.2
date	2007.02.26.09.09.15;	author yamt;	state Exp;
branches;
next	1.73.2.3;

1.73.2.3
date	2007.09.03.14.32.17;	author yamt;	state Exp;
branches;
next	1.73.2.4;

1.73.2.4
date	2007.12.07.17.27.56;	author yamt;	state Exp;
branches;
next	1.73.2.5;

1.73.2.5
date	2008.01.21.09.41.15;	author yamt;	state Exp;
branches;
next	;

1.65.2.1
date	2004.08.03.10.43.54;	author skrll;	state Exp;
branches;
next	1.65.2.2;

1.65.2.2
date	2004.09.18.14.43.31;	author skrll;	state Exp;
branches;
next	1.65.2.3;

1.65.2.3
date	2004.09.21.13.25.26;	author skrll;	state Exp;
branches;
next	1.65.2.4;

1.65.2.4
date	2004.09.24.10.53.18;	author skrll;	state Exp;
branches;
next	1.65.2.5;

1.65.2.5
date	2005.11.10.14.00.59;	author skrll;	state Exp;
branches;
next	;

1.63.4.1
date	2003.10.22.04.03.00;	author jmc;	state Exp;
branches;
next	1.63.4.2;

1.63.4.2
date	2004.05.11.14.30.38;	author tron;	state Exp;
branches;
next	1.63.4.3;

1.63.4.3
date	2004.06.14.02.36.56;	author jmc;	state Exp;
branches;
next	;

1.58.2.1
date	2002.01.10.19.51.30;	author thorpej;	state Exp;
branches;
next	1.58.2.2;

1.58.2.2
date	2002.03.16.16.00.33;	author jdolecek;	state Exp;
branches;
next	1.58.2.3;

1.58.2.3
date	2002.06.23.17.44.10;	author jdolecek;	state Exp;
branches;
next	;

1.58.4.1
date	2001.10.01.12.43.35;	author fvdl;	state Exp;
branches;
next	;

1.54.2.1
date	2001.04.09.01.55.35;	author nathanw;	state Exp;
branches;
next	1.54.2.2;

1.54.2.2
date	2001.06.21.19.59.34;	author nathanw;	state Exp;
branches;
next	1.54.2.3;

1.54.2.3
date	2001.10.08.20.10.49;	author nathanw;	state Exp;
branches;
next	1.54.2.4;

1.54.2.4
date	2002.02.28.04.12.51;	author nathanw;	state Exp;
branches;
next	1.54.2.5;

1.54.2.5
date	2002.04.01.07.44.13;	author nathanw;	state Exp;
branches;
next	1.54.2.6;

1.54.2.6
date	2002.04.17.00.04.59;	author nathanw;	state Exp;
branches;
next	1.54.2.7;

1.54.2.7
date	2002.05.29.21.32.32;	author nathanw;	state Exp;
branches;
next	;

1.41.4.1
date	2001.03.30.21.35.26;	author he;	state Exp;
branches;
next	1.41.4.2;

1.41.4.2
date	2001.05.01.08.55.29;	author he;	state Exp;
branches;
next	;

1.36.2.1
date	2000.11.20.18.08.20;	author bouyer;	state Exp;
branches;
next	1.36.2.2;

1.36.2.2
date	2000.11.22.16.02.40;	author bouyer;	state Exp;
branches;
next	1.36.2.3;

1.36.2.3
date	2000.12.08.09.08.24;	author bouyer;	state Exp;
branches;
next	1.36.2.4;

1.36.2.4
date	2000.12.13.15.49.47;	author bouyer;	state Exp;
branches;
next	1.36.2.5;

1.36.2.5
date	2001.01.05.17.35.24;	author bouyer;	state Exp;
branches;
next	1.36.2.6;

1.36.2.6
date	2001.02.11.19.13.44;	author bouyer;	state Exp;
branches;
next	1.36.2.7;

1.36.2.7
date	2001.04.21.17.46.17;	author bouyer;	state Exp;
branches;
next	;

1.36.8.1
date	99.12.27.18.34.25;	author wrstuden;	state Exp;
branches;
next	;

1.32.2.1
date	2000.01.31.19.15.07;	author he;	state Exp;
branches;
next	1.32.2.2;

1.32.2.2
date	2000.08.15.21.35.37;	author he;	state Exp;
branches;
next	;

1.32.4.1
date	99.06.21.01.07.36;	author thorpej;	state Exp;
branches;
next	;

1.18.4.1
date	97.10.14.10.21.39;	author thorpej;	state Exp;
branches;
next	;

1.16.6.1
date	97.02.12.12.26.05;	author mrg;	state Exp;
branches;
next	;


desc
@@


1.139
log
@s/SYS_MAXSYSARGS/LINUX_SYS_MAXSYSARGS/
@
text
@	$NetBSD: syscalls.master,v 1.138 2025/11/10 15:34:03 christos Exp $

;	@@(#)syscalls.master	8.1 (Berkeley) 7/19/93

; NetBSD i386 COMPAT_LINUX system call name/number "master" file.
; (See syscalls.conf to see what it is processed into.)
;
; Fields: number type [type-dependent ...]
;	number	system call number, must be in order
;	type	one of STD, OBSOL, UNIMPL, NODEF, NOARGS, or one of
;		the compatibility options defined in syscalls.conf.
;
; types:
;	STD	always included
;	OBSOL	obsolete, not included in system
;	UNIMPL	unimplemented, not included in system
;	NODEF	included, but don't define the syscall number
;	NOARGS	included, but don't define the syscall args structure
;	INDIR	included, but don't define the syscall args structure
;		and allow it to be "really" varargs.
;
; The compat options are defined in the syscalls.conf file, and the
; compat option name is prefixed to the syscall name.  Other than
; that, they're like NODEF (for 'compat' options), or STD (for
; 'libcompat' options).
;
; The type-dependent arguments are as follows:
; For STD, NODEF, NOARGS, and compat syscalls:
;	{ pseudo-proto } [alias]
; For other syscalls:
;	[comment]
;
; #ifdef's, etc. may be included, and are copied to the output files.
; #include's are copied to the syscall names and switch definition files only.

#include <sys/param.h>
#include <sys/poll.h>
#include <sys/systm.h>
#include <sys/signal.h>
#include <sys/mount.h>
#include <sys/syscallargs.h>

#include <compat/sys/time.h>

#include <compat/linux/common/linux_types.h>
#include <compat/linux/common/linux_mmap.h>
#include <compat/linux/common/linux_signal.h>
#include <compat/linux/common/linux_siginfo.h>
#include <compat/linux/common/linux_machdep.h>
#include <compat/linux/common/linux_mqueue.h>
#include <compat/linux/common/linux_sched.h>

#include <compat/linux/linux_syscallargs.h>

%%

0	NOARGS		{ int|linux_sys||nosys(void); } syscall
1	STD		{ int|linux_sys||exit(int rval); }
2	NOARGS		{ int|sys||fork(void); }
3	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
4	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
			    size_t nbyte); }
5	STD		{ int|linux_sys||open(const char *path, int flags, \
			    linux_umode_t mode); }
6	NOARGS		{ int|sys||close(int fd); }
7	STD		{ int|linux_sys||waitpid(int pid, int *status, \
			    int options);}
8	STD		{ int|linux_sys||creat(const char *path, linux_umode_t mode); }
9	NOARGS		{ int|sys||link(const char *path, const char *link); }
10	STD		{ int|linux_sys||unlink(const char *path); }
11	NOARGS		{ int|sys||execve(const char *path, char **argp, \
			    char **envp); }
12	NOARGS		{ int|sys||chdir(const char *path); }
13	STD		{ int|linux_sys||time(linux_time_t *t); }
14	STD		{ int|linux_sys||mknod(const char *path, linux_umode_t mode, \
			    unsigned dev); }
15	NOARGS		{ int|sys||chmod(const char *path, linux_umode_t mode); }
16	STD		{ int|linux_sys||lchown16(const char *path, \
			    linux_uid16_t uid, linux_gid16_t gid); }
;17 - no longer in linux source.
17	STD		{ int|linux_sys||break(char *nsize); }
18	OBSOL		ostat
19	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
			    int whence); }
20	NOARGS 		{ pid_t|sys||getpid(void); }
21	UNIMPL		mount
22	UNIMPL		umount
23	NOARGS		linux_setuid16 { int|sys||setuid(uid_t uid); }
24	NOARGS		linux_getuid16 { uid_t|sys||getuid(void); }
25	STD		{ int|linux_sys||stime(linux_time_t *t); }
26	STD		{ int|linux_sys||ptrace(int request, int pid, \
			  int addr, int data); }
27	STD		{ int|linux_sys||alarm(unsigned int secs); }
28	OBSOL		ofstat
29	NOARGS		{ int|linux_sys||pause(void); }
30	STD		{ int|linux_sys||utime(const char *path, \
			    struct linux_utimbuf *times); }
31	OBSOL		stty
32	OBSOL		gtty
33	NOARGS		{ int|sys||access(const char *path, int flags); }
34	STD		{ int|linux_sys||nice(int incr); }
35	OBSOL		ftime
36	NOARGS		{ int|sys||sync(void); }
37	STD		{ int|linux_sys||kill(int pid, int signum); }
38	NOARGS		{ int|sys||__posix_rename(const char *from, \
			    const char *to); }
39	NOARGS		{ int|sys||mkdir(const char *path, linux_umode_t mode); }
40	NOARGS		{ int|sys||rmdir(const char *path); }
41	NOARGS		{ int|sys||dup(int fd); }
42	STD		{ int|linux_sys||pipe(int *pfds); }
43	STD		{ int|linux_sys||times(struct times *tms); }
44	OBSOL		prof
45	STD		{ int|linux_sys||brk(char *nsize); }
46	NOARGS		linux_setgid16 { int|sys||setgid(gid_t gid); }
47	NOARGS		linux_getgid16 { gid_t|sys||getgid(void); }
48	STD		{ int|linux_sys||signal(int signum, \
			    linux_handler_t handler); }
49	NOARGS		linux_geteuid16 { uid_t|sys||geteuid(void); }
50	NOARGS		linux_getegid16 { gid_t|sys||getegid(void); }
51	NOARGS		{ int|sys||acct(char *path); }
52	OBSOL		phys
53	OBSOL		lock
54	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
			    void *data); }
55	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
56	OBSOL		mpx
57	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
58	OBSOL		ulimit
59	STD		{ int|linux_sys||oldolduname( \
			    struct linux_oldold_utsname *up); }
60	NOARGS		{ int|sys||umask(int newmask); }
61	NOARGS		{ int|sys||chroot(char *path); }
62	UNIMPL		ustat
63	NOARGS		{ int|sys||dup2(int from, int to); }
64	NOARGS		{ pid_t|sys||getppid(void); }
65	NOARGS		{ int|sys||getpgrp(void); }
66	NOARGS		{ int|sys||setsid(void); }
67	STD		{ int|linux_sys||sigaction(int signum, \
			    const struct linux_old_sigaction *nsa, \
			    struct linux_old_sigaction *osa); }
68	NOARGS		{ int|linux_sys||siggetmask(void); }
69	STD		{ int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
70	STD		{ int|linux_sys||setreuid16(linux_uid16_t ruid, \
			    linux_uid16_t euid); }
71	STD		{ int|linux_sys||setregid16(linux_gid16_t rgid, \
			    linux_gid16_t egid); }
72	STD		{ int|linux_sys||sigsuspend(void *restart, \
			    int oldmask, int mask); }
73	STD		{ int|linux_sys||sigpending(linux_old_sigset_t *set); }
74	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
			    u_int len);}
75	STD		{ int|linux_sys||setrlimit(u_int which, \
			    struct orlimit *rlp); }
76	STD		{ int|linux_sys||getrlimit(u_int which, \
			    struct orlimit *rlp); }
77	NOARGS		{ int|compat_50_sys||getrusage(int who, \
			    struct rusage50 *rusage); }
78	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
			    struct timezone *tzp); }
79	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
			    struct timezone *tzp); }
80	STD		{ int|linux_sys||getgroups16(int gidsetsize, \
			    linux_gid16_t *gidset); }
81	STD		{ int|linux_sys||setgroups16(int gidsetsize, \
			    linux_gid16_t *gidset); }
82	STD		{ int|linux_sys||oldselect(struct linux_oldselect *lsp); }
83	NOARGS		{ int|sys||symlink(const char *path, const char *link); }
84	NOARGS		{ int|compat_43_sys||lstat(const char *path, \
			    struct stat43 *ub); } oolstat
85	NOARGS		{ ssize_t|sys||readlink(const char *path, char *buf, \
			    int count); }
#ifdef EXEC_AOUT
86	STD		{ int|linux_sys||uselib(const char *path); }
#else
86	UNIMPL		sys_uselib
#endif
87	STD		{ int|linux_sys||swapon(char *name); }
88	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
			    int cmd, void *arg); }
89	STD		{ int|linux_sys||readdir(int fd, void *dent, \
			    unsigned int count); }
90	STD		{ int|linux_sys||old_mmap(struct linux_oldmmap *lmp); }
91	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
92	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
			    long length); }
93	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); }
94	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
95	STD		{ int|linux_sys||fchown16(int fd, linux_uid16_t uid, \
			    linux_gid16_t gid); }
96	STD		{ int|linux_sys||getpriority(int which, int who); }
97	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
98	NOARGS		{ int|sys||profil(void *samples, u_int size, \
			    u_int offset, u_int scale); }
99	STD		{ int|linux_sys||statfs(const char *path, \
			    struct linux_statfs *sp); }
100	STD		{ int|linux_sys||fstatfs(int fd, \
			    struct linux_statfs *sp); }
101	STD		{ int|linux_sys||ioperm(unsigned int lo, \
			    unsigned int hi, int val); }
102	STD		{ int|linux_sys||socketcall(int what, void *args); }
103	UNIMPL		syslog
104	NOARGS		{ int|compat_50_sys||setitimer(int which, \
			    struct itimerval50 *itv, struct itimerval50 *oitv); }
105	NOARGS		{ int|compat_50_sys||getitimer(int which, \
			    struct itimerval50 *itv); }
106	STD		{ int|linux_sys||stat(const char *path, \
			    struct linux_stat *sp); }
107	STD		{ int|linux_sys||lstat(const char *path, \
			    struct linux_stat *sp); }
108	STD		{ int|linux_sys||fstat(int fd, struct linux_stat *sp); }
109	STD		{ int|linux_sys||olduname(struct linux_old_utsname *up); }
110	STD		{ int|linux_sys||iopl(int level); }
111	UNIMPL		vhangup
112	UNIMPL		idle
113	UNIMPL		vm86old
114	STD		{ int|linux_sys||wait4(int pid, int *status, \
			    int options, struct rusage50 *rusage); }
115	STD		{ int|linux_sys||swapoff(const char *path); }
116	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
117	STD		{ int|linux_sys||ipc(int what, int a1, int a2, int a3, \
			    void *ptr); }
118	NOARGS		{ int|sys||fsync(int fd); }
119	STD		{ int|linux_sys||sigreturn(struct linux_sigcontext *scp); }
120	STD		{ int|linux_sys||clone(int flags, void *stack, \
			    void *parent_tidptr, void *tls, void *child_tidptr); }
121	STD		{ int|linux_sys||setdomainname(char *domainname, \
			    int len); }
122	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
123	STD		{ int|linux_sys||modify_ldt(int func, void *ptr, \
			    size_t bytecount); }
124	UNIMPL		adjtimex
125	STD		{ int|linux_sys||mprotect(const void *start, \
			    unsigned long len, int prot); }
126	STD		{ int|linux_sys||sigprocmask(int how, \
			    const linux_old_sigset_t *set, \
			    linux_old_sigset_t *oset); }
127	UNIMPL		create_module
128	UNIMPL		init_module
129	UNIMPL		delete_module
130	UNIMPL		get_kernel_syms
131	UNIMPL		quotactl
132	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
133	NOARGS		{ int|sys||fchdir(int fd); }
134	UNIMPL		bdflush
135	UNIMPL		sysfs
136	STD		{ int|linux_sys||personality(unsigned long per); }
137	UNIMPL		afs_syscall
138	NOARGS		linux_setfsuid16 { int|linux_sys||setfsuid(uid_t uid); }
139	NOARGS		linux_setfsgid16 { int|linux_sys||setfsgid(gid_t gid); }
140	STD		{ int|linux_sys||llseek(int fd, u_int32_t ohigh, \
			    u_int32_t olow, void *res, int whence); }
141	STD		{ int|linux_sys||getdents(int fd, \
			    struct linux_dirent *dent, unsigned int count); }
142	STD		{ int|linux_sys||select(int nfds, fd_set *readfds, \
			    fd_set *writefds, fd_set *exceptfds, \
			    struct timeval50 *timeout); }
143	NOARGS		{ int|sys||flock(int fd, int how); }
144	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
145	NOARGS		{ ssize_t|sys||readv(int fd, \
			    const struct iovec *iovp, int iovcnt); }
146	NOARGS		{ ssize_t|sys||writev(int fd, \
			    const struct iovec *iovp, int iovcnt); }
147	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
148	STD		{ int|linux_sys||fdatasync(int fd); }
149	STD		{ int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
150	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
151	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
152	NOARGS		{ int|sys||mlockall(int flags); }
153	NOARGS		{ int|sys||munlockall(void); }
154	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
			    const struct linux_sched_param *sp); }
155	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
			    struct linux_sched_param *sp); }
156	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
			    int policy, const struct linux_sched_param *sp); }
157	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
158	STD		{ int|linux_sys||sched_yield(void); }
159	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
160	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
161	UNIMPL		sys_sched_rr_get_interval
162	STD		{ int|linux_sys||nanosleep( \
			    const struct linux_timespec *rqtp, \
			    struct linux_timespec *rmtp); }
163	STD		{ void *|linux_sys||mremap(void *old_address, \
			    size_t old_size, size_t new_size, u_long flags); }
164	STD		{ int|linux_sys||setresuid16(linux_uid16_t ruid, \
			    linux_uid16_t euid, linux_uid16_t suid); }
165	STD		{ int|linux_sys||getresuid16(linux_uid16_t *ruid, \
			    linux_uid16_t *euid, linux_uid16_t *suid); }
166	UNIMPL		vm86
167	UNIMPL		query_module
168	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
			    int timeout); }
169	UNIMPL		nfsservctl
170	STD		{ int|linux_sys||setresgid16(linux_gid16_t rgid, \
			    linux_gid16_t egid, linux_gid16_t sgid); }
171	STD		{ int|linux_sys||getresgid16(linux_gid16_t *rgid, \
			    linux_gid16_t *egid, linux_gid16_t *sgid); }
172	INDIR		{ int|linux_sys||__prctl(int code, \
                                  ... void * args[LINUX_SYS_MAXSYSARGS]); }
173	STD		{ int|linux_sys||rt_sigreturn( \
			    struct linux_ucontext *ucp); }
174	STD		{ int|linux_sys||rt_sigaction(int signum, \
			    const struct linux_sigaction *nsa, \
			    struct linux_sigaction *osa, \
			    size_t sigsetsize); }
175	STD		{ int|linux_sys||rt_sigprocmask(int how, \
			    const linux_sigset_t *set, \
			    linux_sigset_t *oset, \
			    size_t sigsetsize); }
176	STD		{ int|linux_sys||rt_sigpending( \
			    linux_sigset_t *set, \
			    size_t sigsetsize); }
177	STD		{ int|linux_sys||rt_sigtimedwait( \
			    const linux_sigset_t *set, \
			    linux_siginfo_t *info, \
			    const struct linux_timespec *timeout); }
178	STD		{ int|linux_sys||rt_queueinfo(int pid, int signum, \
			    linux_siginfo_t *uinfo); }
179	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
			    size_t sigsetsize); }
180	STD		{ int|linux_sys||pread(int fd, char *buf, \
			    size_t nbyte, off_t offset); }
181	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
			    size_t nbyte, off_t offset); }
182	STD		{ int|linux_sys||chown16(const char *path, \
			    linux_uid16_t uid, linux_gid16_t gid); }
183	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
184	UNIMPL		capget
185	UNIMPL		capset
186	STD		{ int|linux_sys||sigaltstack( \
			    const struct linux_sigaltstack *ss, \
			    struct linux_sigaltstack *oss); }
187	UNIMPL		sendfile
188	UNIMPL		getpmsg
189	UNIMPL		putpmsg
190	NOARGS		{ int|sys|14|vfork(void); }
191	STD		{ int|linux_sys||ugetrlimit(int which, \
			    struct orlimit *rlp); }
#define linux_sys_mmap2_args linux_sys_mmap_args
192	NOARGS		{ linux_off_t|linux_sys||mmap2(unsigned long addr, \
			    size_t len, int prot, int flags, int fd, \
			    linux_off_t offset); }
193	STD		{ int|linux_sys||truncate64(const char *path, \
			    off_t length); }
194	STD		{ int|linux_sys||ftruncate64(unsigned int fd, \
			    off_t length); }
195	STD		{ int|linux_sys||stat64(const char *path, \
			    struct linux_stat64 *sp); }
196	STD		{ int|linux_sys||lstat64(const char *path, \
			    struct linux_stat64 *sp); }
197	STD		{ int|linux_sys||fstat64(int fd, \
			    struct linux_stat64 *sp); }
198	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
			    gid_t gid); }
199	NOARGS		{ uid_t|sys||getuid(void); }
200	NOARGS		{ gid_t|sys||getgid(void); }
201	NOARGS		{ uid_t|sys||geteuid(void); }
202	NOARGS		{ gid_t|sys||getegid(void); }
203	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
204	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
205	NOARGS		{ int|sys||getgroups(int gidsetsize, gid_t *gidset); }
206	NOARGS		{ int|sys||setgroups(int gidsetsize, gid_t *gidset); }
207	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
			    gid_t gid); }
208	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
			    uid_t suid); }
209	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
			    uid_t *suid); }
210	STD		{ int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
			    gid_t sgid); }
211	STD		{ int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
			    gid_t *sgid); }
212	NOARGS		{ int|sys||__posix_chown(const char *path, uid_t uid, \
				gid_t gid); }
213	NOARGS		{ int|sys||setuid(uid_t uid); }
214	NOARGS		{ int|sys||setgid(gid_t gid); }
215	STD		{ int|linux_sys||setfsuid(uid_t uid); }
216	STD		{ int|linux_sys||setfsgid(gid_t gid); }
217	UNIMPL		pivot_root
218	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
219	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
220	STD		{ int|linux_sys||getdents64(int fd, \
			    struct linux_dirent64 *dent, unsigned int count); }
221	STD		{ int|linux_sys||fcntl64(int fd, int cmd, void *arg); }
222	UNIMPL		/* unused */
223	UNIMPL		/* unused */
224	NOARGS		{ pid_t|linux_sys||gettid(void); }
225	STD		{ ssize_t|linux_sys||readahead(int fd, off_t offset, \
			    size_t count); }
226	STD		{ int|linux_sys||setxattr(char *path, char *name, \
			    void *value, size_t size, int flags); }
227	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
			    void *value, size_t size, int flags); }
228	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
			    void *value, size_t size, int flags); }
229	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
			    void *value, size_t size); }
230	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
			    void *value, size_t size); }
231	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
			    void *value, size_t size); }
232	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
			    size_t size); }
233	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
			    size_t size); }
234	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
			    size_t size); }
235	STD		{ int|linux_sys||removexattr(char *path, char *name); }
236	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
237	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
238	STD		{ int|linux_sys||tkill(int tid, int sig); }
239	UNIMPL		sendfile64
240	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
			    const struct linux_timespec *timeout, int *uaddr2, \
			    int val3); }
241	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
			    unsigned int len, unsigned long *mask); }
242	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
			    unsigned int len, unsigned long *mask); }
243	STD		{ int|linux_sys||set_thread_area( \
			    struct linux_user_desc *desc); }
244	STD		{ int|linux_sys||get_thread_area( \
			    struct linux_user_desc *desc); }
245	UNIMPL		io_setup
246	UNIMPL		io_destroy
247	UNIMPL		io_getevents
248	UNIMPL		io_submit
249	UNIMPL		io_cancel
250	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
			    size_t len, int advice); }
251	UNIMPL		/* unused */
252	STD		{ int|linux_sys||exit_group(int error_code); }
253	UNIMPL		lookup_dcookie
254	STD		{ int|linux_sys||epoll_create(int size); }
255	STD		{ int|linux_sys||epoll_ctl(int epfd, int op, int fd, \
			    struct linux_epoll_event *event); }
256	STD		{ int|linux_sys||epoll_wait(int epfd, \
			    struct linux_epoll_event *events, int maxevents, \
			    int timeout); }
257	UNIMPL		remap_file_pages
258	STD		{ int|linux_sys||set_tid_address(int *tid); }
259	STD		{ int|linux_sys||timer_create(clockid_t clockid, \
			    struct linux_sigevent *evp, timer_t *timerid); }
260	STD		{ int|linux_sys||timer_settime(timer_t timerid, \
			    int flags, const struct linux_itimerspec *tim, \
			    struct linux_itimerspec *otim); }
261	STD		{ int|linux_sys||timer_gettime(timer_t timerid, \
			    struct linux_itimerspec *tim); }
262	NOARGS		{ int|sys||timer_getoverrun(timer_t timerid); }
263	NOARGS		{ int|sys||timer_delete(timer_t timerid); }
264	STD		{ int|linux_sys||clock_settime(clockid_t which, \
			    struct linux_timespec *tp); }
265	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
			    struct linux_timespec *tp); }
266	STD		{ int|linux_sys||clock_getres(clockid_t which, \
			    struct linux_timespec *tp); }
267	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
			    int flags, struct linux_timespec *rqtp, \
			    struct linux_timespec *rmtp); }
268	STD		{ int|linux_sys||statfs64(const char *path, \
			    size_t sz, struct linux_statfs64 *sp); }
269	STD		{ int|linux_sys||fstatfs64(int fd, \
			    size_t sz, struct linux_statfs64 *sp); }
270	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
271	NOARGS		{ int|compat_50_sys||utimes(const char *path, \
			    const struct timeval50 *tptr); }
272	STD		{ int|linux_sys||fadvise64_64(int fd, off_t offset, \
			    off_t len, int advice); }
273	UNIMPL		vserver
274	UNIMPL		mbind
275	UNIMPL		get_mempolicy
276	UNIMPL		set_mempolicy
277	STD		{ linux_mqd_t|linux_sys||mq_open(const char *name, \
			    int oflag, linux_umode_t mode, \
			    struct linux_mq_attr *attr); }
278	STD		{ int|linux_sys||mq_unlink(const char *name); }
279	STD		{ int|linux_sys||mq_timedsend(linux_mqd_t mqdes, \
			    const char *msg_ptr, size_t msg_len, \
			    unsigned int msg_prio, \
			    const struct linux_timespec *abs_timeout); }
280	STD		{ ssize_t|linux_sys||mq_timedreceive(linux_mqd_t mqdes, \
			    char *msg_ptr, size_t msg_len, \
			    unsigned int *msg_prio, \
			    const struct linux_timespec *abs_timeout); }
281	STD		{ int|linux_sys||mq_notify(linux_mqd_t mqdes, \
			    const struct linux_sigevent *sevp); }
282	STD		{ int|linux_sys||mq_getsetattr(linux_mqd_t mqdes, \
			    const struct linux_mq_attr *newattr, \
			    struct linux_mq_attr *oldattr); }
283	UNIMPL		sys_kexec_load
284	STD		{ int|linux_sys||waitid(int idtype, id_t id, \
			    linux_siginfo_t *infop, int options, \
			    struct rusage50 *rusage); }
285	UNIMPL		/* unused */
286	UNIMPL		add_key
287	UNIMPL		request_key
288	UNIMPL		keyctl
289	UNIMPL		ioprio_set
290	UNIMPL		ioprio_get
291	STD		{ int|linux_sys||inotify_init(void); }
292	STD		{ int|linux_sys||inotify_add_watch(int fd, \
			    const char *pathname, uint32_t mask); }
293	STD		{ int|linux_sys||inotify_rm_watch(int fd, int wd); }
294	UNIMPL		migrate_pages
295	STD 		{ int|linux_sys||openat(int fd, const char *path, \
			    int flags, ... linux_umode_t mode); }
296	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
			    linux_umode_t mode); }
297	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
			    linux_umode_t mode, unsigned dev); }
298	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
			    uid_t owner, gid_t group, int flag); }
299	UNIMPL		futimesat
300	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
			    struct linux_stat64 *sp, int flag); }
301	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
			    int flag); }
302	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
			    int tofd, const char *to); }
303	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
			    int fd2, const char *name2, int flags); }
304	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
			    const char *path2); }
305	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
			    char *buf, size_t bufsize); }
306	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
			    linux_umode_t mode); }
307	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
			    int amode); }
308	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
			   fd_set *writefds, fd_set *exceptfds, \
			   struct linux_timespec *timeout, \
			   linux_sized_sigset_t *ss); }
309	STD		{ int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
			    struct linux_timespec *timeout, \
			    linux_sigset_t *sigset); }
310	UNIMPL		unshare
311	NOARGS		{ int|sys||__futex_set_robust_list(void *head, \
			    size_t len); }
312	NOARGS		{ int|sys||__futex_get_robust_list(lwpid_t lwpid, \
			    void **headp, size_t *lenp); }
313	UNIMPL		splice
314	STD		{ int|linux_sys||sync_file_range(int fd, \
			    off_t offset, off_t nbytes, unsigned int flags); }
315	UNIMPL		tee
316	UNIMPL		vmsplice
317	UNIMPL		move_pages
318	STD		{ int|linux_sys||getcpu(unsigned int *cpu, \
			    unsigned int *node, \
			    struct linux_getcpu_cache *tcache); }
319	STD		{ int|linux_sys||epoll_pwait(int epfd, \
			    struct linux_epoll_event *events, int maxevents, \
			    int timeout, const linux_sigset_t *sigmask); }
320	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
			    struct linux_timespec *times, int flag); }
321	UNIMPL		signalfd
322	STD		{ int|linux_sys||timerfd_create(clockid_t clock_id, \
			    int flags); }
323	STD		{ int|linux_sys||eventfd(unsigned int initval); }
324	STD		{ int|linux_sys||fallocate(int fd, int mode, \
			    off_t offset, off_t len); }
325	STD		{ int|linux_sys||timerfd_settime(int fd, int flags, \
			    const struct linux_itimerspec *tim, \
			    struct linux_itimerspec *otim); }
326	STD		{ int|linux_sys||timerfd_gettime(int fd, \
			    struct linux_itimerspec *tim); }
327	UNIMPL		signalfd4
328	STD		{ int|linux_sys||eventfd2(unsigned int initval, \
			    int flags); }
329	STD		{ int|linux_sys||epoll_create1(int flags); }
330	STD             { int|linux_sys||dup3(int from, int to, int flags); }
331	STD             { int|linux_sys||pipe2( int *pfds, int flags); }
332	STD		{ int|linux_sys||inotify_init1(int flags); }
333	STD		{ int|linux_sys||preadv(int fd, \
			    const struct iovec *iovp, int iovcnt, \
			    unsigned long off_lo, unsigned long off_hi); }
334	STD		{ int|linux_sys||pwritev(int fd, \
			    const struct iovcnt *iovp, int iovcnt, \
			    unsigned long off_lo, unsigned long off_hi); }
335	UNIMPL		rt_tgsigqueueinfo
336	UNIMPL		perf_counter_open
337	UNIMPL		recvmmsg
338	UNIMPL		fanotify_init
339	UNIMPL		fanotify_mark
340	STD		{ int|linux_sys||prlimit64(pid_t pid, int which, \
			    struct rlimit *new_rlp, struct rlimit *old_rlp); }
341	UNIMPL		name_to_handle_at
342	UNIMPL		open_by_handle_at
343	UNIMPL		clock_adjtime
344	STD		{ int|linux_sys||syncfs(int fd); }
345	UNIMPL		sendmmsg
346	UNIMPL		setns
347	UNIMPL		process_vm_readv
348	UNIMPL		process_vm_writev
349	UNIMPL		kcmp
350	UNIMPL		finit_module
351	UNIMPL		sched_setattr
352	UNIMPL		sched_getattr
353	STD		{ int|linux_sys||renameat2(int fromfd, \
			    const char *from, int tofd, const char *to, \
			    unsigned int flags); }
354	UNIMPL		seccomp
355	NOARGS		{ ssize_t|sys||getrandom(void *buf, size_t buflen, \
			    unsigned int flags); }
356	STD		{ int|linux_sys||memfd_create(const char *name, \
			    unsigned int flags); }
357	UNIMPL		bpf
358	UNIMPL		execveat
359	UNIMPL		socket
360	UNIMPL		socketpair
361	UNIMPL		bind
362	UNIMPL		connect
363	UNIMPL		listen
364	UNIMPL		accept4
365	UNIMPL		getsockopt
366	UNIMPL		setsockopt
367	UNIMPL		getsockname
368	UNIMPL		getpeername
369	UNIMPL		sendto
370	UNIMPL		sendmsg
371	UNIMPL		recvfrom
372	UNIMPL		recvmsg
373	UNIMPL		shutdown
374	UNIMPL		userfaultfd
375	UNIMPL		membarrier
376	UNIMPL		mlock2
377	STD		{ ssize_t|linux_sys||copy_file_range(int fd_in, \
			off_t * off_in, int fd_out, off_t * off_out, \
			size_t len, unsigned int flags); }
378	UNIMPL		preadv2
379	UNIMPL		pwritev2
380	UNIMPL		pkey_mprotect
381	UNIMPL		pkey_alloc
382	UNIMPL		pkey_free
383	UNIMPL		statx
384	UNIMPL		arch_prctl
385	UNIMPL		io_pgetevents
386	UNIMPL		rseq
387	UNIMPL
388	UNIMPL
389	UNIMPL
390	UNIMPL
391	UNIMPL
392	UNIMPL
393	UNIMPL		semget
394	UNIMPL		semctl
395	UNIMPL		shmget
396	UNIMPL		shmctl
397	STD		{ int|linux_sys||statx(int fd, const char *path, \
			    int flag, unsigned int mask, \
			    struct linux_statx *sp); }
398	UNIMPL		shmdt
399	UNIMPL		msgget
400	UNIMPL		msgsnd
401	UNIMPL		msgrcv
402	UNIMPL		msgctl
403	UNIMPL		clock_gettime64
404	UNIMPL		clock_settime64
405	UNIMPL		clock_adjtime64
406	UNIMPL		clock_getres_time64
407	UNIMPL		clock_nanosleep_time64
408	UNIMPL		timer_gettime64
409	UNIMPL		timer_settime64
410	UNIMPL		timerfd_gettime64
411	UNIMPL		timerfd_settime64
412	UNIMPL		utimensat_time64
413	UNIMPL		pselect6_time64
414	UNIMPL		ppoll_time64
415	UNIMPL
416	UNIMPL		io_pgetevents_time64
417	UNIMPL		recvmmsg_time64
418	UNIMPL		mq_timedsend_time64
419	UNIMPL		mq_timedreceive_time64
420	UNIMPL		semtimedop_time64
421	UNIMPL		rt_sigtimedwait_time64
422	UNIMPL		futex_time64
423	UNIMPL		sched_rr_get_interval_time64
424	UNIMPL		pidfd_send_signal
425	UNIMPL		io_uring_setup
426	UNIMPL		io_uring_enter
427	UNIMPL		io_uring_register
428	UNIMPL		open_tree
429	UNIMPL		move_mount
430	UNIMPL		fsopen
431	UNIMPL		fsconfig
432	UNIMPL		fsmount
433	UNIMPL		fspick
434	UNIMPL		pidfd_open
435	STD		{ int|linux_sys||clone3(\
			    struct linux_user_clone3_args *cl_args, \
			    size_t size); }
436	STD		{ int|linux_sys||close_range(unsigned int first, \
			    unsigned int last, unsigned int flags); }
437	UNIMPL		openat2
438	UNIMPL		pidfd_getfd
439	STD		{ int|linux_sys||faccessat2(int fd, const char *path, \
			    int amode, int flags); }
440	UNIMPL		process_madvise
441	STD		{ int|linux_sys||epoll_pwait2(int epfd, \
			    struct linux_epoll_event *events, int maxevents, \
			    const struct linux_timespec *timeout, \
			    const linux_sigset_t *sigmask); }
@


1.138
log
@Add prctl(2) lwp_{g,s}etname for compat linux (Kevin Bloom)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.137 2024/09/28 19:35:55 christos Exp $
d300 1
a300 1
                                  ... void * args[SYS_MAXSYSARGS]); }
@


1.137
log
@Linux GSoC-2024: renameat2, clone3, sync_file_range, syncfs (Shivraj Jamgade)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.136 2024/07/01 01:35:53 christos Exp $
d299 2
a300 1
172	UNIMPL		prctl
@


1.136
log
@Add linux POSIX message queue support (Ricardo Branco)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.135 2024/06/29 13:46:09 christos Exp $
d543 2
a544 1
314	UNIMPL		sync_file_range
d590 1
a590 1
344	UNIMPL		syncfs
d599 3
a601 1
353	UNIMPL		renameat2
d627 3
a629 1
377	UNIMPL		copy_file_range
d689 3
a691 1
435	UNIMPL		clone3
@


1.135
log
@From gsoc 2024: Implement faccessat2 and getcpu (Shivraz)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.134 2023/08/19 17:49:49 christos Exp $
d50 1
d473 17
a489 6
277	UNIMPL		mq_open
278	UNIMPL		mq_unlink
279	UNIMPL		mq_timedsend
280	UNIMPL		mq_timedreceive
281	UNIMPL		mq_notify
282	UNIMPL		mq_getsetattr
@


1.135.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.137 2024/09/28 19:35:55 christos Exp $
a49 1
#include <compat/linux/common/linux_mqueue.h>
d472 6
a477 17
277	STD		{ linux_mqd_t|linux_sys||mq_open(const char *name, \
			    int oflag, linux_umode_t mode, \
			    struct linux_mq_attr *attr); }
278	STD		{ int|linux_sys||mq_unlink(const char *name); }
279	STD		{ int|linux_sys||mq_timedsend(linux_mqd_t mqdes, \
			    const char *msg_ptr, size_t msg_len, \
			    unsigned int msg_prio, \
			    const struct linux_timespec *abs_timeout); }
280	STD		{ ssize_t|linux_sys||mq_timedreceive(linux_mqd_t mqdes, \
			    char *msg_ptr, size_t msg_len, \
			    unsigned int *msg_prio, \
			    const struct linux_timespec *abs_timeout); }
281	STD		{ int|linux_sys||mq_notify(linux_mqd_t mqdes, \
			    const struct linux_sigevent *sevp); }
282	STD		{ int|linux_sys||mq_getsetattr(linux_mqd_t mqdes, \
			    const struct linux_mq_attr *newattr, \
			    struct linux_mq_attr *oldattr); }
d531 1
a531 2
314	STD		{ int|linux_sys||sync_file_range(int fd, \
			    off_t offset, off_t nbytes, unsigned int flags); }
d577 1
a577 1
344	STD		{ int|linux_sys||syncfs(int fd); }
d586 1
a586 3
353	STD		{ int|linux_sys||renameat2(int fromfd, \
			    const char *from, int tofd, const char *to, \
			    unsigned int flags); }
d612 1
a612 3
377	STD		{ ssize_t|linux_sys||copy_file_range(int fd_in, \
			off_t * off_in, int fd_out, off_t * off_out, \
			size_t len, unsigned int flags); }
d672 1
a672 3
435	STD		{ int|linux_sys||clone3(\
			    struct linux_user_clone3_args *cl_args, \
			    size_t size); }
@


1.134
log
@Add inotify* syscalls GSoC 2023 (Theodore Preduta)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.133 2023/08/18 19:41:19 christos Exp $
d50 1
d535 3
a537 1
318	UNIMPL		getcpu
d677 2
a678 1
439	UNIMPL		faccessat2
@


1.133
log
@Add linux waitid(2) from GSoC 2023 (Theodore Preduta)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.132 2023/07/29 15:04:28 christos Exp $
d478 1
a478 1
284     STD		{ int|linux_sys||waitid(int idtype, id_t id, \
d487 4
a490 3
291	UNIMPL		inotify_init
292	UNIMPL		inotify_add_watch
293	UNIMPL		inotify_rm_watch
d555 3
a557 3
330     STD             { int|linux_sys||dup3(int from, int to, int flags); }
331     STD             { int|linux_sys||pipe2( int *pfds, int flags); }
332	UNIMPL		inotify_init1
d629 1
a629 1
397     STD		{ int|linux_sys||statx(int fd, const char *path, \
@


1.132
log
@Add/fix statx, readahead, close_range. From GSoC 2023 by Theodore Preduta
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.131 2023/07/28 19:01:11 christos Exp $
d478 3
a480 1
284	UNIMPL		waitid
@


1.131
log
@add epoll syscalls
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.130 2023/07/10 13:05:27 christos Exp $
d386 2
a387 1
225	UNIMPL		readahead
d626 3
a628 1
397	UNIMPL		shmat
d667 2
a668 1
436	UNIMPL		close_range
@


1.130
log
@Add new syscalls
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.129 2021/12/02 04:29:48 ryo Exp $
d431 6
a436 3
254	UNIMPL		epoll_create
255	UNIMPL		epoll_ctl
256	UNIMPL		epoll_wait
d531 3
a533 1
319	UNIMPL		epoll_wait
d550 1
a550 1
329	UNIMPL		epoll_create1
d669 4
@


1.129
log
@add prlimit64(2) syscall to COMPAT_LINUX and COMPAT_LINUX32
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.128 2021/09/20 02:20:02 thorpej Exp $
d572 92
@


1.128
log
@Add preadv(2) and pwritev(2) system calls to COMPAT_LINUX and COMPAT_LINUX32.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.127 2021/09/20 00:09:01 thorpej Exp $
d560 2
a561 1
340	UNIMPL		prlimit64
@


1.127
log
@Add the eventfd system calls to COMPAT_LINUX and COMPAT_LINUX32.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.126 2021/09/19 23:51:36 thorpej Exp $
d549 6
a554 2
333	UNIMPL		preadv
334	UNIMPL		pwritev
@


1.126
log
@Add the timerfd syscalls to COMPAT_LINUX and COMPAT_LINUX32.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.125 2021/09/19 23:01:50 thorpej Exp $
d534 1
a534 1
323	UNIMPL		eventfd
d543 2
a544 1
328	UNIMPL		eventfd2
@


1.125
log
@Add the POSIX timer syscalls (timer_create(), timer_settime(), timer_gettime(),
timer_getoverrun(), and timer_delete()) to COMPAT_LINUX and COMPAT_LINUX32.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.124 2020/04/26 18:53:32 thorpej Exp $
d532 2
a533 1
322	UNIMPL		timerfd_create
d537 5
a541 2
325	UNIMPL		timerfd_settime
326	UNIMPL		timerfd_gettime
@


1.124
log
@Add a NetBSD native futex implementation, mostly written by riastradh@@.
Map the COMPAT_LINUX futex calls to the native ones.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.123 2019/11/09 23:44:32 jdolecek Exp $
d436 9
a444 5
259	UNIMPL		timer_create
260	UNIMPL		timer_settime
261	UNIMPL		timer_gettime
262	UNIMPL		timer_getoverrun
263	UNIMPL		timer_delete
@


1.124.2.1
log
@Add Linux eventfd, timerfd, and POSIX timer calls.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.124 2020/04/26 18:53:32 thorpej Exp $
d436 5
a440 9
259	STD		{ int|linux_sys||timer_create(clockid_t clockid, \
			    struct linux_sigevent *evp, timer_t *timerid); }
260	STD		{ int|linux_sys||timer_settime(timer_t timerid, \
			    int flags, const struct linux_itimerspec *tim, \
			    struct linux_itimerspec *otim); }
261	STD		{ int|linux_sys||timer_gettime(timer_t timerid, \
			    struct linux_itimerspec *tim); }
262	NOARGS		{ int|sys||timer_getoverrun(timer_t timerid); }
263	NOARGS		{ int|sys||timer_delete(timer_t timerid); }
d528 2
a529 3
322	STD		{ int|linux_sys||timerfd_create(clockid_t clock_id, \
			    int flags); }
323	STD		{ int|linux_sys||eventfd(unsigned int initval); }
d532 2
a533 5
325	STD		{ int|linux_sys||timerfd_settime(int fd, int flags, \
			    const struct linux_itimerspec *new_value, \
			    struct linux_itimerspec *old_value); }
326	STD		{ int|linux_sys||timerfd_gettime(int fd, \
			    struct linux_itimerspec *curr_value); }
d535 1
a535 2
328	STD		{ int|linux_sys||eventfd2(unsigned int initval, \
			    int flags); }
@


1.124.2.2
log
@Add suppport for Linux preadv(2) and pwritev(2).  Same as native, except
for the silly way that the offset argument is passed in.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.124.2.1 2020/12/15 14:07:21 thorpej Exp $
d549 2
a550 6
333	STD		{ int|linux_sys||preadv(int fd, \
			    const struct iovec *iovp, int iovcnt, \
			    unsigned long off_lo, unsigned long off_hi); }
334	STD		{ int|linux_sys||pwritev(int fd, \
			    const struct iovcnt *iovp, int iovcnt, \
			    unsigned long off_lo, unsigned long off_hi); }
@


1.123
log
@add dummy implementation of linux fallocate() which just returns EOPNOTSUPP;
this is needed so that glibc falls back to emulation and apps behaving
properly, since EOPNOTSUPP is a documented and expected return code, but
ENOSYS is not

right now there are no filesystems in NetBSD tree supporting the fallocate
VOP, so no point trying to map this to a native call

supposed to help with problem reported in
https://mail-index.netbsd.org/tech-kern/2019/11/03/msg025641.html
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.122 2017/01/02 16:32:09 manu Exp $
d514 4
a517 5
311	STD		{ int|linux_sys||set_robust_list( \
			    struct linux_robust_list_head *head, size_t len); }
312	STD		{ int|linux_sys||get_robust_list(int pid, \
			    struct linux_robust_list_head **head, \
			    size_t *len); }
@


1.122
log
@Add pselect6 Linux system call.
This lets Matlab R2016A run on NetBSD/amd64
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.121 2016/07/24 13:22:01 njoly Exp $
d531 2
a532 1
324	UNIMPL		fallocate
@


1.122.16.1
log
@Mostly merge changes from HEAD upto 20200411
@
text
@d1 1
a1 1
	$NetBSD$
d531 1
a531 2
324	STD		{ int|linux_sys||fallocate(int fd, int mode, \
			    off_t offset, off_t len); }
@


1.121
log
@Small cleanup. Adjust readlink/readlinkat signatures to reduce diffs with
native.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.120 2015/03/23 07:30:15 ozaki-r Exp $
d506 4
a509 1
308	UNIMPL		pselect6
@


1.120
log
@Fix inconsistent argument names
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.119 2014/11/22 13:18:45 njoly Exp $
d168 1
a168 1
85	NOARGS		{ int|sys||readlink(const char *path, char *buf, \
d500 1
a500 1
305	NOARGS		{ int|sys||readlinkat(int fd, const char *path, \
@


1.120.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.121 2016/07/24 13:22:01 njoly Exp $
d168 1
a168 1
85	NOARGS		{ ssize_t|sys||readlink(const char *path, char *buf, \
d500 1
a500 1
305	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
@


1.120.2.2
log
@Sync with HEAD.  (Note that most of these changes are simply $NetBSD$
tag issues.)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.122 2017/01/02 16:32:09 manu Exp $
d506 1
a506 4
308	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
			   fd_set *writefds, fd_set *exceptfds, \
			   struct linux_timespec *timeout, \
			   linux_sized_sigset_t *ss); }
@


1.119
log
@Fix ppoll signature (int ->u_int)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.118 2014/05/31 08:51:19 njoly Exp $
d165 1
a165 1
83	NOARGS		{ int|sys||symlink(const char *path, const char *to); }
d167 2
a168 2
			    struct stat43 *up); } oolstat
85	NOARGS		{ int|sys||readlink(const char *name, char *buf, \
@


1.119.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.120 2015/03/23 07:30:15 ozaki-r Exp $
d165 1
a165 1
83	NOARGS		{ int|sys||symlink(const char *path, const char *link); }
d167 2
a168 2
			    struct stat43 *ub); } oolstat
85	NOARGS		{ int|sys||readlink(const char *path, char *buf, \
@


1.119.2.2
log
@Sync with HEAD
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.119.2.1 2015/04/06 15:18:06 skrll Exp $
d168 1
a168 1
85	NOARGS		{ ssize_t|sys||readlink(const char *path, char *buf, \
d500 1
a500 1
305	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
@


1.119.2.3
log
@Sync with HEAD
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.119.2.2 2016/10/05 20:55:38 skrll Exp $
d506 1
a506 4
308	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
			   fd_set *writefds, fd_set *exceptfds, \
			   struct linux_timespec *timeout, \
			   linux_sized_sigset_t *ss); }
@


1.118
log
@Fix munmap(2) signature.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.117 2014/05/29 10:35:27 njoly Exp $
d507 1
a507 1
309	STD		{ int|linux_sys||ppoll(struct pollfd *fds, int nfds, \
@


1.118.2.1
log
@Pull up following revision(s) (requested by manu in ticket #1354):
	sys/compat/linux/arch/alpha/syscalls.master: revision 1.92 via patch
	sys/compat/linux/arch/amd64/syscalls.master: revision 1.58 via patch
	sys/compat/linux/arch/arm/syscalls.master: revision 1.65 via patch
	sys/compat/linux/arch/i386/syscalls.master: revision 1.122 via patch
	sys/compat/linux/arch/m68k/syscalls.master: revision 1.91 via patch
	sys/compat/linux/arch/mips/syscalls.master: revision 1.61 via patch
	sys/compat/linux/arch/powerpc/syscalls.master: revision 1.70 via patch
	sys/compat/linux/common/linux_misc.c: revision 1.234
	sys/compat/linux/common/linux_signal.h: revision 1.31
Add pselect6 Linux system call.
This lets Matlab R2016A run on NetBSD/amd64
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.118 2014/05/31 08:51:19 njoly Exp $
d506 1
a506 4
308	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
			    fd_set *writefds, fd_set *exceptfds, \
			    struct linux_timespec *timeout, \
			    linux_sized_sigset_t *ss); }
@


1.117
log
@For utimes(2), use compat_50_sys_utimes() instead of local version.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.116 2014/05/20 17:24:49 njoly Exp $
d181 1
a181 1
91	NOARGS		{ int|sys||munmap(void *addr, int len); }
@


1.116
log
@Fix getgroups/setgroups signature.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.115 2014/05/17 09:23:51 njoly Exp $
d455 2
a456 1
271	STD		{ int|linux_sys||utimes(const char *path, struct linux_timeval *times); }
@


1.115
log
@Fix fadvise64 syscalls to use 64bit offset types.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.114 2014/05/04 10:08:53 njoly Exp $
d359 2
a360 2
205	NOARGS		{ int|sys||getgroups(u_int gidsetsize, gid_t *gidset); }
206	NOARGS		{ int|sys||setgroups(u_int gidsetsize, gid_t *gidset); }
@


1.114
log
@Fix pread/pwrite syscalls which need a 64bit offset argument.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.113 2014/04/08 16:48:01 njoly Exp $
d426 2
a427 2
250	STD		{ int|linux_sys||fadvise64(int fd, \
			    linux_off_t offset, size_t len, int advice); }
d456 2
a457 2
272	STD		{ int|linux_sys||fadvise64_64(int fd, \
			    linux_off_t offset, linux_off_t len, int advice); }
@


1.113
log
@Adjust read/write/readv/writev signature to match native versions.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.112 2013/11/18 01:32:52 chs Exp $
d320 1
a320 1
			    size_t nbyte, linux_off_t offset); }
d322 1
a322 1
			    size_t nbyte, linux_off_t offset); }
@


1.112
log
@implement the *at() syscalls.
bring the unimplemented syscall list up to date.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.111 2013/11/07 19:37:18 njoly Exp $
d58 3
a60 2
3	NOARGS		{ int|sys||read(int fd, char *buf, u_int nbyte); }
4	NOARGS		{ int|sys||write(int fd, char *buf, u_int nbyte); }
d257 4
a260 4
145	NOARGS		{ int|sys||readv(int fd, struct iovec *iovp, \
				u_int iovcnt); }
146	NOARGS		{ int|sys||writev(int fd, struct iovec *iovp, \
				u_int iovcnt); }
@


1.112.2.1
log
@Rebase.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.118 2014/05/31 08:51:19 njoly Exp $
d58 2
a59 3
3	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
4	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
			    size_t nbyte); }
d180 1
a180 1
91	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
d256 4
a259 4
145	NOARGS		{ ssize_t|sys||readv(int fd, \
			    const struct iovec *iovp, int iovcnt); }
146	NOARGS		{ ssize_t|sys||writev(int fd, \
			    const struct iovec *iovp, int iovcnt); }
d319 1
a319 1
			    size_t nbyte, off_t offset); }
d321 1
a321 1
			    size_t nbyte, off_t offset); }
d358 2
a359 2
205	NOARGS		{ int|sys||getgroups(int gidsetsize, gid_t *gidset); }
206	NOARGS		{ int|sys||setgroups(int gidsetsize, gid_t *gidset); }
d425 2
a426 2
250	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
			    size_t len, int advice); }
d454 3
a456 4
271	NOARGS		{ int|compat_50_sys||utimes(const char *path, \
			    const struct timeval50 *tptr); }
272	STD		{ int|linux_sys||fadvise64_64(int fd, off_t offset, \
			    off_t len, int advice); }
@


1.111
log
@Fix dup/dup2/dup3 argument types (u_int -> int).
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.110 2013/09/24 13:27:49 njoly Exp $
d61 1
a61 1
			    int mode); }
d65 1
a65 1
8	STD		{ int|linux_sys||creat(const char *path, int mode); }
d72 3
a74 3
14	STD		{ int|linux_sys||mknod(const char *path, int mode, \
			    int dev); }
15	NOARGS		{ int|sys||chmod(const char *path, int mode); }
d104 1
a104 1
39	NOARGS		{ int|sys||mkdir(const char *path, int mode); }
d184 1
a184 1
94	NOARGS		{ int|sys||fchmod(int fd, int mode); }
d479 8
a486 4
295	UNIMPL		openat
296	UNIMPL		mkdirat
297	UNIMPL		mknodat
298	UNIMPL		fchownat
d488 16
a503 8
300	UNIMPL		fstatat64
301	UNIMPL		unlinkat
302	UNIMPL		renameat
303	UNIMPL		linkat
304	UNIMPL		symlinkat
305	UNIMPL		readlinkat
306	UNIMPL		fchmodat
307	UNIMPL		faccessat
d540 13
@


1.110
log
@Add utimensat(2) for compat linux.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.109 2013/04/08 20:54:48 pooka Exp $
d106 1
a106 1
41	NOARGS		{ int|sys||dup(u_int fd); }
d131 1
a131 1
63	NOARGS		{ int|sys||dup2(u_int from, u_int to); }
d520 1
a520 2
330     STD             { int|linux_sys||dup3(u_int from, u_int to, \
                            int flags); }
@


1.109
log
@support utimes on non-alpha linux platforms
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.108 2012/09/19 21:19:14 pooka Exp $
d509 2
a510 1
320	UNIMPL		utimensat
@


1.109.4.1
log
@sync with head
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.109 2013/04/08 20:54:48 pooka Exp $
d58 2
a59 3
3	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
4	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
			    size_t nbyte); }
d61 1
a61 1
			    linux_umode_t mode); }
d65 1
a65 1
8	STD		{ int|linux_sys||creat(const char *path, linux_umode_t mode); }
d72 3
a74 3
14	STD		{ int|linux_sys||mknod(const char *path, linux_umode_t mode, \
			    unsigned dev); }
15	NOARGS		{ int|sys||chmod(const char *path, linux_umode_t mode); }
d104 1
a104 1
39	NOARGS		{ int|sys||mkdir(const char *path, linux_umode_t mode); }
d106 1
a106 1
41	NOARGS		{ int|sys||dup(int fd); }
d131 1
a131 1
63	NOARGS		{ int|sys||dup2(int from, int to); }
d184 1
a184 1
94	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
d256 4
a259 4
145	NOARGS		{ ssize_t|sys||readv(int fd, \
			    const struct iovec *iovp, int iovcnt); }
146	NOARGS		{ ssize_t|sys||writev(int fd, \
			    const struct iovec *iovp, int iovcnt); }
d319 1
a319 1
			    size_t nbyte, off_t offset); }
d321 1
a321 1
			    size_t nbyte, off_t offset); }
d425 2
a426 2
250	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
			    size_t len, int advice); }
d455 2
a456 2
272	STD		{ int|linux_sys||fadvise64_64(int fd, off_t offset, \
			    off_t len, int advice); }
d479 4
a482 8
295	STD 		{ int|linux_sys||openat(int fd, const char *path, \
			    int flags, ... linux_umode_t mode); }
296	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
			    linux_umode_t mode); }
297	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
			    linux_umode_t mode, unsigned dev); }
298	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
			    uid_t owner, gid_t group, int flag); }
d484 8
a491 16
300	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
			    struct linux_stat64 *sp, int flag); }
301	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
			    int flag); }
302	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
			    int tofd, const char *to); }
303	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
			    int fd2, const char *name2, int flags); }
304	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
			    const char *path2); }
305	NOARGS		{ int|sys||readlinkat(int fd, const char *path, \
			    char *buf, size_t bufsize); }
306	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
			    linux_umode_t mode); }
307	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
			    int amode); }
d509 1
a509 2
320	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
			    struct linux_timespec *times, int flag); }
d519 2
a520 1
330     STD             { int|linux_sys||dup3(int from, int to, int flags); }
a527 13
338	UNIMPL		fanotify_init
339	UNIMPL		fanotify_mark
340	UNIMPL		prlimit64
341	UNIMPL		name_to_handle_at
342	UNIMPL		open_by_handle_at
343	UNIMPL		clock_adjtime
344	UNIMPL		syncfs
345	UNIMPL		sendmmsg
346	UNIMPL		setns
347	UNIMPL		process_vm_readv
348	UNIMPL		process_vm_writev
349	UNIMPL		kcmp
350	UNIMPL		finit_module
@


1.108
log
@emulate ppoll which is essentially our pollts
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.107 2011/11/18 04:03:50 christos Exp $
d454 1
a454 1
271	UNIMPL		utimes
@


1.107
log
@add sigtimedwait
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.106 2011/07/09 14:49:40 christos Exp $
d493 3
a495 1
309	UNIMPL		ppoll
@


1.107.10.1
log
@Resync to 2012-11-19 00:00:00 UTC
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.108 2012/09/19 21:19:14 pooka Exp $
d493 1
a493 3
309	STD		{ int|linux_sys||ppoll(struct pollfd *fds, int nfds, \
			    struct linux_timespec *timeout, \
			    linux_sigset_t *sigset); }
@


1.107.10.2
log
@resync from head
@
text
@d1 1
a1 1
	$NetBSD$
d454 1
a454 1
271	STD		{ int|linux_sys||utimes(const char *path, struct linux_timeval *times); }
@


1.107.10.3
log
@Rebase to HEAD as of a few days ago.
@
text
@d58 2
a59 3
3	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
4	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
			    size_t nbyte); }
d61 1
a61 1
			    linux_umode_t mode); }
d65 1
a65 1
8	STD		{ int|linux_sys||creat(const char *path, linux_umode_t mode); }
d72 3
a74 3
14	STD		{ int|linux_sys||mknod(const char *path, linux_umode_t mode, \
			    unsigned dev); }
15	NOARGS		{ int|sys||chmod(const char *path, linux_umode_t mode); }
d104 1
a104 1
39	NOARGS		{ int|sys||mkdir(const char *path, linux_umode_t mode); }
d106 1
a106 1
41	NOARGS		{ int|sys||dup(int fd); }
d131 1
a131 1
63	NOARGS		{ int|sys||dup2(int from, int to); }
d180 1
a180 1
91	NOARGS		{ int|sys||munmap(void *addr, size_t len); }
d184 1
a184 1
94	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
d256 4
a259 4
145	NOARGS		{ ssize_t|sys||readv(int fd, \
			    const struct iovec *iovp, int iovcnt); }
146	NOARGS		{ ssize_t|sys||writev(int fd, \
			    const struct iovec *iovp, int iovcnt); }
d319 1
a319 1
			    size_t nbyte, off_t offset); }
d321 1
a321 1
			    size_t nbyte, off_t offset); }
d358 2
a359 2
205	NOARGS		{ int|sys||getgroups(int gidsetsize, gid_t *gidset); }
206	NOARGS		{ int|sys||setgroups(int gidsetsize, gid_t *gidset); }
d425 2
a426 2
250	STD		{ int|linux_sys||fadvise64(int fd, off_t offset, \
			    size_t len, int advice); }
d454 3
a456 4
271	NOARGS		{ int|compat_50_sys||utimes(const char *path, \
			    const struct timeval50 *tptr); }
272	STD		{ int|linux_sys||fadvise64_64(int fd, off_t offset, \
			    off_t len, int advice); }
d479 4
a482 8
295	STD 		{ int|linux_sys||openat(int fd, const char *path, \
			    int flags, ... linux_umode_t mode); }
296	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
			    linux_umode_t mode); }
297	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
			    linux_umode_t mode, unsigned dev); }
298	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
			    uid_t owner, gid_t group, int flag); }
d484 8
a491 16
300	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
			    struct linux_stat64 *sp, int flag); }
301	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
			    int flag); }
302	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
			    int tofd, const char *to); }
303	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
			    int fd2, const char *name2, int flags); }
304	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
			    const char *path2); }
305	NOARGS		{ int|sys||readlinkat(int fd, const char *path, \
			    char *buf, size_t bufsize); }
306	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
			    linux_umode_t mode); }
307	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
			    int amode); }
d509 1
a509 2
320	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
			    struct linux_timespec *times, int flag); }
d519 2
a520 1
330     STD             { int|linux_sys||dup3(int from, int to, int flags); }
a527 13
338	UNIMPL		fanotify_init
339	UNIMPL		fanotify_mark
340	UNIMPL		prlimit64
341	UNIMPL		name_to_handle_at
342	UNIMPL		open_by_handle_at
343	UNIMPL		clock_adjtime
344	UNIMPL		syncfs
345	UNIMPL		sendmmsg
346	UNIMPL		setns
347	UNIMPL		process_vm_readv
348	UNIMPL		process_vm_writev
349	UNIMPL		kcmp
350	UNIMPL		finit_module
@


1.107.10.4
log
@update from HEAD
@
text
@d165 1
a165 1
83	NOARGS		{ int|sys||symlink(const char *path, const char *link); }
d167 2
a168 2
			    struct stat43 *ub); } oolstat
85	NOARGS		{ ssize_t|sys||readlink(const char *path, char *buf, \
d500 1
a500 1
305	NOARGS		{ ssize_t|sys||readlinkat(int fd, const char *path, \
d506 2
a507 5
308	STD		{ int|linux_sys||pselect6(int nfds, fd_set *readfds, \
			   fd_set *writefds, fd_set *exceptfds, \
			   struct linux_timespec *timeout, \
			   linux_sized_sigset_t *ss); }
309	STD		{ int|linux_sys||ppoll(struct pollfd *fds, u_int nfds, \
@


1.106
log
@the first argument of {g,s}etitimer() is int not u_int.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.105 2011/05/30 17:50:31 alnsn Exp $
d310 4
a313 1
177	UNIMPL		rt_sigtimedwait
@


1.106.2.1
log
@sync with head
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.106 2011/07/09 14:49:40 christos Exp $
d310 1
a310 4
177	STD		{ int|linux_sys||rt_sigtimedwait( \
			    const linux_sigset_t *set, \
			    linux_siginfo_t *info, \
			    const struct linux_timespec *timeout); }
@


1.106.2.2
log
@sync with head
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.106.2.1 2012/04/17 00:07:16 yamt Exp $
d493 1
a493 3
309	STD		{ int|linux_sys||ppoll(struct pollfd *fds, int nfds, \
			    struct linux_timespec *timeout, \
			    linux_sigset_t *sigset); }
@


1.106.2.3
log
@sync with head.

for a reference, the tree before this commit was tagged
as yamt-pagecache-tag8.

this commit was splitted into small chunks to avoid
a limitation of cvs.  ("Protocol error: too many arguments")
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.106.2.2 2012/10/30 17:20:41 yamt Exp $
d58 2
a59 3
3	NOARGS		{ ssize_t|sys||read(int fd, void *buf, size_t nbyte); }
4	NOARGS		{ ssize_t|sys||write(int fd, const void *buf, \
			    size_t nbyte); }
d61 1
a61 1
			    linux_umode_t mode); }
d65 1
a65 1
8	STD		{ int|linux_sys||creat(const char *path, linux_umode_t mode); }
d72 3
a74 3
14	STD		{ int|linux_sys||mknod(const char *path, linux_umode_t mode, \
			    unsigned dev); }
15	NOARGS		{ int|sys||chmod(const char *path, linux_umode_t mode); }
d104 1
a104 1
39	NOARGS		{ int|sys||mkdir(const char *path, linux_umode_t mode); }
d106 1
a106 1
41	NOARGS		{ int|sys||dup(int fd); }
d131 1
a131 1
63	NOARGS		{ int|sys||dup2(int from, int to); }
d184 1
a184 1
94	NOARGS		{ int|sys||fchmod(int fd, linux_umode_t mode); }
d256 4
a259 4
145	NOARGS		{ ssize_t|sys||readv(int fd, \
			    const struct iovec *iovp, int iovcnt); }
146	NOARGS		{ ssize_t|sys||writev(int fd, \
			    const struct iovec *iovp, int iovcnt); }
d319 1
a319 1
			    size_t nbyte, off_t offset); }
d321 1
a321 1
			    size_t nbyte, off_t offset); }
d454 1
a454 1
271	STD		{ int|linux_sys||utimes(const char *path, struct linux_timeval *times); }
d479 4
a482 8
295	STD 		{ int|linux_sys||openat(int fd, const char *path, \
			    int flags, ... linux_umode_t mode); }
296	NOARGS		{ int|sys||mkdirat(int fd, const char *path, \
			    linux_umode_t mode); }
297	STD		{ int|linux_sys||mknodat(int fd, const char *path, \
			    linux_umode_t mode, unsigned dev); }
298	STD		{ int|linux_sys||fchownat(int fd, const char *path, \
			    uid_t owner, gid_t group, int flag); }
d484 8
a491 16
300	STD		{ int|linux_sys||fstatat64(int fd, const char *path, \
			    struct linux_stat64 *sp, int flag); }
301	STD		{ int|linux_sys||unlinkat(int fd, const char *path, \
			    int flag); }
302	NOARGS		{ int|sys||renameat(int fromfd, const char *from, \
			    int tofd, const char *to); }
303	STD		{ int|linux_sys||linkat(int fd1, const char *name1, \
			    int fd2, const char *name2, int flags); }
304	NOARGS		{ int|sys||symlinkat(const char *path1, int fd, \
			    const char *path2); }
305	NOARGS		{ int|sys||readlinkat(int fd, const char *path, \
			    char *buf, size_t bufsize); }
306	STD		{ int|linux_sys||fchmodat(int fd, const char *path, \
			    linux_umode_t mode); }
307	STD		{ int|linux_sys||faccessat(int fd, const char *path, \
			    int amode); }
d509 1
a509 2
320	STD		{ int|linux_sys||utimensat(int fd, const char *path, \
			    struct linux_timespec *times, int flag); }
d519 2
a520 1
330     STD             { int|linux_sys||dup3(int from, int to, int flags); }
a527 13
338	UNIMPL		fanotify_init
339	UNIMPL		fanotify_mark
340	UNIMPL		prlimit64
341	UNIMPL		name_to_handle_at
342	UNIMPL		open_by_handle_at
343	UNIMPL		clock_adjtime
344	UNIMPL		syncfs
345	UNIMPL		sendmmsg
346	UNIMPL		setns
347	UNIMPL		process_vm_readv
348	UNIMPL		process_vm_writev
349	UNIMPL		kcmp
350	UNIMPL		finit_module
@


1.105
log
@Add fadvise64 and fadvise64_64 syscalls to compat_linux and compat_linux32.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.104 2011/04/10 15:48:46 christos Exp $
d199 1
a199 1
104	NOARGS		{ int|compat_50_sys||setitimer(u_int which, \
d201 1
a201 1
105	NOARGS		{ int|compat_50_sys||getitimer(u_int which, \
@


1.104
log
@add pipe2 and dup3
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.103 2010/07/07 01:30:34 chs Exp $
d422 2
a423 1
250	UNIMPL		fadvise64
d452 2
a453 1
272	UNIMPL		fadvise64_64
@


1.103
log
@many changes for COMPAT_LINUX:
 - update the linux syscall table for each platform.
 - support new-style (NPTL) linux pthreads on all platforms.
   clone() with CLONE_THREAD uses 1 process with many LWPs
   instead of separate processes.
 - move the contents of sys__lwp_setprivate() into a new
   lwp_setprivate() and use that everywhere.
 - update linux_release[] and linux32_release[] to "2.6.18".
 - adjust placement of emul fork/exec/exit hooks as needed
   and adjust other emul code to match.
 - convert all struct emul definitions to use named initializers.
 - change the pid allocator to allow multiple pids to refer to the same proc.
 - remove a few fields from struct proc that are no longer needed.
 - disable the non-functional "vdso" code in linux32/amd64,
   glibc works fine without it.
 - fix a race in the futex code where we could miss a wakeup after
   a requeue operation.
 - redo futex locking to be a little more efficient.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.102 2010/04/23 03:02:16 chs Exp $
d512 3
a514 2
330	UNIMPL		dup3
331	UNIMPL		pipe2
@


1.103.2.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.105 2011/05/30 17:50:31 alnsn Exp $
d422 1
a422 2
250	STD		{ int|linux_sys||fadvise64(int fd, \
			    linux_off_t offset, size_t len, int advice); }
d451 1
a451 2
272	STD		{ int|linux_sys||fadvise64_64(int fd, \
			    linux_off_t offset, linux_off_t len, int advice); }
d512 2
a513 3
330     STD             { int|linux_sys||dup3(u_int from, u_int to, \
                            int flags); }
331     STD             { int|linux_sys||pipe2( int *pfds, int flags); }
@


1.102
log
@add missing argument to clone().  the symptom of this was that pthread_join()
would sometimes get stuck, such as in our "mutex2" regression test.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.101 2009/11/24 10:42:43 njoly Exp $
d56 1
a56 1
1	NOARGS		{ int|sys||exit(int rval); }
a81 3
#ifdef	LINUX_NPTL
20	STD		{ pid_t|linux_sys||getpid(void); }
#else
a82 1
#endif
d92 1
a92 1
29	STD		{ int|linux_sys||pause(void); }
a131 3
#ifdef LINUX_NPTL
64	STD		{ pid_t|linux_sys||getppid(void); }
#else
a132 1
#endif
d138 1
a138 1
68	STD		{ int|linux_sys||siggetmask(void); }
d381 1
a381 5
#ifdef LINUX_NPTL
224	STD		{ pid_t|linux_sys||gettid(void); }
#else
224	UNIMPL		gettid
#endif
a382 1

a403 1
#ifdef LINUX_NPTL
a404 3
#else
238	UNIMPL		tkill
#endif
a408 1
#ifdef LINUX_NPTL
a412 5
#else
241	UNIMPL		setaffinity
242	UNIMPL		getaffinity
#endif
#ifdef LINUX_NPTL
a416 4
#else
243	UNIMPL		set_thread_area
244	UNIMPL		get_thread_area
#endif
a429 1
#ifdef LINUX_NPTL
a430 3
#else
258	UNIMPL		set_tid_address
#endif
a448 1
#ifdef LINUX_NPTL
a449 3
#else
270	UNIMPL		tgkill
#endif
d464 1
a464 1
285	OBSOL		/* XXXJDM really? */
d499 21
@


1.101
log
@Update personality(2) to match Linux definition where the argument is an
unsigned long.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.100 2009/06/08 13:26:57 njoly Exp $
d230 1
a230 1
			    void *parent_tidptr, void *child_tidptr); }
@


1.101.4.1
log
@sync with head
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.101 2009/11/24 10:42:43 njoly Exp $
d230 1
a230 1
			    void *parent_tidptr, void *tls, void *child_tidptr); }
@


1.101.4.2
log
@sync with head
@
text
@d1 1
a1 1
	$NetBSD$
d56 1
a56 1
1	STD		{ int|linux_sys||exit(int rval); }
d82 3
d86 1
d96 1
a96 1
29	NOARGS		{ int|linux_sys||pause(void); }
d136 3
d140 1
d146 1
a146 1
68	NOARGS		{ int|linux_sys||siggetmask(void); }
d389 5
a393 1
224	NOARGS		{ pid_t|linux_sys||gettid(void); }
d395 1
d417 1
d419 3
d426 1
d431 5
d440 4
d457 1
d459 3
d480 1
d482 3
d499 1
a499 1
285	UNIMPL		/* unused */
a533 21
317	UNIMPL		move_pages
318	UNIMPL		getcpu
319	UNIMPL		epoll_wait
320	UNIMPL		utimensat
321	UNIMPL		signalfd
322	UNIMPL		timerfd_create
323	UNIMPL		eventfd
324	UNIMPL		fallocate
325	UNIMPL		timerfd_settime
326	UNIMPL		timerfd_gettime
327	UNIMPL		signalfd4
328	UNIMPL		eventfd2
329	UNIMPL		epoll_create1
330	UNIMPL		dup3
331	UNIMPL		pipe2
332	UNIMPL		inotify_init1
333	UNIMPL		preadv
334	UNIMPL		pwritev
335	UNIMPL		rt_tgsigqueueinfo
336	UNIMPL		perf_counter_open
337	UNIMPL		recvmmsg
@


1.101.4.3
log
@sync with head
@
text
@d512 2
a513 3
330     STD             { int|linux_sys||dup3(u_int from, u_int to, \
                            int flags); }
331     STD             { int|linux_sys||pipe2( int *pfds, int flags); }
@


1.101.4.4
log
@sync with head
@
text
@d422 1
a422 2
250	STD		{ int|linux_sys||fadvise64(int fd, \
			    linux_off_t offset, size_t len, int advice); }
d451 1
a451 2
272	STD		{ int|linux_sys||fadvise64_64(int fd, \
			    linux_off_t offset, linux_off_t len, int advice); }
@


1.101.2.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD$
d230 1
a230 1
			    void *parent_tidptr, void *tls, void *child_tidptr); }
@


1.101.2.2
log
@Sync with HEAD.
@
text
@d56 1
a56 1
1	STD		{ int|linux_sys||exit(int rval); }
d82 3
d86 1
d96 1
a96 1
29	NOARGS		{ int|linux_sys||pause(void); }
d136 3
d140 1
d146 1
a146 1
68	NOARGS		{ int|linux_sys||siggetmask(void); }
d389 5
a393 1
224	NOARGS		{ pid_t|linux_sys||gettid(void); }
d395 1
d417 1
d419 3
d426 1
d431 5
d440 4
d457 1
d459 3
d480 1
d482 3
d499 1
a499 1
285	UNIMPL		/* unused */
a533 21
317	UNIMPL		move_pages
318	UNIMPL		getcpu
319	UNIMPL		epoll_wait
320	UNIMPL		utimensat
321	UNIMPL		signalfd
322	UNIMPL		timerfd_create
323	UNIMPL		eventfd
324	UNIMPL		fallocate
325	UNIMPL		timerfd_settime
326	UNIMPL		timerfd_gettime
327	UNIMPL		signalfd4
328	UNIMPL		eventfd2
329	UNIMPL		epoll_create1
330	UNIMPL		dup3
331	UNIMPL		pipe2
332	UNIMPL		inotify_init1
333	UNIMPL		preadv
334	UNIMPL		pwritev
335	UNIMPL		rt_tgsigqueueinfo
336	UNIMPL		perf_counter_open
337	UNIMPL		recvmmsg
@


1.100
log
@Update rt_queueinfo(2) definition, and kill a corresponding comment.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.99 2009/01/17 22:28:52 njoly Exp $
d251 1
a251 1
136	STD		{ int|linux_sys||personality(int per); }
@


1.99
log
@Convert linux/linux32 wait(4) to use a compat50 rusage structure.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.98 2009/01/13 22:27:43 pooka Exp $
a318 1
; XXX XAX int here?  sigset_t here?  siginfo_t
d320 1
a320 1
			    void *uinfo); }
@


1.99.2.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.100 2009/06/08 13:26:57 njoly Exp $
d319 1
d321 1
a321 1
			    linux_siginfo_t *uinfo); }
@


1.98
log
@Convert the syscalls.master to a format from which it is easier
to parse and generate the compat name and basename (e.g. __stat50
and stat).  Use this to autogenerate __RENAME()'s to the rump_syscalls
header so that they can be called e.g. rump_sys_socket() instead
of rump_sys___socket30().
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.97 2009/01/11 02:45:48 christos Exp $
d222 1
a222 1
			    int options, struct rusage *rusage); }
@


1.97
log
@merge christos-time_t
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.89.8.3 2008/11/20 20:45:38 christos Exp $
d55 6
a60 6
0	NOARGS		{ int linux_sys_nosys(void); } syscall
1	NOARGS		{ int sys_exit(int rval); }
2	NOARGS		{ int sys_fork(void); }
3	NOARGS		{ int sys_read(int fd, char *buf, u_int nbyte); }
4	NOARGS		{ int sys_write(int fd, char *buf, u_int nbyte); }
5	STD		{ int linux_sys_open(const char *path, int flags, \
d62 2
a63 2
6	NOARGS		{ int sys_close(int fd); }
7	STD		{ int linux_sys_waitpid(int pid, int *status, \
d65 4
a68 4
8	STD		{ int linux_sys_creat(const char *path, int mode); }
9	NOARGS		{ int sys_link(const char *path, const char *link); }
10	STD		{ int linux_sys_unlink(const char *path); }
11	NOARGS		{ int sys_execve(const char *path, char **argp, \
d70 3
a72 3
12	NOARGS		{ int sys_chdir(const char *path); }
13	STD		{ int linux_sys_time(linux_time_t *t); }
14	STD		{ int linux_sys_mknod(const char *path, int mode, \
d74 2
a75 2
15	NOARGS		{ int sys_chmod(const char *path, int mode); }
16	STD		{ int linux_sys_lchown16(const char *path, \
d78 1
a78 1
17	STD		{ int linux_sys_break(char *nsize); }
d80 1
a80 1
19	NOARGS		{ long compat_43_sys_lseek(int fd, long offset, \
d83 1
a83 1
20	STD		{ pid_t linux_sys_getpid(void); }
d85 1
a85 1
20	NOARGS 		{ pid_t sys_getpid(void); }
d89 4
a92 4
23	NOARGS		linux_setuid16 { int sys_setuid(uid_t uid); }
24	NOARGS		linux_getuid16 { uid_t sys_getuid(void); }
25	STD		{ int linux_sys_stime(linux_time_t *t); }
26	STD		{ int linux_sys_ptrace(int request, int pid, \
d94 1
a94 1
27	STD		{ int linux_sys_alarm(unsigned int secs); }
d96 2
a97 2
29	STD		{ int linux_sys_pause(void); }
30	STD		{ int linux_sys_utime(const char *path, \
d101 2
a102 2
33	NOARGS		{ int sys_access(const char *path, int flags); }
34	STD		{ int linux_sys_nice(int incr); }
d104 3
a106 3
36	NOARGS		{ int sys_sync(void); }
37	STD		{ int linux_sys_kill(int pid, int signum); }
38	NOARGS		{ int sys___posix_rename(const char *from, \
d108 5
a112 5
39	NOARGS		{ int sys_mkdir(const char *path, int mode); }
40	NOARGS		{ int sys_rmdir(const char *path); }
41	NOARGS		{ int sys_dup(u_int fd); }
42	STD		{ int linux_sys_pipe(int *pfds); }
43	STD		{ int linux_sys_times(struct times *tms); }
d114 4
a117 4
45	STD		{ int linux_sys_brk(char *nsize); }
46	NOARGS		linux_setgid16 { int sys_setgid(gid_t gid); }
47	NOARGS		linux_getgid16 { gid_t sys_getgid(void); }
48	STD		{ int linux_sys_signal(int signum, \
d119 3
a121 3
49	NOARGS		linux_geteuid16 { uid_t sys_geteuid(void); }
50	NOARGS		linux_getegid16 { gid_t sys_getegid(void); }
51	NOARGS		{ int sys_acct(char *path); }
d124 1
a124 1
54	STD		{ int linux_sys_ioctl(int fd, u_long com, \
d126 1
a126 1
55	STD		{ int linux_sys_fcntl(int fd, int cmd, void *arg); }
d128 1
a128 1
57	NOARGS		{ int sys_setpgid(int pid, int pgid); }
d130 1
a130 1
59	STD		{ int linux_sys_oldolduname( \
d132 2
a133 2
60	NOARGS		{ int sys_umask(int newmask); }
61	NOARGS		{ int sys_chroot(char *path); }
d135 1
a135 1
63	NOARGS		{ int sys_dup2(u_int from, u_int to); }
d137 1
a137 1
64	STD		{ pid_t linux_sys_getppid(void); }
d139 1
a139 1
64	NOARGS		{ pid_t sys_getppid(void); }
d141 3
a143 3
65	NOARGS		{ int sys_getpgrp(void); }
66	NOARGS		{ int sys_setsid(void); }
67	STD		{ int linux_sys_sigaction(int signum, \
d146 3
a148 3
68	STD		{ int linux_sys_siggetmask(void); }
69	STD		{ int linux_sys_sigsetmask(linux_old_sigset_t mask); }
70	STD		{ int linux_sys_setreuid16(linux_uid16_t ruid, \
d150 1
a150 1
71	STD		{ int linux_sys_setregid16(linux_gid16_t rgid, \
d152 1
a152 1
72	STD		{ int linux_sys_sigsuspend(void *restart, \
d154 2
a155 2
73	STD		{ int linux_sys_sigpending(linux_old_sigset_t *set); }
74	NOARGS		{ int compat_43_sys_sethostname(char *hostname, \
d157 1
a157 1
75	STD		{ int linux_sys_setrlimit(u_int which, \
d159 1
a159 1
76	STD		{ int linux_sys_getrlimit(u_int which, \
d161 1
a161 1
77	NOARGS		{ int compat_50_sys_getrusage(int who, \
d163 1
a163 1
78	STD		{ int linux_sys_gettimeofday(struct timeval50 *tp, \
d165 1
a165 1
79	STD		{ int linux_sys_settimeofday(struct timeval50 *tp, \
d167 1
a167 1
80	STD		{ int linux_sys_getgroups16(int gidsetsize, \
d169 1
a169 1
81	STD		{ int linux_sys_setgroups16(int gidsetsize, \
d171 3
a173 3
82	STD		{ int linux_sys_oldselect(struct linux_oldselect *lsp); }
83	NOARGS		{ int sys_symlink(const char *path, const char *to); }
84	NOARGS		{ int compat_43_sys_lstat(const char *path, \
d175 1
a175 1
85	NOARGS		{ int sys_readlink(const char *name, char *buf, \
d178 1
a178 1
86	STD		{ int linux_sys_uselib(const char *path); }
d182 2
a183 2
87	STD		{ int linux_sys_swapon(char *name); }
88	STD		{ int linux_sys_reboot(int magic1, int magic2, \
d185 1
a185 1
89	STD		{ int linux_sys_readdir(int fd, void *dent, \
d187 3
a189 3
90	STD		{ int linux_sys_old_mmap(struct linux_oldmmap *lmp); }
91	NOARGS		{ int sys_munmap(void *addr, int len); }
92	NOARGS		{ int compat_43_sys_truncate(const char *path, \
d191 3
a193 3
93	NOARGS		{ int compat_43_sys_ftruncate(int fd, long length); }
94	NOARGS		{ int sys_fchmod(int fd, int mode); }
95	STD		{ int linux_sys_fchown16(int fd, linux_uid16_t uid, \
d195 3
a197 3
96	STD		{ int linux_sys_getpriority(int which, int who); }
97	NOARGS		{ int sys_setpriority(int which, int who, int prio); }
98	NOARGS		{ int sys_profil(void *samples, u_int size, \
d199 1
a199 1
99	STD		{ int linux_sys_statfs(const char *path, \
d201 1
a201 1
100	STD		{ int linux_sys_fstatfs(int fd, \
d203 1
a203 1
101	STD		{ int linux_sys_ioperm(unsigned int lo, \
d205 1
a205 1
102	STD		{ int linux_sys_socketcall(int what, void *args); }
d207 1
a207 1
104	NOARGS		{ int compat_50_sys_setitimer(u_int which, \
d209 1
a209 1
105	NOARGS		{ int compat_50_sys_getitimer(u_int which, \
d211 1
a211 1
106	STD		{ int linux_sys_stat(const char *path, \
d213 1
a213 1
107	STD		{ int linux_sys_lstat(const char *path, \
d215 3
a217 3
108	STD		{ int linux_sys_fstat(int fd, struct linux_stat *sp); }
109	STD		{ int linux_sys_olduname(struct linux_old_utsname *up); }
110	STD		{ int linux_sys_iopl(int level); }
d221 1
a221 1
114	STD		{ int linux_sys_wait4(int pid, int *status, \
d223 3
a225 3
115	STD		{ int linux_sys_swapoff(const char *path); }
116	STD		{ int linux_sys_sysinfo(struct linux_sysinfo *arg); }
117	STD		{ int linux_sys_ipc(int what, int a1, int a2, int a3, \
d227 3
a229 3
118	NOARGS		{ int sys_fsync(int fd); }
119	STD		{ int linux_sys_sigreturn(struct linux_sigcontext *scp); }
120	STD		{ int linux_sys_clone(int flags, void *stack, \
d231 1
a231 1
121	STD		{ int linux_sys_setdomainname(char *domainname, \
d233 2
a234 2
122	STD		{ int linux_sys_uname(struct linux_utsname *up); }
123	STD		{ int linux_sys_modify_ldt(int func, void *ptr, \
d237 1
a237 1
125	STD		{ int linux_sys_mprotect(const void *start, \
d239 1
a239 1
126	STD		{ int linux_sys_sigprocmask(int how, \
d247 2
a248 2
132	NOARGS		{ pid_t sys_getpgid(pid_t pid); }
133	NOARGS		{ int sys_fchdir(int fd); }
d251 1
a251 1
136	STD		{ int linux_sys_personality(int per); }
d253 3
a255 3
138	NOARGS		linux_setfsuid16 { int linux_sys_setfsuid(uid_t uid); }
139	NOARGS		linux_setfsgid16 { int linux_sys_setfsgid(gid_t gid); }
140	STD		{ int linux_sys_llseek(int fd, u_int32_t ohigh, \
d257 1
a257 1
141	STD		{ int linux_sys_getdents(int fd, \
d259 1
a259 1
142	STD		{ int linux_sys_select(int nfds, fd_set *readfds, \
d262 3
a264 3
143	NOARGS		{ int sys_flock(int fd, int how); }
144	NOARGS		{ int sys___msync13(void *addr, size_t len, int flags); }
145	NOARGS		{ int sys_readv(int fd, struct iovec *iovp, \
d266 1
a266 1
146	NOARGS		{ int sys_writev(int fd, struct iovec *iovp, \
d268 8
a275 8
147	NOARGS		{ pid_t sys_getsid(pid_t pid); }
148	STD		{ int linux_sys_fdatasync(int fd); }
149	STD		{ int linux_sys___sysctl(struct linux___sysctl *lsp); }
150	NOARGS		{ int sys_mlock(void *addr, size_t len); }
151	NOARGS		{ int sys_munlock(void *addr, size_t len); }
152	NOARGS		{ int sys_mlockall(int flags); }
153	NOARGS		{ int sys_munlockall(void); }
154	STD		{ int linux_sys_sched_setparam(pid_t pid, \
d277 1
a277 1
155	STD		{ int linux_sys_sched_getparam(pid_t pid, \
d279 1
a279 1
156	STD		{ int linux_sys_sched_setscheduler(pid_t pid, \
d281 4
a284 4
157	STD		{ int linux_sys_sched_getscheduler(pid_t pid); }
158	STD		{ int linux_sys_sched_yield(void); }
159	STD		{ int linux_sys_sched_get_priority_max(int policy); }
160	STD		{ int linux_sys_sched_get_priority_min(int policy); }
d286 1
a286 1
162	STD		{ int linux_sys_nanosleep( \
d289 1
a289 1
163	STD		{ void *linux_sys_mremap(void *old_address, \
d291 1
a291 1
164	STD		{ int linux_sys_setresuid16(linux_uid16_t ruid, \
d293 1
a293 1
165	STD		{ int linux_sys_getresuid16(linux_uid16_t *ruid, \
d297 1
a297 1
168	NOARGS		{ int sys_poll(struct pollfd *fds, u_int nfds, \
d300 1
a300 1
170	STD		{ int linux_sys_setresgid16(linux_gid16_t rgid, \
d302 1
a302 1
171	STD		{ int linux_sys_getresgid16(linux_gid16_t *rgid, \
d305 1
a305 1
173	STD		{ int linux_sys_rt_sigreturn( \
d307 1
a307 1
174	STD		{ int linux_sys_rt_sigaction(int signum, \
d311 1
a311 1
175	STD		{ int linux_sys_rt_sigprocmask(int how, \
d315 1
a315 1
176	STD		{ int linux_sys_rt_sigpending( \
d320 1
a320 1
178	STD		{ int linux_sys_rt_queueinfo(int pid, int signum, \
d322 1
a322 1
179	STD		{ int linux_sys_rt_sigsuspend(linux_sigset_t *unewset, \
d324 1
a324 1
180	STD		{ int linux_sys_pread(int fd, char *buf, \
d326 1
a326 1
181	STD		{ int linux_sys_pwrite(int fd, char *buf, \
d328 1
a328 1
182	STD		{ int linux_sys_chown16(const char *path, \
d330 1
a330 1
183	NOARGS		{ int sys___getcwd(char *bufp, size_t length); }
d333 1
a333 1
186	STD		{ int linux_sys_sigaltstack( \
d339 2
a340 2
190	NOARGS		{ int sys___vfork14(void); }
191	STD		{ int linux_sys_ugetrlimit(int which, \
d343 1
a343 1
192	NOARGS		{ linux_off_t linux_sys_mmap2(unsigned long addr, \
d346 1
a346 1
193	STD		{ int linux_sys_truncate64(const char *path, \
d348 1
a348 1
194	STD		{ int linux_sys_ftruncate64(unsigned int fd, \
d350 1
a350 1
195	STD		{ int linux_sys_stat64(const char *path, \
d352 1
a352 1
196	STD		{ int linux_sys_lstat64(const char *path, \
d354 1
a354 1
197	STD		{ int linux_sys_fstat64(int fd, \
d356 1
a356 1
198	NOARGS		{ int sys___posix_lchown(const char *path, uid_t uid, \
d358 9
a366 9
199	NOARGS		{ uid_t sys_getuid(void); }
200	NOARGS		{ gid_t sys_getgid(void); }
201	NOARGS		{ uid_t sys_geteuid(void); }
202	NOARGS		{ gid_t sys_getegid(void); }
203	NOARGS		{ int sys_setreuid(uid_t ruid, uid_t euid); }
204	NOARGS		{ int sys_setregid(gid_t rgid, gid_t egid); }
205	NOARGS		{ int sys_getgroups(u_int gidsetsize, gid_t *gidset); }
206	NOARGS		{ int sys_setgroups(u_int gidsetsize, gid_t *gidset); }
207	NOARGS		{ int sys___posix_fchown(int fd, uid_t uid, \
d368 1
a368 1
208	STD		{ int linux_sys_setresuid(uid_t ruid, uid_t euid, \
d370 1
a370 1
209	STD		{ int linux_sys_getresuid(uid_t *ruid, uid_t *euid, \
d372 1
a372 1
210	STD		{ int linux_sys_setresgid(gid_t rgid, gid_t egid, \
d374 1
a374 1
211	STD		{ int linux_sys_getresgid(gid_t *rgid, gid_t *egid, \
d376 1
a376 1
212	NOARGS		{ int sys___posix_chown(const char *path, uid_t uid, \
d378 4
a381 4
213	NOARGS		{ int sys_setuid(uid_t uid); }
214	NOARGS		{ int sys_setgid(gid_t gid); }
215	STD		{ int linux_sys_setfsuid(uid_t uid); }
216	STD		{ int linux_sys_setfsgid(gid_t gid); }
d383 3
a385 3
218	NOARGS		{ int sys_mincore(void *addr, size_t len, char *vec); }
219	NOARGS		{ int sys_madvise(void *addr, size_t len, int behav); }
220	STD		{ int linux_sys_getdents64(int fd, \
d387 1
a387 1
221	STD		{ int linux_sys_fcntl64(int fd, int cmd, void *arg); }
d391 1
a391 1
224	STD		{ pid_t linux_sys_gettid(void); }
d397 1
a397 1
226	STD		{ int linux_sys_setxattr(char *path, char *name, \
d399 1
a399 1
227	STD		{ int linux_sys_lsetxattr(char *path, char *name, \
d401 1
a401 1
228	STD		{ int linux_sys_fsetxattr(int fd, char *name, \
d403 1
a403 1
229	STD		{ ssize_t linux_sys_getxattr(char *path, char *name, \
d405 1
a405 1
230	STD		{ ssize_t linux_sys_lgetxattr(char *path, char *name, \
d407 1
a407 1
231	STD		{ ssize_t linux_sys_fgetxattr(int fd, char *name, \
d409 1
a409 1
232	STD		{ ssize_t linux_sys_listxattr(char *path, char *list, \
d411 1
a411 1
233	STD		{ ssize_t linux_sys_llistxattr(char *path, char *list, \
d413 1
a413 1
234	STD		{ ssize_t linux_sys_flistxattr(int fd, char *list, \
d415 3
a417 3
235	STD		{ int linux_sys_removexattr(char *path, char *name); }
236	STD		{ int linux_sys_lremovexattr(char *path, char *name); }
237	STD		{ int linux_sys_fremovexattr(int fd, char *name); }
d419 1
a419 1
238	STD		{ int linux_sys_tkill(int tid, int sig); }
d424 1
a424 1
240	STD		{ int linux_sys_futex(int *uaddr, int op, int val, \
d428 1
a428 1
241	STD		{ int linux_sys_sched_setaffinity(pid_t pid, \
d430 1
a430 1
242	STD		{ int linux_sys_sched_getaffinity(pid_t pid, \
d437 1
a437 1
243	STD		{ int linux_sys_set_thread_area( \
d439 1
a439 1
244	STD		{ int linux_sys_get_thread_area( \
d452 1
a452 1
252	STD		{ int linux_sys_exit_group(int error_code); }
d459 1
a459 1
258	STD		{ int linux_sys_set_tid_address(int *tid); }
d468 1
a468 1
264	STD		{ int linux_sys_clock_settime(clockid_t which, \
d470 1
a470 1
265	STD		{ int linux_sys_clock_gettime(clockid_t which, \
d472 1
a472 1
266	STD		{ int linux_sys_clock_getres(clockid_t which, \
d474 1
a474 1
267	STD		{ int linux_sys_clock_nanosleep(clockid_t which, \
d477 1
a477 1
268	STD		{ int linux_sys_statfs64(const char *path, \
d479 1
a479 1
269	STD		{ int linux_sys_fstatfs64(int fd, \
d482 1
a482 1
270	STD		{ int linux_sys_tgkill(int tgid, int tid, int sig); }
d526 1
a526 1
311	STD		{ int linux_sys_set_robust_list( \
d528 1
a528 1
312	STD		{ int linux_sys_get_robust_list(int pid, \
@


1.96
log
@Make the emulations, exec formats, coredump, NFS, and the NFS server
into modules. By and large this commit:

- shuffles header files and ifdefs
- splits code out where necessary to be modular
- adds module glue for each of the components
- adds/replaces hooks for things that can be installed at runtime
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.95 2008/11/19 13:09:19 njoly Exp $
d43 2
d161 3
a163 2
77	NOARGS		{ int sys_getrusage(int who, struct rusage *rusage); }
78	STD		{ int linux_sys_gettimeofday(struct timeval *tp, \
d165 1
a165 1
79	STD		{ int linux_sys_settimeofday(struct timeval *tp, \
d207 4
a210 4
104	NOARGS		{ int sys_setitimer(u_int which, \
			    struct itimerval *itv, struct itimerval *oitv); }
105	NOARGS		{ int sys_getitimer(u_int which, \
			    struct itimerval *itv); }
d261 1
a261 1
			    struct timeval *timeout); }
@


1.95
log
@futex(2) timeout argument cleanup/fix.
- Use `struct linux_timespec', converted to native structure.
- Ensure that provided values are correct.
- Replace timeval+tvtohz by tstohz.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.94 2008/11/12 18:07:40 njoly Exp $
a35 4
#if defined(_KERNEL_OPT)
#include "opt_compat_43.h"
#endif

@


1.94
log
@Fix nanosleep(2) on 64-bit archs. Do not call native nanosleep
syscall, but rather a modified version the will take care of `struct
timespec' conversions.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.93 2008/10/26 16:38:22 christos Exp $
d426 1
a426 1
			    const struct timespec *timeout, int *uaddr2, \
@


1.93
log
@futex support fixes from FreeBSD via cube+pengo.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.92 2008/10/25 23:38:28 christos Exp $
d287 3
a289 2
162	NOARGS		{ int sys_nanosleep(const struct timespec *rqtp, \
				struct timespec *rmtp); }
@


1.93.2.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.99 2009/01/17 22:28:52 njoly Exp $
d36 4
a46 2
#include <compat/sys/time.h>

d57 6
a62 6
0	NOARGS		{ int|linux_sys||nosys(void); } syscall
1	NOARGS		{ int|sys||exit(int rval); }
2	NOARGS		{ int|sys||fork(void); }
3	NOARGS		{ int|sys||read(int fd, char *buf, u_int nbyte); }
4	NOARGS		{ int|sys||write(int fd, char *buf, u_int nbyte); }
5	STD		{ int|linux_sys||open(const char *path, int flags, \
d64 2
a65 2
6	NOARGS		{ int|sys||close(int fd); }
7	STD		{ int|linux_sys||waitpid(int pid, int *status, \
d67 4
a70 4
8	STD		{ int|linux_sys||creat(const char *path, int mode); }
9	NOARGS		{ int|sys||link(const char *path, const char *link); }
10	STD		{ int|linux_sys||unlink(const char *path); }
11	NOARGS		{ int|sys||execve(const char *path, char **argp, \
d72 3
a74 3
12	NOARGS		{ int|sys||chdir(const char *path); }
13	STD		{ int|linux_sys||time(linux_time_t *t); }
14	STD		{ int|linux_sys||mknod(const char *path, int mode, \
d76 2
a77 2
15	NOARGS		{ int|sys||chmod(const char *path, int mode); }
16	STD		{ int|linux_sys||lchown16(const char *path, \
d80 1
a80 1
17	STD		{ int|linux_sys||break(char *nsize); }
d82 1
a82 1
19	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
d85 1
a85 1
20	STD		{ pid_t|linux_sys||getpid(void); }
d87 1
a87 1
20	NOARGS 		{ pid_t|sys||getpid(void); }
d91 4
a94 4
23	NOARGS		linux_setuid16 { int|sys||setuid(uid_t uid); }
24	NOARGS		linux_getuid16 { uid_t|sys||getuid(void); }
25	STD		{ int|linux_sys||stime(linux_time_t *t); }
26	STD		{ int|linux_sys||ptrace(int request, int pid, \
d96 1
a96 1
27	STD		{ int|linux_sys||alarm(unsigned int secs); }
d98 2
a99 2
29	STD		{ int|linux_sys||pause(void); }
30	STD		{ int|linux_sys||utime(const char *path, \
d103 2
a104 2
33	NOARGS		{ int|sys||access(const char *path, int flags); }
34	STD		{ int|linux_sys||nice(int incr); }
d106 3
a108 3
36	NOARGS		{ int|sys||sync(void); }
37	STD		{ int|linux_sys||kill(int pid, int signum); }
38	NOARGS		{ int|sys||__posix_rename(const char *from, \
d110 5
a114 5
39	NOARGS		{ int|sys||mkdir(const char *path, int mode); }
40	NOARGS		{ int|sys||rmdir(const char *path); }
41	NOARGS		{ int|sys||dup(u_int fd); }
42	STD		{ int|linux_sys||pipe(int *pfds); }
43	STD		{ int|linux_sys||times(struct times *tms); }
d116 4
a119 4
45	STD		{ int|linux_sys||brk(char *nsize); }
46	NOARGS		linux_setgid16 { int|sys||setgid(gid_t gid); }
47	NOARGS		linux_getgid16 { gid_t|sys||getgid(void); }
48	STD		{ int|linux_sys||signal(int signum, \
d121 3
a123 3
49	NOARGS		linux_geteuid16 { uid_t|sys||geteuid(void); }
50	NOARGS		linux_getegid16 { gid_t|sys||getegid(void); }
51	NOARGS		{ int|sys||acct(char *path); }
d126 1
a126 1
54	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
d128 1
a128 1
55	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
d130 1
a130 1
57	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
d132 1
a132 1
59	STD		{ int|linux_sys||oldolduname( \
d134 2
a135 2
60	NOARGS		{ int|sys||umask(int newmask); }
61	NOARGS		{ int|sys||chroot(char *path); }
d137 1
a137 1
63	NOARGS		{ int|sys||dup2(u_int from, u_int to); }
d139 1
a139 1
64	STD		{ pid_t|linux_sys||getppid(void); }
d141 1
a141 1
64	NOARGS		{ pid_t|sys||getppid(void); }
d143 3
a145 3
65	NOARGS		{ int|sys||getpgrp(void); }
66	NOARGS		{ int|sys||setsid(void); }
67	STD		{ int|linux_sys||sigaction(int signum, \
d148 3
a150 3
68	STD		{ int|linux_sys||siggetmask(void); }
69	STD		{ int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
70	STD		{ int|linux_sys||setreuid16(linux_uid16_t ruid, \
d152 1
a152 1
71	STD		{ int|linux_sys||setregid16(linux_gid16_t rgid, \
d154 1
a154 1
72	STD		{ int|linux_sys||sigsuspend(void *restart, \
d156 2
a157 2
73	STD		{ int|linux_sys||sigpending(linux_old_sigset_t *set); }
74	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
d159 1
a159 1
75	STD		{ int|linux_sys||setrlimit(u_int which, \
d161 1
a161 1
76	STD		{ int|linux_sys||getrlimit(u_int which, \
d163 2
a164 3
77	NOARGS		{ int|compat_50_sys||getrusage(int who, \
			    struct rusage50 *rusage); }
78	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
d166 1
a166 1
79	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
d168 1
a168 1
80	STD		{ int|linux_sys||getgroups16(int gidsetsize, \
d170 1
a170 1
81	STD		{ int|linux_sys||setgroups16(int gidsetsize, \
d172 3
a174 3
82	STD		{ int|linux_sys||oldselect(struct linux_oldselect *lsp); }
83	NOARGS		{ int|sys||symlink(const char *path, const char *to); }
84	NOARGS		{ int|compat_43_sys||lstat(const char *path, \
d176 1
a176 1
85	NOARGS		{ int|sys||readlink(const char *name, char *buf, \
d179 1
a179 1
86	STD		{ int|linux_sys||uselib(const char *path); }
d183 2
a184 2
87	STD		{ int|linux_sys||swapon(char *name); }
88	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
d186 1
a186 1
89	STD		{ int|linux_sys||readdir(int fd, void *dent, \
d188 3
a190 3
90	STD		{ int|linux_sys||old_mmap(struct linux_oldmmap *lmp); }
91	NOARGS		{ int|sys||munmap(void *addr, int len); }
92	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
d192 3
a194 3
93	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); }
94	NOARGS		{ int|sys||fchmod(int fd, int mode); }
95	STD		{ int|linux_sys||fchown16(int fd, linux_uid16_t uid, \
d196 3
a198 3
96	STD		{ int|linux_sys||getpriority(int which, int who); }
97	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
98	NOARGS		{ int|sys||profil(void *samples, u_int size, \
d200 1
a200 1
99	STD		{ int|linux_sys||statfs(const char *path, \
d202 1
a202 1
100	STD		{ int|linux_sys||fstatfs(int fd, \
d204 1
a204 1
101	STD		{ int|linux_sys||ioperm(unsigned int lo, \
d206 1
a206 1
102	STD		{ int|linux_sys||socketcall(int what, void *args); }
d208 5
a212 5
104	NOARGS		{ int|compat_50_sys||setitimer(u_int which, \
			    struct itimerval50 *itv, struct itimerval50 *oitv); }
105	NOARGS		{ int|compat_50_sys||getitimer(u_int which, \
			    struct itimerval50 *itv); }
106	STD		{ int|linux_sys||stat(const char *path, \
d214 1
a214 1
107	STD		{ int|linux_sys||lstat(const char *path, \
d216 3
a218 3
108	STD		{ int|linux_sys||fstat(int fd, struct linux_stat *sp); }
109	STD		{ int|linux_sys||olduname(struct linux_old_utsname *up); }
110	STD		{ int|linux_sys||iopl(int level); }
d222 5
a226 5
114	STD		{ int|linux_sys||wait4(int pid, int *status, \
			    int options, struct rusage50 *rusage); }
115	STD		{ int|linux_sys||swapoff(const char *path); }
116	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
117	STD		{ int|linux_sys||ipc(int what, int a1, int a2, int a3, \
d228 3
a230 3
118	NOARGS		{ int|sys||fsync(int fd); }
119	STD		{ int|linux_sys||sigreturn(struct linux_sigcontext *scp); }
120	STD		{ int|linux_sys||clone(int flags, void *stack, \
d232 1
a232 1
121	STD		{ int|linux_sys||setdomainname(char *domainname, \
d234 2
a235 2
122	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
123	STD		{ int|linux_sys||modify_ldt(int func, void *ptr, \
d238 1
a238 1
125	STD		{ int|linux_sys||mprotect(const void *start, \
d240 1
a240 1
126	STD		{ int|linux_sys||sigprocmask(int how, \
d248 2
a249 2
132	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
133	NOARGS		{ int|sys||fchdir(int fd); }
d252 1
a252 1
136	STD		{ int|linux_sys||personality(int per); }
d254 3
a256 3
138	NOARGS		linux_setfsuid16 { int|linux_sys||setfsuid(uid_t uid); }
139	NOARGS		linux_setfsgid16 { int|linux_sys||setfsgid(gid_t gid); }
140	STD		{ int|linux_sys||llseek(int fd, u_int32_t ohigh, \
d258 1
a258 1
141	STD		{ int|linux_sys||getdents(int fd, \
d260 1
a260 1
142	STD		{ int|linux_sys||select(int nfds, fd_set *readfds, \
d262 4
a265 4
			    struct timeval50 *timeout); }
143	NOARGS		{ int|sys||flock(int fd, int how); }
144	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
145	NOARGS		{ int|sys||readv(int fd, struct iovec *iovp, \
d267 1
a267 1
146	NOARGS		{ int|sys||writev(int fd, struct iovec *iovp, \
d269 8
a276 8
147	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
148	STD		{ int|linux_sys||fdatasync(int fd); }
149	STD		{ int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
150	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
151	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
152	NOARGS		{ int|sys||mlockall(int flags); }
153	NOARGS		{ int|sys||munlockall(void); }
154	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
d278 1
a278 1
155	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
d280 1
a280 1
156	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
d282 4
a285 4
157	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
158	STD		{ int|linux_sys||sched_yield(void); }
159	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
160	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
d287 3
a289 4
162	STD		{ int|linux_sys||nanosleep( \
			    const struct linux_timespec *rqtp, \
			    struct linux_timespec *rmtp); }
163	STD		{ void *|linux_sys||mremap(void *old_address, \
d291 1
a291 1
164	STD		{ int|linux_sys||setresuid16(linux_uid16_t ruid, \
d293 1
a293 1
165	STD		{ int|linux_sys||getresuid16(linux_uid16_t *ruid, \
d297 1
a297 1
168	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
d300 1
a300 1
170	STD		{ int|linux_sys||setresgid16(linux_gid16_t rgid, \
d302 1
a302 1
171	STD		{ int|linux_sys||getresgid16(linux_gid16_t *rgid, \
d305 1
a305 1
173	STD		{ int|linux_sys||rt_sigreturn( \
d307 1
a307 1
174	STD		{ int|linux_sys||rt_sigaction(int signum, \
d311 1
a311 1
175	STD		{ int|linux_sys||rt_sigprocmask(int how, \
d315 1
a315 1
176	STD		{ int|linux_sys||rt_sigpending( \
d320 1
a320 1
178	STD		{ int|linux_sys||rt_queueinfo(int pid, int signum, \
d322 1
a322 1
179	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
d324 1
a324 1
180	STD		{ int|linux_sys||pread(int fd, char *buf, \
d326 1
a326 1
181	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
d328 1
a328 1
182	STD		{ int|linux_sys||chown16(const char *path, \
d330 1
a330 1
183	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
d333 1
a333 1
186	STD		{ int|linux_sys||sigaltstack( \
d339 2
a340 2
190	NOARGS		{ int|sys|14|vfork(void); }
191	STD		{ int|linux_sys||ugetrlimit(int which, \
d343 1
a343 1
192	NOARGS		{ linux_off_t|linux_sys||mmap2(unsigned long addr, \
d346 1
a346 1
193	STD		{ int|linux_sys||truncate64(const char *path, \
d348 1
a348 1
194	STD		{ int|linux_sys||ftruncate64(unsigned int fd, \
d350 1
a350 1
195	STD		{ int|linux_sys||stat64(const char *path, \
d352 1
a352 1
196	STD		{ int|linux_sys||lstat64(const char *path, \
d354 1
a354 1
197	STD		{ int|linux_sys||fstat64(int fd, \
d356 1
a356 1
198	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
d358 9
a366 9
199	NOARGS		{ uid_t|sys||getuid(void); }
200	NOARGS		{ gid_t|sys||getgid(void); }
201	NOARGS		{ uid_t|sys||geteuid(void); }
202	NOARGS		{ gid_t|sys||getegid(void); }
203	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
204	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
205	NOARGS		{ int|sys||getgroups(u_int gidsetsize, gid_t *gidset); }
206	NOARGS		{ int|sys||setgroups(u_int gidsetsize, gid_t *gidset); }
207	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
d368 1
a368 1
208	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
d370 1
a370 1
209	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
d372 1
a372 1
210	STD		{ int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
d374 1
a374 1
211	STD		{ int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
d376 1
a376 1
212	NOARGS		{ int|sys||__posix_chown(const char *path, uid_t uid, \
d378 4
a381 4
213	NOARGS		{ int|sys||setuid(uid_t uid); }
214	NOARGS		{ int|sys||setgid(gid_t gid); }
215	STD		{ int|linux_sys||setfsuid(uid_t uid); }
216	STD		{ int|linux_sys||setfsgid(gid_t gid); }
d383 3
a385 3
218	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
219	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
220	STD		{ int|linux_sys||getdents64(int fd, \
d387 1
a387 1
221	STD		{ int|linux_sys||fcntl64(int fd, int cmd, void *arg); }
d391 1
a391 1
224	STD		{ pid_t|linux_sys||gettid(void); }
d397 1
a397 1
226	STD		{ int|linux_sys||setxattr(char *path, char *name, \
d399 1
a399 1
227	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
d401 1
a401 1
228	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
d403 1
a403 1
229	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
d405 1
a405 1
230	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
d407 1
a407 1
231	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
d409 1
a409 1
232	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
d411 1
a411 1
233	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
d413 1
a413 1
234	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
d415 3
a417 3
235	STD		{ int|linux_sys||removexattr(char *path, char *name); }
236	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
237	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
d419 1
a419 1
238	STD		{ int|linux_sys||tkill(int tid, int sig); }
d424 2
a425 2
240	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
			    const struct linux_timespec *timeout, int *uaddr2, \
d428 1
a428 1
241	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
d430 1
a430 1
242	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
d437 1
a437 1
243	STD		{ int|linux_sys||set_thread_area( \
d439 1
a439 1
244	STD		{ int|linux_sys||get_thread_area( \
d452 1
a452 1
252	STD		{ int|linux_sys||exit_group(int error_code); }
d459 1
a459 1
258	STD		{ int|linux_sys||set_tid_address(int *tid); }
d468 1
a468 1
264	STD		{ int|linux_sys||clock_settime(clockid_t which, \
d470 1
a470 1
265	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
d472 1
a472 1
266	STD		{ int|linux_sys||clock_getres(clockid_t which, \
d474 1
a474 1
267	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
d477 1
a477 1
268	STD		{ int|linux_sys||statfs64(const char *path, \
d479 1
a479 1
269	STD		{ int|linux_sys||fstatfs64(int fd, \
d482 1
a482 1
270	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
d526 1
a526 1
311	STD		{ int|linux_sys||set_robust_list( \
d528 1
a528 1
312	STD		{ int|linux_sys||get_robust_list(int pid, \
@


1.93.4.1
log
@Pull up following revision(s) (requested by njoly in ticket #81):
	sys/compat/linux/arch/mips/syscalls.master: revision 1.30
	sys/compat/linux/arch/m68k/syscalls.master: revision 1.63
	sys/compat/linux32/arch/amd64/syscalls.master: revision 1.39
	sys/compat/linux/arch/alpha/syscalls.master: revision 1.63
	sys/compat/linux/arch/powerpc/syscalls.master: revision 1.38
	sys/compat/linux32/common/linux32_time.c: revision 1.22
	sys/compat/linux/arch/amd64/syscalls.master: revision 1.25
	sys/compat/linux/arch/i386/syscalls.master: revision 1.94
	sys/compat/linux/arch/arm/syscalls.master: revision 1.36
	sys/compat/linux/common/linux_time.c: revision 1.26
Fix nanosleep(2) on 64-bit archs. Do not call native nanosleep
syscall, but rather a modified version the will take care of `struct
timespec' conversions.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.93 2008/10/26 16:38:22 christos Exp $
d287 2
a288 3
162	STD		{ int linux_sys_nanosleep( \
			    const struct linux_timespec *rqtp, \
			    struct linux_timespec *rmtp); }
@


1.92
log
@Add preliminary tls support for i386. Does not work yet. From FreeBSD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.91 2008/04/23 14:07:50 ad Exp $
d499 36
@


1.91
log
@-SYCALL_MPSAFE
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.90 2008/04/04 12:38:52 njoly Exp $
d436 6
d444 1
@


1.91.2.1
log
@sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.91 2008/04/23 14:07:50 ad Exp $
d36 4
a46 2
#include <compat/sys/time.h>

d57 6
a62 6
0	NOARGS		{ int|linux_sys||nosys(void); } syscall
1	NOARGS		{ int|sys||exit(int rval); }
2	NOARGS		{ int|sys||fork(void); }
3	NOARGS		{ int|sys||read(int fd, char *buf, u_int nbyte); }
4	NOARGS		{ int|sys||write(int fd, char *buf, u_int nbyte); }
5	STD		{ int|linux_sys||open(const char *path, int flags, \
d64 2
a65 2
6	NOARGS		{ int|sys||close(int fd); }
7	STD		{ int|linux_sys||waitpid(int pid, int *status, \
d67 4
a70 4
8	STD		{ int|linux_sys||creat(const char *path, int mode); }
9	NOARGS		{ int|sys||link(const char *path, const char *link); }
10	STD		{ int|linux_sys||unlink(const char *path); }
11	NOARGS		{ int|sys||execve(const char *path, char **argp, \
d72 3
a74 3
12	NOARGS		{ int|sys||chdir(const char *path); }
13	STD		{ int|linux_sys||time(linux_time_t *t); }
14	STD		{ int|linux_sys||mknod(const char *path, int mode, \
d76 2
a77 2
15	NOARGS		{ int|sys||chmod(const char *path, int mode); }
16	STD		{ int|linux_sys||lchown16(const char *path, \
d80 1
a80 1
17	STD		{ int|linux_sys||break(char *nsize); }
d82 1
a82 1
19	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
d85 1
a85 1
20	STD		{ pid_t|linux_sys||getpid(void); }
d87 1
a87 1
20	NOARGS 		{ pid_t|sys||getpid(void); }
d91 4
a94 4
23	NOARGS		linux_setuid16 { int|sys||setuid(uid_t uid); }
24	NOARGS		linux_getuid16 { uid_t|sys||getuid(void); }
25	STD		{ int|linux_sys||stime(linux_time_t *t); }
26	STD		{ int|linux_sys||ptrace(int request, int pid, \
d96 1
a96 1
27	STD		{ int|linux_sys||alarm(unsigned int secs); }
d98 2
a99 2
29	STD		{ int|linux_sys||pause(void); }
30	STD		{ int|linux_sys||utime(const char *path, \
d103 2
a104 2
33	NOARGS		{ int|sys||access(const char *path, int flags); }
34	STD		{ int|linux_sys||nice(int incr); }
d106 3
a108 3
36	NOARGS		{ int|sys||sync(void); }
37	STD		{ int|linux_sys||kill(int pid, int signum); }
38	NOARGS		{ int|sys||__posix_rename(const char *from, \
d110 5
a114 5
39	NOARGS		{ int|sys||mkdir(const char *path, int mode); }
40	NOARGS		{ int|sys||rmdir(const char *path); }
41	NOARGS		{ int|sys||dup(u_int fd); }
42	STD		{ int|linux_sys||pipe(int *pfds); }
43	STD		{ int|linux_sys||times(struct times *tms); }
d116 4
a119 4
45	STD		{ int|linux_sys||brk(char *nsize); }
46	NOARGS		linux_setgid16 { int|sys||setgid(gid_t gid); }
47	NOARGS		linux_getgid16 { gid_t|sys||getgid(void); }
48	STD		{ int|linux_sys||signal(int signum, \
d121 3
a123 3
49	NOARGS		linux_geteuid16 { uid_t|sys||geteuid(void); }
50	NOARGS		linux_getegid16 { gid_t|sys||getegid(void); }
51	NOARGS		{ int|sys||acct(char *path); }
d126 1
a126 1
54	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
d128 1
a128 1
55	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
d130 1
a130 1
57	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
d132 1
a132 1
59	STD		{ int|linux_sys||oldolduname( \
d134 2
a135 2
60	NOARGS		{ int|sys||umask(int newmask); }
61	NOARGS		{ int|sys||chroot(char *path); }
d137 1
a137 1
63	NOARGS		{ int|sys||dup2(u_int from, u_int to); }
d139 1
a139 1
64	STD		{ pid_t|linux_sys||getppid(void); }
d141 1
a141 1
64	NOARGS		{ pid_t|sys||getppid(void); }
d143 3
a145 3
65	NOARGS		{ int|sys||getpgrp(void); }
66	NOARGS		{ int|sys||setsid(void); }
67	STD		{ int|linux_sys||sigaction(int signum, \
d148 3
a150 3
68	STD		{ int|linux_sys||siggetmask(void); }
69	STD		{ int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
70	STD		{ int|linux_sys||setreuid16(linux_uid16_t ruid, \
d152 1
a152 1
71	STD		{ int|linux_sys||setregid16(linux_gid16_t rgid, \
d154 1
a154 1
72	STD		{ int|linux_sys||sigsuspend(void *restart, \
d156 2
a157 2
73	STD		{ int|linux_sys||sigpending(linux_old_sigset_t *set); }
74	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
d159 1
a159 1
75	STD		{ int|linux_sys||setrlimit(u_int which, \
d161 1
a161 1
76	STD		{ int|linux_sys||getrlimit(u_int which, \
d163 2
a164 3
77	NOARGS		{ int|compat_50_sys||getrusage(int who, \
			    struct rusage50 *rusage); }
78	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
d166 1
a166 1
79	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
d168 1
a168 1
80	STD		{ int|linux_sys||getgroups16(int gidsetsize, \
d170 1
a170 1
81	STD		{ int|linux_sys||setgroups16(int gidsetsize, \
d172 3
a174 3
82	STD		{ int|linux_sys||oldselect(struct linux_oldselect *lsp); }
83	NOARGS		{ int|sys||symlink(const char *path, const char *to); }
84	NOARGS		{ int|compat_43_sys||lstat(const char *path, \
d176 1
a176 1
85	NOARGS		{ int|sys||readlink(const char *name, char *buf, \
d179 1
a179 1
86	STD		{ int|linux_sys||uselib(const char *path); }
d183 2
a184 2
87	STD		{ int|linux_sys||swapon(char *name); }
88	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
d186 1
a186 1
89	STD		{ int|linux_sys||readdir(int fd, void *dent, \
d188 3
a190 3
90	STD		{ int|linux_sys||old_mmap(struct linux_oldmmap *lmp); }
91	NOARGS		{ int|sys||munmap(void *addr, int len); }
92	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
d192 3
a194 3
93	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); }
94	NOARGS		{ int|sys||fchmod(int fd, int mode); }
95	STD		{ int|linux_sys||fchown16(int fd, linux_uid16_t uid, \
d196 3
a198 3
96	STD		{ int|linux_sys||getpriority(int which, int who); }
97	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
98	NOARGS		{ int|sys||profil(void *samples, u_int size, \
d200 1
a200 1
99	STD		{ int|linux_sys||statfs(const char *path, \
d202 1
a202 1
100	STD		{ int|linux_sys||fstatfs(int fd, \
d204 1
a204 1
101	STD		{ int|linux_sys||ioperm(unsigned int lo, \
d206 1
a206 1
102	STD		{ int|linux_sys||socketcall(int what, void *args); }
d208 5
a212 5
104	NOARGS		{ int|compat_50_sys||setitimer(u_int which, \
			    struct itimerval50 *itv, struct itimerval50 *oitv); }
105	NOARGS		{ int|compat_50_sys||getitimer(u_int which, \
			    struct itimerval50 *itv); }
106	STD		{ int|linux_sys||stat(const char *path, \
d214 1
a214 1
107	STD		{ int|linux_sys||lstat(const char *path, \
d216 3
a218 3
108	STD		{ int|linux_sys||fstat(int fd, struct linux_stat *sp); }
109	STD		{ int|linux_sys||olduname(struct linux_old_utsname *up); }
110	STD		{ int|linux_sys||iopl(int level); }
d222 5
a226 5
114	STD		{ int|linux_sys||wait4(int pid, int *status, \
			    int options, struct rusage50 *rusage); }
115	STD		{ int|linux_sys||swapoff(const char *path); }
116	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
117	STD		{ int|linux_sys||ipc(int what, int a1, int a2, int a3, \
d228 3
a230 3
118	NOARGS		{ int|sys||fsync(int fd); }
119	STD		{ int|linux_sys||sigreturn(struct linux_sigcontext *scp); }
120	STD		{ int|linux_sys||clone(int flags, void *stack, \
d232 1
a232 1
121	STD		{ int|linux_sys||setdomainname(char *domainname, \
d234 2
a235 2
122	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
123	STD		{ int|linux_sys||modify_ldt(int func, void *ptr, \
d238 1
a238 1
125	STD		{ int|linux_sys||mprotect(const void *start, \
d240 1
a240 1
126	STD		{ int|linux_sys||sigprocmask(int how, \
d248 2
a249 2
132	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
133	NOARGS		{ int|sys||fchdir(int fd); }
d252 1
a252 1
136	STD		{ int|linux_sys||personality(int per); }
d254 3
a256 3
138	NOARGS		linux_setfsuid16 { int|linux_sys||setfsuid(uid_t uid); }
139	NOARGS		linux_setfsgid16 { int|linux_sys||setfsgid(gid_t gid); }
140	STD		{ int|linux_sys||llseek(int fd, u_int32_t ohigh, \
d258 1
a258 1
141	STD		{ int|linux_sys||getdents(int fd, \
d260 1
a260 1
142	STD		{ int|linux_sys||select(int nfds, fd_set *readfds, \
d262 4
a265 4
			    struct timeval50 *timeout); }
143	NOARGS		{ int|sys||flock(int fd, int how); }
144	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
145	NOARGS		{ int|sys||readv(int fd, struct iovec *iovp, \
d267 1
a267 1
146	NOARGS		{ int|sys||writev(int fd, struct iovec *iovp, \
d269 8
a276 8
147	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
148	STD		{ int|linux_sys||fdatasync(int fd); }
149	STD		{ int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
150	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
151	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
152	NOARGS		{ int|sys||mlockall(int flags); }
153	NOARGS		{ int|sys||munlockall(void); }
154	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
d278 1
a278 1
155	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
d280 1
a280 1
156	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
d282 4
a285 4
157	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
158	STD		{ int|linux_sys||sched_yield(void); }
159	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
160	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
d287 3
a289 4
162	STD		{ int|linux_sys||nanosleep( \
			    const struct linux_timespec *rqtp, \
			    struct linux_timespec *rmtp); }
163	STD		{ void *|linux_sys||mremap(void *old_address, \
d291 1
a291 1
164	STD		{ int|linux_sys||setresuid16(linux_uid16_t ruid, \
d293 1
a293 1
165	STD		{ int|linux_sys||getresuid16(linux_uid16_t *ruid, \
d297 1
a297 1
168	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
d300 1
a300 1
170	STD		{ int|linux_sys||setresgid16(linux_gid16_t rgid, \
d302 1
a302 1
171	STD		{ int|linux_sys||getresgid16(linux_gid16_t *rgid, \
d305 1
a305 1
173	STD		{ int|linux_sys||rt_sigreturn( \
d307 1
a307 1
174	STD		{ int|linux_sys||rt_sigaction(int signum, \
d311 1
a311 1
175	STD		{ int|linux_sys||rt_sigprocmask(int how, \
d315 1
a315 1
176	STD		{ int|linux_sys||rt_sigpending( \
d320 1
a320 1
178	STD		{ int|linux_sys||rt_queueinfo(int pid, int signum, \
d322 1
a322 1
179	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
d324 1
a324 1
180	STD		{ int|linux_sys||pread(int fd, char *buf, \
d326 1
a326 1
181	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
d328 1
a328 1
182	STD		{ int|linux_sys||chown16(const char *path, \
d330 1
a330 1
183	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
d333 1
a333 1
186	STD		{ int|linux_sys||sigaltstack( \
d339 2
a340 2
190	NOARGS		{ int|sys|14|vfork(void); }
191	STD		{ int|linux_sys||ugetrlimit(int which, \
d343 1
a343 1
192	NOARGS		{ linux_off_t|linux_sys||mmap2(unsigned long addr, \
d346 1
a346 1
193	STD		{ int|linux_sys||truncate64(const char *path, \
d348 1
a348 1
194	STD		{ int|linux_sys||ftruncate64(unsigned int fd, \
d350 1
a350 1
195	STD		{ int|linux_sys||stat64(const char *path, \
d352 1
a352 1
196	STD		{ int|linux_sys||lstat64(const char *path, \
d354 1
a354 1
197	STD		{ int|linux_sys||fstat64(int fd, \
d356 1
a356 1
198	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
d358 9
a366 9
199	NOARGS		{ uid_t|sys||getuid(void); }
200	NOARGS		{ gid_t|sys||getgid(void); }
201	NOARGS		{ uid_t|sys||geteuid(void); }
202	NOARGS		{ gid_t|sys||getegid(void); }
203	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
204	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
205	NOARGS		{ int|sys||getgroups(u_int gidsetsize, gid_t *gidset); }
206	NOARGS		{ int|sys||setgroups(u_int gidsetsize, gid_t *gidset); }
207	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
d368 1
a368 1
208	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
d370 1
a370 1
209	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
d372 1
a372 1
210	STD		{ int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
d374 1
a374 1
211	STD		{ int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
d376 1
a376 1
212	NOARGS		{ int|sys||__posix_chown(const char *path, uid_t uid, \
d378 4
a381 4
213	NOARGS		{ int|sys||setuid(uid_t uid); }
214	NOARGS		{ int|sys||setgid(gid_t gid); }
215	STD		{ int|linux_sys||setfsuid(uid_t uid); }
216	STD		{ int|linux_sys||setfsgid(gid_t gid); }
d383 3
a385 3
218	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
219	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
220	STD		{ int|linux_sys||getdents64(int fd, \
d387 1
a387 1
221	STD		{ int|linux_sys||fcntl64(int fd, int cmd, void *arg); }
d391 1
a391 1
224	STD		{ pid_t|linux_sys||gettid(void); }
d397 1
a397 1
226	STD		{ int|linux_sys||setxattr(char *path, char *name, \
d399 1
a399 1
227	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
d401 1
a401 1
228	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
d403 1
a403 1
229	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
d405 1
a405 1
230	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
d407 1
a407 1
231	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
d409 1
a409 1
232	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
d411 1
a411 1
233	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
d413 1
a413 1
234	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
d415 3
a417 3
235	STD		{ int|linux_sys||removexattr(char *path, char *name); }
236	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
237	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
d419 1
a419 1
238	STD		{ int|linux_sys||tkill(int tid, int sig); }
d424 2
a425 2
240	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
			    const struct linux_timespec *timeout, int *uaddr2, \
d428 1
a428 1
241	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
d430 1
a430 1
242	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
a435 6
#ifdef LINUX_NPTL
243	STD		{ int|linux_sys||set_thread_area( \
			    struct linux_user_desc *desc); }
244	STD		{ int|linux_sys||get_thread_area( \
			    struct linux_user_desc *desc); }
#else
a437 1
#endif
d445 1
a445 1
252	STD		{ int|linux_sys||exit_group(int error_code); }
d452 1
a452 1
258	STD		{ int|linux_sys||set_tid_address(int *tid); }
d461 1
a461 1
264	STD		{ int|linux_sys||clock_settime(clockid_t which, \
d463 1
a463 1
265	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
d465 1
a465 1
266	STD		{ int|linux_sys||clock_getres(clockid_t which, \
d467 1
a467 1
267	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
d470 1
a470 1
268	STD		{ int|linux_sys||statfs64(const char *path, \
d472 1
a472 1
269	STD		{ int|linux_sys||fstatfs64(int fd, \
d475 1
a475 1
270	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
a491 36
284	UNIMPL		waitid
285	OBSOL		/* XXXJDM really? */
286	UNIMPL		add_key
287	UNIMPL		request_key
288	UNIMPL		keyctl
289	UNIMPL		ioprio_set
290	UNIMPL		ioprio_get
291	UNIMPL		inotify_init
292	UNIMPL		inotify_add_watch
293	UNIMPL		inotify_rm_watch
294	UNIMPL		migrate_pages
295	UNIMPL		openat
296	UNIMPL		mkdirat
297	UNIMPL		mknodat
298	UNIMPL		fchownat
299	UNIMPL		futimesat
300	UNIMPL		fstatat64
301	UNIMPL		unlinkat
302	UNIMPL		renameat
303	UNIMPL		linkat
304	UNIMPL		symlinkat
305	UNIMPL		readlinkat
306	UNIMPL		fchmodat
307	UNIMPL		faccessat
308	UNIMPL		pselect6
309	UNIMPL		ppoll
310	UNIMPL		unshare
311	STD		{ int|linux_sys||set_robust_list( \
			    struct linux_robust_list_head *head, size_t len); }
312	STD		{ int|linux_sys||get_robust_list(int pid, \
			    struct linux_robust_list_head **head, \
			    size_t *len); }
313	UNIMPL		splice
314	UNIMPL		sync_file_range
315	UNIMPL		tee
316	UNIMPL		vmsplice
@


1.91.2.2
log
@sync with head
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.91.2.1 2009/05/04 08:12:21 yamt Exp $
d319 1
d321 1
a321 1
			    linux_siginfo_t *uinfo); }
@


1.91.2.3
log
@sync with head
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.91.2.2 2009/06/20 07:20:15 yamt Exp $
d251 1
a251 1
136	STD		{ int|linux_sys||personality(unsigned long per); }
@


1.91.2.4
log
@sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.91.2.3 2010/03/11 15:03:15 yamt Exp $
d56 1
a56 1
1	STD		{ int|linux_sys||exit(int rval); }
d82 3
d86 1
d96 1
a96 1
29	NOARGS		{ int|linux_sys||pause(void); }
d136 3
d140 1
d146 1
a146 1
68	NOARGS		{ int|linux_sys||siggetmask(void); }
d230 1
a230 1
			    void *parent_tidptr, void *tls, void *child_tidptr); }
d389 5
a393 1
224	NOARGS		{ pid_t|linux_sys||gettid(void); }
d395 1
d417 1
d419 3
d426 1
d431 5
d440 4
d457 1
d459 3
d480 1
d482 3
d499 1
a499 1
285	UNIMPL		/* unused */
a533 21
317	UNIMPL		move_pages
318	UNIMPL		getcpu
319	UNIMPL		epoll_wait
320	UNIMPL		utimensat
321	UNIMPL		signalfd
322	UNIMPL		timerfd_create
323	UNIMPL		eventfd
324	UNIMPL		fallocate
325	UNIMPL		timerfd_settime
326	UNIMPL		timerfd_gettime
327	UNIMPL		signalfd4
328	UNIMPL		eventfd2
329	UNIMPL		epoll_create1
330	UNIMPL		dup3
331	UNIMPL		pipe2
332	UNIMPL		inotify_init1
333	UNIMPL		preadv
334	UNIMPL		pwritev
335	UNIMPL		rt_tgsigqueueinfo
336	UNIMPL		perf_counter_open
337	UNIMPL		recvmmsg
@


1.91.8.1
log
@Update haad-dm branch to haad-dm-base2.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.96 2008/11/19 18:36:03 ad Exp $
d36 4
d287 2
a288 3
162	STD		{ int linux_sys_nanosleep( \
			    const struct linux_timespec *rqtp, \
			    struct linux_timespec *rmtp); }
d425 1
a425 1
			    const struct linux_timespec *timeout, int *uaddr2, \
a435 6
#ifdef LINUX_NPTL
243	STD		{ int linux_sys_set_thread_area( \
			    struct linux_user_desc *desc); }
244	STD		{ int linux_sys_get_thread_area( \
			    struct linux_user_desc *desc); }
#else
a437 1
#endif
a491 36
284	UNIMPL		waitid
285	OBSOL		/* XXXJDM really? */
286	UNIMPL		add_key
287	UNIMPL		request_key
288	UNIMPL		keyctl
289	UNIMPL		ioprio_set
290	UNIMPL		ioprio_get
291	UNIMPL		inotify_init
292	UNIMPL		inotify_add_watch
293	UNIMPL		inotify_rm_watch
294	UNIMPL		migrate_pages
295	UNIMPL		openat
296	UNIMPL		mkdirat
297	UNIMPL		mknodat
298	UNIMPL		fchownat
299	UNIMPL		futimesat
300	UNIMPL		fstatat64
301	UNIMPL		unlinkat
302	UNIMPL		renameat
303	UNIMPL		linkat
304	UNIMPL		symlinkat
305	UNIMPL		readlinkat
306	UNIMPL		fchmodat
307	UNIMPL		faccessat
308	UNIMPL		pselect6
309	UNIMPL		ppoll
310	UNIMPL		unshare
311	STD		{ int linux_sys_set_robust_list( \
			    struct linux_robust_list_head *head, size_t len); }
312	STD		{ int linux_sys_get_robust_list(int pid, \
			    struct linux_robust_list_head **head, \
			    size_t *len); }
313	UNIMPL		splice
314	UNIMPL		sync_file_range
315	UNIMPL		tee
316	UNIMPL		vmsplice
@


1.91.4.1
log
@Initial checkin of re-adding SA. Everything except kern_sa.c
compiles in GENERIC for i386. This is still a work-in-progress, but
this checkin covers most of the mechanical work (changing signalling
to be able to accomidate SA's process-wide signalling and re-adding
includes of sys/sa.h and savar.h). Subsequent changes will be much
more interesting.

Also, kern_sa.c has received partial cleanup. There's still more
to do, though.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.91 2008/04/23 14:07:50 ad Exp $
a44 1
#include <sys/sa.h>
@


1.91.4.2
log
@Per discussion with ad, remove most of the #include <sys/sa.h> lines
as they were including sa.h just for the type(s) needed for syscallargs.h.

Instead, create a new file, sys/satypes.h, which contains just the
types needed for syscallargs.h. Yes, there's only one now, but that
may change and it's probably more likely to change if it'd be difficult
to handle. :-)

Per discussion with matt at n dot o, add an include of satypes.h to
sigtypes.h. Upcall handlers are kinda signal handlers, and signalling
is the header file that's already included for syscallargs.h that
closest matches SA.

This shaves about 3000 lines off of the diff of the branch relative
to the base. That also represents about 18% of the total before this
checkin.

I think this reduction is very good thing.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.91.4.1 2008/05/10 23:48:52 wrstuden Exp $
d45 1
@


1.90
log
@Cleanup. Kill linux_sys_msync and use sys___msync13 instead.
No functional changes expected.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.89 2008/01/15 22:38:34 njoly Exp $
d87 1
a87 1
20	NOARGS MPSAFE	{ pid_t sys_getpid(void); }
@


1.90.2.1
log
@sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.90 2008/04/04 12:38:52 njoly Exp $
d87 1
a87 1
20	NOARGS 		{ pid_t sys_getpid(void); }
@


1.89
log
@compat linux (and linux32) uid16 functions cleanup and fixes.

- Move uid16 functions to their own file linux_uid16.c, included by
  needed archs (arm, i386 and m68k).
- Add new MI types linux_{u,g}id16_t.
- Add macros to handle linux_uid16_t and uid_t conversions.
- Add linux_sys_getres{uid,gid}16 syscalls, to fix an overflow with
  bad sizes given to copyout when linux_sys_getres{uid,gid} are used.
- Update arm syscall table to use more uid16 functions.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.88 2007/12/24 14:17:18 njoly Exp $
d264 1
a264 1
144	STD		{ int linux_sys_msync(void *addr, int len, int fl); }
@


1.89.6.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD$
d87 1
a87 1
20	NOARGS 		{ pid_t sys_getpid(void); }
d264 1
a264 1
144	NOARGS		{ int sys___msync13(void *addr, size_t len, int flags); }
@


1.89.6.2
log
@Sync with HEAD.
@
text
@d36 4
a46 2
#include <compat/sys/time.h>

d57 6
a62 6
0	NOARGS		{ int|linux_sys||nosys(void); } syscall
1	NOARGS		{ int|sys||exit(int rval); }
2	NOARGS		{ int|sys||fork(void); }
3	NOARGS		{ int|sys||read(int fd, char *buf, u_int nbyte); }
4	NOARGS		{ int|sys||write(int fd, char *buf, u_int nbyte); }
5	STD		{ int|linux_sys||open(const char *path, int flags, \
d64 2
a65 2
6	NOARGS		{ int|sys||close(int fd); }
7	STD		{ int|linux_sys||waitpid(int pid, int *status, \
d67 4
a70 4
8	STD		{ int|linux_sys||creat(const char *path, int mode); }
9	NOARGS		{ int|sys||link(const char *path, const char *link); }
10	STD		{ int|linux_sys||unlink(const char *path); }
11	NOARGS		{ int|sys||execve(const char *path, char **argp, \
d72 3
a74 3
12	NOARGS		{ int|sys||chdir(const char *path); }
13	STD		{ int|linux_sys||time(linux_time_t *t); }
14	STD		{ int|linux_sys||mknod(const char *path, int mode, \
d76 2
a77 2
15	NOARGS		{ int|sys||chmod(const char *path, int mode); }
16	STD		{ int|linux_sys||lchown16(const char *path, \
d80 1
a80 1
17	STD		{ int|linux_sys||break(char *nsize); }
d82 1
a82 1
19	NOARGS		{ long|compat_43_sys||lseek(int fd, long offset, \
d85 1
a85 1
20	STD		{ pid_t|linux_sys||getpid(void); }
d87 1
a87 1
20	NOARGS 		{ pid_t|sys||getpid(void); }
d91 4
a94 4
23	NOARGS		linux_setuid16 { int|sys||setuid(uid_t uid); }
24	NOARGS		linux_getuid16 { uid_t|sys||getuid(void); }
25	STD		{ int|linux_sys||stime(linux_time_t *t); }
26	STD		{ int|linux_sys||ptrace(int request, int pid, \
d96 1
a96 1
27	STD		{ int|linux_sys||alarm(unsigned int secs); }
d98 2
a99 2
29	STD		{ int|linux_sys||pause(void); }
30	STD		{ int|linux_sys||utime(const char *path, \
d103 2
a104 2
33	NOARGS		{ int|sys||access(const char *path, int flags); }
34	STD		{ int|linux_sys||nice(int incr); }
d106 3
a108 3
36	NOARGS		{ int|sys||sync(void); }
37	STD		{ int|linux_sys||kill(int pid, int signum); }
38	NOARGS		{ int|sys||__posix_rename(const char *from, \
d110 5
a114 5
39	NOARGS		{ int|sys||mkdir(const char *path, int mode); }
40	NOARGS		{ int|sys||rmdir(const char *path); }
41	NOARGS		{ int|sys||dup(u_int fd); }
42	STD		{ int|linux_sys||pipe(int *pfds); }
43	STD		{ int|linux_sys||times(struct times *tms); }
d116 4
a119 4
45	STD		{ int|linux_sys||brk(char *nsize); }
46	NOARGS		linux_setgid16 { int|sys||setgid(gid_t gid); }
47	NOARGS		linux_getgid16 { gid_t|sys||getgid(void); }
48	STD		{ int|linux_sys||signal(int signum, \
d121 3
a123 3
49	NOARGS		linux_geteuid16 { uid_t|sys||geteuid(void); }
50	NOARGS		linux_getegid16 { gid_t|sys||getegid(void); }
51	NOARGS		{ int|sys||acct(char *path); }
d126 1
a126 1
54	STD		{ int|linux_sys||ioctl(int fd, u_long com, \
d128 1
a128 1
55	STD		{ int|linux_sys||fcntl(int fd, int cmd, void *arg); }
d130 1
a130 1
57	NOARGS		{ int|sys||setpgid(int pid, int pgid); }
d132 1
a132 1
59	STD		{ int|linux_sys||oldolduname( \
d134 2
a135 2
60	NOARGS		{ int|sys||umask(int newmask); }
61	NOARGS		{ int|sys||chroot(char *path); }
d137 1
a137 1
63	NOARGS		{ int|sys||dup2(u_int from, u_int to); }
d139 1
a139 1
64	STD		{ pid_t|linux_sys||getppid(void); }
d141 1
a141 1
64	NOARGS		{ pid_t|sys||getppid(void); }
d143 3
a145 3
65	NOARGS		{ int|sys||getpgrp(void); }
66	NOARGS		{ int|sys||setsid(void); }
67	STD		{ int|linux_sys||sigaction(int signum, \
d148 3
a150 3
68	STD		{ int|linux_sys||siggetmask(void); }
69	STD		{ int|linux_sys||sigsetmask(linux_old_sigset_t mask); }
70	STD		{ int|linux_sys||setreuid16(linux_uid16_t ruid, \
d152 1
a152 1
71	STD		{ int|linux_sys||setregid16(linux_gid16_t rgid, \
d154 1
a154 1
72	STD		{ int|linux_sys||sigsuspend(void *restart, \
d156 2
a157 2
73	STD		{ int|linux_sys||sigpending(linux_old_sigset_t *set); }
74	NOARGS		{ int|compat_43_sys||sethostname(char *hostname, \
d159 1
a159 1
75	STD		{ int|linux_sys||setrlimit(u_int which, \
d161 1
a161 1
76	STD		{ int|linux_sys||getrlimit(u_int which, \
d163 2
a164 3
77	NOARGS		{ int|compat_50_sys||getrusage(int who, \
			    struct rusage50 *rusage); }
78	STD		{ int|linux_sys||gettimeofday(struct timeval50 *tp, \
d166 1
a166 1
79	STD		{ int|linux_sys||settimeofday(struct timeval50 *tp, \
d168 1
a168 1
80	STD		{ int|linux_sys||getgroups16(int gidsetsize, \
d170 1
a170 1
81	STD		{ int|linux_sys||setgroups16(int gidsetsize, \
d172 3
a174 3
82	STD		{ int|linux_sys||oldselect(struct linux_oldselect *lsp); }
83	NOARGS		{ int|sys||symlink(const char *path, const char *to); }
84	NOARGS		{ int|compat_43_sys||lstat(const char *path, \
d176 1
a176 1
85	NOARGS		{ int|sys||readlink(const char *name, char *buf, \
d179 1
a179 1
86	STD		{ int|linux_sys||uselib(const char *path); }
d183 2
a184 2
87	STD		{ int|linux_sys||swapon(char *name); }
88	STD		{ int|linux_sys||reboot(int magic1, int magic2, \
d186 1
a186 1
89	STD		{ int|linux_sys||readdir(int fd, void *dent, \
d188 3
a190 3
90	STD		{ int|linux_sys||old_mmap(struct linux_oldmmap *lmp); }
91	NOARGS		{ int|sys||munmap(void *addr, int len); }
92	NOARGS		{ int|compat_43_sys||truncate(const char *path, \
d192 3
a194 3
93	NOARGS		{ int|compat_43_sys||ftruncate(int fd, long length); }
94	NOARGS		{ int|sys||fchmod(int fd, int mode); }
95	STD		{ int|linux_sys||fchown16(int fd, linux_uid16_t uid, \
d196 3
a198 3
96	STD		{ int|linux_sys||getpriority(int which, int who); }
97	NOARGS		{ int|sys||setpriority(int which, int who, int prio); }
98	NOARGS		{ int|sys||profil(void *samples, u_int size, \
d200 1
a200 1
99	STD		{ int|linux_sys||statfs(const char *path, \
d202 1
a202 1
100	STD		{ int|linux_sys||fstatfs(int fd, \
d204 1
a204 1
101	STD		{ int|linux_sys||ioperm(unsigned int lo, \
d206 1
a206 1
102	STD		{ int|linux_sys||socketcall(int what, void *args); }
d208 5
a212 5
104	NOARGS		{ int|compat_50_sys||setitimer(u_int which, \
			    struct itimerval50 *itv, struct itimerval50 *oitv); }
105	NOARGS		{ int|compat_50_sys||getitimer(u_int which, \
			    struct itimerval50 *itv); }
106	STD		{ int|linux_sys||stat(const char *path, \
d214 1
a214 1
107	STD		{ int|linux_sys||lstat(const char *path, \
d216 3
a218 3
108	STD		{ int|linux_sys||fstat(int fd, struct linux_stat *sp); }
109	STD		{ int|linux_sys||olduname(struct linux_old_utsname *up); }
110	STD		{ int|linux_sys||iopl(int level); }
d222 1
a222 1
114	STD		{ int|linux_sys||wait4(int pid, int *status, \
d224 3
a226 3
115	STD		{ int|linux_sys||swapoff(const char *path); }
116	STD		{ int|linux_sys||sysinfo(struct linux_sysinfo *arg); }
117	STD		{ int|linux_sys||ipc(int what, int a1, int a2, int a3, \
d228 3
a230 3
118	NOARGS		{ int|sys||fsync(int fd); }
119	STD		{ int|linux_sys||sigreturn(struct linux_sigcontext *scp); }
120	STD		{ int|linux_sys||clone(int flags, void *stack, \
d232 1
a232 1
121	STD		{ int|linux_sys||setdomainname(char *domainname, \
d234 2
a235 2
122	STD		{ int|linux_sys||uname(struct linux_utsname *up); }
123	STD		{ int|linux_sys||modify_ldt(int func, void *ptr, \
d238 1
a238 1
125	STD		{ int|linux_sys||mprotect(const void *start, \
d240 1
a240 1
126	STD		{ int|linux_sys||sigprocmask(int how, \
d248 2
a249 2
132	NOARGS		{ pid_t|sys||getpgid(pid_t pid); }
133	NOARGS		{ int|sys||fchdir(int fd); }
d252 1
a252 1
136	STD		{ int|linux_sys||personality(int per); }
d254 3
a256 3
138	NOARGS		linux_setfsuid16 { int|linux_sys||setfsuid(uid_t uid); }
139	NOARGS		linux_setfsgid16 { int|linux_sys||setfsgid(gid_t gid); }
140	STD		{ int|linux_sys||llseek(int fd, u_int32_t ohigh, \
d258 1
a258 1
141	STD		{ int|linux_sys||getdents(int fd, \
d260 1
a260 1
142	STD		{ int|linux_sys||select(int nfds, fd_set *readfds, \
d262 4
a265 4
			    struct timeval50 *timeout); }
143	NOARGS		{ int|sys||flock(int fd, int how); }
144	NOARGS		{ int|sys|13|msync(void *addr, size_t len, int flags); }
145	NOARGS		{ int|sys||readv(int fd, struct iovec *iovp, \
d267 1
a267 1
146	NOARGS		{ int|sys||writev(int fd, struct iovec *iovp, \
d269 8
a276 8
147	NOARGS		{ pid_t|sys||getsid(pid_t pid); }
148	STD		{ int|linux_sys||fdatasync(int fd); }
149	STD		{ int|linux_sys||__sysctl(struct linux___sysctl *lsp); }
150	NOARGS		{ int|sys||mlock(void *addr, size_t len); }
151	NOARGS		{ int|sys||munlock(void *addr, size_t len); }
152	NOARGS		{ int|sys||mlockall(int flags); }
153	NOARGS		{ int|sys||munlockall(void); }
154	STD		{ int|linux_sys||sched_setparam(pid_t pid, \
d278 1
a278 1
155	STD		{ int|linux_sys||sched_getparam(pid_t pid, \
d280 1
a280 1
156	STD		{ int|linux_sys||sched_setscheduler(pid_t pid, \
d282 4
a285 4
157	STD		{ int|linux_sys||sched_getscheduler(pid_t pid); }
158	STD		{ int|linux_sys||sched_yield(void); }
159	STD		{ int|linux_sys||sched_get_priority_max(int policy); }
160	STD		{ int|linux_sys||sched_get_priority_min(int policy); }
d287 3
a289 4
162	STD		{ int|linux_sys||nanosleep( \
			    const struct linux_timespec *rqtp, \
			    struct linux_timespec *rmtp); }
163	STD		{ void *|linux_sys||mremap(void *old_address, \
d291 1
a291 1
164	STD		{ int|linux_sys||setresuid16(linux_uid16_t ruid, \
d293 1
a293 1
165	STD		{ int|linux_sys||getresuid16(linux_uid16_t *ruid, \
d297 1
a297 1
168	NOARGS		{ int|sys||poll(struct pollfd *fds, u_int nfds, \
d300 1
a300 1
170	STD		{ int|linux_sys||setresgid16(linux_gid16_t rgid, \
d302 1
a302 1
171	STD		{ int|linux_sys||getresgid16(linux_gid16_t *rgid, \
d305 1
a305 1
173	STD		{ int|linux_sys||rt_sigreturn( \
d307 1
a307 1
174	STD		{ int|linux_sys||rt_sigaction(int signum, \
d311 1
a311 1
175	STD		{ int|linux_sys||rt_sigprocmask(int how, \
d315 1
a315 1
176	STD		{ int|linux_sys||rt_sigpending( \
d320 1
a320 1
178	STD		{ int|linux_sys||rt_queueinfo(int pid, int signum, \
d322 1
a322 1
179	STD		{ int|linux_sys||rt_sigsuspend(linux_sigset_t *unewset, \
d324 1
a324 1
180	STD		{ int|linux_sys||pread(int fd, char *buf, \
d326 1
a326 1
181	STD		{ int|linux_sys||pwrite(int fd, char *buf, \
d328 1
a328 1
182	STD		{ int|linux_sys||chown16(const char *path, \
d330 1
a330 1
183	NOARGS		{ int|sys||__getcwd(char *bufp, size_t length); }
d333 1
a333 1
186	STD		{ int|linux_sys||sigaltstack( \
d339 2
a340 2
190	NOARGS		{ int|sys|14|vfork(void); }
191	STD		{ int|linux_sys||ugetrlimit(int which, \
d343 1
a343 1
192	NOARGS		{ linux_off_t|linux_sys||mmap2(unsigned long addr, \
d346 1
a346 1
193	STD		{ int|linux_sys||truncate64(const char *path, \
d348 1
a348 1
194	STD		{ int|linux_sys||ftruncate64(unsigned int fd, \
d350 1
a350 1
195	STD		{ int|linux_sys||stat64(const char *path, \
d352 1
a352 1
196	STD		{ int|linux_sys||lstat64(const char *path, \
d354 1
a354 1
197	STD		{ int|linux_sys||fstat64(int fd, \
d356 1
a356 1
198	NOARGS		{ int|sys||__posix_lchown(const char *path, uid_t uid, \
d358 9
a366 9
199	NOARGS		{ uid_t|sys||getuid(void); }
200	NOARGS		{ gid_t|sys||getgid(void); }
201	NOARGS		{ uid_t|sys||geteuid(void); }
202	NOARGS		{ gid_t|sys||getegid(void); }
203	NOARGS		{ int|sys||setreuid(uid_t ruid, uid_t euid); }
204	NOARGS		{ int|sys||setregid(gid_t rgid, gid_t egid); }
205	NOARGS		{ int|sys||getgroups(u_int gidsetsize, gid_t *gidset); }
206	NOARGS		{ int|sys||setgroups(u_int gidsetsize, gid_t *gidset); }
207	NOARGS		{ int|sys||__posix_fchown(int fd, uid_t uid, \
d368 1
a368 1
208	STD		{ int|linux_sys||setresuid(uid_t ruid, uid_t euid, \
d370 1
a370 1
209	STD		{ int|linux_sys||getresuid(uid_t *ruid, uid_t *euid, \
d372 1
a372 1
210	STD		{ int|linux_sys||setresgid(gid_t rgid, gid_t egid, \
d374 1
a374 1
211	STD		{ int|linux_sys||getresgid(gid_t *rgid, gid_t *egid, \
d376 1
a376 1
212	NOARGS		{ int|sys||__posix_chown(const char *path, uid_t uid, \
d378 4
a381 4
213	NOARGS		{ int|sys||setuid(uid_t uid); }
214	NOARGS		{ int|sys||setgid(gid_t gid); }
215	STD		{ int|linux_sys||setfsuid(uid_t uid); }
216	STD		{ int|linux_sys||setfsgid(gid_t gid); }
d383 3
a385 3
218	NOARGS		{ int|sys||mincore(void *addr, size_t len, char *vec); }
219	NOARGS		{ int|sys||madvise(void *addr, size_t len, int behav); }
220	STD		{ int|linux_sys||getdents64(int fd, \
d387 1
a387 1
221	STD		{ int|linux_sys||fcntl64(int fd, int cmd, void *arg); }
d391 1
a391 1
224	STD		{ pid_t|linux_sys||gettid(void); }
d397 1
a397 1
226	STD		{ int|linux_sys||setxattr(char *path, char *name, \
d399 1
a399 1
227	STD		{ int|linux_sys||lsetxattr(char *path, char *name, \
d401 1
a401 1
228	STD		{ int|linux_sys||fsetxattr(int fd, char *name, \
d403 1
a403 1
229	STD		{ ssize_t|linux_sys||getxattr(char *path, char *name, \
d405 1
a405 1
230	STD		{ ssize_t|linux_sys||lgetxattr(char *path, char *name, \
d407 1
a407 1
231	STD		{ ssize_t|linux_sys||fgetxattr(int fd, char *name, \
d409 1
a409 1
232	STD		{ ssize_t|linux_sys||listxattr(char *path, char *list, \
d411 1
a411 1
233	STD		{ ssize_t|linux_sys||llistxattr(char *path, char *list, \
d413 1
a413 1
234	STD		{ ssize_t|linux_sys||flistxattr(int fd, char *list, \
d415 3
a417 3
235	STD		{ int|linux_sys||removexattr(char *path, char *name); }
236	STD		{ int|linux_sys||lremovexattr(char *path, char *name); }
237	STD		{ int|linux_sys||fremovexattr(int fd, char *name); }
d419 1
a419 1
238	STD		{ int|linux_sys||tkill(int tid, int sig); }
d424 2
a425 2
240	STD		{ int|linux_sys||futex(int *uaddr, int op, int val, \
			    const struct linux_timespec *timeout, int *uaddr2, \
d428 1
a428 1
241	STD		{ int|linux_sys||sched_setaffinity(pid_t pid, \
d430 1
a430 1
242	STD		{ int|linux_sys||sched_getaffinity(pid_t pid, \
a435 6
#ifdef LINUX_NPTL
243	STD		{ int|linux_sys||set_thread_area( \
			    struct linux_user_desc *desc); }
244	STD		{ int|linux_sys||get_thread_area( \
			    struct linux_user_desc *desc); }
#else
a437 1
#endif
d445 1
a445 1
252	STD		{ int|linux_sys||exit_group(int error_code); }
d452 1
a452 1
258	STD		{ int|linux_sys||set_tid_address(int *tid); }
d461 1
a461 1
264	STD		{ int|linux_sys||clock_settime(clockid_t which, \
d463 1
a463 1
265	STD		{ int|linux_sys||clock_gettime(clockid_t which, \
d465 1
a465 1
266	STD		{ int|linux_sys||clock_getres(clockid_t which, \
d467 1
a467 1
267	STD		{ int|linux_sys||clock_nanosleep(clockid_t which, \
d470 1
a470 1
268	STD		{ int|linux_sys||statfs64(const char *path, \
d472 1
a472 1
269	STD		{ int|linux_sys||fstatfs64(int fd, \
d475 1
a475 1
270	STD		{ int|linux_sys||tgkill(int tgid, int tid, int sig); }
a491 36
284	UNIMPL		waitid
285	OBSOL		/* XXXJDM really? */
286	UNIMPL		add_key
287	UNIMPL		request_key
288	UNIMPL		keyctl
289	UNIMPL		ioprio_set
290	UNIMPL		ioprio_get
291	UNIMPL		inotify_init
292	UNIMPL		inotify_add_watch
293	UNIMPL		inotify_rm_watch
294	UNIMPL		migrate_pages
295	UNIMPL		openat
296	UNIMPL		mkdirat
297	UNIMPL		mknodat
298	UNIMPL		fchownat
299	UNIMPL		futimesat
300	UNIMPL		fstatat64
301	UNIMPL		unlinkat
302	UNIMPL		renameat
303	UNIMPL		linkat
304	UNIMPL		symlinkat
305	UNIMPL		readlinkat
306	UNIMPL		fchmodat
307	UNIMPL		faccessat
308	UNIMPL		pselect6
309	UNIMPL		ppoll
310	UNIMPL		unshare
311	STD		{ int|linux_sys||set_robust_list( \
			    struct linux_robust_list_head *head, size_t len); }
312	STD		{ int|linux_sys||get_robust_list(int pid, \
			    struct linux_robust_list_head **head, \
			    size_t *len); }
313	UNIMPL		splice
314	UNIMPL		sync_file_range
315	UNIMPL		tee
316	UNIMPL		vmsplice
@


1.89.8.1
log
@Welcome to the time_t=long long dev_t=uint64_t branch.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.89 2008/01/15 22:38:34 njoly Exp $
a46 2
#include <compat/sys/time.h>

d163 2
a164 3
77	NOARGS		{ int compat_50_sys_getrusage(int who, \
			    struct rusage50 *rusage); }
78	STD		{ int linux_sys_gettimeofday(struct timeval50 *tp, \
d166 1
a166 1
79	STD		{ int linux_sys_settimeofday(struct timeval50 *tp, \
d208 4
a211 4
104	NOARGS		{ int compat_50_sys_setitimer(u_int which, \
			    struct itimerval50 *itv, struct itimerval50 *oitv); }
105	NOARGS		{ int compat_50_sys_getitimer(u_int which, \
			    struct itimerval50 *itv); }
d262 1
a262 1
			    struct timeval50 *timeout); }
d287 2
a288 3
162	NOARGS		{ int compat_50_sys_nanosleep( \
			    const struct timespec50 *rqtp, \
			    struct timespec50 *rmtp); }
d425 1
a425 1
			    const struct linux_timespec *timeout, int *uaddr2, \
@


1.89.8.2
log
@Sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.93 2008/10/26 16:38:22 christos Exp $
d89 1
a89 1
20	NOARGS 		{ pid_t sys_getpid(void); }
d267 1
a267 1
144	NOARGS		{ int sys___msync13(void *addr, size_t len, int flags); }
a439 6
#ifdef LINUX_NPTL
243	STD		{ int linux_sys_set_thread_area( \
			    struct linux_user_desc *desc); }
244	STD		{ int linux_sys_get_thread_area( \
			    struct linux_user_desc *desc); }
#else
a441 1
#endif
a495 36
284	UNIMPL		waitid
285	OBSOL		/* XXXJDM really? */
286	UNIMPL		add_key
287	UNIMPL		request_key
288	UNIMPL		keyctl
289	UNIMPL		ioprio_set
290	UNIMPL		ioprio_get
291	UNIMPL		inotify_init
292	UNIMPL		inotify_add_watch
293	UNIMPL		inotify_rm_watch
294	UNIMPL		migrate_pages
295	UNIMPL		openat
296	UNIMPL		mkdirat
297	UNIMPL		mknodat
298	UNIMPL		fchownat
299	UNIMPL		futimesat
300	UNIMPL		fstatat64
301	UNIMPL		unlinkat
302	UNIMPL		renameat
303	UNIMPL		linkat
304	UNIMPL		symlinkat
305	UNIMPL		readlinkat
306	UNIMPL		fchmodat
307	UNIMPL		faccessat
308	UNIMPL		pselect6
309	UNIMPL		ppoll
310	UNIMPL		unshare
311	STD		{ int linux_sys_set_robust_list( \
			    struct linux_robust_list_head *head, size_t len); }
312	STD		{ int linux_sys_get_robust_list(int pid, \
			    struct linux_robust_list_head **head, \
			    size_t *len); }
313	UNIMPL		splice
314	UNIMPL		sync_file_range
315	UNIMPL		tee
316	UNIMPL		vmsplice
@


1.89.8.3
log
@merge with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.96 2008/11/19 18:36:03 ad Exp $
d36 4
d290 3
a292 3
162	STD		{ int linux_sys_nanosleep( \
			    const struct linux_timespec *rqtp, \
			    struct linux_timespec *rmtp); }
@


1.88
log
@Kill unneeded linux_sys_getpgid and use native sys_getpgid instead.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.87 2007/12/21 22:26:21 njoly Exp $
d78 1
a78 1
			    int uid, int gid); }
d150 4
a153 2
70	STD		{ int linux_sys_setreuid16(int ruid, int euid); }
71	STD		{ int linux_sys_setregid16(int rgid, int egid); }
d168 2
a169 1
80	STD		{ int linux_sys_getgroups16(int gidsetsize, linux_gid_t *gidset); }
d171 1
a171 1
			    linux_gid_t *gidset); }
d194 2
a195 1
95	STD		{ int linux_sys_fchown16(int fd, int uid, int gid); }
d291 4
a294 4
164	STD		{ int linux_sys_setresuid16(uid_t ruid, uid_t euid, \
			    uid_t suid); }
165	NOARGS		linux_getresuid16 { int linux_sys_getresuid( \
				uid_t *ruid, uid_t *euid, uid_t *suid); }
d300 4
a303 4
170	STD		{ int linux_sys_setresgid16(gid_t rgid, gid_t egid, \
			    gid_t sgid); }
171	NOARGS		linux_getresgid16 { int linux_sys_getresgid( \
			gid_t *rgid, gid_t *egid, gid_t *sgid); }
d328 2
a329 2
182	STD		{ int linux_sys_chown16(const char *path, int uid, \
			    int gid); }
@


1.87
log
@- Fix setfsuid to return uid on success.
- Replace getfsuid, which never existed on Linux, by correct setfsgid
  syscall.

ok by christos and dsl.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.86 2007/12/20 23:02:52 dsl Exp $
d244 1
a244 1
132	STD		{ int linux_sys_getpgid(int pid); }
@


1.86
log
@Convert all the system call entry points from:
    int foo(struct lwp *l, void *v, register_t *retval)
to:
    int foo(struct lwp *l, const struct foo_args *uap, register_t *retval)
Fixup compat code to not write into 'uap' and (in some cases) to actually
pass a correctly formatted 'uap' structure with the right name to the
next routine.
A few 'compat' routines that just call standard ones have been deleted.
All the 'compat' code compiles (along with the kernels required to test
build it).
98% done by automated scripts.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.85 2007/11/16 12:51:55 njoly Exp $
d251 1
a251 1
139	NOARGS		linux_getfsuid16 { int linux_sys_getfsuid(void); }
d377 1
a377 1
216	NOARGS		{ int linux_sys_getfsuid(void); }
@


1.85
log
@Cleanup. Remove a few linux syscalls definitions, now identical to
native ones (with stackgap and ALT_CHECK_xxx removal). No functional
changes expected.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.84 2007/06/13 20:57:33 christos Exp $
d338 1
@


1.85.6.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
	$NetBSD$
d244 1
a244 1
132	NOARGS		{ pid_t sys_getpgid(pid_t pid); }
d251 1
a251 1
139	NOARGS		linux_setfsgid16 { int linux_sys_setfsgid(gid_t gid); }
a337 1
#define linux_sys_mmap2_args linux_sys_mmap_args
d376 1
a376 1
216	STD		{ int linux_sys_setfsgid(gid_t gid); }
@


1.85.6.2
log
@Sync with HEAD
@
text
@d78 1
a78 1
			    linux_uid16_t uid, linux_gid16_t gid); }
d150 2
a151 4
70	STD		{ int linux_sys_setreuid16(linux_uid16_t ruid, \
			    linux_uid16_t euid); }
71	STD		{ int linux_sys_setregid16(linux_gid16_t rgid, \
			    linux_gid16_t egid); }
d166 1
a166 2
80	STD		{ int linux_sys_getgroups16(int gidsetsize, \
			    linux_gid16_t *gidset); }
d168 1
a168 1
			    linux_gid16_t *gidset); }
d191 1
a191 2
95	STD		{ int linux_sys_fchown16(int fd, linux_uid16_t uid, \
			    linux_gid16_t gid); }
d287 4
a290 4
164	STD		{ int linux_sys_setresuid16(linux_uid16_t ruid, \
			    linux_uid16_t euid, linux_uid16_t suid); }
165	STD		{ int linux_sys_getresuid16(linux_uid16_t *ruid, \
			    linux_uid16_t *euid, linux_uid16_t *suid); }
d296 4
a299 4
170	STD		{ int linux_sys_setresgid16(linux_gid16_t rgid, \
			    linux_gid16_t egid, linux_gid16_t sgid); }
171	STD		{ int linux_sys_getresgid16(linux_gid16_t *rgid, \
			    linux_gid16_t *egid, linux_gid16_t *sgid); }
d324 2
a325 2
182	STD		{ int linux_sys_chown16(const char *path, \
			    linux_uid16_t uid, linux_gid16_t gid); }
@


1.85.2.1
log
@Sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.88 2007/12/24 14:17:18 njoly Exp $
d244 1
a244 1
132	NOARGS		{ pid_t sys_getpgid(pid_t pid); }
d251 1
a251 1
139	NOARGS		linux_setfsgid16 { int linux_sys_setfsgid(gid_t gid); }
a337 1
#define linux_sys_mmap2_args linux_sys_mmap_args
d376 1
a376 1
216	STD		{ int linux_sys_setfsgid(gid_t gid); }
@


1.84
log
@Get ready for NPTL but don't turn it on as of yet.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.83 2007/06/13 14:31:07 christos Exp $
d68 1
a68 2
9	STD		{ int linux_sys_link(const char *path, \
			    const char *link); }
d70 1
a70 1
11	STD		{ int linux_sys_execve(const char *path, char **argp, \
d72 1
a72 1
12	STD		{ int linux_sys_chdir(const char *path); }
d76 1
a76 1
15	STD		{ int linux_sys_chmod(const char *path, int mode); }
d103 1
a103 1
33	STD		{ int linux_sys_access(const char *path, int flags); }
d108 1
a108 1
38	STD		{ int linux_sys_rename(const char *from, \
d110 2
a111 2
39	STD		{ int linux_sys_mkdir(const char *path, int mode); }
40	STD		{ int linux_sys_rmdir(const char *path); }
d170 1
a170 2
83	STD		{ int linux_sys_symlink(const char *path, \
			    const char *to); }
d173 1
a173 1
85	STD		{ int linux_sys_readlink(const char *name, char *buf, \
d187 1
a187 1
92	STD		{ int linux_sys_truncate(const char *path, \
d351 1
a351 1
198	STD		{ int linux_sys_lchown(const char *path, uid_t uid, \
d371 1
a371 1
212	STD		{ int linux_sys_chown(const char *path, uid_t uid, \
@


1.84.8.1
log
@sync with HEAD
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.84 2007/06/13 20:57:33 christos Exp $
d68 2
a69 1
9	NOARGS		{ int sys_link(const char *path, const char *link); }
d71 1
a71 1
11	NOARGS		{ int sys_execve(const char *path, char **argp, \
d73 1
a73 1
12	NOARGS		{ int sys_chdir(const char *path); }
d77 1
a77 1
15	NOARGS		{ int sys_chmod(const char *path, int mode); }
d104 1
a104 1
33	NOARGS		{ int sys_access(const char *path, int flags); }
d109 1
a109 1
38	NOARGS		{ int sys___posix_rename(const char *from, \
d111 2
a112 2
39	NOARGS		{ int sys_mkdir(const char *path, int mode); }
40	NOARGS		{ int sys_rmdir(const char *path); }
d171 2
a172 1
83	NOARGS		{ int sys_symlink(const char *path, const char *to); }
d175 1
a175 1
85	NOARGS		{ int sys_readlink(const char *name, char *buf, \
d189 1
a189 1
92	NOARGS		{ int compat_43_sys_truncate(const char *path, \
d246 1
a246 1
132	NOARGS		{ pid_t sys_getpgid(pid_t pid); }
d253 1
a253 1
139	NOARGS		linux_setfsgid16 { int linux_sys_setfsgid(gid_t gid); }
a339 1
#define linux_sys_mmap2_args linux_sys_mmap_args
d353 1
a353 1
198	NOARGS		{ int sys___posix_lchown(const char *path, uid_t uid, \
d373 1
a373 1
212	NOARGS		{ int sys___posix_chown(const char *path, uid_t uid, \
d378 1
a378 1
216	STD		{ int linux_sys_setfsgid(gid_t gid); }
@


1.84.8.2
log
@sync with HEAD
@
text
@d1 1
a1 1
	syscalls.master,v 1.84.8.1 2008/01/09 01:51:01 matt Exp
d78 1
a78 1
			    linux_uid16_t uid, linux_gid16_t gid); }
d150 2
a151 4
70	STD		{ int linux_sys_setreuid16(linux_uid16_t ruid, \
			    linux_uid16_t euid); }
71	STD		{ int linux_sys_setregid16(linux_gid16_t rgid, \
			    linux_gid16_t egid); }
d166 1
a166 2
80	STD		{ int linux_sys_getgroups16(int gidsetsize, \
			    linux_gid16_t *gidset); }
d168 1
a168 1
			    linux_gid16_t *gidset); }
d191 1
a191 2
95	STD		{ int linux_sys_fchown16(int fd, linux_uid16_t uid, \
			    linux_gid16_t gid); }
d287 4
a290 4
164	STD		{ int linux_sys_setresuid16(linux_uid16_t ruid, \
			    linux_uid16_t euid, linux_uid16_t suid); }
165	STD		{ int linux_sys_getresuid16(linux_uid16_t *ruid, \
			    linux_uid16_t *euid, linux_uid16_t *suid); }
d296 4
a299 4
170	STD		{ int linux_sys_setresgid16(linux_gid16_t rgid, \
			    linux_gid16_t egid, linux_gid16_t sgid); }
171	STD		{ int linux_sys_getresgid16(linux_gid16_t *rgid, \
			    linux_gid16_t *egid, linux_gid16_t *sgid); }
d324 2
a325 2
182	STD		{ int linux_sys_chown16(const char *path, \
			    linux_uid16_t uid, linux_gid16_t gid); }
@


1.84.6.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.85 2007/11/16 12:51:55 njoly Exp $
d68 2
a69 1
9	NOARGS		{ int sys_link(const char *path, const char *link); }
d71 1
a71 1
11	NOARGS		{ int sys_execve(const char *path, char **argp, \
d73 1
a73 1
12	NOARGS		{ int sys_chdir(const char *path); }
d77 1
a77 1
15	NOARGS		{ int sys_chmod(const char *path, int mode); }
d104 1
a104 1
33	NOARGS		{ int sys_access(const char *path, int flags); }
d109 1
a109 1
38	NOARGS		{ int sys___posix_rename(const char *from, \
d111 2
a112 2
39	NOARGS		{ int sys_mkdir(const char *path, int mode); }
40	NOARGS		{ int sys_rmdir(const char *path); }
d171 2
a172 1
83	NOARGS		{ int sys_symlink(const char *path, const char *to); }
d175 1
a175 1
85	NOARGS		{ int sys_readlink(const char *name, char *buf, \
d189 1
a189 1
92	NOARGS		{ int compat_43_sys_truncate(const char *path, \
d353 1
a353 1
198	NOARGS		{ int sys___posix_lchown(const char *path, uid_t uid, \
d373 1
a373 1
212	NOARGS		{ int sys___posix_chown(const char *path, uid_t uid, \
@


1.84.14.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.85 2007/11/16 12:51:55 njoly Exp $
d68 2
a69 1
9	NOARGS		{ int sys_link(const char *path, const char *link); }
d71 1
a71 1
11	NOARGS		{ int sys_execve(const char *path, char **argp, \
d73 1
a73 1
12	NOARGS		{ int sys_chdir(const char *path); }
d77 1
a77 1
15	NOARGS		{ int sys_chmod(const char *path, int mode); }
d104 1
a104 1
33	NOARGS		{ int sys_access(const char *path, int flags); }
d109 1
a109 1
38	NOARGS		{ int sys___posix_rename(const char *from, \
d111 2
a112 2
39	NOARGS		{ int sys_mkdir(const char *path, int mode); }
40	NOARGS		{ int sys_rmdir(const char *path); }
d171 2
a172 1
83	NOARGS		{ int sys_symlink(const char *path, const char *to); }
d175 1
a175 1
85	NOARGS		{ int sys_readlink(const char *name, char *buf, \
d189 1
a189 1
92	NOARGS		{ int compat_43_sys_truncate(const char *path, \
d353 1
a353 1
198	NOARGS		{ int sys___posix_lchown(const char *path, uid_t uid, \
d373 1
a373 1
212	NOARGS		{ int sys___posix_chown(const char *path, uid_t uid, \
@


1.84.14.2
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.88 2007/12/24 14:17:18 njoly Exp $
d244 1
a244 1
132	NOARGS		{ pid_t sys_getpgid(pid_t pid); }
d251 1
a251 1
139	NOARGS		linux_setfsgid16 { int linux_sys_setfsgid(gid_t gid); }
a337 1
#define linux_sys_mmap2_args linux_sys_mmap_args
d376 1
a376 1
216	STD		{ int linux_sys_setfsgid(gid_t gid); }
@


1.84.14.3
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.89 2008/01/15 22:38:34 njoly Exp $
d78 1
a78 1
			    linux_uid16_t uid, linux_gid16_t gid); }
d150 2
a151 4
70	STD		{ int linux_sys_setreuid16(linux_uid16_t ruid, \
			    linux_uid16_t euid); }
71	STD		{ int linux_sys_setregid16(linux_gid16_t rgid, \
			    linux_gid16_t egid); }
d166 1
a166 2
80	STD		{ int linux_sys_getgroups16(int gidsetsize, \
			    linux_gid16_t *gidset); }
d168 1
a168 1
			    linux_gid16_t *gidset); }
d191 1
a191 2
95	STD		{ int linux_sys_fchown16(int fd, linux_uid16_t uid, \
			    linux_gid16_t gid); }
d287 4
a290 4
164	STD		{ int linux_sys_setresuid16(linux_uid16_t ruid, \
			    linux_uid16_t euid, linux_uid16_t suid); }
165	STD		{ int linux_sys_getresuid16(linux_uid16_t *ruid, \
			    linux_uid16_t *euid, linux_uid16_t *suid); }
d296 4
a299 4
170	STD		{ int linux_sys_setresgid16(linux_gid16_t rgid, \
			    linux_gid16_t egid, linux_gid16_t sgid); }
171	STD		{ int linux_sys_getresgid16(linux_gid16_t *rgid, \
			    linux_gid16_t *egid, linux_gid16_t *sgid); }
d324 2
a325 2
182	STD		{ int linux_sys_chown16(const char *path, \
			    linux_uid16_t uid, linux_gid16_t gid); }
@


1.84.12.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
	$NetBSD$
d68 2
a69 1
9	NOARGS		{ int sys_link(const char *path, const char *link); }
d71 1
a71 1
11	NOARGS		{ int sys_execve(const char *path, char **argp, \
d73 1
a73 1
12	NOARGS		{ int sys_chdir(const char *path); }
d77 1
a77 1
15	NOARGS		{ int sys_chmod(const char *path, int mode); }
d104 1
a104 1
33	NOARGS		{ int sys_access(const char *path, int flags); }
d109 1
a109 1
38	NOARGS		{ int sys___posix_rename(const char *from, \
d111 2
a112 2
39	NOARGS		{ int sys_mkdir(const char *path, int mode); }
40	NOARGS		{ int sys_rmdir(const char *path); }
d171 2
a172 1
83	NOARGS		{ int sys_symlink(const char *path, const char *to); }
d175 1
a175 1
85	NOARGS		{ int sys_readlink(const char *name, char *buf, \
d189 1
a189 1
92	NOARGS		{ int compat_43_sys_truncate(const char *path, \
d353 1
a353 1
198	NOARGS		{ int sys___posix_lchown(const char *path, uid_t uid, \
d373 1
a373 1
212	NOARGS		{ int sys___posix_chown(const char *path, uid_t uid, \
@


1.83
log
@Add futex.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.82 2007/03/04 06:01:21 christos Exp $
d85 3
d89 1
d139 3
d143 1
d228 2
a229 1
120	STD		{ int linux_sys_clone(int flags, void *stack); }
d387 3
d391 1
d415 3
d419 1
d424 9
a432 2
241	UNIMPL		sched_setaffinity
242	UNIMPL		sched_getaffinity
d448 3
d452 1
d471 3
d475 1
@


1.82
log
@Kill caddr_t; there will be some MI fallout, but it will be fixed shortly.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.81 2007/02/09 21:55:18 ad Exp $
d404 3
a406 1
240	UNIMPL		futex
@


1.82.2.1
log
@Sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.82 2007/03/04 06:01:21 christos Exp $
a84 3
#ifdef	LINUX_NPTL
20	STD		{ pid_t linux_sys_getpid(void); }
#else
a85 1
#endif
a134 3
#ifdef LINUX_NPTL
64	STD		{ pid_t linux_sys_getppid(void); }
#else
a135 1
#endif
d220 1
a220 2
120	STD		{ int linux_sys_clone(int flags, void *stack, \
			    void *parent_tidptr, void *child_tidptr); }
a377 3
#ifdef LINUX_NPTL
224	STD		{ pid_t linux_sys_gettid(void); }
#else
a378 1
#endif
a401 3
#ifdef LINUX_NPTL
238	STD		{ int linux_sys_tkill(int tid, int sig); }
#else
a402 1
#endif
d404 3
a406 12
240	STD		{ int linux_sys_futex(int *uaddr, int op, int val, \
			    const struct timespec *timeout, int *uaddr2, \
			    int val3); }
#ifdef LINUX_NPTL
241	STD		{ int linux_sys_sched_setaffinity(pid_t pid, \
			    unsigned int len, unsigned long *mask); }
242	STD		{ int linux_sys_sched_getaffinity(pid_t pid, \
			    unsigned int len, unsigned long *mask); }
#else
241	UNIMPL		setaffinity
242	UNIMPL		getaffinity
#endif
a421 3
#ifdef LINUX_NPTL
258	STD		{ int linux_sys_set_tid_address(int *tid); }
#else
a422 1
#endif
a440 3
#ifdef LINUX_NPTL
270	STD		{ int linux_sys_tgkill(int tgid, int tid, int sig); }
#else
a441 1
#endif
@


1.82.4.1
log
@Sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.84 2007/06/13 20:57:33 christos Exp $
a84 3
#ifdef	LINUX_NPTL
20	STD		{ pid_t linux_sys_getpid(void); }
#else
a85 1
#endif
a134 3
#ifdef LINUX_NPTL
64	STD		{ pid_t linux_sys_getppid(void); }
#else
a135 1
#endif
d220 1
a220 2
120	STD		{ int linux_sys_clone(int flags, void *stack, \
			    void *parent_tidptr, void *child_tidptr); }
a377 3
#ifdef LINUX_NPTL
224	STD		{ pid_t linux_sys_gettid(void); }
#else
a378 1
#endif
a401 3
#ifdef LINUX_NPTL
238	STD		{ int linux_sys_tkill(int tid, int sig); }
#else
a402 1
#endif
d404 3
a406 12
240	STD		{ int linux_sys_futex(int *uaddr, int op, int val, \
			    const struct timespec *timeout, int *uaddr2, \
			    int val3); }
#ifdef LINUX_NPTL
241	STD		{ int linux_sys_sched_setaffinity(pid_t pid, \
			    unsigned int len, unsigned long *mask); }
242	STD		{ int linux_sys_sched_getaffinity(pid_t pid, \
			    unsigned int len, unsigned long *mask); }
#else
241	UNIMPL		setaffinity
242	UNIMPL		getaffinity
#endif
a421 3
#ifdef LINUX_NPTL
258	STD		{ int linux_sys_set_tid_address(int *tid); }
#else
a422 1
#endif
a440 3
#ifdef LINUX_NPTL
270	STD		{ int linux_sys_tgkill(int tgid, int tid, int sig); }
#else
a441 1
#endif
@


1.81
log
@Merge newlock2 to head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.80 2006/09/01 20:58:18 matt Exp $
d124 1
a124 1
			    caddr_t data); }
d145 1
a145 1
72	STD		{ int linux_sys_sigsuspend(caddr_t restart, \
d177 1
a177 1
89	STD		{ int linux_sys_readdir(int fd, caddr_t dent, \
d180 1
a180 1
91	NOARGS		{ int sys_munmap(caddr_t addr, int len); }
d188 1
a188 1
98	NOARGS		{ int sys_profil(caddr_t samples, u_int size, \
d217 1
a217 1
			    caddr_t ptr); }
d246 1
a246 1
			    u_int32_t olow, caddr_t res, int whence); }
d253 1
a253 1
144	STD		{ int linux_sys_msync(caddr_t addr, int len, int fl); }
d261 2
a262 2
150	NOARGS		{ int sys_mlock(caddr_t addr, size_t len); }
151	NOARGS		{ int sys_munlock(caddr_t addr, size_t len); }
@


1.81.2.1
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.81 2007/02/09 21:55:18 ad Exp $
d124 1
a124 1
			    void *data); }
d145 1
a145 1
72	STD		{ int linux_sys_sigsuspend(void *restart, \
d177 1
a177 1
89	STD		{ int linux_sys_readdir(int fd, void *dent, \
d180 1
a180 1
91	NOARGS		{ int sys_munmap(void *addr, int len); }
d188 1
a188 1
98	NOARGS		{ int sys_profil(void *samples, u_int size, \
d217 1
a217 1
			    void *ptr); }
d246 1
a246 1
			    u_int32_t olow, void *res, int whence); }
d253 1
a253 1
144	STD		{ int linux_sys_msync(void *addr, int len, int fl); }
d261 2
a262 2
150	NOARGS		{ int sys_mlock(void *addr, size_t len); }
151	NOARGS		{ int sys_munlock(void *addr, size_t len); }
@


1.80
log
@Don't conditionalize *sys_ptrace.  The lack of sys_ptrace will be dealt
with differently.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.79 2006/08/30 11:14:39 matt Exp $
a44 1
#include <sys/sa.h>
@


1.80.2.1
log
@Remove support for SA. Ok core@@.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.80 2006/09/01 20:58:18 matt Exp $
d45 1
@


1.79
log
@Update to deal with options PTRACE
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.78 2006/06/10 21:15:33 christos Exp $
a37 1
#include "opt_ptrace.h"
a91 1
#ifdef PTRACE
a93 3
#else
26	EXCL		ptrace
#endif
@


1.78
log
@linux getpriority is off-by-20 so use our own function.
From PR/33671: Nicolas Joly
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.77 2005/12/11 12:20:14 christos Exp $
d38 1
d93 1
d96 3
@


1.77
log
@merge ktrace-lwp.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.65.2.5 2005/11/10 14:00:59 skrll Exp $
d187 1
a187 1
96	NOARGS		{ int sys_getpriority(int which, int who); }
@


1.77.4.1
log
@sync with head
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.80 2006/09/01 20:58:18 matt Exp $
d187 1
a187 1
96	STD		{ int linux_sys_getpriority(int which, int who); }
@


1.77.8.1
log
@sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.77 2005/12/11 12:20:14 christos Exp $
d187 1
a187 1
96	STD		{ int linux_sys_getpriority(int which, int who); }
@


1.77.14.1
log
@Sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.78 2006/06/10 21:15:33 christos Exp $
d187 1
a187 1
96	STD		{ int linux_sys_getpriority(int which, int who); }
@


1.76
log
@Back out sched_{set|get}affinity addition because it breaks the
build again on i386 now it is fixed for other archs (Tom's fix and
mine got in colision)
@
text
@d1 1
a1 1
	$NetBSD$
@


1.75
log
@mirror manu's amd64 changes to implement linux sched_{seg,get}affinity;
the kernel and linux lkm now compile again.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.74 2005/10/18 18:37:44 joerg Exp $
d406 2
a407 4
241	STD		{ int linux_sys_sched_setaffinity(pid_t pid, \
			    unsigned int len, unsigned long *mask); }
242	STD		{ int linux_sys_sched_getaffinity(pid_t pid, \
			    unsigned int len, unsigned long *mask); }
@


1.74
log
@sys_uselib is needed by COMPAT_LINUX for EXEC_AOUT. Since it doesn't get
build when EXEC_AOUT is not defined, the syscalls.master entry has to be
conditionalized. Alpha did so already, so let the other archs catch up
with it.

Go-on: christos
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.73 2005/05/16 21:17:11 fvdl Exp $
d406 4
a409 2
241	UNIMPL		sched_setaffinity
242	UNIMPL		sched_getaffinity
@


1.73
log
@Add clock_* POSIX functions.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.72 2005/05/16 16:02:20 fvdl Exp $
d170 1
d172 3
@


1.73.2.1
log
@sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.73 2005/05/16 21:17:11 fvdl Exp $
a169 1
#ifdef EXEC_AOUT
a170 3
#else
86	UNIMPL		sys_uselib
#endif
d183 1
a183 1
96	STD		{ int linux_sys_getpriority(int which, int who); }
@


1.73.2.2
log
@sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.73.2.1 2006/06/21 14:59:01 yamt Exp $
d45 1
@


1.73.2.3
log
@sync with head.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.73.2.2 2007/02/26 09:09:15 yamt Exp $
a84 3
#ifdef	LINUX_NPTL
20	STD		{ pid_t linux_sys_getpid(void); }
#else
a85 1
#endif
d124 1
a124 1
			    void *data); }
a134 3
#ifdef LINUX_NPTL
64	STD		{ pid_t linux_sys_getppid(void); }
#else
a135 1
#endif
d145 1
a145 1
72	STD		{ int linux_sys_sigsuspend(void *restart, \
d177 1
a177 1
89	STD		{ int linux_sys_readdir(int fd, void *dent, \
d180 1
a180 1
91	NOARGS		{ int sys_munmap(void *addr, int len); }
d188 1
a188 1
98	NOARGS		{ int sys_profil(void *samples, u_int size, \
d217 1
a217 1
			    void *ptr); }
d220 1
a220 2
120	STD		{ int linux_sys_clone(int flags, void *stack, \
			    void *parent_tidptr, void *child_tidptr); }
d246 1
a246 1
			    u_int32_t olow, void *res, int whence); }
d253 1
a253 1
144	STD		{ int linux_sys_msync(void *addr, int len, int fl); }
d261 2
a262 2
150	NOARGS		{ int sys_mlock(void *addr, size_t len); }
151	NOARGS		{ int sys_munlock(void *addr, size_t len); }
a377 3
#ifdef LINUX_NPTL
224	STD		{ pid_t linux_sys_gettid(void); }
#else
a378 1
#endif
a401 3
#ifdef LINUX_NPTL
238	STD		{ int linux_sys_tkill(int tid, int sig); }
#else
a402 1
#endif
d404 3
a406 12
240	STD		{ int linux_sys_futex(int *uaddr, int op, int val, \
			    const struct timespec *timeout, int *uaddr2, \
			    int val3); }
#ifdef LINUX_NPTL
241	STD		{ int linux_sys_sched_setaffinity(pid_t pid, \
			    unsigned int len, unsigned long *mask); }
242	STD		{ int linux_sys_sched_getaffinity(pid_t pid, \
			    unsigned int len, unsigned long *mask); }
#else
241	UNIMPL		setaffinity
242	UNIMPL		getaffinity
#endif
a421 3
#ifdef LINUX_NPTL
258	STD		{ int linux_sys_set_tid_address(int *tid); }
#else
a422 1
#endif
a440 3
#ifdef LINUX_NPTL
270	STD		{ int linux_sys_tgkill(int tgid, int tid, int sig); }
#else
a441 1
#endif
@


1.73.2.4
log
@sync with head
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.73.2.3 2007/09/03 14:32:17 yamt Exp $
d68 2
a69 1
9	NOARGS		{ int sys_link(const char *path, const char *link); }
d71 1
a71 1
11	NOARGS		{ int sys_execve(const char *path, char **argp, \
d73 1
a73 1
12	NOARGS		{ int sys_chdir(const char *path); }
d77 1
a77 1
15	NOARGS		{ int sys_chmod(const char *path, int mode); }
d104 1
a104 1
33	NOARGS		{ int sys_access(const char *path, int flags); }
d109 1
a109 1
38	NOARGS		{ int sys___posix_rename(const char *from, \
d111 2
a112 2
39	NOARGS		{ int sys_mkdir(const char *path, int mode); }
40	NOARGS		{ int sys_rmdir(const char *path); }
d171 2
a172 1
83	NOARGS		{ int sys_symlink(const char *path, const char *to); }
d175 1
a175 1
85	NOARGS		{ int sys_readlink(const char *name, char *buf, \
d189 1
a189 1
92	NOARGS		{ int compat_43_sys_truncate(const char *path, \
d353 1
a353 1
198	NOARGS		{ int sys___posix_lchown(const char *path, uid_t uid, \
d373 1
a373 1
212	NOARGS		{ int sys___posix_chown(const char *path, uid_t uid, \
@


1.73.2.5
log
@sync with head
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.73.2.4 2007/12/07 17:27:56 yamt Exp $
d78 1
a78 1
			    linux_uid16_t uid, linux_gid16_t gid); }
d150 2
a151 4
70	STD		{ int linux_sys_setreuid16(linux_uid16_t ruid, \
			    linux_uid16_t euid); }
71	STD		{ int linux_sys_setregid16(linux_gid16_t rgid, \
			    linux_gid16_t egid); }
d166 1
a166 2
80	STD		{ int linux_sys_getgroups16(int gidsetsize, \
			    linux_gid16_t *gidset); }
d168 1
a168 1
			    linux_gid16_t *gidset); }
d191 1
a191 2
95	STD		{ int linux_sys_fchown16(int fd, linux_uid16_t uid, \
			    linux_gid16_t gid); }
d244 1
a244 1
132	NOARGS		{ pid_t sys_getpgid(pid_t pid); }
d251 1
a251 1
139	NOARGS		linux_setfsgid16 { int linux_sys_setfsgid(gid_t gid); }
d287 4
a290 4
164	STD		{ int linux_sys_setresuid16(linux_uid16_t ruid, \
			    linux_uid16_t euid, linux_uid16_t suid); }
165	STD		{ int linux_sys_getresuid16(linux_uid16_t *ruid, \
			    linux_uid16_t *euid, linux_uid16_t *suid); }
d296 4
a299 4
170	STD		{ int linux_sys_setresgid16(linux_gid16_t rgid, \
			    linux_gid16_t egid, linux_gid16_t sgid); }
171	STD		{ int linux_sys_getresgid16(linux_gid16_t *rgid, \
			    linux_gid16_t *egid, linux_gid16_t *sgid); }
d324 2
a325 2
182	STD		{ int linux_sys_chown16(const char *path, \
			    linux_uid16_t uid, linux_gid16_t gid); }
a337 1
#define linux_sys_mmap2_args linux_sys_mmap_args
d376 1
a376 1
216	STD		{ int linux_sys_setfsgid(gid_t gid); }
@


1.72
log
@Add *xattr functions (they all return EOPNOTSUPP).
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.71 2004/09/20 18:41:07 jdolecek Exp $
d425 9
a433 4
264	UNIMPL		clock_settime
265	UNIMPL		clock_gettime
266	UNIMPL		clock_getres
267	UNIMPL		clock_nanosleep
@


1.71
log
@implement support for Linux statfs64() syscall - 64bit variant of statfs()
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.70 2004/09/08 19:45:22 jdolecek Exp $
d377 22
a398 12
226	UNIMPL		setxattr
227	UNIMPL		lsetxattr
228	UNIMPL		fsetxattr
229	UNIMPL		getxattr
230	UNIMPL		lgetxattr
231	UNIMPL		fgetxattr
232	UNIMPL		listxattr
233	UNIMPL		llistxattr
234	UNIMPL		flistxattr
235	UNIMPL		removexattr
236	UNIMPL		lremovexattr
237	UNIMPL		fremovexattr
@


1.70
log
@implement basic exit_group(2), which just terminates calling thread;
apparently not many apps use thread groups yet, at least not with default
SuSE 9.1 libraries, so this is enough for now
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.69 2004/08/01 15:34:22 jdolecek Exp $
d419 4
a422 2
268	UNIMPL		statfs64
269	UNIMPL		fstatfs64
@


1.69
log
@sync the syscall lists with Linux kernel 2.6.7
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.68 2004/08/01 10:32:40 jdolecek Exp $
d403 1
a403 1
252	UNIMPL		exit_group
@


1.68
log
@connect madvise(2) and mincore(2) - apparently the newer Linux libs
don't stub it anymore, so allow the application to take advantage
of them

the Linux calls appear to be compatible in the flag values and semantics,
so a wrapper is not necessary
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.67 2003/08/10 20:16:22 jdolecek Exp $
d373 62
@


1.67
log
@add Linux compat arg wrapper for ftruncate64(), and change linux compat
truncate64() wrapper to translate args structure
NetBSD truncate() and ftrucate() have hidden 'pad' argument, so we have
to do the argument translation

Problem found and patch supplied in PR kern/22360 by Ales Krenek

This is the last of syscalls with hidden 'pad' arg we didn't have
wrapper for; all the others (lseek, mmap, pwrite, pread) already had
wrapper before.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.66 2003/07/03 21:24:28 christos Exp $
d368 2
a369 2
218	UNIMPL		mincore
219	UNIMPL		madvise
@


1.66
log
@Implement linux_rt_sigreturn for real. Add a hack for more plausible siginfo.
The java segv handler still segv's again inside the signal handler, but our
sample test program now works [gets the proper ucontext].
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.65 2003/06/23 21:25:56 christos Exp $
d333 1
a333 1
194	NOARGS		linux_ftruncate64 { int sys_ftruncate(int fd, \
@


1.65
log
@PR/21937: Todd Vierling: Proper support for mmap2
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.64 2003/01/18 08:02:48 thorpej Exp $
d292 1
a292 1
			    struct linux_rt_sigframe *sfp); }
@


1.65.2.1
log
@Sync with HEAD
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.67 2003/08/10 20:16:22 jdolecek Exp $
d292 1
a292 1
			    struct linux_ucontext *ucp); }
d333 1
a333 1
194	STD		{ int linux_sys_ftruncate64(unsigned int fd, \
d368 2
a369 2
218	NOARGS		{ int sys_mincore(void *addr, size_t len, char *vec); }
219	NOARGS		{ int sys_madvise(void *addr, size_t len, int behav); }
a372 62
222	UNIMPL		/* unused */
223	UNIMPL		/* unused */
224	UNIMPL		gettid
225	UNIMPL		readahead
226	UNIMPL		setxattr
227	UNIMPL		lsetxattr
228	UNIMPL		fsetxattr
229	UNIMPL		getxattr
230	UNIMPL		lgetxattr
231	UNIMPL		fgetxattr
232	UNIMPL		listxattr
233	UNIMPL		llistxattr
234	UNIMPL		flistxattr
235	UNIMPL		removexattr
236	UNIMPL		lremovexattr
237	UNIMPL		fremovexattr
238	UNIMPL		tkill
239	UNIMPL		sendfile64
240	UNIMPL		futex
241	UNIMPL		sched_setaffinity
242	UNIMPL		sched_getaffinity
243	UNIMPL		set_thread_area
244	UNIMPL		get_thread_area
245	UNIMPL		io_setup
246	UNIMPL		io_destroy
247	UNIMPL		io_getevents
248	UNIMPL		io_submit
249	UNIMPL		io_cancel
250	UNIMPL		fadvise64
251	UNIMPL		/* unused */
252	UNIMPL		exit_group
253	UNIMPL		lookup_dcookie
254	UNIMPL		epoll_create
255	UNIMPL		epoll_ctl
256	UNIMPL		epoll_wait
257	UNIMPL		remap_file_pages
258	UNIMPL		set_tid_address
259	UNIMPL		timer_create
260	UNIMPL		timer_settime
261	UNIMPL		timer_gettime
262	UNIMPL		timer_getoverrun
263	UNIMPL		timer_delete
264	UNIMPL		clock_settime
265	UNIMPL		clock_gettime
266	UNIMPL		clock_getres
267	UNIMPL		clock_nanosleep
268	UNIMPL		statfs64
269	UNIMPL		fstatfs64
270	UNIMPL		tgkill
271	UNIMPL		utimes
272	UNIMPL		fadvise64_64
273	UNIMPL		vserver
274	UNIMPL		mbind
275	UNIMPL		get_mempolicy
276	UNIMPL		set_mempolicy
277	UNIMPL		mq_open
278	UNIMPL		mq_unlink
279	UNIMPL		mq_timedsend
280	UNIMPL		mq_timedreceive
281	UNIMPL		mq_notify
282	UNIMPL		mq_getsetattr
283	UNIMPL		sys_kexec_load
@


1.65.2.2
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.70 2004/09/08 19:45:22 jdolecek Exp $
d403 1
a403 1
252	STD		{ int linux_sys_exit_group(int error_code); }
@


1.65.2.3
log
@Fix the sync with head I botched.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.65.2.1 2004/08/03 10:43:54 skrll Exp $
@


1.65.2.4
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.65.2.3 2004/09/21 13:25:26 skrll Exp $
d419 2
a420 4
268	STD		{ int linux_sys_statfs64(const char *path, \
			    size_t sz, struct linux_statfs64 *sp); }
269	STD		{ int linux_sys_fstatfs64(int fd, \
			    size_t sz, struct linux_statfs64 *sp); }
@


1.65.2.5
log
@Sync with HEAD. Here we go again...
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.65.2.4 2004/09/24 10:53:18 skrll Exp $
a169 1
#ifdef EXEC_AOUT
a170 3
#else
86	UNIMPL		sys_uselib
#endif
d377 12
a388 22

226	STD		{ int linux_sys_setxattr(char *path, char *name, \
			    void *value, size_t size, int flags); }
227	STD		{ int linux_sys_lsetxattr(char *path, char *name, \
			    void *value, size_t size, int flags); }
228	STD		{ int linux_sys_fsetxattr(int fd, char *name, \
			    void *value, size_t size, int flags); }
229	STD		{ ssize_t linux_sys_getxattr(char *path, char *name, \
			    void *value, size_t size); }
230	STD		{ ssize_t linux_sys_lgetxattr(char *path, char *name, \
			    void *value, size_t size); }
231	STD		{ ssize_t linux_sys_fgetxattr(int fd, char *name, \
			    void *value, size_t size); }
232	STD		{ ssize_t linux_sys_listxattr(char *path, char *list, \
			    size_t size); }
233	STD		{ ssize_t linux_sys_llistxattr(char *path, char *list, \
			    size_t size); }
234	STD		{ ssize_t linux_sys_flistxattr(int fd, char *list, \
			    size_t size); }
235	STD		{ int linux_sys_removexattr(char *path, char *name); }
236	STD		{ int linux_sys_lremovexattr(char *path, char *name); }
237	STD		{ int linux_sys_fremovexattr(int fd, char *name); }
d415 4
a418 9
264	STD		{ int linux_sys_clock_settime(clockid_t which, \
			    struct linux_timespec *tp); }
265	STD		{ int linux_sys_clock_gettime(clockid_t which, \
			    struct linux_timespec *tp); }
266	STD		{ int linux_sys_clock_getres(clockid_t which, \
			    struct linux_timespec *tp); }
267	STD		{ int linux_sys_clock_nanosleep(clockid_t which, \
			    int flags, struct linux_timespec *rqtp, \
			    struct linux_timespec *rmtp); }
@


1.64
log
@Merge the nathanw_sa branch.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.63 2002/04/10 18:18:27 christos Exp $
d328 1
a328 1
192	NOARGS		{ linux_off_t linux_sys_mmap(unsigned long addr, \
@


1.63
log
@add getdents64
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.62 2002/03/22 15:10:38 christos Exp $
d45 1
@


1.63.4.1
log
@Regen files (requested by tv in ticket #1427)

Proper support for mmap2
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.63 2002/04/10 18:18:27 christos Exp $
d327 1
a327 1
192	NOARGS		{ linux_off_t linux_sys_mmap2(unsigned long addr, \
@


1.63.4.2
log
@Pull up revision 1.67 via patch (requested by wennmach in ticket #1686):
add Linux compat arg wrapper for ftruncate64(), and change linux compat
truncate64() wrapper to translate args structure
NetBSD truncate() and ftrucate() have hidden 'pad' argument, so we have
to do the argument translation
Problem found and patch supplied in PR kern/22360 by Ales Krenek
This is the last of syscalls with hidden 'pad' arg we didn't have
wrapper for; all the others (lseek, mmap, pwrite, pread) already had
wrapper before.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.63.4.1 2003/10/22 04:03:00 jmc Exp $
d332 1
a332 1
194	STD		{ int linux_sys_ftruncate64(int fd, \
@


1.63.4.3
log
@Pullup patch (requested by skrll in ticket #1708)

Bring netbsd-1-6 inline with -current sources after the mistakes in ticket #1686
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.63.4.2 2004/05/11 14:30:38 tron Exp $
d332 1
a332 1
194	STD		{ int linux_sys_ftruncate64(unsigned int fd, \
@


1.62
log
@1. make sure lines don't wrap
2. fix mmap and call it mmap like other ports do, not mmap2
3. implement fcntl64
4. implement mprotect because linux treats args slightly differently.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.61 2002/02/15 16:48:00 christos Exp $
d369 2
a370 1
220	UNIMPL		getdents64
@


1.61
log
@- add a real linux_sys___sysctl because the mib numbers are different.
  implement only the kernel version getting entries.
- make the signal conversion functions consistent; dest is arg 1.
- make linux_fakedev deal with block and char devices differently.
- add linux_sys_ugetrlimit, and flesh out the regular get/setrlimit so
  that they work properly.
- add linux_mmap2 [untested].
- bump kernel to 2.4.18, and make the date be valentine's day :-)
- linux_sys_*stat64 family was totally busted. Fix it.

tested only on i386.

Status:
	gdb, telnet, work
	jdk-1.4.0 extractor works, jdk still coredumps.

christos
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.60 2001/09/30 20:44:50 manu Exp $
d48 1
d68 2
a69 1
9	STD		{ int linux_sys_link(const char *path, const char *link); }
d129 2
a130 1
59	STD		{ int linux_sys_oldolduname(struct linux_oldold_utsname *up); }
d160 2
a161 1
81	STD		{ int linux_sys_setgroups16(int gidsetsize, linux_gid_t *gidset); }
d223 2
a224 1
125	NOARGS		{ int sys_mprotect(caddr_t addr, int len, int prot); }
d327 3
a329 2
192	STD		{ off_t linux_sys_mmap2(void *addr, size_t len, \
			    int prot, int flags, int fd, off_t offset); }
d332 2
a333 1
194	NOARGS		linux_ftruncate64 { int sys_ftruncate(int fd, off_t length); }
d370 1
a370 1
221	UNIMPL		fcntl64
@


1.60
log
@Fixes my last commit: only mips really need fcntl64 to work now. i386 and
powerpc could use it later if needed. m68k and alpha should never need it.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.59 2001/09/30 18:57:43 martin Exp $
d147 1
a147 1
75	NOARGS		{ int compat_43_sys_setrlimit(u_int which, \
d149 1
a149 1
76	NOARGS		{ int compat_43_sys_getrlimit(u_int which, \
d320 4
a323 2
191	UNIMPL		getrlimit
192	UNIMPL		mmap2
d325 1
a325 1
				off_t length); }
d328 1
a328 1
				struct linux_stat64 *sp); }
d330 1
a330 1
				struct linux_stat64 *sp); }
d332 3
a334 3
				struct linux_stat64 *sp); }
198	STD		 { int linux_sys_lchown(const char *path, uid_t uid, \
				gid_t gid); }
d344 1
a344 1
				gid_t gid); }
@


1.59
log
@Make i386 kernels compile again.
fcntl64 was still marked UNIMPL, but the implementation existed, causing
a missing prototype warning.
XXX I have no clue if this is the correct fix - someone able to test this
please review it!
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.58 2001/05/30 11:37:26 mrg Exp $
d361 1
a361 1
221	STD		{ int linux_sys_fcntl64(int fd, int cmd, long arg); }
@


1.58
log
@use _KERNEL_OPT.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.57 2001/05/13 20:54:43 manu Exp $
d361 1
a361 1
221	UNIMPL		fcntl64
@


1.58.2.1
log
@Sync kqueue branch with -current.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.60 2001/09/30 20:44:50 manu Exp $
@


1.58.2.2
log
@Catch up with -current.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.58.2.1 2002/01/10 19:51:30 thorpej Exp $
d147 1
a147 1
75	STD		{ int linux_sys_setrlimit(u_int which, \
d149 1
a149 1
76	STD		{ int linux_sys_getrlimit(u_int which, \
d320 2
a321 4
191	STD		{ int linux_sys_ugetrlimit(int which, \
			    struct orlimit *rlp); }
192	STD		{ off_t linux_sys_mmap2(void *addr, size_t len, \
			    int prot, int flags, int fd, off_t offset); }
d323 1
a323 1
			    off_t length); }
d326 1
a326 1
			    struct linux_stat64 *sp); }
d328 1
a328 1
			    struct linux_stat64 *sp); }
d330 3
a332 3
			    struct linux_stat64 *sp); }
198	STD		{ int linux_sys_lchown(const char *path, uid_t uid, \
			    gid_t gid); }
d342 1
a342 1
			    gid_t gid); }
@


1.58.2.3
log
@catch up with -current on kqueue branch
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.58.2.2 2002/03/16 16:00:33 jdolecek Exp $
a47 1
#include <compat/linux/common/linux_mmap.h>
d67 1
a67 2
9	STD		{ int linux_sys_link(const char *path, \
			    const char *link); }
d127 1
a127 2
59	STD		{ int linux_sys_oldolduname( \
			    struct linux_oldold_utsname *up); }
d157 1
a157 2
81	STD		{ int linux_sys_setgroups16(int gidsetsize, \
			    linux_gid_t *gidset); }
d219 1
a219 2
125	STD		{ int linux_sys_mprotect(const void *start, \
			    unsigned long len, int prot); }
d322 2
a323 3
192	NOARGS		{ linux_off_t linux_sys_mmap(unsigned long addr, \
			    size_t len, int prot, int flags, int fd, \
			    linux_off_t offset); }
d326 1
a326 2
194	NOARGS		linux_ftruncate64 { int sys_ftruncate(int fd, \
			    off_t length); }
d362 2
a363 3
220	STD		{ int linux_sys_getdents64(int fd, \
			    struct linux_dirent64 *dent, unsigned int count); }
221	STD		{ int linux_sys_fcntl64(int fd, int cmd, void *arg); }
@


1.58.4.1
log
@Catch up with -current.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.60 2001/09/30 20:44:50 manu Exp $
@


1.57
log
@Improved the accuracy of gettimeofday/settimeofday: Linux stores a srtuct
timezone in the kernel. We now keep track of it for emulated processes.
Tested for powerpc and i386. Untested on m68k, but it should be ok
Alpha has a particular implementation (osf1_sys_gettimeofday), and it has
therefore not been touched.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.56 2001/03/30 17:59:46 jdolecek Exp $
d36 1
a36 1
#if defined(_KERNEL) && !defined(_LKM)
@


1.56
log
@Add new syscalls from Linux 2.4.3 to the lists. Not implemented ATM.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.55 2001/03/30 17:16:34 jdolecek Exp $
d152 1
a152 1
78	NOARGS		{ int sys_gettimeofday(struct timeval *tp, \
d154 1
a154 1
79	NOARGS		{ int sys_settimeofday(struct timeval *tp, \
@


1.55
log
@Implement linux_sys_nosys() and use it instead of sys_nosys() for
unimplemented syscalls. Difference is that linux_sys_nosys() doesn't
post SIGSYS to the process. Linux doesn't do that and thus glibc (and
probably other Linux code) doesn't deal with SIGSYS, even through it
generally contains fallback code for ENOSYS case.

This also addresses port-i386/12503, though the issue was already discussed
earlier.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.54 2001/01/27 07:54:24 thorpej Exp $
d358 4
@


1.54
log
@getpid(2) is MP-safe.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.53 2000/12/29 20:09:39 fvdl Exp $
d56 1
a56 1
0	NOARGS		{ int sys_nosys(void); } syscall
@


1.54.2.1
log
@Catch up with -current.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.56 2001/03/30 17:59:46 jdolecek Exp $
d56 1
a56 1
0	NOARGS		{ int linux_sys_nosys(void); } syscall
a357 4
218	UNIMPL		mincore
219	UNIMPL		madvise
220	UNIMPL		getdents64
221	UNIMPL		fcntl64
@


1.54.2.2
log
@Catch up to -current.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.54.2.1 2001/04/09 01:55:35 nathanw Exp $
d36 1
a36 1
#if defined(_KERNEL_OPT)
d152 1
a152 1
78	STD		{ int linux_sys_gettimeofday(struct timeval *tp, \
d154 1
a154 1
79	STD		{ int linux_sys_settimeofday(struct timeval *tp, \
@


1.54.2.3
log
@Catch up to -current.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.54.2.2 2001/06/21 19:59:34 nathanw Exp $
@


1.54.2.4
log
@Catch up to -current.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.54.2.3 2001/10/08 20:10:49 nathanw Exp $
d147 1
a147 1
75	STD		{ int linux_sys_setrlimit(u_int which, \
d149 1
a149 1
76	STD		{ int linux_sys_getrlimit(u_int which, \
d320 2
a321 4
191	STD		{ int linux_sys_ugetrlimit(int which, \
			    struct orlimit *rlp); }
192	STD		{ off_t linux_sys_mmap2(void *addr, size_t len, \
			    int prot, int flags, int fd, off_t offset); }
d323 1
a323 1
			    off_t length); }
d326 1
a326 1
			    struct linux_stat64 *sp); }
d328 1
a328 1
			    struct linux_stat64 *sp); }
d330 3
a332 3
			    struct linux_stat64 *sp); }
198	STD		{ int linux_sys_lchown(const char *path, uid_t uid, \
			    gid_t gid); }
d342 1
a342 1
			    gid_t gid); }
@


1.54.2.5
log
@Catch up to -current.
(CVS: It's not just a program. It's an adventure!)
@
text
@d1 1
a1 1
	$NetBSD$
a47 1
#include <compat/linux/common/linux_mmap.h>
d67 1
a67 2
9	STD		{ int linux_sys_link(const char *path, \
			    const char *link); }
d127 1
a127 2
59	STD		{ int linux_sys_oldolduname( \
			    struct linux_oldold_utsname *up); }
d157 1
a157 2
81	STD		{ int linux_sys_setgroups16(int gidsetsize, \
			    linux_gid_t *gidset); }
d219 1
a219 2
125	STD		{ int linux_sys_mprotect(const void *start, \
			    unsigned long len, int prot); }
d322 2
a323 3
192	NOARGS		{ linux_off_t linux_sys_mmap(unsigned long addr, \
			    size_t len, int prot, int flags, int fd, \
			    linux_off_t offset); }
d326 1
a326 2
194	NOARGS		linux_ftruncate64 { int sys_ftruncate(int fd, \
			    off_t length); }
d363 1
a363 1
221	STD		{ int linux_sys_fcntl64(int fd, int cmd, void *arg); }
@


1.54.2.6
log
@Catch up to -current.
@
text
@d369 1
a369 2
220	STD		{ int linux_sys_getdents64(int fd, \
			    struct linux_dirent64 *dent, unsigned int count); }
@


1.54.2.7
log
@#include <sys/sa.h> before <sys/syscallargs.h>, to provide sa_upcall_t
now that <sys/param.h> doesn't include <sys/sa.h>.

(Behold the Power of Ed)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.54.2.6 2002/04/17 00:04:59 nathanw Exp $
a44 1
#include <sys/sa.h>
@


1.53
log
@Don't pass through link(2) directly, as we need to do altpath checks.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.52 2000/12/27 22:02:41 fvdl Exp $
d83 1
a83 1
20	NOARGS		{ pid_t sys_getpid(void); }
@


1.52
log
@Add all uid and gid calls, and do the right thing for the older 16 bit
ones.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.51 2000/12/18 14:36:35 fvdl Exp $
d67 1
a67 1
9	NOARGS		{ int sys_link(const char *path, const char *link); }
@


1.51
log
@Update for 32 bit Linux uid/gid calls.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.50 2000/12/13 21:41:46 augustss Exp $
d86 2
a87 2
23	STD		{ int linux_sys_setuid16(uid_t uid); }
24	STD		{ uid_t linux_sys_getuid16(void); }
d112 2
a113 2
46	STD		{ int linux_sys_setgid16(gid_t gid); }
47	STD		{ gid_t linux_sys_getgid16(void); }
d116 2
a117 2
49	NOARGS		{ uid_t linux_sys_geteuid16(void); }
50	NOARGS		{ gid_t linux_sys_getegid16(void); }
d156 2
a157 3
; XXX these work with 32 bit gids -- older Linux calls used 16.
80	NOARGS		{ int sys_getgroups(u_int gidsetsize, gid_t *gidset); }
81	NOARGS		{ int sys_setgroups(u_int gidsetsize, gid_t *gidset); }
d234 2
a235 2
138	STD		{ int linux_sys_setfsuid(uid_t uid); }
139	NOARGS		{ int linux_sys_getfsuid(void); }
d271 1
a271 1
164	STD		{ int linux_sys_setresuid(uid_t ruid, uid_t euid, \
d273 2
a274 2
165	STD		{ int linux_sys_getresuid(uid_t *ruid, uid_t *euid, \
			    uid_t *suid); }
d280 1
a280 1
170	STD		{ int linux_sys_setresgid(gid_t rgid, gid_t egid, \
d282 2
a283 2
171	STD		{ int linux_sys_getresgid(gid_t *rgid, gid_t *egid, \
			    gid_t *sgid); }
d324 1
a324 1
194	NOARGS		ftruncate64 { int sys_ftruncate(int fd, off_t length); }
d331 1
a331 1
198	NOARGS		 { int sys___posix_lchown(const char *path, uid_t uid, \
d339 2
a340 2
205	UNIMPL		getgroups
206	UNIMPL		setgroups
d343 9
a351 5
208	UNIMPL		setresuid
209	UNIMPL		getresuid
210	UNIMPL		setresgid
211	UNIMPL		getresgid
212	NOARGS		{ int sys___posix_chown(const char *path, uid_t uid, \
d355 2
a356 2
215	UNIMPL		setfsuid
216	UNIMPL		setfsgid
@


1.50
log
@Add sysinfo.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.49 2000/12/12 22:23:02 jdolecek Exp $
d76 1
a76 1
16	STD		{ int linux_sys_lchown(const char *path, \
d86 2
a87 2
23	NOARGS		{ int sys_setuid(uid_t uid); }
24	NOARGS		{ uid_t sys_getuid(void); }
d112 2
a113 2
46	NOARGS		{ int sys_setgid(gid_t gid); }
47	NOARGS		{ gid_t sys_getgid(void); }
d116 2
a117 2
49	NOARGS		{ uid_t sys_geteuid(void); }
50	NOARGS		{ gid_t sys_getegid(void); }
d140 2
a141 2
70	STD		{ int linux_sys_setreuid(int ruid, int euid); }
71	STD		{ int linux_sys_setregid(int rgid, int egid); }
d156 1
d178 1
a178 1
95	STD		{ int linux_sys_fchown(int fd, int uid, int gid); }
d309 1
a309 1
182	STD		{ int linux_sys_chown(const char *path, int uid, \
d332 8
a339 7
198	UNIMPL		lchown
199	UNIMPL		getuid
200	UNIMPL		getgid
201	UNIMPL		geteuid
202	UNIMPL		getegid
203	UNIMPL		getreuid
204	UNIMPL		getregid
d342 2
a343 1
207	UNIMPL		fchown
d348 4
a351 3
212	UNIMPL		chown
213	UNIMPL		setuid
214	UNIMPL		setgid
@


1.49
log
@actually, we need to wrap sys_truncate() call so that the /emul/linux/...
path is tried first
fix ftruncate64 entry - first arg to ftruncate is int fd, not path
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.48 2000/12/12 19:01:59 jdolecek Exp $
d207 1
a207 1
116	UNIMPL		sysinfo
@


1.48
log
@add emulation of Linux truncate64(2), ftruncate64(2), *stat64(2)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.47 2000/12/09 12:23:36 jdolecek Exp $
d322 1
a322 3
193	NOARGS		truncate64 { int sys_truncate(const char *path, \
				off_t length); }
194	NOARGS		ftruncate64 { int sys_ftruncate(const char *path, \
d324 1
@


1.47
log
@add more unimplemented syscalls to list
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.46 2000/12/09 05:27:29 mycroft Exp $
d322 10
a331 5
193	UNIMPL		truncate64
194	UNIMPL		ftruncate64
195	UNIMPL		stat64
196	UNIMPL		lstat64
197	UNIMPL		fstat64
@


1.46
log
@Add the %% separators.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.45 2000/12/02 16:43:50 jdolecek Exp $
d320 27
@


1.45
log
@add emulation of linux swapoff(2)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.44 2000/12/01 21:02:56 jdolecek Exp $
d36 1
a36 1
if defined(_KERNEL) && !defined(_LKM)
d38 1
a38 1
endif
d54 1
@


1.44
log
@replace compat_09_sys_setdomainname() with linux_sys_setdomainname(),
compat_12_sys_swapon() with linux_sys_swapon() - this is to drop dependency
on COMPAT_12/COMPAT_09
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.43 2000/11/01 20:38:49 jdolecek Exp $
d205 1
a205 1
115	UNIMPL		swapoff
@


1.43
log
@support mlockall(), munlockall() - they are same as respective NetBSD syscalls
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.42 2000/08/23 16:59:51 christos Exp $
d36 1
d38 1
d165 1
a165 1
87	NOARGS		{ int compat_12_sys_swapon(char *name); }
d212 1
a212 1
121	NOARGS		{ int compat_09_sys_setdomainname(char *name, \
@


1.42
log
@add support for syscall 186 [sigaltstack]
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.41 2000/03/18 22:20:57 erh Exp $
d251 2
a252 2
152	UNIMPL		mlockall
153	UNIMPL		munlockall
@


1.41
log
@Use linux_sys_reboot instead of sys_reboot.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.40 2000/02/03 10:02:59 abs Exp $
d310 3
a312 1
186	UNIMPL		sigaltstack
@


1.41.4.1
log
@Pull up revision 1.53 (requested by fvdl):
  Add some required Linux emulation bits to support the Linux
  version of VMware.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.41 2000/03/18 22:20:57 erh Exp $
d64 1
a64 1
9	STD		{ int linux_sys_link(const char *path, const char *link); }
@


1.41.4.2
log
@Pull up revision 1.55 (requested by jdolecek):
  Make it possible to use a different function for unimplemented
  syscalls than sys_nosys(), so that the Linux emulation can avoid
  posting SIGSYS and instead just return ENOSYS.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.41.4.1 2001/03/30 21:35:26 he Exp $
d53 1
a53 1
0	NOARGS		{ int linux_sys_nosys(void); } syscall
@


1.40
log
@Add Linux fsuid system calls - from Witold J. Wnuk in PR kern/9335
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.39 1999/12/12 00:00:17 tron Exp $
d164 2
a165 1
88	NOARGS		{ int sys_reboot(int opt); }
@


1.39
log
@Incomplete but already working emulation of Linux's ptrace(2) for i386.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.38 1999/12/05 21:24:30 tron Exp $
d230 2
a231 2
138	UNIMPL		setfsuid
139	UNIMPL		getfsuid
@


1.38
log
@Add proper stub code to make emulation of Linux's pread(2) and pwrite(2)
work. Fixes PR kern/8945 by Dave Sainty.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.37 1999/12/04 22:14:14 tron Exp $
d86 2
a87 1
26	UNIMPL		ptrace
@


1.37
log
@Consistently call signal number arguments "signum".
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.36 1999/10/04 16:55:55 tron Exp $
d299 4
a302 4
180	NOARGS		{ int sys_pread(int fd, char *buf, size_t nbytes, \
			    off_t offset); }
181	NOARGS		{ int sys_pwrite(int fd, char *buf, size_t nbytes, \
			    off_t offset); }
@


1.36
log
@Add emulation for scheduler related syscalls. Although they are dummies
even under Linux the posix thread library for "glibc2" requires them.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.35 1999/08/16 19:13:01 tron Exp $
d110 1
a110 1
48	STD		{ int linux_sys_signal(int sig, \
@


1.36.2.1
log
@Update thorpej_scsipi to -current as of a month ago
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.42 2000/08/23 16:59:51 christos Exp $
d86 1
a86 2
26	STD		{ int linux_sys_ptrace(int request, int pid, \
			  int addr, int data); }
d110 1
a110 1
48	STD		{ int linux_sys_signal(int signum, \
d163 1
a163 2
88	STD		{ int linux_sys_reboot(int magic1, int magic2, \
			    int cmd, void *arg); }
d229 2
a230 2
138	STD		{ int linux_sys_setfsuid(uid_t uid); }
139	NOARGS		{ int linux_sys_getfsuid(void); }
d299 4
a302 4
180	STD		{ int linux_sys_pread(int fd, char *buf, \
			    size_t nbyte, linux_off_t offset); }
181	STD		{ int linux_sys_pwrite(int fd, char *buf, \
			    size_t nbyte, linux_off_t offset); }
d308 1
a308 3
186	STD		{ int linux_sys_sigaltstack( \
			    const struct linux_sigaltstack *ss, \
			    struct linux_sigaltstack *oss); }
@


1.36.2.2
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD$
d251 2
a252 2
152	NOARGS		{ int sys_mlockall(int flags); }
153	NOARGS		{ int sys_munlockall(void); }
@


1.36.2.3
log
@Sync with HEAD.
@
text
@a35 1
if defined(_KERNEL) && !defined(_LKM)
a36 1
endif
d163 1
a163 1
87	STD		{ int linux_sys_swapon(char *name); }
d203 1
a203 1
115	STD		{ int linux_sys_swapoff(const char *path); }
d210 1
a210 1
121	STD		{ int linux_sys_setdomainname(char *domainname, \
@


1.36.2.4
log
@Sync with HEAD (for UBC fixes).
@
text
@d36 1
a36 1
#if defined(_KERNEL) && !defined(_LKM)
d38 1
a38 1
#endif
a53 1
%%
a318 31
191	UNIMPL		getrlimit
192	UNIMPL		mmap2
193	STD		{ int linux_sys_truncate64(const char *path, \
				off_t length); }
194	NOARGS		ftruncate64 { int sys_ftruncate(int fd, off_t length); }
195	STD		{ int linux_sys_stat64(const char *path, \
				struct linux_stat64 *sp); }
196	STD		{ int linux_sys_lstat64(const char *path, \
				struct linux_stat64 *sp); }
197	STD		{ int linux_sys_fstat64(int fd, \
				struct linux_stat64 *sp); }
198	UNIMPL		lchown
199	UNIMPL		getuid
200	UNIMPL		getgid
201	UNIMPL		geteuid
202	UNIMPL		getegid
203	UNIMPL		getreuid
204	UNIMPL		getregid
205	UNIMPL		getgroups
206	UNIMPL		setgroups
207	UNIMPL		fchown
208	UNIMPL		setresuid
209	UNIMPL		getresuid
210	UNIMPL		setresgid
211	UNIMPL		getresgid
212	UNIMPL		chown
213	UNIMPL		setuid
214	UNIMPL		setgid
215	UNIMPL		setfsuid
216	UNIMPL		setfsgid
217	UNIMPL		pivot_root
@


1.36.2.5
log
@Sync with HEAD
@
text
@d67 1
a67 1
9	STD		{ int linux_sys_link(const char *path, const char *link); }
d76 1
a76 1
16	STD		{ int linux_sys_lchown16(const char *path, \
d86 2
a87 2
23	NOARGS		linux_setuid16 { int sys_setuid(uid_t uid); }
24	NOARGS		linux_getuid16 { uid_t sys_getuid(void); }
d112 2
a113 2
46	NOARGS		linux_setgid16 { int sys_setgid(gid_t gid); }
47	NOARGS		linux_getgid16 { gid_t sys_getgid(void); }
d116 2
a117 2
49	NOARGS		linux_geteuid16 { uid_t sys_geteuid(void); }
50	NOARGS		linux_getegid16 { gid_t sys_getegid(void); }
d140 2
a141 2
70	STD		{ int linux_sys_setreuid16(int ruid, int euid); }
71	STD		{ int linux_sys_setregid16(int rgid, int egid); }
d156 2
a157 2
80	STD		{ int linux_sys_getgroups16(int gidsetsize, linux_gid_t *gidset); }
81	STD		{ int linux_sys_setgroups16(int gidsetsize, linux_gid_t *gidset); }
d177 1
a177 1
95	STD		{ int linux_sys_fchown16(int fd, int uid, int gid); }
d207 1
a207 1
116	STD		{ int linux_sys_sysinfo(struct linux_sysinfo *arg); }
d234 2
a235 2
138	NOARGS		linux_setfsuid16 { int linux_sys_setfsuid(uid_t uid); }
139	NOARGS		linux_getfsuid16 { int linux_sys_getfsuid(void); }
d271 1
a271 1
164	STD		{ int linux_sys_setresuid16(uid_t ruid, uid_t euid, \
d273 2
a274 2
165	NOARGS		linux_getresuid16 { int linux_sys_getresuid( \
				uid_t *ruid, uid_t *euid, uid_t *suid); }
d280 1
a280 1
170	STD		{ int linux_sys_setresgid16(gid_t rgid, gid_t egid, \
d282 2
a283 2
171	NOARGS		linux_getresgid16 { int linux_sys_getresgid( \
			gid_t *rgid, gid_t *egid, gid_t *sgid); }
d308 1
a308 1
182	STD		{ int linux_sys_chown16(const char *path, int uid, \
d324 1
a324 1
194	NOARGS		linux_ftruncate64 { int sys_ftruncate(int fd, off_t length); }
d331 19
a349 26
198	STD		 { int linux_sys_lchown(const char *path, uid_t uid, \
				gid_t gid); }
199	NOARGS		{ uid_t sys_getuid(void); }
200	NOARGS		{ gid_t sys_getgid(void); }
201	NOARGS		{ uid_t sys_geteuid(void); }
202	NOARGS		{ gid_t sys_getegid(void); }
203	NOARGS		{ int sys_setreuid(uid_t ruid, uid_t euid); }
204	NOARGS		{ int sys_setregid(gid_t rgid, gid_t egid); }
205	NOARGS		{ int sys_getgroups(u_int gidsetsize, gid_t *gidset); }
206	NOARGS		{ int sys_setgroups(u_int gidsetsize, gid_t *gidset); }
207	NOARGS		{ int sys___posix_fchown(int fd, uid_t uid, \
				gid_t gid); }
208	STD		{ int linux_sys_setresuid(uid_t ruid, uid_t euid, \
			    uid_t suid); }
209	STD		{ int linux_sys_getresuid(uid_t *ruid, uid_t *euid, \
			    uid_t *suid); }
210	STD		{ int linux_sys_setresgid(gid_t rgid, gid_t egid, \
			    gid_t sgid); }
211	STD		{ int linux_sys_getresgid(gid_t *rgid, gid_t *egid, \
			    gid_t *sgid); }
212	STD		{ int linux_sys_chown(const char *path, uid_t uid, \
				gid_t gid); }
213	NOARGS		{ int sys_setuid(uid_t uid); }
214	NOARGS		{ int sys_setgid(gid_t gid); }
215	STD		{ int linux_sys_setfsuid(uid_t uid); }
216	NOARGS		{ int linux_sys_getfsuid(void); }
@


1.36.2.6
log
@Sync with HEAD.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.36.2.5 2001/01/05 17:35:24 bouyer Exp $
d83 1
a83 1
20	NOARGS MPSAFE	{ pid_t sys_getpid(void); }
@


1.36.2.7
log
@Sync with HEAD
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.36.2.6 2001/02/11 19:13:44 bouyer Exp $
d56 1
a56 1
0	NOARGS		{ int linux_sys_nosys(void); } syscall
a357 4
218	UNIMPL		mincore
219	UNIMPL		madvise
220	UNIMPL		getdents64
221	UNIMPL		fcntl64
@


1.36.8.1
log
@Pull up to last week's -current.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.39 1999/12/12 00:00:17 tron Exp $
d86 1
a86 2
26	STD		{ int linux_sys_ptrace(int request, int pid, \
			  int addr, int data); }
d110 1
a110 1
48	STD		{ int linux_sys_signal(int signum, \
d299 4
a302 4
180	STD		{ int linux_sys_pread(int fd, char *buf, \
			    size_t nbyte, linux_off_t offset); }
181	STD		{ int linux_sys_pwrite(int fd, char *buf, \
			    size_t nbyte, linux_off_t offset); }
@


1.35
log
@Add stime() to syscalls table.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.34 1999/05/14 18:43:01 thorpej Exp $
d251 11
a261 8
154	UNIMPL		sched_setparam
155	UNIMPL		sched_getparam
156	UNIMPL		sched_setscheduler
157	UNIMPL		sched_getscheduler
158	UNIMPL		sched_yield
159	UNIMPL		sched_get_priority_max
160	UNIMPL		sched_get_priority_min
161	UNIMPL		sched_rr_get_interval
@


1.34
log
@Emulate the Linux vfork(2) (which is like NetBSD's __vfork14(2)),
{get,set}resuid(2), and {get,set}resgid(2).  Note a few more system
calls that we don't yet emulate.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.33 1999/05/13 23:42:34 thorpej Exp $
d85 1
a85 1
25	UNIMPL		stime
@


1.33
log
@Emulate the Linux clone(2) system call.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.32 1999/03/30 02:22:49 abs Exp $
d263 4
a266 2
164	UNIMPL		setresuid
165	UNIMPL		getresuid
d272 4
a275 2
170	UNIMPL		setresgid
171	UNIMPL		setresgid
d305 5
@


1.32
log
@Since NetBSD has poll(), use it.
Linux oracle install now gets far enough that I want our DBA around to
see if we can finish the job.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.31 1999/03/27 01:10:57 tron Exp $
d207 1
a207 1
120	UNIMPL		clone
@


1.32.2.1
log
@Apply patch (requested by abs):
  Enable emulation of vfork(2).
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.32 1999/03/30 02:22:49 abs Exp $
a300 5
186	UNIMPL		sigaltstack
187	UNIMPL		sendfile
188	UNIMPL		getpmsg
189	UNIMPL		putpmsg
190	NOARGS		{ int sys_vfork(void); }
@


1.32.2.2
log
@Pull up revision 1.40 (requested by abs):
  Enable basic versions of Linux fsuid calls.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.32.2.1 2000/01/31 19:15:07 he Exp $
d229 2
a230 2
138	STD		{ int linux_sys_setfsuid(uid_t uid); }
139	NOARGS		{ int linux_sys_getfsuid(void); }
@


1.32.4.1
log
@Sync w/ -current.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.34 1999/05/14 18:43:01 thorpej Exp $
d207 1
a207 1
120	STD		{ int linux_sys_clone(int flags, void *stack); }
d263 2
a264 4
164	STD		{ int linux_sys_setresuid(uid_t ruid, uid_t euid, \
			    uid_t suid); }
165	STD		{ int linux_sys_getresuid(uid_t *ruid, uid_t *euid, \
			    uid_t *suid); }
d270 2
a271 4
170	STD		{ int linux_sys_setresgid(gid_t rgid, gid_t egid, \
			    gid_t sgid); }
171	STD		{ int linux_sys_getresgid(gid_t *rgid, gid_t *egid, \
			    gid_t *sgid); }
a300 5
186	UNIMPL		sigaltstack
187	UNIMPL		sendfile
188	UNIMPL		getpmsg
189	UNIMPL		putpmsg
190	NOARGS		{ int sys___vfork14(void); }
@


1.31
log
@Add emulation for Linux "getcwd" syscall.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.30 1999/03/23 03:00:52 thorpej Exp $
d39 1
d267 2
a268 1
168	UNIMPL		poll
@


1.30
log
@Add support for emulating the Linux pread(2) and pwrite(2) system calls;
just call the native NetBSD versions.

PR #7202, Jaromir Dolecek <dolecek@@ics.muni.cz>.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.29 1999/02/09 20:37:00 christos Exp $
d296 1
a296 1
183	UNIMPL		getcwd
@


1.29
log
@const poisoning
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.28 1998/12/10 17:07:04 christos Exp $
d290 4
a293 2
180	UNIMPL		pread
181	UNIMPL		pwrite
@


1.28
log
@defopt COMPAT_43
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.27 1998/10/03 20:17:39 christos Exp $
d57 2
a58 1
5	STD		{ int linux_sys_open(char *path, int flags, int mode); }
d62 4
a65 4
8	STD		{ int linux_sys_creat(char *path, int mode); }
9	NOARGS		{ int sys_link(char *path, char *link); }
10	STD		{ int linux_sys_unlink(char *path); }
11	STD		{ int linux_sys_execve(char *path, char **argp, \
d67 1
a67 1
12	STD		{ int linux_sys_chdir(char *path); }
d69 5
a73 3
14	STD		{ int linux_sys_mknod(char *path, int mode, int dev); }
15	STD		{ int linux_sys_chmod(char *path, int mode); }
16	STD		{ int linux_sys_lchown(char *path, int uid, int gid); }
d89 1
a89 1
30	STD		{ int linux_sys_utime(char *path, \
d93 1
a93 1
33	STD		{ int linux_sys_access(char *path, int flags); }
d98 4
a101 3
38	STD		{ int linux_sys_rename(char *from, char *to); }
39	STD		{ int linux_sys_mkdir(char *path, int mode); }
40	STD		{ int linux_sys_rmdir(char *path); }
d154 3
a156 2
83	STD		{ int linux_sys_symlink(char *path, char *to); }
84	NOARGS		{ int compat_43_sys_lstat(char *path, \
d158 1
a158 1
85	STD		{ int linux_sys_readlink(char *name, char *buf, \
d160 1
a160 1
86	STD		{ int linux_sys_uselib(char *path); }
d167 2
a168 1
92	STD		{ int linux_sys_truncate(char *path, long length); }
d176 1
a176 1
99	STD		{ int linux_sys_statfs(char *path, \
d188 1
a188 1
106	STD		{ int linux_sys_stat(char *path, \
d190 1
a190 1
107	STD		{ int linux_sys_lstat(char *path, \
d292 2
a293 1
182	STD		{ int linux_sys_chown(char *path, int uid, int gid); }
@


1.27
log
@Attempt to fix the mess.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.26 1998/10/01 02:03:17 erh Exp $
d35 2
@


1.26
log
@Move compat/linux/syscalls.master to i386.  Add a few syscalls while I'm here.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.25 1998/09/11 12:50:09 mycroft Exp $
d42 6
a47 4
#include <compat/linux/linux_types.h>
#include <compat/linux/linux_signal.h>
#include <compat/linux/linux_siginfo.h>
#include <compat/linux/i386/linux_syscallargs.h>
a48 1
#include <compat/linux/linux_machdep.h>
@


1.25
log
@Substantial signal handling changes:
* Increase the size of sigset_t to accomodate 128 signals -- adding new
  versions of sys_setprocmask(), sys_sigaction(), sys_sigpending() and
  sys_sigsuspend() to handle the changed arguments.
* Abstract the guts of sys_sigaltstack(), sys_setprocmask(), sys_sigaction(),
  sys_sigpending() and sys_sigsuspend() into separate functions, and call them
  from all the emulations rather than hard-coding everything.  (Avoids uses
  the stackgap crap for these system calls.)
* Add a new flag (p_checksig) to indicate that a process may have signals
  pending and userret() needs to do the full (slow) check.
* Eliminate SAS_ALTSTACK; it's exactly the inverse of SS_DISABLE.
* Correct emulation bugs with restoring SS_ONSTACK.
* Make the signal mask in the sigcontext always use the emulated mask format.
* Store signals internally in sigaction structures, rather than maintaining a
  bunch of little sigsets for each SA_* bit.
* Keep track of where we put the signal trampoline, rather than figuring it out
  in *_sendsig().
* Issue a warning when a non-emulated sigaction bit is observed.
* Add missing emulated signals, and a native SIGPWR (currently not used).
* Implement the `not reset when caught' semantics for relevant signals.

Note: Only code touched by the i386 port has been modified.  Other ports and
emulations need to be updated.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.24 1998/08/05 00:44:34 perry Exp $
d5 1
a5 1
; NetBSD COMPAT_LINUX system call name/number "master" file.
d19 2
d44 2
a45 1
#include <compat/linux/linux_syscallargs.h>
d47 1
a47 1
#include <machine/linux_machdep.h>
d67 2
a68 1
16	STD		{ int linux_sys_chown(char *path, int uid, int gid); }
d85 2
a86 2
31	UNIMPL		stty
32	UNIMPL		gtty
d89 1
a89 1
35	UNIMPL		ftime
d98 1
a98 1
44	UNIMPL		prof
d107 2
a108 2
52	UNIMPL		phys
53	UNIMPL		lock
d112 1
a112 1
56	UNIMPL		mpx
d114 1
a114 1
58	UNIMPL		ulimit
d124 2
a125 2
			    const struct linux_sigaction *nsa, \
			    struct linux_sigaction *osa); }
d127 1
a127 1
69	STD		{ int linux_sys_sigsetmask(linux_sigset_t mask); }
d132 1
a132 2
73	STD		{ int linux_sys_sigpending( \
			    linux_sigset_t *set); }
d146 1
a146 1
82	STD		{ int linux_sys_oldselect(struct linux_select *lsp); }
d157 1
a157 1
90	STD		{ int linux_sys_mmap(struct linux_mmap *lmp); }
a170 1
#ifdef __i386__
a172 3
#else
101	UNIMPL		ioperm
#endif
d174 1
a174 1
103	UNIMPL		klog
a184 1
#ifdef __i386__
a185 3
#else
110	UNIMPL		iopl
#endif
d188 1
a188 1
113	UNIMPL		vm86
a200 1
#ifdef __i386__
a202 3
#else
123	UNIMPL		modify_ldt
#endif
d206 2
a207 2
			    const linux_sigset_t *set, \
			    linux_sigset_t *oset); }
d223 2
a224 2
141	STD		{ int linux_sys_getdents(int fd, void *dirent, \
			    unsigned count); }
d253 34
@


1.24
log
@enable nanosleep in linux emul, per pr-5906 from Soren S. Jorvang
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.23 1998/02/20 18:09:04 mycroft Exp $
d120 1
a120 1
			    struct linux_sigaction *nsa, \
d128 2
a129 1
73	STD		{ int linux_sys_sigpending(linux_sigset_t *mask); }
d215 2
a216 1
			    linux_sigset_t *set, linux_sigset_t *oset); }
@


1.23
log
@Linux's getsid(2) does in fact return a pid, not a pointer.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.22 1998/02/19 00:41:12 thorpej Exp $
d256 2
a257 1
162	UNIMPL		nanosleep
@


1.22
log
@Change a comment to reflect new makesyscalls.sh behavior.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.21 1997/10/16 23:53:07 christos Exp $
d241 1
a241 1
147	STD		{ int linux_sys_getsid(int pid); }
@


1.21
log
@ostat -> stat43
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.20 1997/10/15 17:18:38 mycroft Exp $
d32 1
a32 1
; #include's are copied to the syscall switch definition file only.
@


1.20
log
@Fix a typo inherited from kern/syscalls.master.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.19 1997/10/10 06:25:36 mycroft Exp $
d145 1
a145 1
			    struct ostat *up); } olstat
@


1.19
log
@Emulate mremap(2) by returning ENOMEM for now.  This should be sufficient for
realloc(3) and other uses.  From Matthias Scheler in PR 3920.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.18 1997/06/13 17:30:19 thorpej Exp $
d132 1
a132 1
			    struct ogetrlimit *rlp); }
d134 1
a134 1
			    struct ogetrlimit *rlp); }
@


1.18
log
@Use compat_12_sys_swapon().
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.17 1997/04/07 14:13:19 augustss Exp $
d257 2
a258 1
163	UNIMPL		mremap
@


1.18.4.1
log
@Update marc-pcmcia branch from trunk.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.19 1997/10/10 06:25:36 mycroft Exp $
d257 1
a257 2
163	STD		{ void *linux_sys_mremap(void *old_address, \
			    size_t old_size, size_t new_size, u_long flags); }
@


1.17
log
@Add Linux nice() syscall.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.16 1996/05/20 01:59:35 fvdl Exp $
d149 1
a149 1
87	NOARGS		{ int sys_swapon(char *name); }
@


1.16
log
@Update list of Linux syscalls and implement the ones that are likely to be
used and doable.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.15 1995/12/18 14:35:10 fvdl Exp $
d84 1
a84 1
34	UNIMPL		nice
@


1.16.6.1
log
@initial work for dynamic swap additions.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.16 1996/05/20 01:59:35 fvdl Exp $
d149 1
a149 1
87	NOARGS		{ int compat_12_sys_swapon(char *name); }
@


1.15
log
@msync, readv and writev were recently added to the Linux kernel; add them
to the emulation as well.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.14 1995/12/09 04:01:47 mycroft Exp $
d241 17
@


1.14
log
@We don't need a private version of fork() here any more.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.13 1995/10/07 06:27:15 mycroft Exp $
d236 5
@


1.13
log
@Prefix names of system call implementation functions with `sys_'.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.12 1995/09/07 21:49:02 fvdl Exp $
d48 1
a48 1
2	STD		{ int linux_sys_fork(void); }
@


1.12
log
@Fix some bugs & typing problems.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.11 1995/08/27 20:51:53 fvdl Exp $
d39 1
d43 1
d46 106
a151 97
0	NOARGS		{ int nosys(void); } syscall
1	NOARGS		{ int exit(int rval); }
2	STD		{ int linux_fork(void); }
3	NOARGS		{ int read(int fd, char *buf, u_int nbyte); }
4	NOARGS		{ int write(int fd, char *buf, u_int nbyte); }
5	STD		{ int linux_open(char *path, int flags, int mode); }
6	NOARGS		{ int close(int fd); }
7	STD		{ int linux_waitpid(int pid, int *status, int options);}
8	STD		{ int linux_creat(char *path, int mode); }
9	NOARGS		{ int link(char *path, char *link); }
10	STD		{ int linux_unlink(char *path); }
11	STD		{ int linux_execve(char *path, char **argp, char **envp); }
12	STD		{ int linux_chdir(char *path); }
13	STD		{ int linux_time(linux_time_t *t); }
14	STD		{ int linux_mknod(char *path, int mode, int dev); }
15	STD		{ int linux_chmod(char *path, int mode); }
16	STD		{ int linux_chown(char *path, int uid, int gid); }
17	STD		{ int linux_break(char *nsize); }
18	OBSOL		linux_ostat
19	NOARGS		{ long compat_43_lseek(int fd, long offset, int whence); }
20	NOARGS		{ pid_t getpid(void); }
21	UNIMPL		linux_mount
22	UNIMPL		linux_umount
23	NOARGS		{ int setuid(uid_t uid); }
24	NOARGS		{ uid_t getuid(void); }
25	UNIMPL		linux_stime
26	UNIMPL		linux_ptrace
27	STD		{ int linux_alarm(unsigned int secs); }
28	OBSOL		linux_ofstat
29	STD		{ int linux_pause(void); }
30	STD		{ int linux_utime(char *path, struct linux_utimbuf *times); }
31	UNIMPL		linux_stty
32	UNIMPL		linux_gtty
33	STD		{ int linux_access(char *path, int flags); }
34	UNIMPL		linux_nice
35	UNIMPL		linux_ftime
36	NOARGS		{ int sync(void); }
37	STD		{ int linux_kill(int pid, int signum); }
38	STD		{ int linux_rename(char *from, char *to); }
39	STD		{ int linux_mkdir(char *path, int mode); }
40	STD		{ int linux_rmdir(char *path); }
41	NOARGS		{ int dup(u_int fd); }
42	STD		{ int linux_pipe(int *pfds); }
43	STD		{ int linux_times(struct times *tms); }
44	UNIMPL		linux_prof
45	STD		{ int linux_brk(char *nsize); }
46	NOARGS		{ int setgid(gid_t gid); }
47	NOARGS		{ gid_t getgid(void); }
48	STD		{ int linux_signal(int sig, linux_handler_t handler); }
49	NOARGS		{ uid_t geteuid(void); }
50	NOARGS		{ gid_t getegid(void); }
51	NOARGS		{ int acct(char *path); }
52	UNIMPL		linux_phys
53	UNIMPL		linux_lock
54	STD		{ int linux_ioctl(int fd, u_long com, caddr_t data); }
55	STD		{ int linux_fcntl(int fd, int cmd, void *arg); }
56	UNIMPL		linux_mpx
57	NOARGS		{ int setpgid(int pid, int pgid); }
58	UNIMPL		linux_ulimit
59	STD		{ int linux_oldolduname(struct linux_oldold_utsname *up); }
60	NOARGS		{ int umask(int newmask); }
61	NOARGS		{ int chroot(char *path); }
62	UNIMPL		linux_ustat
63	NOARGS		{ int dup2(u_int from, u_int to); }
64	NOARGS		{ pid_t getppid(void); }
65	NOARGS		{ int getpgrp(void); }
66	NOARGS		{ int setsid(void); }
67	STD		{ int linux_sigaction(int signum, \
				struct linux_sigaction *nsa,\
				struct linux_sigaction *osa); }
68	STD		{ int linux_siggetmask(void); }
69	STD		{ int linux_sigsetmask(linux_sigset_t mask); }
70	STD		{ int linux_setreuid(int ruid, int euid); }
71	STD		{ int linux_setregid(int rgid, int egid); }
72	STD		{ int linux_sigsuspend(caddr_t restart, int oldmask, \
				int mask); }
73	STD		{ int linux_sigpending(linux_sigset_t *mask); }
74	NOARGS		{ int compat_43_sethostname(char *hostname, u_int len);}
75	NOARGS		{ int compat_43_setrlimit(u_int which, \
				struct ogetrlimit *rlp); }
76	NOARGS		{ int compat_43_getrlimit(u_int which, \
				struct ogetrlimit *rlp); }
77	NOARGS		{ int getrusage(int who, struct rusage *rusage); }
78	NOARGS		{ int gettimeofday(struct timeval *tp, \
				struct timezone *tzp); }
79	NOARGS		{ int settimeofday(struct timeval *tp, \
				struct timezone *tzp); }
80	NOARGS		{ int getgroups(u_int gidsetsize, gid_t *gidset); }
81	NOARGS		{ int setgroups(u_int gidsetsize, gid_t *gidset); }
82	STD		{ int linux_oldselect(struct linux_select *lsp); }
83	STD		{ int linux_symlink(char *path, char *to); }
84	NOARGS		{ int compat_43_lstat(char *path, struct ostat *up); }
85	STD		{ int linux_readlink(char *name, char *buf, int count); }
86	STD		{ int linux_uselib(char *path); }
87	NOARGS		{ int swapon(char *name); }
88	NOARGS		{ int reboot(int opt); }
89	STD		{ int linux_readdir(int fd, struct linux_dirent *dent, \
d153 14
a166 12
90	STD		{ int linux_mmap(struct linux_mmap *lmp); }
91	NOARGS		{ int munmap(caddr_t addr, int len); }
92	STD		{ int linux_truncate(char *path, long length); }
93	NOARGS		{ int compat_43_ftruncate(int fd, long length); }
94	NOARGS		{ int fchmod(int fd, int mode); }
95	STD		{ int linux_fchown(int fd, int uid, int gid); }
96	NOARGS		{ int getpriority(int which, int who); }
97	NOARGS		{ int setpriority(int which, int who, int prio); }
98	NOARGS		{ int profil(caddr_t samples, u_int size, \
				u_int offset, u_int scale); }
99	STD		{ int linux_statfs(char *path, struct linux_statfs *sp); }
100	STD		{ int linux_fstatfs(int fd, struct linux_statfs *sp); }
d168 2
a169 2
101	STD		{ int linux_ioperm(unsigned int lo, unsigned int hi, \
				int val); }
d171 1
a171 1
101	UNIMPL		linux_ioperm
d173 12
a184 9
102	STD		{ int linux_socketcall(int what, void *args); }
103	UNIMPL		linux_klog
104	NOARGS		{ int setitimer(u_int which, struct itimerval *itv, \
			    struct itimerval *oitv); }
105	NOARGS		{ int getitimer(u_int which, struct itimerval *itv); }
106	STD		{ int linux_stat(char *path, struct linux_stat *sp); }
107	STD		{ int linux_lstat(char *path, struct linux_stat *sp); }
108	STD		{ int linux_fstat(int fd, struct linux_stat *sp); }
109	STD		{ int linux_olduname(struct linux_old_utsname *up); }
d186 1
a186 1
110	STD		{ int linux_iopl(int level); }
d188 1
a188 1
110	UNIMPL		linux_iopl
d190 15
a204 14
111	UNIMPL		linux_vhangup
112	UNIMPL		linux_idle
113	UNIMPL		linux_vm86
114	STD		{ int linux_wait4(int pid, int *status, int options, \
				struct rusage *rusage); }
115	UNIMPL		linux_swapoff
116	UNIMPL		linux_sysinfo
117	STD		{ int linux_ipc(int what, int a1, int a2, int a3, \
				caddr_t ptr); }
118	NOARGS		{ int fsync(int fd); }
119	STD		{ int linux_sigreturn(struct linux_sigcontext *scp); }
120	UNIMPL		linux_clone
121	NOARGS		{ int compat_09_setdomainname(char *name, int len); }
122	STD		{ int linux_uname(struct linux_utsname *up); }
d206 2
a207 2
123	STD		{ int linux_modify_ldt(int func, void *ptr, \
				size_t bytecount); }
d209 1
a209 1
123	UNIMPL		linux_modify_ldt
d211 25
a235 25
124	UNIMPL		linux_adjtimex
125	NOARGS		{ int mprotect(caddr_t addr, int len, int prot); }
126	STD		{ int linux_sigprocmask(int how, linux_sigset_t *set, \
				linux_sigset_t *oset); }
127	UNIMPL		linux_create_module
128	UNIMPL		linux_init_module
129	UNIMPL		linux_delete_module
130	UNIMPL		linux_get_kernel_syms
131	UNIMPL		linux_quotactl
132	STD		{ int linux_getpgid(int pid); }
133	NOARGS		{ int fchdir(int fd); }
134	UNIMPL		linux_bdflush
135	UNIMPL		linux_sysfs
136	STD		{ int linux_personality(int per); }
137	UNIMPL		linux_afs_syscall
138	UNIMPL		linux_setfsuid
139	UNIMPL		linux_getfsuid
140	STD		{ int linux_llseek(int fd, u_int32_t ohigh, \
				u_int32_t olow, caddr_t res, int whence); }
141	STD		{ int linux_getdents(int fd, void *dirent, \
				unsigned count); }
142	STD		{ int linux_select(int nfds, fd_set *readfds, \
				fd_set *writefds, fd_set *exceptfds, \
				struct timeval *timeout); }
143	NOARGS		{ int flock(int fd, int how); }
@


1.11
log
@Add a hook for MD ioctl calls, plus a couple of more changes to make
svgalib binaries work on the i386
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.9 1995/08/21 03:42:12 mycroft Exp $
d90 1
a90 1
46	NOARGS		{ int setgid(uid_t gid); }
d116 2
a117 2
70	NOARGS		{ int compat_43_setreuid(int ruid, int euid); }
71	NOARGS		{ int compat_43_setregid(int rgid, int egid); }
d147 1
a147 1
95	NOARGS		{ int fchown(int fd, int uid, int gid); }
@


1.10
log
@Emulate some syscalls that appear in Linux 1.3: a select() with normal args,
getdents() and flock().
@
text
@d154 4
d159 1
d169 3
d173 1
@


1.9
log
@Implement the old and older uname(2) calls.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.8 1995/08/14 01:27:56 mycroft Exp $
d133 1
a133 1
82	STD		{ int linux_select(struct linux_select *lsp); }
d204 6
@


1.8
log
@Rearrange #includes.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.7 1995/07/24 06:35:58 fvdl Exp $
d103 1
a103 1
59	UNIMPL		linux_oldolduname
d163 1
a163 1
109	UNIMPL		linux_olduname
@


1.7
log
@mkdir() has 2 arguments.. fixes PR 1248 (from Brad Spencer)
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.6 1995/06/11 14:57:01 fvdl Exp $
d40 2
a42 1
#include <compat/linux/linux_syscallargs.h>
@


1.6
log
@* Make Linux ELF binaries work. Lots of code duplication, but it will have to do
  for now.
* Add a sanity check in linux_uselib
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.5 1995/05/06 18:16:40 mycroft Exp $
d82 1
a82 1
39	STD		{ int linux_mkdir(char *path); }
@


1.5
log
@Add linux_modify_ldt(), if __i386__.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.4 1995/04/07 22:23:28 fvdl Exp $
d197 1
a197 1
136	UNIMPL		linux_personality
@


1.4
log
@Handle Linux signal tramp code differently. Some changes because of the
now seperate Linux signal trampoline code. Add linux_sigreturn to
syscalls.master.
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.3 1995/03/10 22:55:14 fvdl Exp $
d178 4
d183 1
@


1.3
log
@Add the Linux pause() system call. Fix the arguments to sigsuspend().
@
text
@d1 1
a1 1
	$NetBSD: syscalls.master,v 1.1 1995/02/28 23:26:26 fvdl Exp $
d40 1
d174 1
a174 1
119	UNIMPL		linux_sigreturn
@


1.2
log
@Added a few more system calls.
More consistent alternate root file semantics throughout.
@
text
@d71 1
a71 1
29	UNIMPL		linux_pause
d116 2
a117 1
72	STD		{ int linux_sigsuspend(int mask); }
@


1.1
log
@Added Linux compat code.
@
text
@d1 1
a1 1
	$NetBSD$
d52 1
a52 1
10	NOARGS		{ int unlink(char *path); }
d54 1
a54 1
12	NOARGS		{ int chdir(char *path); }
d56 3
a58 3
14	NOARGS		{ int mknod(char *path, int mode, int dev); }
15	NOARGS		{ int chmod(char *path, int mode); }
16	NOARGS		{ int chown(char *path, int uid, int gid); }
d80 3
a82 3
38	NOARGS		{ int rename(char *from, char *to); }
39	NOARGS		{ int mkdir(char *path); }
40	NOARGS		{ int rmdir(char *path); }
d131 1
a131 1
83	NOARGS		{ int symlink(char *path, char *to); }
d133 1
a133 1
85	NOARGS		{ int readlink(char *name, char *buf, int count); }
d141 1
a141 1
92	NOARGS		{ int compat_43_truncate(char *path, long length); }
d150 1
a150 1
100	STD		{ int linux_fstatfs(char *path, struct linux_statfs *sp); }
d192 4
@
