| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
| |
Pointed out by: phk/flexelint
|
|
|
|
|
|
| |
Based on patch in PR-42659, but done somewhat differently.
PR: 42659
|
|
|
|
|
|
|
|
|
| |
PR40430 by "Peter Haight <peterh@sapros.com>" that has semilar patches
included and which I merged with my own work.
HW sponsored by: FreeBSD Foundation & FreeBSD Mall Inc
Enjoy!
|
|
|
|
|
|
| |
instead rely on ATAPI devices ability to do the work instead.
MFC material.
|
|
|
|
|
|
| |
to calculate the max amount of data in one IO request.
Correct the max size on atapi floppies/tapes as well.
|
|
|
|
|
|
| |
transfer at most 65534 bytes, thats 126 times DEV_BSIZE not 252 :(
Pointed out by: Ian Dowse <iedowse@maths.tcd.ie>
|
| |
|
| |
|
|
|
|
|
|
|
| |
Initial work & code by tmm.
Lots of changes and rearrangements by yours truely to make busdma
be a little less a PITA (but I still dont like it).
|
|
|
|
|
|
|
| |
Once again we can notice that badly thought out hacks ferment and infect
far more code than initially expected.
Sponsored by: DARPA and NAI Labs.
|
|
|
|
|
|
|
|
|
|
|
|
| |
general cleanup of the API. The entire API now consists of two functions
similar to the pre-KSE API. The suser() function takes a thread pointer
as its only argument. The td_ucred member of this thread must be valid
so the only valid thread pointers are curthread and a few kernel threads
such as thread0. The suser_cred() function takes a pointer to a struct
ucred as its first argument and an integer flag as its second argument.
The flag is currently only used for the PRISON_ROOT flag.
Discussed on: smp@
|
|
|
|
|
|
| |
MFC: ASAP
:
|
| |
|
|
|
|
| |
PR: 26644
|
|
|
|
|
|
| |
the ATA/ATAPI driver. This solves the concurrency problem with
the new GEOM code, and also cuts a good deal of the patch size
in the upcoming MFC.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ACPI_NO_SEMAPHORES, ASR_MEASURE_PERFORMANCE, AST_DEBUG, ATAPI_DEBUG,
ATA_DEBUG, BKTR_ALLOC_PAGES, BROOKTREE_ALLOC_PAGES, CAPABILITIES,
COMPAT_SUNOS, CV_DEBUG, MAXFILES, METEOR_TEST_VIDEO, NDEVFSINO,
NDEVFSOVERFLOW, NETGRAPH_BRIDGE, NETSMB, NETSMBCRYPTO, PFIL_HOOKS,
SIMOS, SMBFS, VESA_DEBUG, VGA_DEBUG.
Start using #! to comment out negative options and ## to comment out
broken options.
atapi-all.c:
Fixed rotted bits that were hiding under ATAPI_DEBUG.
atapi-cd.c:
#include "opt_ata.h" so that ACD_DEBUG is actually visible.
ata/atapi-tape.c
#include "opt_ata.h" so that AST_DEBUG is actually visible.
|
|
|
|
|
| |
This also fixes an old bug where some ATAPI devices went into
funny mode on an 'atacontrol reinit' command.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Overhaul of the attach/detach code and structures, there were some nasty
bugs in the old implementation. This made it possible to collapse the
ATA/ATAPI device control structures into one generic structure.
A note here, the kernel is NOT ready for detach of active devices,
it fails all over in random places, but for inactive devices it works.
However for ATA RAID this works, since the RAID abstration layer
insulates the buggy^H^H^H^H^H^Hfragile device subsystem from the
physical disks.
Proberly detect the RAID's from the BIOS, and mark critical RAID1
arrays as such, but continue if there is enough of the mirror left
to do so.
Properly fail arrays on a live system. For RAID0 that means return EIO,
and for RAID1 it means continue on the still working part of the mirror
if possible, else return EIO.
If the state changes, log this to the console.
Allow for Promise & Highpoint controllers/arrays to coexist on the
same machine. It is not possible to distribute arrays over different
makes of controllers though.
If Promise SuperSwap enclosures are used, signal disk state on the
status LED on the front.
Misc fixes that I had lying around for various minor bugs.
Sponsored by: Advanis Inc.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
tracks as /dev/acdNtY.
This solves the problems with having to deal with howmany and which
devices are open.
For hysterical reasons ONLY, make a link to both the acdNa & acdNc devices.
|
|
|
|
| |
Fix a bogon introduced in the previous commit, that broke CDIOREADSUBCHANNEL.
|
|
|
|
| |
on the stack *blush*...
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
This might introduce problems on normal CD's (again) sigh...
|
|
|
|
| |
PR: 29360
|
|
|
|
| |
PR: 28604
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add tagged queueing support for new IBM drives.
Add support for Yet Another Promise ATA 100 chip.
Flush disk cache on close.
Dont flush the disk cache on BIO_ORDERED anymore.
Cleanup the tests for DMA on ATAPI devices.
Allow to share ALL irq's even the std irg 14 & 15.
Fix calculation bug in end of media code on CD's.
Add REZERO on opening a CDR/CDRW.
Cleanup ataioctl a bit.
|
|
|
|
|
|
|
|
|
| |
size (previously, the transfer size would be rounded up to a multiple of
the block size, which would overflow the buffer).
This fixes panics when doing things like trying to mount audio CD's.
PR: kern/21946
Review Timeout: sos
|
|
|
|
| |
Assure cur_write_speed can be no less than 177 to avoid divide by 0 error.
|
|
|
|
| |
PR 26647
|
| |
|
| |
|
|
|
|
|
|
|
| |
PR 27213.
BTW the CDIOCREADAUDIO ioctl is deprecated, its not longer needed
and was an ugly hack from start on.
|
|
|
|
|
|
| |
than the bioerror().
Most of this patch is generated by scripts.
|
|
|
|
|
|
|
| |
expected fixate time before returning.
Dont print error messages to the console on READ_TOC on
a blank media.
|
|
|
|
|
|
|
|
|
|
|
| |
The fixes the problem of PLAY_BIG not being implemented on
some modern drives.
The problem now is that some old drives use BSD encoding
in the MSF case, which they dont tell, and which is also
not according to spec *sigh*. Hopefully there are not
too many of those still alive, or I hereby grant
license to kill the firmware writers that wrote the mess.
|
|
|
|
| |
the bit-bucket.
|
|
|
|
|
|
| |
are busy blanking and erasing CD-RW media.
This fixes burncd's premature returns from blanking/erasing
that caused trouble.
|
|
|
|
| |
command, so use the info from the TOC instead.
|
| |
|
|
|
|
| |
TOC read from the CD, instead of cloning them when asked to.
|
| |
|
|
|
|
|
|
|
|
|
| |
see atacontrol(8) for more.
Also the ATA_ENABLE_ATAPI_DMA, ATA_ENABLE_WC and ATA_ENABLE_TAGS
options are gone, use the tuneables listed in ata.4 instead from
the loader (this makes it possible to switch off DMA before the
driver has to touch the devices on broken hardware).
|
|
|
|
|
|
|
|
|
|
| |
Proberly fail outstanding bio requests on devices that are detached.
This makes it possible to change between disk/cdrom/dvd/whathaveyou
in a notebook, just by suspending it, changing the device in the
bay (or what you model calls it), unsuspend and the ATA driver
will figure out what disappeared and properly fail those, and attach
any new devices found.
|
| |
|
|
|
|
| |
Not pretty but it works (I hope)...
|
|
|
|
|
| |
devs other than the first, and allowed to clone a nonexistent
device..
|