Commit Graph

182011 Commits

Author SHA1 Message Date
dyoung
9d9978e5a5 Switch to kmem(9).
(void *)pew is one way to get a struct work *, but let's
write&pew->pew_work, instead.  It is more defensive and persuasive.

Make miscellaneous changes in support of tearing down arbitrary
stacks of filesystems and devices during shutdown:

1 Move struct shutdown_state, shutdown_first(), and shutdown_next(),
  from kern_pmf.c to subr_autoconf.c.  Rename detach_all() to
  config_detach_all(), and move it from kern_pmf.c to subr_autoconf.c.
  Export all of those routines.

2 In pmf_system_shutdown(), do not suspend user process scheduling, and
  do not detach all devices: I am going to do that in cpu_reboot(),
  instead.  (Soon I will do it in an MI cpu_reboot() routine.)  Do still
  call PMF shutdown hooks.

3 In config_detach(), add a DIAGNOSTIC assertion: if we're exiting
  config_detach() at the bottom, alldevs_nwrite had better not be 0,
  because config_detach() is a writer of the device list.

4 In deviter_release(), check to see if we're iterating the device list
  for reading, *first*, and if so, decrease the number of readers.  Used
  to be that if we happened to be reading during shutdown, we ran the
  shutdown branch.  Thus the number of writers reached 0, the number
  of readers remained > 0, and no writer could iterate again.  Under
  certain circumstances that would cause a hang during shutdown.
2009-06-26 19:30:45 +00:00
dyoung
57a3ffeae7 Cosmetic: remove #if 1 / #endif. 2009-06-26 18:58:14 +00:00
dyoung
0b429bf76a Keep a generation number, mountgen, that increases every time a
filesystem is mounted.  Synchronize access to the number with a
mutex.  When a struct mount, mp, is allocated, assign the current
generation number to mp->mnt_gen.  Introduce vfs_unmount_forceone()
that forcefully unmounts the most recently mounted filesystem.

Refactor: extract vfs_shutdown1() from vfs_shutdown().  Extract
vfs_sync_all() from vfs_shutdown1().

Print more progress indications while we're unmounting all of the
filesystems during shutdown.

We increase the reference count on mp before calling dounmount(mp),
but we do not decrease it if dounmount(mp) fails, and neither does
dounmount(mp).  So decrease the reference count if dounmount(mp)
fails.

Change the loop terminating condition in vfs_unmountall1() to (mp
!= (void *)&mountlist) from !CIRCLEQ_EMPTY(&mountlist), because we
may not ever empty the list, especially if we're not forcing the
filesystems to unmount.
2009-06-26 18:53:07 +00:00
christos
1ede09dfc2 - include <paths.h> for _PATH_BPF explicitly.
- make sure that everything sets errno appropriately so we can use warn/err
- only open and setup bpf once since if this does not work we fail and don't
  do extra work.
- use getprogname
- static local functions and no parameters.

I think this utility should be renamed wakeonlan because wake is too generic.
2009-06-26 17:38:32 +00:00
dyoung
0d8ed264a1 For use in subsequent commits, add a 64-bit generation number to
struct mount, and add prototypes for vfs_sync_all() and for
vfs_unmount_forceone().
2009-06-26 16:55:46 +00:00
christos
d2cb166562 document gid, rgid 2009-06-26 15:50:17 +00:00
christos
2ee7096547 magic symlink cleanup:
- use size_t for len
- don't call strlen multiple times in macro
- add gid
- off by one in bounds calculation
2009-06-26 15:49:03 +00:00
wiz
0f05513297 Remove superfluous Pp. Grammar improvement, typo fix, sort sections, fix Xr. 2009-06-26 09:31:04 +00:00
wiz
8615942dc8 Fix Dd argument, remove superfluous quotes, add author name. 2009-06-26 09:25:39 +00:00
mbalmer
0161c10332 /dev/bpf is cloneable, no need to dance around /dev/bpfN to find an
available device.
2009-06-26 09:00:49 +00:00
mbalmer
cb815b49a3 Add wake(8), a new command to send Wake-on-LAN packets to machines on the
local Ethernet.
2009-06-26 06:41:08 +00:00
sjg
dd8e1ba252 JobExec: child of vfork must not empty the sigset_t that parent will
restore.  Use a separate mask.
2009-06-26 01:26:32 +00:00
dyoung
7145e9fc73 A lot of good it does, but let this build with 'no options INET'. 2009-06-26 00:24:18 +00:00
dyoung
72ca52eed5 Use &zn->ni instead of (struct ieee80211_node *)zn because it is
concise and safe.
2009-06-26 00:15:23 +00:00
dyoung
c3a668892b Compilable, untested fix to zyd(4) lossage reported by Matthias-Christian
Ott: every ioctl but SIOCSIFFLAGS fails with ENXIO (Device not
configured).  Let ioctls complete even if initialization is not
complete (!sc->attached).  Do exit immediately from zyd_newstate
with ENXIO if !sc->attached, however:  zyd_newstate tries to call
some USB routines for which it is probably not ready.
2009-06-26 00:14:09 +00:00
dyoung
ed0e4d4d36 Expand more macros from usb_port.h. 2009-06-26 00:06:27 +00:00
dyoung
c97ab81b59 Expand several definitions from usb_port.h. 2009-06-26 00:01:25 +00:00
mjacob
19de87aaa4 Minimally update the man page to indicate 4 and 8Gb card support. 2009-06-25 23:45:52 +00:00
mjacob
ad7d727f78 Update ISP driver to latest and greatest. Includes support for the 8Gb part. 2009-06-25 23:44:01 +00:00
mjacob
e9c28376ea Update 2400 firmware to latest (to match 2500 firmware) 2009-06-25 23:42:40 +00:00
agc
664fc89d11 iscsi distribution has moved to src/external/bsd/iscsi 2009-06-25 23:42:21 +00:00
agc
9fc49d2576 iscsi sources have moved to src/external/bsd/iscsi 2009-06-25 23:37:50 +00:00
wiz
c16d893d82 Remove trailing whitespace. 2009-06-25 23:20:55 +00:00
mbalmer
c57bd217eb Switch from bcopy to memcpy. Requested by and ok christos. 2009-06-25 22:26:54 +00:00
hubertf
c8c572c3bf Add an example .windowrc 2009-06-25 21:48:49 +00:00
dyoung
6ba25067cf Add .PATH: ${ISCSIDIST}/src/lib for conffile.c. Compiles, now,
but does not install.
2009-06-25 21:04:13 +00:00
agc
99a1a9f586 finish off the move to the external framework for iscsi by fixing up the
set lists - thanks to tron for the nudge.
2009-06-25 20:54:16 +00:00
dyoung
9d7ba4756e Update the path to the iSCSI sources, which have moved to
external/bsd/iscsi/dist/ from dist/iscsi/.
2009-06-25 20:47:45 +00:00
joerg
a0922fbd98 Add work-in-progress unzip(1) frontend for libarchive.
Derived from FreeBSD's unzip.
2009-06-25 20:27:05 +00:00
mbalmer
bcbaac7ec1 Add a blank line after the cvs marker and add a descriptive one line comment.
requested by matt green.
2009-06-25 18:50:46 +00:00
mbalmer
35f74629dc wake(8) is a command to send Wake-on-LAN packets to machines on the local
ethernet, allowing machines to be powered up without physical access to them.

