]> Zhao Yanbai Git Server - minix.git/log
minix.git
11 years agobuild:arm remove "start usb" from u-boot command line. 62/662/2
Kees Jongenburger [Fri, 21 Jun 2013 11:20:53 +0000 (13:20 +0200)]
build:arm remove "start usb" from u-boot command line.

Removed "start usb" from u-boot command line as it is not needed and
speeds up tftp booting.

Change-Id: I416f7eb0467888d1b69ef3dad09df0639fb63f10

11 years agoarm:increase the mmc driver process priority. 61/661/2
Kees Jongenburger [Fri, 21 Jun 2013 13:49:09 +0000 (15:49 +0200)]
arm:increase the mmc driver process priority.

Increase driver process priority to prevent starvation. Without
special attribute drivers will have the same priority as other
userland processes this. Posix test 1 was taking so much resources
that it triggered alarms in the MMC driver.

Change-Id: Icd3295d8f2a4a284418327a3715641fe9a3b3043

11 years agoarm:mmc driver refactor and timeout fix for BeagleBoneBlack. 60/660/3
Kees Jongenburger [Tue, 18 Jun 2013 19:39:04 +0000 (21:39 +0200)]
arm:mmc driver refactor and timeout fix for BeagleBoneBlack.

When we send MMC commads that contain data the controller provides no
description of the order of events and we need to be able to send data
from and to the controller "when needed". Changed the code to react
on buffer read and buffer write ready based on interrupts.

Change-Id: I60c9140bf0e45b74be6475054564d4e1bd89f21e

11 years agopadconf: remove duplicate code. 59/659/2
Thomas Cort [Wed, 19 Jun 2013 11:00:44 +0000 (07:00 -0400)]
padconf: remove duplicate code.

The same code block was repeated twice (copy & paste error).

Change-Id: I2035c9fff46b3f0a52084c2d6c871bbda6f8f07f

11 years agoarm timer fix 58/658/2
Ben Gras [Wed, 19 Jun 2013 09:39:05 +0000 (11:39 +0200)]
arm timer fix

. set 'done' once initialized so 32-bit read frc works,
  thanks to keesj
. make sure the software-implemented upper 32 bit of the 64-bit
  "tsc" value works OK by adding an assert in one of its calls

Change-Id: I5ce24fea919f4610c6a86ac7ec9f04b1815620c2

11 years agoarm:mmc driver refactor. 57/657/1
Kees Jongenburger [Thu, 13 Jun 2013 12:53:59 +0000 (14:53 +0200)]
arm:mmc driver refactor.

Generalize the usage of mmc_send_cmd function to allow
it to transfer data and remove direct invocations to
mmchs_send_cmd.

Change-Id: Iabb9a7d3f4ec57536407b369531ded2b8b649cce

11 years agoLLVM bitcode for almost the whole source tree 55/655/3
Anton Kuijsten [Mon, 17 Jun 2013 14:51:49 +0000 (14:51 +0000)]
LLVM bitcode for almost the whole source tree

Change-Id: Ibc6f89de112e0649c3a3bfe49c2baa2ed0746212

11 years agoclkconf: move clkconf from libgpio to it's own lib 54/654/2
Thomas Cort [Mon, 17 Jun 2013 12:23:31 +0000 (08:23 -0400)]
clkconf: move clkconf from libgpio to it's own lib

Clock configuration will be needed by other/future subsystems such as i2c.
Extract the functionality from libgpio and put it into it's own library.

Change-Id: I6f6de0b3fb4d305ddfeac74123b78c983d1318dd

11 years agofix for tap tests 53/653/2
Ben Gras [Mon, 17 Jun 2013 09:12:17 +0000 (09:12 +0000)]
fix for tap tests

Change-Id: Ic79cfdaf420cbf15a1aba6e30c821f35b726d0da

11 years agolibsys: correct cast priority 52/652/1
Ben Gras [Mon, 17 Jun 2013 08:40:28 +0000 (10:40 +0200)]
libsys: correct cast priority

Change-Id: I223482884c0e27726e8100209b203a33ded66f59

11 years agokernel, libsys: make it arm-target-independent 49/649/2
Ben Gras [Sun, 16 Jun 2013 22:33:47 +0000 (00:33 +0200)]
kernel, libsys: make it arm-target-independent

. by making the address and frequency of the
  free running clock kinfo members, set at runtime
  in the kernel, instead of compile time constants
  in libsys

Change-Id: I4a8387302d4d3ffd47d2448525725683a74c9a4f

11 years agomake test run script produce TAP if desired 48/648/2
Ben Gras [Sun, 16 Jun 2013 17:53:18 +0000 (17:53 +0000)]
make test run script produce TAP if desired

. primarily intended for jenkins
. see http://testanything.org/ for more info

Change-Id: If0e942f75898eed640f9edd89ef8ffd0bab9726e

