Commit Graph

446 Commits

Author SHA1 Message Date
gehenna 77a6b82b27 Merge the gehenna-devsw branch into the trunk.
This merge changes the device switch tables from static array to
dynamically generated by config(8).

- All device switches is defined as a constant structure in device drivers.

- The new grammer ``device-major'' is introduced to ``files''.

	device-major <prefix> char <num> [block <num>] [<rules>]

- All device major numbers must be listed up in port dependent majors.<arch>
  by using this grammer.

- Added the new naming convention.
  The name of the device switch must be <prefix>_[bc]devsw for auto-generation
  of device switch tables.

- The backward compatibility of loading block/character device
  switch by LKM framework is broken. This is necessary to convert
  from block/character device major to device name in runtime and vice versa.

- The restriction to assign device major by LKM is completely removed.
  We don't need to reserve LKM entries for dynamic loading of device switch.

- In compile time, device major numbers list is packed into the kernel and
  the LKM framework will refer it to assign device major number dynamically.
2002-09-06 13:18:43 +00:00
thorpej 139cdc3125 Make nbuf, nswbuf, and bufpages unsigned. Make all operations on these
variables unsigned, and update places where their values are printed.
2002-08-25 20:21:33 +00:00
briggs 0b956d0b8b Implement pmc(9) -- An interface to hardware performance monitoring
counters.  These counters do not exist on all CPUs, but where they
do exist, can be used for counting events such as dcache misses that
would otherwise be difficult or impossible to instrument by code
inspection or hardware simulation.

pmc(9) is meant to be a general interface.  Initially, the Intel XScale
counters are the only ones supported.
2002-08-07 05:14:47 +00:00
thorpej 3912e469dd Rename cdev_systrace_init() to cdev_clonemisc_init(), so it can
be properly used by any misc. cloning device.  While here, correct
a comment to indicate that "open" is the only entry point and that
everything else is handled with fileops.
2002-07-19 16:38:14 +00:00
scw bef00d4895 m68k syscall rototill:
- Switch all m68k-based ports over to __HAVE_SYSCALL_INTERN.
 - Add systrace glue.
 - Define struct mdproc in <m68k/proc.h> instead of <machine/proc.h>.
   (They were all defined exactly the same anyway, other than a couple
   of the MDP_* flags.)
2002-07-13 08:28:40 +00:00
mycroft ade1f1e303 Oops; add scsibus too. 2002-07-11 18:07:22 +00:00
mycroft 8c81ec0a3c Enable the SCSI driver. 2002-07-11 17:56:31 +00:00
christos f12f20db6c Apply patches from Christian Limpach:
- NeXT label reading support
    - SCSI dma fixes
    - media support for if_xe.c

