Commit Graph

1518 Commits

Author SHA1 Message Date
mrg 091c49eab9 remove "@echo done" from 4 rules that don't need it and the random "done"
in my build logs don't help understanding.
2015-10-29 00:18:55 +00:00
uebayasi ea72de740f Order library object build. 2015-09-07 03:44:19 +00:00
uebayasi 9068ec741b Sprinkle more done messages. 2015-09-07 03:20:18 +00:00
uebayasi dd204a345e In kernel lib build, print message when things not only start bug also end. 2015-09-06 15:34:55 +00:00
uebayasi f1616b9172 Set buildprefix. 2015-09-03 02:46:04 +00:00
uebayasi 593f1cf00f Use "prefix" to specify path out of $S. 2015-09-01 13:46:29 +00:00
dholland ec175d5025 Add new accessors for the d_type and d_namlen fields of struct lfs_direct.
Napalm the old byteswap access logic for these.
2015-09-01 06:16:58 +00:00
dholland eb2560adae The ifile's inode number is constant. (it is always 1)
Therefore, storing the value in the superblock and reading it out
again is silly and offers the opportunity for it to become corrupted.
So, don't do that (most of the code already didn't) and use the
existing constant instead. Initialize new 32-bit superblocks with
the value for the sake of old userland programs, but don't keep the
value in the 64-bit superblock at all.

(approved by Margo Seltzer)
2015-09-01 06:12:04 +00:00
uebayasi e7a049ec66 Include opt_diagnostic.h. 2015-08-30 07:55:45 +00:00
dholland b1828e0ba3 Hack up dinode usage to be 64 vs. 32 as needed. Part 1.
(This part changes the native lfs code; the ufs-derived code already
has 64 vs. 32 logic, but as aspects of it are unsafe, and don't
entirely interoperate cleanly with the lfs 64/32 stuff, pass 2 will be
rehashing that.)
2015-08-12 18:28:00 +00:00
dholland 32577c4f1c Add IFILE32 and IFILE64 structures for the on-disk ifile entries.
Add and use accessors. There are also a bunch of places that cast and
I hope I've found them all...
2015-08-12 18:25:51 +00:00
dholland 9e5184b86b Add a (draft) 64-bit superblock. Make things build again.
Add pieces of support for using both superblock types where
convenient, and specifically to the superblock accessors, but don't
actually enable it anywhere.

