Commit Graph

99379 Commits

Author SHA1 Message Date
silby
3a8a1ad8ce Document the SF_NODISKIO flag, and fix a small typo. 2004-02-08 07:38:35 +00:00
silby
9428de17de Add the SF_NODISKIO flag to sendfile. This flag causes sendfile to be
mindful of blocking on disk I/O and instead return EBUSY when such
blocking would occur.

Results from the DeBox project indicate that blocking on disk I/O
can slow the performance of a kqueue/poll based webserver.  Using
a flag such as SF_NODISKIO and throwing connections that would block
to helper processes/threads helped increase performance.

Currently, only the Flash webserver uses this flag, although it could
probably be applied to thttpd with relative ease.

Idea by:	Yaoping Ruan & Vivek Pai
2004-02-08 07:35:48 +00:00
silby
00fa84a3db Move m_uiotombuf from uio.h to mbuf.h, where I should have put it in
the first place.

Suggested by:	bde
2004-02-08 03:19:08 +00:00
peter
2758e4d126 I forgot to add the NO_MODULES override for NOTES 2004-02-08 00:39:38 +00:00
wpaul
3b12a6e6bd Don't hold NDIS_LOCK() around call to ndis_getstate_80211() since it
may block on ndis_get_info().
2004-02-07 23:52:58 +00:00
wpaul
31e40b57eb Argh. kthread_suspend() when in P_KTHREAD context, tsleep() when not,
not the other way around.
2004-02-07 23:47:10 +00:00
ru
f53bd8d5bd Argh, unbreak "make depend" for AMD64.
Reported by:	kris
2004-02-07 23:30:45 +00:00
johan
0a1ce2dc98 Fix typo in comment, s/reebots/reboots/
PR:		62481
Submitted by:	Ulrich Spoerlein <q at uni.de>
2004-02-07 23:13:28 +00:00
phk
bcf2cf333e We don't need to hold Giant to create the worker kthread. 2004-02-07 23:01:17 +00:00
phk
6c8d799cb9 Fix the last and most important bit of the test case to test the same
binary as the rest of it.

Add MD5 check that the md(4) device gets set up correctly.
2004-02-07 22:58:39 +00:00
wpaul
f4a52a522b Correct an intance of mtx_pool_lock() that should have been mtx_pool_unlock(). 2004-02-07 22:19:20 +00:00
scottl
225b60c4cb Remove the use of AACQ_COMPLETE here since there is no longer a completion
queue.
2004-02-07 20:54:29 +00:00
phk
71932b3b20 I guess nobody has needed to use the SVR4olator to create device
nodes, or if they did, they're now locked away on the Kurt Gdel
memorial home for the numerically confused:

Don't cast a kernel pointer (from makedev(9)) to an integer (maj+minor combo).
2004-02-07 18:54:34 +00:00
scottl
db7086ef8b Do some small cleanups to comments and remove AACQ_COMPLETE definitions since
the completion queue is long-gone.
2004-02-07 17:40:38 +00:00
ru
ab3b47d9e8 Convert to plain bsd.prog.mk makefile.
Reviewed by:	scottl
2004-02-07 16:58:23 +00:00
ru
7203fc3f9b Update for the 2003/07/31 import. 2004-02-07 16:46:05 +00:00
imp
dd8f14df3f ttys is gone, kill it here too 2004-02-07 15:46:20 +00:00
yar
c0140bd141 NULL looks better than (char *)0 unless we're passing
an unprototyped argument to a function.
2004-02-07 14:59:11 +00:00
yar
ec50e6c644 Deny attempts to rename a file from guest users if the policy
says they may not modify existing files through FTP.

Renaming a file is effectively a way to modify it.
For instance, if a malicious party is unable to delete or overwrite
a sensitive file, they can nevertheless rename it to a hidden name
and then upload a troyan horse under the guise of the old file name.
2004-02-07 14:54:30 +00:00
yar
b836e6309f perror_reply() should not be used where errno isn't meaningful. 2004-02-07 14:38:04 +00:00
ru
cf59eef9c2 MFi386: Removed -elf and duplicate -ffreestanding. 2004-02-07 14:35:33 +00:00
ru
db4c9bf67f - Removed -elf which is not a valid gcc(1) option anymore.
- Removed -ffreestanding; it's enforced by ../Makefile.inc.
2004-02-07 14:32:06 +00:00
yar
b6d44d65d8 Work around a bug in some clients by never returning raw directory
contents in reply to a RETR command.  Such clients consider RETR
as a way to tell a file from a directory.  Mozilla is an example.

PR:		bin/62232
Submitted by:	Bob Finch <bob+freebsd <at> nas <dot> com>
MFC after:	1 week
2004-02-07 14:11:38 +00:00
ru
aff53081b3 Generate .depend file. 2004-02-07 13:38:47 +00:00
nyan
a1e0ad4bf3 MFi386: Cleanups to sys/boot makefiles. 2004-02-07 12:19:44 +00:00
ru
b377ec7a9a Unbreak world. 2004-02-07 11:13:47 +00:00
ru
9d856a43dc Style: use the defined() expression explicitly. 2004-02-07 11:05:10 +00:00
scottl
6480ab2343 Remove the hack of lowering AAC_MAX_FIB now that the root cause of the
problem was found.
2004-02-07 10:30:59 +00:00
scottl
cb43214a58 If a command has to be deferred because there are no more resources for it
on the card, unmap it first.  This allows it to be picked up properly when
the queue gets kicked again.  This was the root problem for the lost command
(i.e. stuck in getblk/vinvalb) problem.  While here, panic if commands don't
map correctly instead of just silently ignoring the problem and dropping
command.  Also slow down the dynamic allocation of new commands.