11 years agoa few DBG=-g build fixes, both arches 47/647/3
Ben Gras [Sat, 15 Jun 2013 23:43:39 +0000 (23:43 +0000)]
a few DBG=-g build fixes, both arches

- setlogin() not available
- softfloat needed in -lminc for arm
- libminc: we have to set LIBCDIR for the included files,
  so use that instead of LIBCSRCDIR

Change-Id: I7f92621ebbca9ce08dc377b3fa61dee089071757

11 years agosome arm uart fixes 46/646/2
Ben Gras [Thu, 13 Jun 2013 13:08:26 +0000 (15:08 +0200)]
some arm uart fixes

. always keep reading data from uart so the interrupt is
  not continually asserted if data is sent but no process
  reads it
. increase tx & rx fifo trigger levels -> reduces the number
  of interrupts necessary
. bigger rx/tx buffers

Change-Id: I3cf7c73b22ae2fc091b845d516ba4aa53e892cda

11 years agovfs: patch for unpause()/revive() race condition 45/645/2
Ben Gras [Wed, 12 Jun 2013 18:42:41 +0000 (18:42 +0000)]
vfs: patch for unpause()/revive() race condition

. unpause() and revive() can race - revive() can run during
  a device i/o unblock, causing two sendnb()s to occur, and the
  2nd one to fail
. this can easily happen when a process is blocking on tty and
  is then killed by a signal - tty cancels the i/o and then
  kills the process by a signal

Change-Id: Ia319acaedfa336b78c030a2c4af7246959bdcf87

11 years agoarm:remove pre 1:1 mapping workarounds. 32/632/3
Kees Jongenburger [Wed, 12 Jun 2013 08:19:22 +0000 (10:19 +0200)]
arm:remove pre 1:1 mapping workarounds.

Change-Id: I5a690cf5a561cdca9b9c1f031402f80fd203c92d

11 years agoarm:no longer rely on a 1:1 phys mapping for device memory. 31/631/3
Kees Jongenburger [Tue, 11 Jun 2013 14:07:43 +0000 (16:07 +0200)]
arm:no longer rely on a 1:1 phys mapping for device memory.

Change-Id: Ie3f61069f882c37dbb81dee813fdfd883e7468cf

11 years agoallow ldd mmap fallback 30/630/2
Anton Kuijsten [Wed, 12 Jun 2013 05:58:46 +0000 (05:58 +0000)]
allow ldd mmap fallback

Change-Id: Ia7b8aa88c3f063c804869065719ac0cbf049b7dd

11 years agois: leave newline for stacktrace for SF9 dump 29/629/2
Ben Gras [Tue, 11 Jun 2013 15:19:38 +0000 (15:19 +0000)]
is: leave newline for stacktrace for SF9 dump

. otherwise the standard console screen can't hold them

Change-Id: Iea2c047b715bc456747aace8957d8c5eeb94d0fa

11 years agoinline sendnb should not call send vector 28/628/2
Ben Gras [Tue, 11 Jun 2013 15:13:52 +0000 (15:13 +0000)]
inline sendnb should not call send vector

. also vfs has to reply to a vm call - so use asynsend for that

Change-Id: I30ac1e591191dea5c99e25b03151a4415d1151b0

11 years agoinit: handle getty string of "" (default) 27/627/2
Ben Gras [Tue, 11 Jun 2013 14:30:31 +0000 (14:30 +0000)]
init: handle getty string of "" (default)

. the default entry for disabled ttys for getty
  in /etc/ttys is "", but init crashed on handling that
  string.

Change-Id: Ib7cd6c6869e338f47df0aa5abed36f15eda4f6ff

11 years agotty: i386: rs232 fix 26/626/2
Ben Gras [Tue, 11 Jun 2013 14:11:57 +0000 (14:11 +0000)]
tty: i386: rs232 fix

. ignore interrupt (stop interrupt check loop) if
  interrupt bit not set; limit loop too
. mask off other bits when testing bits in the status register
. this fixes rs232 output that would otherwise never get re-triggered
  as too many bits were set in the status byte to match the
  possibilities.

Change-Id: I311c93377fa8fb477ee9a756455fdeda780e6ba1

11 years agolibc syslog, syslogd, logger, uds fixes 25/625/2
Ben Gras [Mon, 10 Jun 2013 23:47:42 +0000 (23:47 +0000)]
libc syslog, syslogd, logger, uds fixes

changes necessary for libc syslog() using a unix domain socket.

. libc syslog: don't use send() connect() for unix
  datagram sockets, minix wants write() and ioctl()
. syslogd: listen on _PATH_LOG unix domain socket
. logger: warnings fixes
. pfs: make uds dgram socket type nonblocking so
  syslog() doesn't block
. vfs: add sanity check for empty fd in unpause()

Change-Id: Ied136c6fe0cc288f5a53478f1eebccc1ab1f39fb