First substantive step on PR 50000.
2015-08-02 18:18:09 +00:00
tsutsui f2142f537b Revert untested and unnecessary change in previous rev 1.36.
Our autobuild doesn't always reflect the latest fixes.
2015-07-30 15:29:52 +00:00
christos 7c7a7b43d2 add mulsi3, needed by inet_addr.o 2015-07-30 07:44:40 +00:00
dholland 62d11b422e Move struct salfs back inside libsa now that lfs_accessors.h is separate. 2015-07-28 05:13:14 +00:00
dholland 34f0d74c9e Add a new lfs header file: lfs_accessors.h.
This contains all the accessor functions and macros out of lfs.h.
Add an include of lfs_accessors.h after all uses of lfs.h... except
for code that wants to define its own struct lfs-alike that the
accessors are supposed to play along with. For these, set STRUCT_LFS
and include lfs_accessors.h after the necessary structure has been
defined, so that lfs_accessors.h can emit functions in terms of it.
2015-07-28 05:09:34 +00:00
isaki b0705370de white space -> tab. 2015-07-25 07:06:11 +00:00
dholland f59b8f4b3a Switch to accessor functions for elements of the LFS on-disk
superblock. This will allow switching between 32/64 bit forms on the
fly; it will also allow handling LFS_EI reasonably tidily. (That
currently doesn't work on the superblock.)

It also gets rid of cpp abuse in the form of fake structure member
macros.

Also, instead of doing sleep/wakeup on &lfs_avail and &lfs_nextseg
inside the on-disk superblock, add extra elements to the in-memory
struct lfs for this. (XXX: these should be changed to condvars, but
not right now)

XXX: this migrates a structure needed by the lfs code in libsa (struct
salfs) into lfs.h, where it doesn't belong, but for the time being
this is necessary in order to allow the accessors (and the various
lfs macros and other goop that relies on them) to compile.
2015-07-24 06:56:41 +00:00
dholland 656ac806f0 Rearrange the structures in the lfs bootbollocks slightly.
This generates the same output (at least on amd64) but will be more
robust until we're ready to deploy lfs64 bootblocks too.

XXX: I don't think these actually work right now, and the logic for
picking between v1 and v2 lfs formats (which is not related to ffsv1
vs. ffsv2) is definitely broken. But I haven't made it any worse.
2015-07-24 06:53:24 +00:00
matt c98065b9f6 If the platform support popcount as a __builtin, use that in preference
to the libc versions.
2015-05-29 19:38:59 +00:00
matt 71577e7b2d Use ARM_ENTRY since these aren't thumb compatible. 2015-05-25 18:41:08 +00:00
christos 925d349b50 tricks with sizeof() make coverity complain. 2015-05-09 18:49:36 +00:00
riastradh 7fd36dbc4a Add container_of to libkern.
Given x = &c->f, container_of(x, T, f) yields c, where T is the type
of c.

Discussed on tech-kern a while ago:

https://mail-index.netbsd.org/tech-kern/2013/03/21/msg015131.html
2015-04-20 15:22:17 +00:00
mrg 2603e0673f remove various HAVE_GCC=45 fragments. 2015-04-15 19:13:46 +00:00
joerg 72523275ec Provide _Unwind_Find_FDE for libgcc_s compatibility. 2015-02-17 21:02:33 +00:00
joerg 1c5d00e7d3 Force FPU support for Clang, don't disable IAS completely. 2015-01-29 20:45:16 +00:00
joerg e9d4ea8b6a Fix binary search when search value is in the last block, but not equal
to the start of the range. PR 49444.
2015-01-29 20:05:56 +00:00
christos d36e0de1e1 strtoi and strtou for the kernel 2015-01-16 18:36:31 +00:00
christos 96739e65c5 bcdtobin and bintobcd are now inlines in <dev/clock_subr.h> 2014-11-20 16:25:16 +00:00
christos 035b9a6c6d prefer our own unwind.h 2014-10-23 17:51:22 +00:00
joerg 5e9701e670 Introduce a separate bit mask for the return address. Use it on HPPA. 2014-09-27 12:08:46 +00:00
matt 6cf6fe02a9 New files for Userland support of UCB RISC-V (both 32-bit and 64-bit) 2014-09-19 17:36:24 +00:00
joerg 35d69bab34 Revert 1.33 and 1.34 for now, until either .INVISIBLE is reinstanciated
or random.S dropped.
2014-09-08 12:12:19 +00:00
matt 27620987b8 New files for OR1K support 2014-09-03 19:34:25 +00:00
matt a23afddde6 Add OR1K support 2014-09-03 19:27:21 +00:00
matt 905f9a1ab9 Make random.S invisible for coldfire too (e.g. anything not "m68k") 2014-09-01 07:32:35 +00:00
tsutsui 1a8dd01ee2 Revert stupid and untested changes. There was no extra copy in the macros.
Christos, you should reread our commit guideline as a Core member.
2014-08-30 14:24:02 +00:00
christos c30be26b21 remove extra copy of the macro. 2014-08-30 13:09:27 +00:00
tsutsui e58317de49 Rename padding macros to reflect and clarify the original intention.
No binary changes on luna68k (which has -DLIBSA_PRINTF_WIDTH_SUPPORT).
2014-08-30 12:23:38 +00:00
christos 2fac5fd5c7 use .INVISIBLE to hide random.S, instead of extra rules. 2014-08-27 08:51:37 +00:00
tls ea6af427bd Merge tls-earlyentropy branch into HEAD. 2014-08-10 16:44:32 +00:00
isaki 7b2cf7659d Unify all arch/*/stand's atoi() to MI libsa.
lib/libsa/atoi.c was separated from lib/libsa/bootcfg.c.
PR/49084
2014-08-10 07:40:49 +00:00
matt 547b3a3b01 Changes to existing files to enable building AARCH64 userland.
evbarm64-el
This is clang only.  While gcc4.8 supports aarch64, no netbsd support has
been written for aarch64 with gcc4.8.
2014-08-10 05:56:36 +00:00
matt beb9c6d1b5 Preliminary files for AARCH64 (64-bit ARM) support.
Enough for a distribution build.
2014-08-10 05:47:35 +00:00
joerg 3d95c8af33 Fix braino in last commit and free the node iff the insert failed. 2014-07-20 14:40:58 +00:00
lneto 4ab4902eb2 lua: updated from 5.1 to 5.3 work3
* lua(1):
  - changed lua_Integer to intmax_t
  - updated distrib/sets/lists and etc/mtree
  - updated bsd.lua.mk
  - fixed bozohttpd (lua-bozo.c)
  - compatibilized bindings: gpio, sqlite
* lua(4):
  - removed floating-point and libc dependencies using '#ifndef _KERNEL'
  - fixed division by zero and exponentiation
  - libkern: added isalnum(), iscntrl(), isgraph(), isprint() and ispunct()
  - acpica: removed isprint() from acnetbsd.h
  - libc: moved strcspn.c, strpbrk.c and strspn.c to common
  - removed stub headers
  - compatibilized bindings: luapmf, luasystm
* reorganized luaconf.h
* updated doc/CHANGES and doc/RESPONSIBLE
2014-07-19 18:38:33 +00:00
joerg 827ab89a76 Use static_cast for rb_tree_insert_node void * return value. 2014-07-14 11:36:39 +00:00
jmcneill 65c6ea680a ${.PARSEDIR} not .${PARSEDIR} for Makefile.compiler-rt include 2014-07-04 16:44:26 +00:00
joerg 1aed1443e6 IAS is clang specific. 2014-06-30 20:42:31 +00:00
joerg 182cb3ee17 .fpu is not handled correctly by LLVM's assembler parser, so use GAS for
now.
2014-06-28 20:18:15 +00:00