It should be safe to go back into the aac waters.  Thanks to everyone who
suffered through this and provided good feedback.
2004-02-07 10:30:22 +00:00
alc
8a8d62e1aa swp_pager_async_iodone() no longer requires Giant. Modify bufdone()
and swapgeom_done() to perform swp_pager_async_iodone() without Giant.

Reviewed by:	tegge
2004-02-07 08:54:50 +00:00
ru
c6ac567da3 Use the default threading library if requested.
Reviewed by:	des, deischen
2004-02-07 08:23:48 +00:00
ru
c12bb13bb3 Untangle building of AMD64 boot code.
Tested on:	amd64 (sledge)
2004-02-07 08:10:07 +00:00
dds
3ebf28da66 getnetbyname fixes:
Do not choke on malformed network addresses.
Return n_name in static space, not on the function's stack.

MFC after: 1 week
2004-02-07 07:30:02 +00:00
mtm
50e69a671a Add an entry about the removal of etc/rc.d/ttys. 2004-02-07 07:25:47 +00:00
ru
94a2ba9ecb - Demangle usage().
- Require the "directory" argument with the -d option.
2004-02-07 07:22:11 +00:00
mtm
f602b09c02 Now that devfs is mandatory, there is no need to muck around
with tty/pty permissions.

Noticed by:	brooks
OKed:		phk
2004-02-07 07:10:25 +00:00
wpaul
fe7c8eefc3 Add a whole bunch of new stuff to make the driver for the AMD Am1771/Am1772
802.11b chipset work. This chip is present on the SMC2602W version 3
NIC, which is what was used for testing. This driver creates kernel
threads (12 of them!) for various purposes, and required the following
routines:

PsCreateSystemThread()
PsTerminateSystemThread()
KeInitializeEvent()
KeSetEvent()
KeResetEvent()
KeInitializeMutex()
KeReleaseMutex()
KeWaitForSingleObject()
KeWaitForMultipleObjects()
IoGetDeviceProperty()

and several more. Also, this driver abuses the fact that NDIS events
and timers are actually Windows events and timers, and uses NDIS events
with KeWaitForSingleObject(). The NDIS event routines have been rewritten
to interface with the ntoskrnl module. Many routines with incorrect
prototypes have been cleaned up.

Also, this driver puts jobs on the NDIS taskqueue (via NdisScheduleWorkItem())
which block on events, and this interferes with the operation of
NdisMAllocateSharedMemoryAsync(), which was also being put on the
NDIS taskqueue. To avoid the deadlock, NdisMAllocateSharedMemoryAsync()
is now performed in the NDIS SWI thread instead.

There's still room for some cleanups here, and I really should implement
KeInitializeTimer() and friends.
2004-02-07 06:44:13 +00:00
scottl
7720bf145a Add a simple tool for checking the queue stats in the aac(4) driver. The
ioctl interface for this has been here for years, so it might as well get
used.
2004-02-07 03:51:20 +00:00
mjacob
a98f273f43 Checkpoint of work in progress in cleaning up target mode. It actually
seems to work well in RELENG_4. However, 5.X locking foo means that I'll
have to do some quick redesign.

Add ioctl handlers for ISP_GETROLE and ISP_SETROLE ioctls.
2004-02-07 03:47:33 +00:00
mjacob
eee49e6ffc add a count for inotifies as well as atios.
MFC after:	1 week
2004-02-07 03:44:43 +00:00
mjacob
f7af3de4b8 Reverse role defines for initiator and target mode to better match the
class 3 service parameters we'd get.

Steal 8 bits out of the portid u_int32_t for role information (port ids
are 24 bits anyway).

MFC after:	1 week
2004-02-07 03:43:27 +00:00
mjacob
3f8b850980 Add case to handle ISPCTL_GET_PDB.
MFC after:	1 week
2004-02-07 03:42:17 +00:00
mjacob
7b1a699610 If we're defined to have a default role for target mode, make it
just ISP_ROLE_TARGET- not both.

MFC after:	1 week
2004-02-07 03:39:42 +00:00
mjacob
480a391ebf Change role defines so that they better match class 3 service parameters.
Add ISPCTL_GET_PDB isp_control operation.

MFC after:	1 week
2004-02-07 03:38:39 +00:00
scottl
4385c848db Reduce AAC_MAX_FIBS to work around some yet-unidentified bugs in the
handling of resources shortages.  The driver is now so fast that it can
completely fill all 512 slots on the card, but for some reason only 511
slots are being allocated.  Anything that tries to go into the 512th
slot gets silently lost.   Both bugs need to be fixed at a later date,
but this should fix the reports of hangs in getblk and vinvalb.
2004-02-07 03:30:32 +00:00
scottl
03c17dd892 - Broaden the scope of locking in aac_command_thread() again to catch some
edge cases in the loop.

- Try to grab a command before dequeueing the bio from the bioq.  The old
  behaviour of requeuing deferred bios to the end of the bioq is arguably
  wrong.  This should be fixed in the future to check the bioq head without
  automatically dequeueing the bio.
2004-02-07 03:26:38 +00:00
scottl
29c3ba6eb5 Add an #ifdef _KERNEL so that this file can be used from userland. 2004-02-07 03:20:07 +00:00
olgeni
2d2bdadf78 The "bin" distribution was renamed to "base" in CURRENT. 2004-02-07 00:34:11 +00:00
pjd
9ebcd20d35 Allow decreasing access count even if there is no disk anymore.
This will allow closing disks that were removed while opened.

Approved by:	phk, scottl (mentor)
2004-02-06 23:10:49 +00:00
le
eb1889fd1b Fix memory leak.
PR:            kern/58634
Submitted by:  le
Approved by:   phk
2004-02-06 22:51:04 +00:00