11 years agoGold linker support for entire source tree
Anton Kuijsten [Tue, 11 Jun 2013 19:08:05 +0000 (19:08 +0000)]
Gold linker support for entire source tree

11 years agoImporting usr.bin/shuffle
Thomas Cort [Sun, 2 Jun 2013 19:45:38 +0000 (19:45 +0000)]
Importing usr.bin/shuffle

11 years agoarm:tty enable FIFO 19/619/4
Kees Jongenburger [Fri, 31 May 2013 14:20:38 +0000 (16:20 +0200)]
arm:tty enable FIFO

Change-Id: Iaaa7c0bcb40c2cce2423c1defc14809ed6c70e9c

11 years agolibexec/fptd/ftpcmd.c: Removed as it is generated. 17/617/2
Lionel Sambuc [Sun, 2 Jun 2013 16:36:15 +0000 (18:36 +0200)]
libexec/fptd/ftpcmd.c: Removed as it is generated.

Change-Id: Id700ed9c2462e998f9c74482f80ee95b644a1399

11 years agovm: bugfix: cover vfs_request-in-callback case 21/621/1
Ben Gras [Wed, 5 Jun 2013 15:02:56 +0000 (15:02 +0000)]
vm: bugfix: cover vfs_request-in-callback case

Change-Id: I16fccd9938fe8edab83c6c2e327d27d65ff20224

11 years agoImporting libexec/fingerd 16/616/1
Thomas Cort [Sat, 1 Jun 2013 14:14:33 +0000 (14:14 +0000)]
Importing libexec/fingerd

11 years agoImporting usr.bin/finger
Thomas Cort [Sat, 1 Jun 2013 14:20:33 +0000 (14:20 +0000)]
Importing usr.bin/finger

11 years agoImporting usr.bin/bdes
Thomas Cort [Fri, 31 May 2013 22:12:09 +0000 (22:12 +0000)]
Importing usr.bin/bdes

11 years agoremove vm_yield_block_get_block leftovers. 15/615/1
Qi Yong [Sat, 1 Jun 2013 12:51:31 +0000 (20:51 +0800)]
remove vm_yield_block_get_block leftovers.

11 years agofix some warnings 12/612/1
Ben Gras [Fri, 31 May 2013 20:37:25 +0000 (20:37 +0000)]
fix some warnings

Change-Id: I1f3fa582d8e3ddb3c981784dddb13e740102f4f3

11 years agovm: handle disappearing process case 11/611/1
Ben Gras [Fri, 31 May 2013 17:31:55 +0000 (17:31 +0000)]
vm: handle disappearing process case

Change-Id: Id96759883e4cdb175c79dcef7ef5ff254612101f

11 years agold.elf_so, grep, make: use mmap() 66/566/14
Ben Gras [Sat, 16 Mar 2013 03:19:47 +0000 (03:19 +0000)]
ld.elf_so, grep, make: use mmap()

. let the dynamic linker use a real file mmap(), reverting
  most of the minix-specific changes
. except for a fallback mode for systems or filesystems that
  do not support mmap() on files
. make, grep: let them use mmap() too, with fallback

Change-Id: I11c0c9ad439d713917a6f5c2d196558f6c03eabd

11 years agovm: mmap support 44/544/15
Ben Gras [Tue, 7 May 2013 12:36:09 +0000 (12:36 +0000)]
vm: mmap support

. test74 for mmap functionality
. vm: add a mem_file memory type that specifies an mmap()ped
  memory range, backed by a file
. add fdref, an object that keeps track of FD references within
  VM per process and so knows how to de-duplicate the use of FD's
  by various mmap()ped ranges; there can be many more than there can
  be FD's
. turned off for now, enable with 'filemap=1' as boot option

Change-Id: I640b1126cdaa522a0560301cf6732b7661555672

11 years agopfs, vfs: increase various limits 99/599/3
Ben Gras [Tue, 28 May 2013 19:29:08 +0000 (19:29 +0000)]
pfs, vfs: increase various limits

. pipes in pfs
. vnodes in vfs
. thread stack sizes in vfs

Change-Id: Ib27dedd42f57a90821a5b950cd7ea25cb2b42f3f

11 years agovfs: mmap support 43/543/15
Ben Gras [Tue, 7 May 2013 12:41:07 +0000 (12:41 +0000)]
vfs: mmap support

. libc: add vfs_mmap, a way for vfs to initiate mmap()s.
  This is a good special case to have as vfs is a slightly
  different client from regular user processes. It doesn't do it
  for itself, and has the dev & inode info already so the callback
  to VFS for the lookup isn't necessary. So it has different info
  to have to give to VM.
. libc: also add minix_mmap64() that accepts a 64-bit offset, even
  though our off_t is still 32 bit now.
. On exec() time, try to mmap() in the executable if available.
  (It is not yet available in this commit.)
. To support mmap(), add do_vm_call that allows VM to lookup
  (to ino+dev), do i/o from and close FD's on behalf of other
  processes.