tonnerre@ and tron@ reviewed it and decided that the bin directories
are not to full for this small and useful command.
2009-06-25 18:41:21 +00:00
tron
4e1f96faf8 Mirror the file system structure of the installed files in the structure
of the Makefiles as suggested by Christos Zoulas.
2009-06-25 18:21:50 +00:00
agc
3d7d7405a9 Add explanation of libiscsi, get rid of openpgpsdk 2009-06-25 17:40:07 +00:00
christos
1e42098381 Only print debugging messages about policy on error. 2009-06-25 17:39:51 +00:00
reinoud
5e29d1224f Rewrite of udf_on_rootpath(), and vop_rename() code that calls it, after the
UFS way. The tree walking is now done the same and the code hasn't locked up
on examples that made it lockup before.
2009-06-25 17:16:33 +00:00
joerg
faf14618b6 Fix initialisation of SHA224. 2009-06-25 14:05:18 +00:00
agc
474f9d04b2 Switch over to building iscsi library, target and initiator from the
external framework.
2009-06-25 13:58:59 +00:00
agc
534fa80408 Put the OSD sources in their own directory 2009-06-25 13:48:42 +00:00
agc
b63649522c Update the external tree for new structure for reachover builds.
Add some iscsi-specific changes too:

Portable iSCSI - 20080207 to 20090622

+ Use modern autoconf
+ Add portable iSCSI initiator sources
+ New directory structure
+ Put OSD sources in their own directory
+ iscsi.h -> iscsiprotocol.h
+ add an iscsi.h for the new interface, and install it
+ globals_t -> iscsi_target_t
+ made an iscsi-target.h with all public functions in it
+ reformatted Intel license to fit in 80 columns
+ get rid of some abstractions which aren't needed any more
+ move over to a set of (name, value) tuples in target and initiator
+ add patch to set the target's StatSN at login time, from Gleb Kozyrev via
  Mark Foster
+ add manual page for libiscsi(3)
+ update libiscsi shared object major version to 2 to reflect the changes
  in API and ABI

More changes to come
2009-06-25 13:47:09 +00:00
joerg
35173b1fce Partially revert 1.110: Use makecontext again until the problems with
_lwp_makecontext are solved.
2009-06-25 13:38:43 +00:00
zafer
e61e7f5284 catch spelling error. 2009-06-24 23:10:02 +00:00
zafer
ca54efd201 fix common spelling error. 2009-06-24 22:39:40 +00:00
zafer
282680c9b1 correct spelling error. 2009-06-24 22:31:58 +00:00
zafer
791f9db912 fix spelling error. 2009-06-24 22:19:14 +00:00
mrg
4c99008150 don't include pcidevs_data.h. 2009-06-24 19:47:15 +00:00
reinoud
706de0e547 Commit first stage of free-space accounting. It is estimating the underlimit
of free blocks on the device and when free blocks are getting tight it tries
to readjust/recalculate that value by syncing the FS.

Second stage will be resizing the data/metadata partitions.
2009-06-24 17:09:13 +00:00
dholland
3f712a47e2 Fix typo, noticed in passing by wiz 2009-06-24 16:28:48 +00:00
tron
1b003fbdd4 Update developers responsible for Postfix. 2009-06-24 13:41:16 +00:00
mbalmer
7880601279 Add myself as requested in the welcome mail. 2009-06-24 12:15:43 +00:00
tteras
a8d702d9b1 Fix a call to null pointer: in some cases, the unmonitor_fd can be called
from another fd's callback. That could lead to still have callback pending
after unmonitoring the fd resulting in a call to null pointer.
This is fixed by making unmonitor_fd now clear the pending fd_set too.
Bug was introduced by my commit in 2008-12-23.
2009-06-24 11:28:48 +00:00