Some of these need more cleanup, but at least make SCSI support usable on
the NeXT.
2002-07-11 16:03:09 +00:00
junyoung 3d826105dc alloc_attr -> allocattr
Approved by Matthias Drochner.
2002-07-04 14:37:10 +00:00
christos 3b50728cf4 MD systrace gluons. 2002-06-17 16:32:57 +00:00
lukem fde6ae6f04 Enable "pseudo-device clockctl" in all kernels, except
installation related kernels (INSTALL* and RAMDISK*).
This enables rc.conf(5) $ntpd_chroot to be used "out of the box"
2002-06-17 05:14:02 +00:00
deberg bb245959f9 bus_space_mmap(), same as atari port. untested, as it is unused. 2002-06-11 05:17:30 +00:00
thorpej d941ddfee0 Don't use -traditional-cpp if HAVE_GCC3. 2002-06-04 21:39:09 +00:00
drochner d2b9876081 move initialization of the "struct pglist" returned by uvm_pglistalloc()
from the calling code into uvm_pglistalloc() itself for consistency
and easier error handling
2002-06-02 14:44:35 +00:00
thorpej 6edcabc59d Fix a typo (#ifdef defined(...)) 2002-05-30 21:58:56 +00:00
drochner 60b6f587bc Subtract vm_map_min(kernel_map) from kernel virtual addresses to get offsets
into kernel_object where this was missing.
This is a no-op on ports where VM_MIN_KERNEL_ADDRESS==0, ie all but
cesfic.
Confirmed and corrected by Chuck Silvers.
2002-05-22 14:29:23 +00:00
jdolecek 9caf54f80a readdisklabel(): fabricate sane default disklabel in case there isn't
any on the disk
Implemented by Christian Limpach, sent in port-next68k/16929.
2002-05-20 20:49:16 +00:00
jdolecek 89924fe79b Fix race condition between the DMA handler (which gets called
on spldma), and rest of driver/network code (which runs on splnet) in way
if->if_snd queue is accessed. Solve by using intermediate queue.

Problem found, and fix provided by Christian Limpach in port-next68k/16798
2002-05-20 20:19:36 +00:00
jdolecek 56eb55e177 Adapt this to post thorpej-scsipi world.
Fix provided by Christian Limpach in port-next68k/16928.
2002-05-20 18:03:03 +00:00
jdolecek a36ba752c5 Check for zsc properly, and fix typo in #include.
Pointed out, and patch provided by Christian Limpach in private e-mail.
2002-05-20 17:55:46 +00:00
jdolecek e8895ed0a1 Various whitespace fixes, and turn 'No packet to start' message to DPRINTF().
Mostly inspired by Christian Limpach's patch in port-next68k/16978.
2002-05-18 14:33:35 +00:00
jdolecek 88203d9c69 whitespace & formatting fixes, from Christian Limpach in port-next68/16798 2002-05-18 14:09:44 +00:00
jdolecek 46a7bc7d62 Force absolute jumps where necessary, newer gas generates pc-relative
jumps, which we don't want here.
Reported, suggested fix, and testing by Christian Limpach in port-next68k/16793.
2002-05-17 18:03:50 +00:00
jdolecek 8d0d2a392c make kgdb buildable again, g/c next68k/stub.c
Changes by Christian Limpach in kern/16794, with some minor adjustment
by me.
2002-05-17 06:44:03 +00:00
jdolecek d50107af75 Comment out QUOTA as well. Suggested by Christian Limpach
in port-next68k/16792.
Applied even tho not strictly necessary, kernel nowadays actually
links with this option too.
2002-05-15 18:23:06 +00:00
matt 84eb329d14 Eliminate commons (including many used ones). Clean up variable references. 2002-05-14 02:03:00 +00:00
jdolecek 4d23ad14c5 don't strip the resulting bootprog on install; it's raw binary
XXX I hope this is correct way to do this
2002-05-12 15:18:27 +00:00
jdolecek 82b1bed645 protect opt_compat_svr4.h with 'if defined(_KERNEL_OPT)', so that
this is usable from e.g. LKM context
2002-05-11 09:34:00 +00:00
jdolecek 7ad1acf323 use ${.OBJDIR} rather than ${.CURDIR}/obj.${MACHINE} (eek)
g/c -I${.CURDIR} and -I${S}/lib/libkern from ${INCLUDES}
build libsa dev_net.c via .PATH and SRCS rather than special rules
2002-05-08 11:27:30 +00:00
jdolecek 828400151c add -ffreestanding to CFLAGS, so that this wouldn't attempt to link in libc(ugh)
g/c the -Wno-main and HAVE_GCC28 stuff
make the machine symlinks via common .BEGIN cookie, so that they would
  be properly setup for 'depend' or 'dependall' targets too; g/c the limits.h
  symlink, which doesn't seem to be needed
2002-05-07 09:03:52 +00:00
jdolecek 9edc8549c6 some esp register names are no longer provided by next68k espreg.h,
use MI <dev/ic/ncr53c9xreg.h> ones
2002-05-07 08:57:31 +00:00
atatat d1b3852365 Add the INCLUDE_CONFIG_FILE option to all config files. In config
files that are generic (ie, GENERIC, GENERICSBC, GENERIC32, ALL, or
ALPHA), it is uncommented.
2002-04-25 15:06:20 +00:00
gmcgarry 6e066ba77a Add commented-out USERCONF option. Mainly useful for install media
and can be optionally enabled based on miniroot and ramdisk size
requirements.
2002-04-12 08:10:45 +00:00
lukem d213d804f7 Rename MEMORY_DISK_SIZE (formerly MINIROOTSIZE) to MEMORY_DISK_ROOT_SIZE,
which was suggested by Izumi Tsutsui <tsutsui@ceres.dti.ne.jp> as
being more consistent with what it's controlling...
2002-04-02 05:30:34 +00:00
christos 7e277b5782 kill remaining PS_STRINGS instances. 2002-03-20 17:59:22 +00:00
atatat 31144d9976 Convert ioctl code to use EPASSTHROUGH instead of -1 or ENOTTY for
indicating an unhandled "command".  ERESTART is -1, which can lead to
confusion.  ERESTART has been moved to -3 and EPASSTHROUGH has been
placed at -4.  No ioctl code should now return -1 anywhere.  The
ioctl() system call is now properly restartable.
2002-03-17 19:40:26 +00:00
lukem cd19d52695 * rename MINIROOTSIZE to MEMORY_DISK_SIZE, so that all md(4) options
are now consistently named
* fold opt_mdsize.h into opt_md.h
2002-03-10 19:56:37 +00:00
tsutsui 3c8b0446fe Change type of dumpmag to u_int32_t since it is actually
a 32bit unsigned magic number.
As per discussion on tech-kern, and fixes port-sparc64/11949.
2002-03-06 13:10:18 +00:00
simonb 9bcc70fa1d Don't cast argument to ffs() to long.
Per discussion on port-alpha, noticed by Robert Elz.
2002-03-05 09:40:38 +00:00
simonb 6f0fb25121 Don't need to declare phys_map - it is declared in <uvm/uvm_extern.h>. 2002-03-04 02:43:22 +00:00
christos e8116a8f5b - Use DEV_ constants, instead of documenting the numbers!
- Delete cdev_decl(mm); where appropriate, and other hand-crufting [hi powerpc!]
2002-02-27 01:20:51 +00:00
wiz 37e458fa45 strategy should have an 'r'. Inspired by similar change in OpenBSD. 2002-02-19 17:09:40 +00:00
chs b744097a5f allow writing to write-only mappings. fixes PR 3493. 2002-02-14 07:08:02 +00:00
jdolecek 6d265bd894 add options PIPE_SOCKETPAIR to individual kernel configs
the option is commented out on everything but kernels I was able
to recognize as INSTALL-like or ones for small memory machines
2002-01-27 13:23:08 +00:00
jdolecek ff8305bbac Switch to MI dev/md_root.c for archs which don't have any special
memory disk hooks (i.e. everything except atari).
2002-01-21 21:56:57 +00:00
oster 39b858e3bf Add new RF_* options for RAIDframe bits that are no longer built by default.
While we're here, enable RAIDframe (and RAID_AUTOCONFIG) by default for
architectures that I'm comfortable can deal with it being on by default.

Also: bump the number of 'raid' devices from 4 to 8, since 4 seems to
be insufficient in practise.
2002-01-19 18:45:06 +00:00
manu 5f90ae55b5 Added clockctl 2002-01-12 14:52:40 +00:00
chs 9451559ef4 pmap_page_protect(VM_PROT_NONE) must remove all mappings in the PV list,
even if they are wired.  we need to be able to remove all mappings to
pages that are being freed due to (eg.) file truncation.
2002-01-02 00:51:33 +00:00
martin b506d6e135 Add PPPoE to all generic kernels that should be able to use it.
XXX TODO: do this for INSTALL kernels too, add sysinst support and make the
XXX needed binaries available on the ramdisk root fs.
2001-12-28 12:21:52 +00:00
tsutsui 20d126a5b4 Fix comments for ref-count of PT pages. 2001-12-16 03:53:21 +00:00