Change-Id: I831551e45a6781c74313c450eb9c967a68505932

11 years agofix inet warnings 10/610/2
Ben Gras [Fri, 31 May 2013 14:30:13 +0000 (14:30 +0000)]
fix inet warnings

Change-Id: Ia6e761d2c649f03a49b2646387f859d6c2a646cb

11 years agoImporting usr.bin/logname
Thomas Cort [Fri, 31 May 2013 12:22:47 +0000 (12:22 +0000)]
Importing usr.bin/logname

11 years agopanic: declare as printf-style-checked 09/609/2
Ben Gras [Sat, 2 Feb 2013 00:55:35 +0000 (00:55 +0000)]
panic: declare as printf-style-checked

. and related fixes

Change-Id: I5131ac57dc53d8aec8d421a34c5ceea383404d7a

11 years agovfs: who_p fix 50/550/3
Ben Gras [Mon, 13 May 2013 19:06:12 +0000 (19:06 +0000)]
vfs: who_p fix

Change-Id: I0e04b6460907f5e67f6c90b2038d296d66b9a414

11 years agotcpd: waitpid() for any child process 06/606/1
Ben Gras [Thu, 30 May 2013 19:41:45 +0000 (19:41 +0000)]
tcpd: waitpid() for any child process

. prevents zombies from accumulating for as long as tcpd exists
  for child processes that create their own process group, e.g. ftpd.

Change-Id: Ic56597810f7d17e1cc28b755e2d1998ecf49a27c

11 years agoimport netbsd ftpd 05/605/3
Ben Gras [Thu, 30 May 2013 14:47:40 +0000 (14:47 +0000)]
import netbsd ftpd

Change-Id: Id7a3dbd40a6f37c55bcbb0d1456301f60626298f

11 years agobuild:arm allow to store build settings in a .settings file. 04/604/4
Kees Jongenburger [Thu, 30 May 2013 06:47:39 +0000 (08:47 +0200)]
build:arm allow to store build settings in a .settings file.

If present a file called .settings will be sourced when
calling the arm_sdimage.sh script. This allows to configure
the build setting for arm build without the need to specify
the flags each time arm_sdimage.sh is called.

For example to configure arm_sdimage.sh to target the
beaglebone put the following content in your .settings file.

BASE_URL=http://www.minix3.org/arm/beaglebone
FLAG=-DAM335X
CONSOLE=tty00

Change-Id: Ide0341a255bc7f41dc5c30d0a43e71b01a8ea55c

11 years agoAdd acpi poweroff
Xiaoguang Sun [Thu, 23 May 2013 11:06:13 +0000 (19:06 +0800)]
Add acpi poweroff

Use acpi poweroff if it's possible.

Change-Id: I103cc288523bf63fa536750b1d408ac88bbe35fb
Signed-off-by: Ben Gras <ben@minix3.org>
Signed-off-by: Tomas Hruby <tom@minix3.org>
11 years agovm: a bit more informative about failed pagefaults 00/600/2
Ben Gras [Wed, 29 May 2013 11:48:54 +0000 (11:48 +0000)]
vm: a bit more informative about failed pagefaults

Change-Id: I2b72dfb9291670cb837dfdb279f519892575d4a6

11 years agogen_uEnv.txt.sh shell neutraling 01/601/1
Ben Gras [Wed, 29 May 2013 12:10:22 +0000 (12:10 +0000)]
gen_uEnv.txt.sh shell neutraling

Change-Id: I52d5ac548373db1c4db9af79a24c2c9e2c1c1dcb

11 years agosyslog.conf: correct PID file path in comments. 98/598/2
Thomas Cort [Tue, 28 May 2013 19:07:10 +0000 (15:07 -0400)]
syslog.conf: correct PID file path in comments.

The syslogd.pid file has moved from /usr/run to /var/run. The comments
in syslog.conf direct the user to restart syslogd using the old PID
file location. This patch updates the comment to match the code.

Change-Id: Ib40cd1199ce201e1cbc74e1f1393d55a166ef343

11 years agoservers/pm: Fix EFAULT check for SETGROUPS 97/597/1
Lionel Sambuc [Tue, 28 May 2013 19:08:15 +0000 (19:08 +0000)]
servers/pm: Fix EFAULT check for SETGROUPS

The previous test would return EFAULT as soon as the group pointer
was NULL, while it is sensible when the count is also 0.

In that case, the SETGROUP syscall is expected to clear all the
group entries as the new set is empty.

Change-Id: I07b7e1d1f023a52e3035d53f7d9b42b660e039e8

11 years agofix some comment typo's
Qi Yong [Sun, 26 May 2013 14:11:59 +0000 (14:11 +0000)]
fix some comment typo's

Change-Id: Ic9f4333613abb858bfc28f72685424557cf2cd40

11 years agoarm:build add flags for AM335X 94/594/3
Kees Jongenburger [Fri, 24 May 2013 09:04:53 +0000 (11:04 +0200)]
arm:build add flags for AM335X

