summaryrefslogtreecommitdiffstats
path: root/sys/arm
Commit message (Collapse)AuthorAgeFilesLines
* Introduce the cpumask_t type. The purpose of the type is to create amarcel2004-03-201-0/+1
| | | | | | | | | | | | | | | | | | | level of abstraction for any and all CPU mask and CPU bitmap variables so that platforms have the ability to break free from the hard limit of 32 CPUs, simply because we don't have more bits in an u_int. Note that the type is not supposed to solve massive parallelism, where the number of CPUs can be larger than the width of the widest integral type. As such, cpumask_t is not supposed to be a compound type. If such would be necessary in the future, we can deal with the issues then and there. For now, it can be assumed that the type is integral and unsigned. With this commit, all MD definitions start off as u_int. This allows us to phase-in cpumask_t at our leasure without breaking anything. Once cpumask_t is used consistently, platforms can switch to wider (or smaller) types if such would be beneficial (or not; whatever :-) Compile-tested on: i386
* Add sysentvec->sv_fixlimits() hook so that we can catch cases on 64 bitpeter2003-09-251-12/+0
| | | | | | | | | | | | | | | | | | | | | systems where the data/stack/etc limits are too big for a 32 bit process. Move the 5 or so identical instances of ELF_RTLD_ADDR() into imgact_elf.c. Supply an ia32_fixlimits function. Export the clip/default values to sysctl under the compat.ia32 heirarchy. Have mmap(0, ...) respect the current p->p_limits[RLIMIT_DATA].rlim_max value rather than the sysctl tweakable variable. This allows mmap to place mappings at sensible locations when limits have been reduced. Have the imgact_elf.c ld-elf.so.1 placement algorithm use the same method as mmap(0, ...) now does. Note that we cannot remove all references to the sysctl tweakable maxdsiz etc variables because /etc/login.conf specifies a datasize of 'unlimited'. And that causes exec etc to fail since it can no longer find space to mmap things.
* Style sync.obrien2003-08-031-1/+1
|
* sys/sys/limits.h:kan2003-05-192-3/+3
| | | | | | | | | | | | | | | - Fix visibilty test for LONG_BIT and WORD_BIT. `#if defined(__FOO_VISIBLE)' is alays wrong because __FOO_VISIBLE is always defined (to 0 for invisibility). sys/<arch>/include/limits.h sys/<arch>/include/_limits.h: - Style fixes. Submitted by: bde Reviewed by: bsdmike Approved by: re (scottl)
* Style fixes.kan2003-05-041-8/+11
| | | | | | | | | Remove DBL_DIG, DBL_MIN, DBL_MAX and their FLT_ counterparts, they were marked for deprecation ever since SUSv1 at least. Only define ULLONG_MIN/MAX and LLONG_MAX if long long type is supported. Restore a lost comment in MI _limits.h file and remove it from sys/limits.h where it does not belong.
* Deprecate machine/limits.h in favor of new sys/limits.h.kan2003-04-291-63/+4
| | | | | | | Change all in-tree consumers to include <sys/limits.h> Discussed on: standards@ Partially submitted by: Craig Rodrigues <rodrigc@attbi.com>
* Add a new sys/limits.h file which in turn depends on machine/_limits.hkan2003-04-231-51/+44
| | | | | | | | | to get actual constant values. This is in preparation for machine/limits.h retirement. Discussed on: standards@ Submitted by: Craig Rodrigues <rodrigc@attbi.com> (*) Modified by: kan
* - Add vm_paddr_t, a physical address type. This is required for systemsjake2003-03-251-0/+1
| | | | | | | | | | | | | | | where physical addresses larger than virtual addresses, such as i386s with PAE. - Use this to represent physical addresses in the MI vm system and in the i386 pmap code. This also changes the paddr parameter to d_mmap_t. - Fix printf formats to handle physical addresses >4G in the i386 memory detection code, and due to kvtop returning vm_paddr_t instead of u_long. Note that this is a name change only; vm_paddr_t is still the same as vm_offset_t on all currently supported platforms. Sponsored by: DARPA, Network Associates Laboratories Discussed with: re, phk (cdevsw change)
* MB_LEN_MAX is not MD, move it to the MI limits.h.tjr2002-12-222-2/+0
|
* Add standards visibility conditionals. Change any uses of sigset_t tomike2002-10-131-3/+6
| | | | struct __sigset to avoid depending on objects from <sys/signal.h>.
* Initiate deorbit burn for the i386-only a.out related support. Moves arepeter2002-09-171-7/+0
| | | | | | | | | | | | | | | under way to move the remnants of the a.out toolchain to ports. As the comment in src/Makefile said, this stuff is deprecated and one should not expect this to remain beyond 4.0-REL. It has already lasted WAY beyond that. Notable exceptions: gcc - I have not touched the a.out generation stuff there. ldd/ldconfig - still have some code to interface with a.out rtld. old as/ld/etc - I have not removed these yet, pending their move to ports. some includes - necessary for ldd/ldconfig for now. Tested on: i386 (extensively), alpha
* Now that _BSD_CLK_TCK_ and _BSD_CLOCKS_PER_SEC_ are the same on allmike2002-09-031-53/+0
| | | | | architectures, move the definition directly into <time.h> and finish the removal of <machine/ansi.h>.
* Since arm and powerpc aren't far enough to set stathz, take amike2002-08-261-2/+2
| | | | | | | preemptive strike and change _BSD_CLK_TCK_ and _BSD_CLOCKS_PER_SEC_ to 128. Approved by: benno
* Move several MI types from <machine/_types.h> to <sys/_types.h>.mike2002-08-231-37/+0
| | | | | | | | | | | | | | | | These types are unlikely to ever become very MD. They include: clockid_t, ct_rune_t, fflags_t, intrmask_t, mbstate_t, off_t, pid_t, rune_t, socklen_t, timer_t, wchar_t, and wint_t. While moving them, make a few adjustments (submitted by bde): o __ct_rune_t needs to be precisely `int', not necessarily __int32_t, since the arg type of the ctype functions is int. o __rune_t, __wchar_t and __wint_t inherit this via a typedef of __ct_rune_t. o Some minor wording changes in the comment blocks for ct_rune_t and mbstate_t. Submitted by: bde (partially)
* o Merge <machine/ansi.h> and <machine/types.h> into a new headermike2002-08-213-181/+152
| | | | | | | | | | | | | | | | | | | | | called <machine/_types.h>. o <machine/ansi.h> will continue to live so it can define MD clock macros, which are only MD because of gratuitous differences between architectures. o Change all headers to make use of this. This mainly involves changing: #ifdef _BSD_FOO_T_ typedef _BSD_FOO_T_ foo_t; #undef _BSD_FOO_T_ #endif to: #ifndef _FOO_T_DECLARED typedef __foo_t foo_t; #define _FOO_T_DECLARED #endif Concept by: bde Reviewed by: jake, obrien
* Create a new header <machine/_stdint.h> for storing MD parts ofmike2002-07-294-231/+171
| | | | | | | | | <stdint.h>. Previously, parts were defined in <machine/ansi.h> and <machine/limits.h>. This resulted in two problems: (1) Defining macros in <machine/ansi.h> gets in the way of that header only defining types. (2) Defining C99 limits in <machine/limits.h> adds pollution to <limits.h>.
* Remove label_t and physadr, which seem to have never been used inmike2002-07-101-10/+0
| | | | | | FreeBSD. Submitted by: bde
* Remove an unused type.mike2002-07-091-3/+0
|
* Move __offsetof() macro from <machine/ansi.h> to <sys/cdefs.h>. It'smike2002-07-081-5/+0
| | | | | | hardly MD, since all our platforms share the same macro. It's not really compiler dependent either, but this helps in reducing <machine/ansi.h> to only type definitions.
* Make vm_pindex_t 64-bit on all platforms. This is necessary to avoidiedowse2002-06-231-1/+1
| | | | | | overflows with the large file sizes that UFS2 permits. Reviewed by: dillon, alc, tegge
* Move MI stuff out of MD param.h files.phk2002-05-141-48/+0
| | | | It can all still be overridden in the MD files should need suddenly arise.
* Remove the unused definitions of ctod() and dotc().phk2002-05-141-4/+0
|
* Sync with the other platforms.obrien2002-05-101-1/+1
|
* Guard against redefining __gnuc_va_list.obrien2002-03-241-1/+2
|
* Remove __P.alfred2002-03-201-1/+1
|
* We need machine/{signal,ucontext}.h to build a cross GCC compiler.obrien2001-12-092-0/+138
| | | | So craft the proper versions of these and commit em.
* Following sys/i386/include/ansi.h rev 1.33, add additional integer typesobrien2001-12-091-9/+57
| | | | in <machine/ansi.h> and that are required by <sys/stdint.h>.
* We need machine/types.h to build a cross GCC compiler.obrien2001-12-091-0/+72
| | | | | (copied from src/sys/i386/include/types.h rev 1.23, except for the label_t size, which is '10' everywhere BUT on i386)
* machine/limits.hobrien2001-12-092-0/+430
| | | | (taken from i386/include/limits.h rev 1.19)
* o Stop abusing MD headers with non-MD types.mike2001-12-011-2/+0
| | | | | | | | | | | | | | | o Hide nonstandard functions and types in <netinet/in.h> when _POSIX_SOURCE is defined. o Add some missing types (required by POSIX.1-200x) to <netinet/in.h>. o Restore vendor ID from Rev 1.1 in <netinet/in.h> and make use of new __FBSDID() macro. o Fix some miscellaneous issues in <arpa/inet.h>. o Correct final argument for the inet_ntop() function (POSIX.1-200x). o Get rid of the namespace pollution from <sys/types.h> in <arpa/inet.h>. Reviewed by: fenner Partially submitted by: bde
* Remove funky right justification.mike2001-10-231-8/+8
| | | | Pointed out by: bde
* Try two on the preprocessing logic.obrien2001-10-191-1/+1
| | | | Reviewed by: ru
* Blah, fix braino where ru had to remind me of proper preprocessor syntax.obrien2001-10-191-1/+1
| | | | Bad fingers, no cookie.
* My attempts at minimizing the number of #def's got me in trouble.obrien2001-10-181-1/+4
|
* Make MAXTSIZ, DFLDSIZ, MAXDSIZ, DFLSSIZ, MAXSSIZ, SGROWSIZ loaderps2001-10-101-1/+1
| | | | | | | tunable. Reviewed by: peter MFC after: 2 weeks
* o Remove some GCCisms in src/powerpc/include/endian.h.mike2001-08-301-0/+2
| | | | | | | | | | | | | | | | | | | | o Unify <machine/endian.h>'s across all architectures. o Make bswapXX() functions use a different spelling of u_int16_t and friends to reduce namespace pollution. The bswapXX() functions don't actually exist, but we'll probably import these at some point. Atleast one driver (if_de) depends on bswapXX() for big endian cases. o Deprecate byteorder(3) prototypes from <sys/types.h>, these are now prototyped indirectly in <arpa/inet.h>. o Deprecate in_addr_t and in_port_t typedefs in <sys/types.h>, these are now typedef'd in <arpa/inet.h>. o Change byteorder(3) prototypes to use standards compliant uint32_t (spelled __uint32_t to reduce namespace pollution). o Document new preferred headers and standards compliance. Discussed with: bde PR: 29946 Reviewed by: bmilekic
* Don't need the .keep_me files. Obrien and I committed past each other.imp2001-07-012-1/+1
| | | | | | | Add 0-9 to the list of possible kernel names at matsushita-san's suggestion. Submitted by: Makoto MATSUSHITA-san <matusita@jp.FreeBSD.org>
* Add .cvsignore so that CVS stop's complaining about people's kernel build dirs.obrien2001-06-301-0/+1
|
* Ensure sys/${MACHINE}/compile/FOO existsobrien2001-06-301-0/+0
| | | | Reviewed by: arch, imp, peter, and the USENIX terminal room secret kernel cabal
* Fix style of defines.obrien2001-06-091-1/+1
|
* Make _BSD_TIME_T_ (time_t) an `int' rather than `long'. This will helpobrien2001-05-181-1/+1
| | | | | | | flag errors where programmers assume time_t is a long, which it is not on 64-bit platforms. Submitted by: bde
* Style changes -- revert ordering to mostly two revs ago.obrien2001-05-181-58/+59
| | | | | | Embellish some comments, fix tab'ing. Requested by: bde
* Consistently define the rune types.obrien2001-05-161-4/+17
| | | | Follow NetBSD's lead and add a _BSD_MBSTATE_T_ type.
* Move the int typedefs to the top so they can be used in defining other types.obrien2001-05-161-19/+24
| | | | | | Ensure every platform has __offsetof. Make multiple inclusion detection consistent with other <platform>/include/*.h files.
* Correct disordering which is corresponding to bde's fix toume2001-02-171-1/+1
| | | | i386/include/ansi.h.
* Correct 2nd argument of getnameinfo(3) to socklen_t.ume2001-02-151-0/+1
| | | | Reviewed by: itojun
* RIP <machine/lock.h>.markm2001-02-111-36/+0
| | | | | | | Some things needed bits of <i386/include/lock.h> - cy.c now has its own (only) copy of the COM_(UN)LOCK() macros, and IMASK_(UN)LOCK() has been moved to <i386/include/apic.h> (AKA <machine/apic.h>). Reviewed by: jhb
* Convert all simplelocks to mutexes and remove the simplelock implementations.jasone2001-01-241-14/+0
|
* Remove seconds types we don't use that came in thru the NetBSD heiratage.obrien2001-01-081-1/+0
|
* StrongARM platform-specific definitions.obrien2001-01-046-0/+527
OpenPOWER on IntegriCloud