summaryrefslogtreecommitdiffstats
path: root/sys/arch/sparc (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Do not depend upon an initialized variable in the common case; gives init(8)miod2012-08-081-3/+2
| | | | a chance to run...
* Move the common bits of syscall invocation and return handling intoguenther2012-08-071-40/+11
| | | | | | | | | | an MI file, <sys/syscall_mi.h>, correcting inconsistencies and the handling when copyin() of arguments fails. Tested on i386, amd64, sparc64, and alpha (thanks naddy@) Any issues with other platforms will be fixed in tree. header name from millert@; ok miod@
* Revert previous change, and don't set IFM_AVALID | IFM_ACTIVE in ifm_statusmiod2012-07-301-4/+1
| | | | | to appease dhcpd, as dhcpd has now been fixed to not require this. repeated prodding and special ok deraadt@
* When reporting media state, be sure to set IFM_AVALID and IFM_ACTIVE inmiod2012-07-251-1/+4
| | | | | | | | ifm_status, for dhclient's sake. Current dhclient interface_status() considers interfaces able to report media information but not returning IFM_AVALID as down. Note that these interfaces usually have mii(4) or have specific code reporting correct values; sparc le(4) is an exception. Found the hard way by sebastia@; joint work with krw@, ok deraadt@
* remove a few things to make this fit again; with miodderaadt2012-07-221-3/+3
|
* Increase default and maximum text, data and stack size limits; this is requiredmiod2012-07-011-6/+6
| | | | | | to build X at -O2 nowadays, as well as an increasing number of ports. Based upon a diff from Brad, with a few values stripped down to fit within the sun4/4c virtual address space limitation. Discussed with deraadt@
* Do not define XDC_DIAG if option SMALL_KERNEL; shaves about 14KB, and allowsmiod2012-07-011-1/+3
| | | | sparc floppies to fit again.
* create new machine/_float.h which is namespace clean. create a newderaadt2012-06-262-54/+35
| | | | | | | | | MI float.h which pulls in and defines the values that are needed from there, and repair sys/limits.h so that it defines the values it needs as well (depending on POSIX version, XPG version, etc). guenther has a more exact selection of that coming for limits.h. this also fixes a few mistakes for the vax. reviewed by kettenis and guenther.
* __tfork() needs to set the stack address of the new thread in the kernel,guenther2012-06-211-7/+11
| | | | | | | | | so that it can't get a signal while still running on the parent thread's stack. Also, pass in sizeof(struct __tfork) to provide forward compat when more members are added. This is an ABI change, so switch syscall numbers and bump lib majors this time. ok deraadt@ matthew@
* Correctly handle the case of a system setup to use glass console, whichmiod2012-05-251-1/+19
| | | | | | | | | | | | | frame buffer has been removed, but which keyboard is left plugged in. The PROM will select a `keyboard input, serial output' console, which was being recognized as glass console by the kernel. The kernel would then reset the serial chip at zstty attach time, while still using the PROM output routines at this point, and hang. Fix this by paying attention to split input/output setups and always falling back to serial console in this case. ok kettenis@
* do not need to pull in <time.h>deraadt2012-05-201-2/+1
|
* Rework the definition of label_t to get it correctly aligned to an 8 bytemiod2012-04-281-2/+3
| | | | boundary; this makes ddb usable again.
* shrinkderaadt2012-04-191-3/+3
|
* The first ktrace record for a newly spawned thread is a returnmikeb2012-04-111-2/+2
| | | | | | from a fork syscall done by the parent. Use __tfork, not rfork here to match the ktrace records for the parent (CALL __tfork, RET __tfork). ok guenther
* tedu the raidframe.jsing2012-04-061-4/+3
| | | | ok deraadt@
* Add APM_IOC_HIBERNATEderaadt2012-03-261-1/+2
|
* Make rusage totals, itimers, and profile settings per-process insteadguenther2012-03-231-2/+2
| | | | | | | of per-rthread. Handling of per-thread tick and runtime counters inspired by how FreeBSD does it. ok kettenis@
* Make userret() MI. On architectures which jammed stuff into it in thederaadt2011-11-161-17/+1
| | | | | past, pull that code out seperately. ok guenther miod
* label_t is the kernel setjmp buffer. It should simply be an array ofderaadt2011-11-151-2/+2
| | | | | the right type, noone will ever fiddle with the internals. discussed with jsing
* Make the userland bits actually compile.kettenis2011-11-081-4/+4
| | | | ok guenther@
* Garbage collect now unused MKDEP definitions. ok deraadt@matthieu2011-11-081-2/+1
|
* procfs for solaris compat? not anymore; ok miodderaadt2011-11-084-12/+4
|
* The cgtwo control registers only support 16-bit accesses, and respond withmiod2011-10-241-30/+30
| | | | | a bus error to larger widths. Declare all control register bitfield structs with uint16_t instead of u_int, to force gcc4 to use short accesses.
* Oh yeah, a cvs id is goodguenther2011-10-191-0/+2
|
* "TLS-lite": add kernel support for a per-thread userspace pointer,guenther2011-10-152-1/+78
| | | | | | | | | | | for pointing to the thread-control-block. Support for mapping this to the correct hardware register can be added as it's finished; start with support for amd64, sparc, and sparc64. Includes syscalls for getting and setting it (for a portable __errno implementation) as well as creating a new thread with an initial value for it. discussed with miod@, kettenis@, deraadt@; committing to get the syscalls in with the impending libc bump and do further refinements in tree
* ccd goes to the atticderaadt2011-10-061-4/+3
| | | | discussed with jsing and millert
* Make bus_addr_t and bus_size_t u_long types, instead of either uint32_t ormiod2011-09-271-4/+4
| | | | | | | uint64_t, depending upon the platform; this makes the declaration of these types consistent accross all our supported platform, and we do not intend to support a platform where bus_addr_t could be larger than the size of the cpu register. Requested by deraadt@ during s2k11
* Make struct label_t large enough for the kernel setjmp() purposes. Found aftermiod2011-09-271-2/+2
| | | | | deraadt@ and jsing@ noticed hppa64 label_t was too short; amazing this did not get noticed earlier.
* nowadays uvm_init() calls pmap_init(), not vm_init(); so update the comments.jasper2011-09-221-3/+3
| | | | ok ariane@
* arithemtic -> arithmeticmiod2011-09-172-4/+4
|
* Provide namespace-safe alignment macros in <machine/_types.h>, withguenther2011-09-082-16/+19
| | | | | | | | compat names kept in <machine/param.h>. In <sys/socket.h>, pull in <sys/_types.h> instead of the namespace polluting <machine/param.h> and completely eliminate __CMSG_ALIGN, replaced by _ALIGN ok deraadt@
* Make the INT_FAST*_{MIN,MAX} macros match the types they're defined to.guenther2011-09-081-1/+13
| | | | | | | | Since the underlying types of the int_fast types are set by machine/_types.h, put internal macros in that same file and define the exposed INT_FAST*_{MIN,MAX} macros from those. ok millert@, kettenis@
* Add emulation support for slinear:8, ulinear:8 and alaw. Written by jason@miod2011-09-041-2/+2
| | | | | | more than 8 years ago; allows aucat (and sndio users) to happily use amd7930-based audio devices. Verified by playing an mp3 file on vax.
* Switch the sparc audioamd(4) code to the MI driver; tested on SPARCclassicmiod2011-09-037-974/+510
| | | | with and without option AUDIO_C_HANDLER.
* Only provide FLT_EVAL_METHOD for C99. Add missing DECIMAL_DIG for C99.kettenis2011-08-291-1/+7
| | | | ok guenther@
* The drahn memorial bad kernel build fix: prevent blood pressureguenther2011-07-071-4/+6
| | | | | | | | spikes in other developers by making it so that removal of a .d file without removing the corresponding object will result in the latter being treated as out of date. ok beck@ art@ drahn@
* Cleanup presto(4) like other disk drivers.matthew2011-07-061-58/+42
| | | | meh deraadt@, miod@; "haha, you're fixing presto!?" tedu@
* Eliminate redundant buf validation checks in xxstrategy() methods nowmatthew2011-07-063-43/+21
| | | | | | | | | | | | that they're implemented consistently in bounds_check_with_label(). Also, per krw's request, change bounds_check_with_label() to return 0 if the checks succeed, and change the drivers to test == -1 instead of <= 0. (Man page update to follow; intentionally omitting arch/vax/mba/hp.c from this commit because it doesn't even build currently and miod@ promises to kill it soon.) ok krw@
* make clean should clean .d files, so as to leave a fresh canvas.tedu2011-07-061-2/+2
| | | | ok beck deraadt
* Recommit the reverted sigacts change now that the NFS use-after-freeguenther2011-07-051-8/+8
| | | | | | | | problem has been tracked down. This fixes the sharing of the signal handling state: shared bits go in sigacts, per-rthread bits goes in struct proc. ok deraadt@
* remove all the compat svr4 filestedu2011-07-042-746/+0
|
* remove compat_svr4 support. ok deraadttedu2011-07-049-164/+10
|
* Nuke the useless D_KQFILTER flag and just check that d_kqfilter isnicm2011-07-041-2/+2
| | | | | | filled in. Move D_CLONE down to 0x0001 as suggested by thib. ok deraadt thib
* kqueue attach functions should return an errno or 0, not a plain 1. Fixnicm2011-07-021-2/+2
| | | | | | the obvious cases to return EINVAL and ENXIO. ok tedu deraadt
* Per recommandation in the the sparc docs, use unlocked reads whenguenther2011-07-021-14/+17
| | | | | | spinning on a contended lock. ok kettenis@
* Replace all instances of "scsibus* at hba?" with a single "scsibus* atmatthew2011-06-295-19/+10
| | | | | | scsi?" rule, similar to how ethernet PHY drivers attach at mii. Discussed on icb.
* if_downall() cannot be done MI in sys_reboot() because vfs_shutdown()deraadt2011-06-261-1/+3
| | | | | might need network (ie. nfs). Move the call to the MD boot() routines. This cause for boot hangs diagnosed by kettenis.
* Move the bufcachepercent setting code to MI locations -- set it to 42%deraadt2011-06-051-15/+1
| | | | | | | for now; that is unlikely to hit some of the remaining starvation bugs. Repair the bufpages calculation too; i386 was doing it ahead of time (incorrectly) and then re-calculating it. ok thib
* Drop kernel support for the useless DIOCWLABEL ioctl and prune a lotmatthew2011-06-055-31/+5
| | | | | | | | | of silly flag twiddling code in various disk drivers. ok deraadt@, miod@ N.B., users will need a -current disklabel(8) to be able to write new disklabels to disk now.
* Get rid of the wlabel argument to bounds_check_with_label(). It'smatthew2011-06-033-8/+6
| | | | | | | | | never done anything in OpenBSD and just clutters disk drivers with silly flag handling. More cleanup to follow. ok deraadt@, millert@; no objections krw@