Change-Id: I1fd25d5ada52972fd2f6ec5057ff273544c65390

11 years agoarm:also use 1MB sections for mapping AM335X device memory. 93/593/3
Kees Jongenburger [Fri, 24 May 2013 08:28:00 +0000 (10:28 +0200)]
arm:also use 1MB sections for mapping AM335X device memory.

Change-Id: Idc0b285fcbabe8ec4c0be9a600b6a720c0bd3ffc

11 years agoarm:adapt MMC driver to also work on the AM335X platform. 92/592/3
Kees Jongenburger [Fri, 24 May 2013 08:26:51 +0000 (10:26 +0200)]
arm:adapt MMC driver to also work on the AM335X platform.

Change-Id: I30e69b7bfd377d1dd2b0b458dd00ee411b060285

11 years agoarm:mmc only compile mmchs when targeting arm. 95/595/1
Kees Jongenburger [Fri, 24 May 2013 13:39:41 +0000 (15:39 +0200)]
arm:mmc only compile mmchs when targeting arm.

Change-Id: Ie8d0b6461b58c2a7becda98401dece81be607a01

11 years agoarm:adapt tty driver for AM335X. 91/591/2
Kees Jongenburger [Fri, 24 May 2013 08:25:30 +0000 (10:25 +0200)]
arm:adapt tty driver for AM335X.

Change-Id: Ic861d68d0576c2abcdcb265a450c013ea2b28499

11 years agoarm:build also generate cmdline.txt 90/590/2
Kees Jongenburger [Fri, 24 May 2013 08:23:44 +0000 (10:23 +0200)]
arm:build also generate cmdline.txt

Also generate cmdline.txt as we need to use a different serial
for the AM335X boards.

Change-Id: I18c1b5911b5d7238d4a765e0aa01613908d9f2e6

11 years agoarm:omap timers remove hardcoded base address. 86/586/4
Kees Jongenburger [Thu, 23 May 2013 16:02:23 +0000 (18:02 +0200)]
arm:omap timers remove hardcoded base address.

Omap timers remove hardcoded base address and add some initial
support for the beaglebone's timers. Frclock_util will need
refactoring to remain independent of the ARM flavour.

Change-Id: I2b5d04e930364262c81b5686de634c0a51796b23

11 years agoarm:configure tick per ms to reflect the free running clock. 85/585/4
Kees Jongenburger [Thu, 23 May 2013 15:58:51 +0000 (17:58 +0200)]
arm:configure tick per ms to reflect the free running clock.

Change-Id: Ifc02658d6ae48dd01a868bfaa3d60f77bc6cc800

11 years agoarm:interupt handling remove hardcoded base address. 84/584/4
Kees Jongenburger [Thu, 23 May 2013 12:25:14 +0000 (14:25 +0200)]
arm:interupt handling remove hardcoded base address.

Remove hardcoded base address for the omap interrupt handler and add
interrupt names for AM335X in omap_intr.h.

Change-Id: Ie606d8612f55990d55f9db655583052f53950e8e

11 years agoarm:add AM335X serial 83/583/3
Kees Jongenburger [Thu, 23 May 2013 11:16:24 +0000 (13:16 +0200)]
arm:add AM335X serial

Change-Id: I728622ddd4f59529d15e8ac2499c41fa815eee3b

11 years agoarm:keep kernel and modules in the first 256MB of memory. 77/577/4
Kees Jongenburger [Thu, 23 May 2013 08:45:38 +0000 (10:45 +0200)]
arm:keep kernel and modules in the first 256MB of memory.

Keep kernel and modules in the first 256MB of memory in preparation
for the beaglebone. That target only has 256 MB of memory.

Change-Id: I3d92247b5d4e5d3aab7388fe01c2f5713d6a4593

11 years agoarm:remove hardcoded base address for the in kernel serial. 82/582/3
Kees Jongenburger [Thu, 23 May 2013 08:03:09 +0000 (10:03 +0200)]
arm:remove hardcoded base address for the in kernel serial.

Removed hardcoded base address for in kernel serial. This will ease
porting to different boards and allow us to remap i/o at later stage.

Change-Id: I4a4e00ed2aa2f94dfe928dc43a6816d3b94576b7

11 years agoarm:kernel simplify the in kernel serial. 81/581/3
Kees Jongenburger [Wed, 22 May 2013 14:40:45 +0000 (16:40 +0200)]
arm:kernel simplify the in kernel serial.

Simplify the in kernel serial header to a minimum. The driver doing
the real handling is the tty driver.

Change-Id: I5d487d71a3d22906313aa8af5e9d84b0751a6868

11 years agoarm:add DDM37XX cflag 80/580/3
Kees Jongenburger [Wed, 22 May 2013 09:25:59 +0000 (11:25 +0200)]
arm:add DDM37XX cflag

