Commit graph

4556 commits

Author SHA1 Message Date
Ben Gras a8b1dd7809 Added UPDATING note about newer clang required. 2012-02-14 16:42:58 +01:00
David van Moolenbroek 0f940cc58a user(8): remove output file from source 2012-02-14 15:49:04 +01:00
Antoine Leca f4ffbc6072 Make ELF kernel boot faster 2012-02-14 14:52:15 +01:00
Evgeniy Ivanov c9f65d5ae6 update_bootcfg script
. script to make neat menu entries for all /boot/minix/* dirs
	  in /boot.cfg, read by new bootloader
	. invoked when new images are created
2012-02-14 14:52:14 +01:00
Ben Gras 2fe8fb192f Full switch to clang/ELF. Drop ack. Simplify.
There is important information about booting non-ack images in
docs/UPDATING. ack/aout-format images can't be built any more, and
booting clang/ELF-format ones is a little different. Updating to the
new boot monitor is recommended.

Changes in this commit:

	. drop boot monitor -> allowing dropping ack support
	. facility to copy ELF boot files to /boot so that old boot monitor
	  can still boot fairly easily, see UPDATING
	. no more ack-format libraries -> single-case libraries
	. some cleanup of OBJECT_FMT, COMPILER_TYPE, etc cases
	. drop several ack toolchain commands, but not all support
	  commands (e.g. aal is gone but acksize is not yet).
	. a few libc files moved to netbsd libc dir
	. new /bin/date as minix date used code in libc/
	. test compile fix
	. harmonize includes
	. /usr/lib is no longer special: without ack, /usr/lib plays no
	  kind of special bootstrapping role any more and bootstrapping
	  is done exclusively through packages, so releases depend even
	  less on the state of the machine making them now.
	. rename nbsd_lib* to lib*
	. reduce mtree
2012-02-14 14:52:02 +01:00
Evgeniy Ivanov 2487445f5f make panic() work for multiboot/elf case
. we cannot use the boot monitor to print the system diag buffer
	. for serial, we do nothing, just reset, everything is already printed
	. for not-serial, we print the current diag buffer using direct video
	  memory access from the kernel
2012-02-14 14:48:10 +01:00
Ben Gras a73c217bf6 clang compile fixes 2012-02-14 14:05:52 +01:00
Ben Gras f94e915e33 release: fix for rm -rf
. new rm can return failure exit code
2012-02-14 14:05:52 +01:00
Evgeniy Ivanov f6c5d09978 ELF hardlinks in /boot for compatibility with old boot. 2012-02-14 12:53:34 +01:00
Thomas Veerman 80c4685324 VFS: replace VFS with AVFS 2012-02-13 16:53:21 +00:00
Thomas Veerman bba63ef665 libmthread: fix typo in comments 2012-02-13 13:50:32 +00:00
Thomas Veerman accaae9b2c libmthread: add guard pages to stacks
Add guard pages to the top of the stack to catch overflow errors.
Moreover, fix a bug where libmthread would keep using a stack that was
just deallocated; a detached thread would deallocate its own stack after
it was finished running).
2012-02-13 13:50:31 +00:00
Thomas Veerman 0949f5b342 libmthread: don't free() user allocated stack space 2012-02-13 13:50:13 +00:00
David van Moolenbroek de89517711 libblockdriver: increase stack size to 8KB per thread 2012-02-11 15:16:22 +01:00
Ben Gras 35abd4867a silence makewhatis in daily script 2012-02-10 17:25:48 +01:00
Antoine Leca f87b9a3d2d sys: move some include dirs
. sys/machine should be sys/arch/i386
2012-02-10 17:02:47 +01:00
Antoine Leca 02b46221dd .gitignore: add another generated directory 2012-02-10 17:02:04 +01:00
Thomas Veerman 0c99f4f4b7 AVFS: reinitialize lookup object before reuse 2012-02-10 09:50:21 +00:00
Antoine Leca e93c1c9f28 Also clean share/*, including zoneinfo 2012-02-10 00:46:55 +01:00
Evgeniy Ivanov 3ab668c366 Fix shutdown message in setup.sh 2012-02-09 18:54:54 +01:00
Evgeniy Ivanov 1ae162d673 Proper banner for CD. 2012-02-09 18:54:54 +01:00
Evgeniy Ivanov 61a29c4291 Warn users about non NetBSD mbr.
New boot doesn't work with old mbr, when there are multiple MINIX
partitions. Warn user about it and suggest to install new mbr.
2012-02-09 18:54:53 +01:00
Evgeniy Ivanov 6f88dc8713 Support reinstall and new boot. 2012-02-09 18:54:52 +01:00
Evgeniy Ivanov d4ddfeb2c0 Build both old boot and new boot (for setup). 2012-02-09 18:54:51 +01:00
Evgeniy Ivanov 5a46076652 Build release CD based on new boot.
Also add stuff for usb stick and hdemu.
2012-02-09 18:54:50 +01:00
Antoine Leca 3f2ab5b34b writeisofs: also boots plain binaries with -B
With -n -b file, a.out boot images can be used for CD booting;
with the new -n -B file option, plain binary (like bootxx_cd9660)
can be used instead.
Restore working the -h and -f options while there.
And add a new -F option for 2.8MB floppy image.
2012-02-09 18:54:49 +01:00
Antoine Leca 2ae897db7b writeisofs: improve compatibility
Register file timestamps
Remember the path tables in the primary descriptor
Put the size of the parent directory in the \1 entry, not own size
Allow the use of -b option without -a

Notes:
* Still missing the man page
* Filenames are still trimmed to 12 characters, because of
  8.3 MS-DOS inherited compatibility (ISO9660 level 1);
  also note that 7.4 or 9.2 filenames are accepted though
* Final . at end of filenames without extension is still missing
* VMS-compatible ;1 version suffix is still omitted
* Limit of 65,535 directories in path tables is not checked
2012-02-09 18:54:49 +01:00
Evgeniy Ivanov 13d8a6969a Add new boot to the setup. 2012-02-09 18:54:48 +01:00
Evgeniy Ivanov 68bd32bedb Build ELF for release (chrootmake). 2012-02-09 18:54:47 +01:00
Antoine Leca 7a60d6d33f Switch part/autopart to new mbr bootblock 2012-02-09 18:54:46 +01:00
Ben Gras 636264c1c6 Fixes for loading kernel with multiboot
While parsing command line, only consider "variable=value" to
be part of environment.

Patch by Antoine Leca.
2012-02-09 18:54:45 +01:00
Evgeniy Ivanov 3dd49be938 Allow human readable name for the root device.
Instead of using rootdev= or ramimagedev= in the boot monitor
which are changed to numbers and cannot be used with other
loaders, rootdevname= or ramimagename= are (MINIX-style)
device names always stored as strings.

Patch by Antoine Leca.
2012-02-09 18:54:45 +01:00
Evgeniy Ivanov 8979450631 Rotate kernels/images/modules.
Kernels and system services are stored in a single directory in the
/boot/minix/ and rotated like /boot/images. /boot/minix_latest slink
is created automatically.
System serives are prefixed by "modNN_" to allow to easily load them
using "mod*" pattern.
2012-02-09 18:54:44 +01:00
Evgeniy Ivanov 60a2ce010a Integrate new boot stuff into build scheme.
- Build sys with everything else.
- Gitignore files built by new boot stuff.
2012-02-09 18:54:43 +01:00
Evgeniy Ivanov 7f2d47d84c Remove libkern, leave just header.
Boot stuff dependencies from NetBSD.

Patch by Antoine Leca. Relocated to src/sys.

The port is using the same libminc.a as usual MINIX services (and does
not use NetBSD libkern); the headers imported from NetBSD sys/ tree
have been kept to a minimum (still numbers higher than 30 though.)

Note the peculiar way to use libraries (libsa, libi386, etc.): the
source code is shared, but each component builds its own copy of the
library, with its own set of preprocessor defines.
2012-02-09 18:54:42 +01:00
Evgeniy Ivanov 002fecdd9e Port cdboot. 2012-02-09 18:54:41 +01:00
Evgeniy Ivanov 174e3c15af Import cdboot. 2012-02-09 18:54:40 +01:00
Evgeniy Ivanov 81d26afebe Port MBR.
Patch by Antoine LECA.
2012-02-09 18:54:39 +01:00
Evgeniy Ivanov 6acebc04b6 Import sys/arch/i386/stand/mbr. 2012-02-09 18:54:39 +01:00
Evgeniy Ivanov fa6c4a2580 Port installboot as installboot_nbsd and rename the old one.
Also following functionality was added:
- Add install_master to the installboot from NetBSD.
- Check if enough space for bootxx.

Old installboot was renamed to installboot_minix.
2012-02-09 18:54:24 +01:00
Evgeniy Ivanov 9f8e6353e5 Import usr.sbin/installboot. 2012-02-09 18:48:13 +01:00
Evgeniy Ivanov 4c4c045f87 Port bootxx. 2012-02-09 18:48:13 +01:00
Evgeniy Ivanov 602233213e Adjust boot from NetBSD.
- Add load_mods command to boot2 (load_mods /dir/mod*).
- Rename resulting binary to boot_monitor.
- Change default banner when used in MINIX.
2012-02-09 18:48:13 +01:00
Evgeniy Ivanov f119e63750 Fix bug in libsa/ls. 2012-02-09 18:48:13 +01:00
Evgeniy Ivanov 58a2b0008e Initial import of libsa, libkern, bootxx, boot. 2012-02-09 18:48:13 +01:00
Thomas Veerman 972a791882 AVFS/APFS: small cleanup 2012-02-09 16:33:24 +00:00
Thomas Veerman abd6043a2f AVFS: fix various system call interruption issues
- When cancelling ioctls, VFS did not remember which file descriptor
   to cancel and sent bogus to the driver.
 - Select state was not cleaned up when select()ing process was
   interrupted.
 - Process trying to do a system call at the exact same time as a user
   trying to interrupt the process, could cause the system call worker
   thread to overwrite state belonging to the worker thread trying to
   exit the process. This led to hanging threads and eventual system hang
   when this happens often enough.
2012-02-09 14:24:28 +00:00
Thomas Veerman 4498750810 libchardriver: fix open reply for async devices 2012-02-09 14:17:54 +00:00
Ben Gras cc1ae59c9b -lminixutil link fixes
. not available and not needed for clang
2012-02-06 16:08:29 +01:00
Evgeniy Ivanov 65f97ea344 Enlarge ramdisk size (blocks). 2012-02-06 16:07:55 +01:00