Revision tags: release/5.2.0_cvs, release/5.2.0, release/4.9.0_cvs, release/4.9.0 |
|
#
aad970f1 |
| 24-Aug-2003 |
David E. O'Brien <obrien@FreeBSD.org> |
Use __FBSDID(). Also some minor style cleanups.
|
Revision tags: release/5.1.0_cvs, release/5.1.0, release/4.8.0_cvs, release/4.8.0 |
|
#
891619a6 |
| 01-Apr-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Use bioq_flush() to drain a bio queue with a specific error code. Retain the mistake of not updating the devstat API for now.
Spell bioq_disksort() consistently with the remaining bioq_*().
#includ
Use bioq_flush() to drain a bio queue with a specific error code. Retain the mistake of not updating the devstat API for now.
Spell bioq_disksort() consistently with the remaining bioq_*().
#include <geom/geom_disk.h> where this is more appropriate.
show more ...
|
#
60794e04 |
| 08-Mar-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Centralize the devstat handling for all GEOM disk device drivers in geom_disk.c.
As a side effect this makes a lot of #include <sys/devicestat.h> lines not needed and some biofinish() calls can be r
Centralize the devstat handling for all GEOM disk device drivers in geom_disk.c.
As a side effect this makes a lot of #include <sys/devicestat.h> lines not needed and some biofinish() calls can be reduced to biodone() again.
show more ...
|
#
fe6301c6 |
| 25-Feb-2003 |
John Baldwin <jhb@FreeBSD.org> |
Chase the musical variable names.
Pointy hat to: jhb Reported by: des
|
#
e1159d10 |
| 25-Feb-2003 |
John Baldwin <jhb@FreeBSD.org> |
Limit the maximum I/O size to 8 pages for version 2 controllers. This fixes problems with some mlx(4) cards in Alpha machines.
Reviewed by: msmith (ages ago)
|
#
464e014e |
| 25-Feb-2003 |
John Baldwin <jhb@FreeBSD.org> |
Fix a small fat-finger: s/mlxd/mxld/.
Reported by: Bob Willcox <bob@immure.com>
|
#
b2fe65c5 |
| 25-Feb-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
NO_GEOM cleanup:
Move to "struct disk*" centric API. Retire major #131 (mlxd)
|
#
b82ff758 |
| 21-Feb-2003 |
Poul-Henning Kamp <phk@FreeBSD.org> |
NO_GEOM cleanup:
Change the argument to disk_destroy() to be the same struct disk * as disk_create() takes.
This enables drivers to ignore the (now) bogus dev_t which disk_create() returns.
|
Revision tags: release/5.0.0_cvs, release/5.0.0, release/4.7.0_cvs |
|
#
7812d86f |
| 20-Sep-2002 |
Poul-Henning Kamp <phk@FreeBSD.org> |
(This commit touches about 15 disk device drivers in a very consistent and predictable way, and I apologize if I have gotten it wrong anywhere, getting prior review on a patch like this is not feasib
(This commit touches about 15 disk device drivers in a very consistent and predictable way, and I apologize if I have gotten it wrong anywhere, getting prior review on a patch like this is not feasible, considering the number of people involved and hardware availability etc.)
If struct disklabel is the messenger: kill the messenger.
Inside struct disk we had a struct disklabel which disk drivers used to communicate certain metrics to the disklayer above (GEOM or the disk mini-layer). This commit changes this communication to use four explicit fields instead.
Amongst the benefits is that the fields do not get overwritten by wrong or bogus on-disk disklabels.
Once that is clear, <sys/disk.h> which is included in the drivers no longer need to pull <sys/disklabel.h> and <sys/diskslice.h> in, the few places that needs them, have gotten explicit #includes for them.
The disklabel inside struct disk is now only for internal use in the disk mini-layer, so instead of embedding it, we malloc it as we need it.
This concludes (modulus any mistakes) the series of disklabel related commits.
I belive it all amounts to a NOP for all the rest of you :-)
Sponsored by: DARPA & NAI Labs.
show more ...
|
Revision tags: release/4.6.2_cvs, release/4.6.2, release/4.6.1, release/4.6.0_cvs, release/4.5.0_cvs, release/4.4.0_cvs |
|
#
b40ce416 |
| 12-Sep-2001 |
Julian Elischer <julian@FreeBSD.org> |
KSE Milestone 2 Note ALL MODULES MUST BE RECOMPILED make the kernel aware that there are smaller units of scheduling than the process. (but only allow one thread per process at this time). This is fu
KSE Milestone 2 Note ALL MODULES MUST BE RECOMPILED make the kernel aware that there are smaller units of scheduling than the process. (but only allow one thread per process at this time). This is functionally equivalent to teh previousl -current except that there is a thread associated with each process.
Sorry john! (your next MFC will be a doosie!)
Reviewed by: peter@freebsd.org, dillon@freebsd.org
X-MFC after: ha ha ha ha
show more ...
|
#
15fd5d22 |
| 25-Jun-2001 |
Mike Smith <msmith@FreeBSD.org> |
Driver modifications consistent with my other drivers to facilitate the use of a single set of sources across 4.x and 5.x branches.
No significant code changes.
|
#
14aa3417 |
| 15-Jun-2001 |
Peter Wemm <peter@FreeBSD.org> |
Fix warning: 193: warning: label `done' defined but not used
|
#
079f2df3 |
| 06-May-2001 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Make the disk mini-layer check for and handle zero-length transfers instead of the underlying drivers.
|
#
a468031c |
| 06-May-2001 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Actually biofinish(struct bio *, struct devstat *, int error) is more general than the bioerror().
Most of this patch is generated by scripts.
|
Revision tags: release/4.3.0_cvs, release/4.3.0 |
|
#
f8388051 |
| 26-Mar-2001 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Send the remains (such as I have located) of "block major numbers" to the bit-bucket.
|
Revision tags: release/4.2.0 |
|
#
db7e3af1 |
| 15-Oct-2000 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Remove unneeded #include <machine/clock.h>
|
Revision tags: release/4.1.1_cvs, release/4.1.0, release/3.5.0_cvs |
|
#
baff09db |
| 06-May-2000 |
Mike Smith <msmith@FreeBSD.org> |
Change the way that scatter/gather list tables are allocated so that we can use all of the s/g entries available on smaller cards. This is necessary if we want to be able to handle a non-page-aligne
Change the way that scatter/gather list tables are allocated so that we can use all of the s/g entries available on smaller cards. This is necessary if we want to be able to handle a non-page-aligned 64k transfer on 2.x and 3.x firmware.
Fix a missing splx() that may have left us at splbio() for longer than desired.
Reduce shadowing of controller-supplied parameters a little.
show more ...
|
#
9626b608 |
| 05-May-2000 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Separate the struct bio related stuff out of <sys/buf.h> into <sys/bio.h>.
<sys/bio.h> is now a prerequisite for <sys/buf.h> but it shall not be made a nested include according to bdes teachings on
Separate the struct bio related stuff out of <sys/buf.h> into <sys/bio.h>.
<sys/bio.h> is now a prerequisite for <sys/buf.h> but it shall not be made a nested include according to bdes teachings on the subject of nested includes.
Diskdrivers and similar stuff below specfs::strategy() should no longer need to include <sys/buf.> unless they need caching of data.
Still a few bogus uses of struct buf to track down.
Repocopy by: peter
show more ...
|
#
3389ae93 |
| 19-Apr-2000 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Remove ~25 unneeded #include <sys/conf.h> Remove ~60 unneeded #include <sys/malloc.h>
|
#
8177437d |
| 15-Apr-2000 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Complete the bio/buf divorce for all code below devfs::strategy
Exceptions: Vinum untouched. This means that it cannot be compiled. Greg Lehey is on the case.
CCD not conve
Complete the bio/buf divorce for all code below devfs::strategy
Exceptions: Vinum untouched. This means that it cannot be compiled. Greg Lehey is on the case.
CCD not converted yet, casts to struct buf (still safe)
atapi-cd casts to struct buf to examine B_PHYS
show more ...
|
#
421f2f7d |
| 11-Apr-2000 |
Mike Smith <msmith@FreeBSD.org> |
Add features required for basic userland management utility:
- implement user-initiated background drive rebuild - implement user-initiated background consistency check - log controller-initiated
Add features required for basic userland management utility:
- implement user-initiated background drive rebuild - implement user-initiated background consistency check - log controller-initiated background rebuild/check operations
Try to fix the elusive "invalid log operation" bug, and panic if we do hit this one in the hopes of getting better information.
Tidy up diagnostic messages.
Try to use disk_create/disk_destroy correctly. This isn't working properly yet, but it's not clear whose fault that is.
show more ...
|
#
c244d2de |
| 02-Apr-2000 |
Poul-Henning Kamp <phk@FreeBSD.org> |
Move B_ERROR flag to b_ioflags and call it BIO_ERROR.
(Much of this done by script)
Move B_ORDERED flag to b_ioflags and call it BIO_ORDERED.
Move b_pblkno and b_iodone_chain to struct bio while w
Move B_ERROR flag to b_ioflags and call it BIO_ERROR.
(Much of this done by script)
Move B_ORDERED flag to b_ioflags and call it BIO_ORDERED.
Move b_pblkno and b_iodone_chain to struct bio while we transition, they will be obsoleted once bio structs chain/stack.
Add bio_queue field for struct bio aware disksort.
Address a lot of stylistic issues brought up by bde.
show more ...
|
Revision tags: release/4.0.0_cvs |
|
#
da8bb3a3 |
| 18-Mar-2000 |
Mike Smith <msmith@FreeBSD.org> |
Update to the latest development version of the Mylex driver. Changes in this version include:
- Support for version 2.x firmware (2.42 or later recommended). This means we are the only open-s
Update to the latest development version of the Mylex driver. Changes in this version include:
- Support for version 2.x firmware (2.42 or later recommended). This means we are the only open-source driver supporting these adapters. This code has only been tested on a Digital KZPCA adapter in an Alpha system, but is believed to be correct. NOTE: EISA adapters are not yet supported.
- Support the BIOS/Firmware initialisation handshake protocol. This allows the driver to bring the card up to operational state even if the BIOS can't be run (eg. if it's an x86 BIOS in an Alpha system).
- A working command pasthrough interface. This allows a user-space configuration tool (under development) to issue arbitrary commands to the controller or to devices in the system.
show more ...
|
#
9eee27f1 |
| 22-Dec-1999 |
Mike Smith <msmith@FreeBSD.org> |
Updates resulting from new documentation from Mylex and some cleaning:
- Don't keep private copies of some of the data fields from the ENQUIRY and ENQUIRY2 commands. Instead, standardise on the
Updates resulting from new documentation from Mylex and some cleaning:
- Don't keep private copies of some of the data fields from the ENQUIRY and ENQUIRY2 commands. Instead, standardise on the ENQUIRY2 command for initial adapter information, and keep a copy of the entire structure. Refer to it where appropriate.
- Move all of the controller description functionality into a new function. Print lots more controller data if bootverbose is set. Add knowledge of the DAC960 PR, PT, PTL0 and PRL controllers, rename the 960PTL -> PTL0 and 1100P -> 1100PVX.
- Correctly terminate an error message.
The controller interface procedures have been reviewed against the Mylex-supplied documentation; no changes appear necessary at this time.
show more ...
|
Revision tags: release/3.4.0_cvs |
|
#
5792b7fe |
| 11-Dec-1999 |
Mike Smith <msmith@FreeBSD.org> |
Major update to the Mylex DAC960 driver adding new hardware support and fixing some major bugs.
- Add support for the v5 firmware interface, used by the DAC1164P (tested) and AcceleRAID 352 (unt
Major update to the Mylex DAC960 driver adding new hardware support and fixing some major bugs.
- Add support for the v5 firmware interface, used by the DAC1164P (tested) and AcceleRAID 352 (untested but should work). We now cover all of the Mylex family's protocols except for v2 (used by EISA and Alpha-compatible cards).
- Fix an accounting bug which resulted in endless 'poll still busy' messages. In situations of high controller load the count of poll commands could be incremented without actually successfully launching a command. This totally removes the accounting for status poll commnads; it was its own worst enemy.
- Add some simple reentry prevention locks to processing of the waiting and completed command queues to prevent races which could result in I/O being done or completed twice (both are fatal). This highlights a need for simple locking primitives in both the UP and SMP kernels.
- Streamline the handling of command completion to reduce the amount of redundant work being done. Remove the code which tests for commands that have gone missing in action; nobody has ever seen one of these and it wouldn't have worked properly anyhow.
- Handle disconnection of drives from the controller in the detach, not shutdown method. This avoids problems flushing the cache in a panic when a drive is mounted.
- Don't call bus_generic_detach when disconnecting drives; it doesn't actually do anything useful.
- Increment the log message index regardless of whether we actually retrieved one or not. If we run into a message that we can't fetch, we don't want to spin endlessly complaining about the fact.
- Don't assume that interrupts will work when we're flushing the controller. We may think they are enabled, but in eg. a panic situation the controller may not be able to deliver an interrupt.
show more ...
|