We are planning on using the NetBSD config system to perform build
system configuration when targeting different hardware variants.
This functionality however is not integrated yet and we currently
rely on using ifdef's in the code. This commit add the DDM37XX flag.

Change-Id: Ia25dfa520c7df4b648f4d1a583808de774acff63

11 years agoarm:build generate uEnv.txt 79/579/3
Kees Jongenburger [Wed, 22 May 2013 07:12:13 +0000 (09:12 +0200)]
arm:build generate uEnv.txt

Generate uEnv.txt to allow to generate an uEnv containing commands
to boot over the network.

Change-Id: I8bcd831ee474d837411568bf1c1e2c2d96ec931b

11 years agoreleasetools/arm_sdimage.sh: Improvements 89/589/2
Lionel Sambuc [Thu, 23 May 2013 16:09:19 +0000 (18:09 +0200)]
releasetools/arm_sdimage.sh: Improvements

 - Added the possibility to define the number of parallel jobs from the
   command line with (example, default is 1):
   $ JOBS=8 ./releasetools/arm_sdimage.sh

 - Generate filesystem filling the reserved partition area, instead of
   being smaller.

 - Added a possibility to specify additional parameter to the build.sh
   script from the command line with (example):
   $ BUILDVARS='-N0 -V MYVAR=yes' ./releasetools/arm_sdimage.sh

Change-Id: I5c34268ebf7d45a8d3408b45b1dc5051d775826c

11 years agousr.sbin/mkfs: Allow -b SIZE with proto file 88/588/2
Lionel Sambuc [Thu, 23 May 2013 16:02:58 +0000 (18:02 +0200)]
usr.sbin/mkfs: Allow -b SIZE with proto file

Previously, if a proto file was given, the -b argument would be ignored.

Also added:
 - if the number of inodes is not given, then an estimation is used.
 - sanity checks where moved from one special case to the general case.

Change-Id: I2abfa52bf34206c9087c64b5bfc26af866eb47cb

11 years agoFix symlink issue when generating an ARM image 87/587/2
Lionel Sambuc [Thu, 23 May 2013 16:00:34 +0000 (18:00 +0200)]
Fix symlink issue when generating an ARM image

A few symlinks were pointing to a nonexistent file named '(null)'
instead of their intended target. This was only seen when using the
arm_sdimage.sh script.

There is two ways of specifying links and directories. the first one
using an entry in one of the mtree files, and the second one in
/etc/Makefile.

Those entries where doubled, and one of them would specify some rights,
while the other had the target.

By removing those entries, I make sure there is only one definition of
these symlinks, which solves the problem I was seeing on an ARM image.

These symlinks are still present on a generated system, as they are
required.

Change-Id: I9ced8860f72d7c4d686a09720de4d8257d6e04fa

11 years agomkfs: only complain about failing stat with -d 78/578/2
Ben Gras [Thu, 23 May 2013 00:43:33 +0000 (02:43 +0200)]
mkfs: only complain about failing stat with -d

mkfs -d is a feature that needs a stat() of the mkfs binary, which
often fails (as mkfs is often not invoked with a full path or from
the same directory). it makes setup look a bit messy as the error
is always printed while installing the system, for each created FS,
even though the situation is harmless. This change only complains
when the stat is actually needed (-d).

Change-Id: I54ac01505aa97c1cbe40456c04a35aed5a7ee953

11 years agoarm: recognize instruction fetch pagefault 68/568/1
Ben Gras [Tue, 21 May 2013 12:57:57 +0000 (14:57 +0200)]
arm: recognize instruction fetch pagefault

. an instruction fetch pagefault generates a prefetch
  abort exception, this should also be a source of
  a pagefault event
. the saved_lr argument to the C exception handler was
  sometimes an address, sometimes a pointer to that address;
  the kernel sometimes dereferences it, so it should always be
  an in-kernel address, never a userspace address. fix in mpx.S
  makes it always a pointer.
. move dumping of all processes over serial out of
  the arch-specific arch_system.c

11 years agoat_wini: enable busmastering in pci if necessary
Ben Gras [Sat, 18 May 2013 13:24:23 +0000 (13:24 +0000)]
at_wini: enable busmastering in pci if necessary

11 years agovirtio_blk: always start if found 59/559/2
Ben Gras [Wed, 15 May 2013 15:45:33 +0000 (15:45 +0000)]
virtio_blk: always start if found

Change-Id: Iec70c67e1b675297b5ffb800a9fb263feffa9271

11 years agoarm:vm caching fix. 65/565/1
Kees Jongenburger [Thu, 16 May 2013 08:11:12 +0000 (10:11 +0200)]
arm:vm caching fix.

Improve reliability by using write trough cache.

11 years agoarm:vm header cleanup. 64/564/1
Kees Jongenburger [Thu, 16 May 2013 08:11:12 +0000 (10:11 +0200)]
arm:vm header cleanup.

11 years agoarm:make no assumptions about TRE and AFE 63/563/1
Kees Jongenburger [Thu, 16 May 2013 07:50:55 +0000 (09:50 +0200)]
arm:make no assumptions about TRE and AFE

The bootloader can leave the system control register
in at state that doesn't match our setup. make no assumptions
and configure TRE and AFE.

11 years agobuild:arm enable verbose mode by default. 62/562/1
Kees Jongenburger [Thu, 16 May 2013 08:20:01 +0000 (10:20 +0200)]
build:arm enable verbose mode by default.

11 years agobuild:arm disable I and D cache before loading the kernel. 61/561/1
Kees Jongenburger [Thu, 16 May 2013 08:18:07 +0000 (10:18 +0200)]
build:arm disable I and D cache before loading the kernel.

11 years agobuild:copy uEnv and cmdline.txt onto OBJ 60/560/1
Kees Jongenburger [Sat, 27 Apr 2013 07:50:04 +0000 (09:50 +0200)]
build:copy uEnv and cmdline.txt onto OBJ

11 years agobuild:make sdimage more silent. 57/557/2
Kees Jongenburger [Sat, 27 Apr 2013 20:58:49 +0000 (22:58 +0200)]
build:make sdimage more silent.

Change-Id: I9bba37c93c27c599ec914d1f069ca21e6cbfe111

11 years agobuild:add sbin and bin to path. 58/558/2
Kees Jongenburger [Tue, 14 May 2013 09:08:45 +0000 (11:08 +0200)]
build:add sbin and bin to path.

normal users don't have sbin in their path where sfdisk is
installed.

Change-Id: I7ee3412ca0f6fb208310aa7a0ee8cd88c0f3f80c

11 years agoRevert "virtio_blk: always start if found"
Ben Gras [Thu, 16 May 2013 13:34:17 +0000 (13:34 +0000)]
Revert "virtio_blk: always start if found"

Wrong commit pushed, investigating.

This reverts commit a476662532b3586e3c708f29b5e736b20d898d7e.

11 years agovirtio_blk: always start if found
Ben Gras [Wed, 15 May 2013 15:45:33 +0000 (15:45 +0000)]
virtio_blk: always start if found

Change-Id: Iec70c67e1b675297b5ffb800a9fb263feffa9271

11 years agomk.conf: workaround for pkgin sourcing it 42/542/2
Ben Gras [Wed, 8 May 2013 13:05:27 +0000 (13:05 +0000)]
mk.conf: workaround for pkgin sourcing it

Change-Id: Ie01c5781ff3372d6415bc8878270002988320c56

11 years agomkfs.mfs: various programs 34/534/2
Antoine Leca [Sat, 27 Apr 2013 15:52:14 +0000 (17:52 +0200)]
mkfs.mfs: various programs

Split in as many programs as needed to support various variants of MFS
Manual page updated (in mandoc format)

11 years agomkfs reloaded 32/532/2
Antoine Leca [Fri, 26 Apr 2013 18:54:22 +0000 (20:54 +0200)]
mkfs reloaded

* restored the zone>block stuff
* generalized the support for more-than-1-block bitmaps to also deal
  with big inodes maps in small blocks
* improved pexit() to printf-like syntax; also replaced pexit() with
  err() or errx() where there are no reference to proto lines
* unified the allocation of blocks to all use alloc_block() instead
  of raw malloc half of the time
* removed the V2_ d2_ etc. prefixes which are obscure and obsolete

While here, also
* used new-form definitions, and closer to KNF style in general
* used often-built-ins such as mem* or strncpy where relevant
* pruned a fair amount of constants which are irrelevant

Thanks to Thomas V. and Lionel who did a good amount of work with the
cross-compilation stuff and made that change to be much smoother.

11 years agokernel, random: adaptive entropy gathering 40/540/2
Ben Gras [Sun, 5 May 2013 23:52:34 +0000 (23:52 +0000)]
kernel, random: adaptive entropy gathering

kernel: stop gathering timestamps once the bin is full per interrupt

random: once seeded, retrieve new entropy at a lower rate

Change-Id: I4ce6081d39274728d82c6889686d1650cfd5fc2e

11 years agolibsys: panic hook feature 39/539/2
Ben Gras [Tue, 7 May 2013 12:36:59 +0000 (12:36 +0000)]
libsys: panic hook feature

. vfs: use it to dump threads stacks

Change-Id: I7ae3521fc153a407505f11049629e6d4142cf7c7

11 years agokernel ipc debug: various fixes 38/538/1
Ben Gras [Wed, 1 May 2013 19:02:06 +0000 (19:02 +0000)]
kernel ipc debug: various fixes

. add receive hooks in the kernel to print asynchronously
  delivered messages
. do not rely on MF_REPLY_PEND to decide between calls and errors,
  as that isn't reliable for asynchronous messages; try both instead
. add _sendcall() that extract-mfield.sh can then reliably recognize
  the fields for messages that are sent with just send()
. add DEBUG_DUMPIPC_NAMES to restrict printed messages to
  from/to given process names

Change-Id: Ia65eb02a69a2b58e73bf9f009987be06dda774a3

11 years agotty: non-overlapping code for FKEY_CONTROL 37/537/1
Ben Gras [Wed, 1 May 2013 19:01:17 +0000 (19:01 +0000)]
tty: non-overlapping code for FKEY_CONTROL

. to decode it in kernel/debug.c

Change-Id: I0d2cc66e87d97a362fa549b364b4d1b0e1225e66

11 years agobuild:Updated proto.dev from mkproto -s /dev 35/535/1
Kees Jongenburger [Mon, 29 Apr 2013 09:28:57 +0000 (11:28 +0200)]
build:Updated proto.dev from mkproto -s /dev

proto.dev was missing some entries and is currently used as base version for
the ARM root file system.

11 years agoARM:Rename ARM_BIG_PAGE to ARM_SECTION. 36/536/1
Kees Jongenburger [Mon, 29 Apr 2013 09:42:26 +0000 (11:42 +0200)]
ARM:Rename ARM_BIG_PAGE to ARM_SECTION.

The natural term to use when talking about MINIX big pages on ARM
is SECTION. A section is a level 1 page table entry pointing to
a 1MB area.

Change-Id: I9bd27ca99bc772126c31c27a537b1415db20c4a6

11 years agomkfs.mfs: double indirect block support 31/531/2
Ben Gras [Fri, 26 Apr 2013 15:35:31 +0000 (15:35 +0000)]
mkfs.mfs: double indirect block support

. allows >4MB files for default 4k block size

Change-Id: I09277fc3704fac1a44af82202c11435dc7ae8d55

11 years agoext2: annotate cache blocks with inode metadata 30/530/2
Ben Gras [Thu, 25 Apr 2013 12:03:40 +0000 (12:03 +0000)]
ext2: annotate cache blocks with inode metadata

. allows mmap() to work on it

Change-Id: I33af8b86ebb408d971478d00ed2caacf15afc7a5

11 years agolibminixfs, mfs, ext2: may re-evaluate cache size 29/529/1
Ben Gras [Fri, 26 Apr 2013 09:54:33 +0000 (09:54 +0000)]
libminixfs, mfs, ext2: may re-evaluate cache size

libminixfs may now be informed of changes to the block usage on the
filesystem. if the net change becomes big enough, libminixfs may
resize the cache based on the new usage.

. update the 2 FSes to provide this information to libminixfs

Change-Id: I158815a11da801fd5572a8de89c9e6c039b82650

11 years agolibelf:use self hosted m4. 27/527/2
Kees Jongenburger [Wed, 24 Apr 2013 09:04:28 +0000 (11:04 +0200)]
libelf:use self hosted m4.

Change-Id: Ia836aa6c43d7ccbb02047e63424923fdc74eb42d

11 years agotoproto:convert special execute bits to chars
Kees Jongenburger [Tue, 23 Apr 2013 14:51:02 +0000 (16:51 +0200)]
toproto:convert special execute bits to chars

Convert the special execute bits of the METALOG file mode entries into mkfs.mfs
compatible u and g flags.

11 years agoVFS: Implement REQ_BPEEK. 08/408/7
Ben Gras [Sat, 16 Mar 2013 04:09:36 +0000 (04:09 +0000)]
VFS: Implement REQ_BPEEK.

This commit introduces a new request type called REQ_BPEEK. It
requests minor device blocks from the FS.  Analogously to REQ_PEEK,
it requests the filesystem to get the requested blocks into its
cache, without actually copying the result anywhere.

Change-Id: If1d06645b0e17553a64b3167091e9d12efeb3d6f

11 years agolibexec: mmap support, prealloc variants 07/407/7
Ben Gras [Sat, 16 Mar 2013 03:46:37 +0000 (03:46 +0000)]
libexec: mmap support, prealloc variants

In libexec, split the memory allocation method into cleared and
non-cleared. Cleared gives zeroed memory, non-cleared gives 'junk'
memory (that will be overwritten anyway, and so needn't be cleared)
that is faster to get.

Also introduce the 'memmap' method that can be used, if available,
to map code and data from executables into a process using the
third-party mmap() mode.

Change-Id: I26694fd3c21deb8b97e01ed675dfc14719b0672b

11 years agoMFS: annotate cache blocks with inode metadata 06/406/7
Ben Gras [Sat, 16 Mar 2013 02:29:32 +0000 (02:29 +0000)]
MFS: annotate cache blocks with inode metadata

. use lmfs_* cache functions that provide the cache with inode
  metadata whenever applicable, i.e. tell the cache code which
  inode number and in-inode offset a particular cache block
  corresponds to.
. needed for mmap implementation

Change-Id: Ic7d3c0c49029880f86a31368278722e907bc2896