| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Submitted by: Nate Lawson <nate AT root.org>
|
|
|
|
|
|
|
|
|
|
| |
Failure to do this will result in following ata_pio_read() calls walking
off the end of the read buffer.
This resolves the "memory modified after free" panics common with Thinkpads
and CD/DVD drives.
Submitted by: Nate Lawson <nate AT root.org>
|
|
|
|
|
|
|
|
|
| |
idle the 'mask' variable could be set to 0, resulting in the timeout loop
running for the full 31 seconds.
Handling this case eliminates long hangs on resume on some systems.
Submitted by: Nate Lawson <nate AT root.org>
|
| |
|
|
|
|
|
|
|
|
|
| |
system hanging if timer interrupts aren't running yet.
This allows my Thinkpad to resume successfully with APM.
Approved by: sos
MFC after: 2 weeks
|
|
|
|
|
|
|
|
|
|
| |
providing special version of CDIOCREADSUBCHANNEL ioctl(), which assumes that
result has to be placed into kernel space not user space. In the long run
more generic solution has to be designed WRT emulating various ioctl()s
that operate on userspace buffers, but right now there is only one such
ioctl() is emulated, so that it makes little sense.
MFC after: 2 weeks
|
| |
|
|
|
|
| |
Support should now cover all old and current products.
|
|
|
|
|
| |
Try to get out of probing as early as possible on (hopefully) vacant
channels.
|
| |
|
|
|
|
|
|
|
|
| |
Reject certain ioctls if write permission is not indicated.
Bump geom API version.
Reported by: Ruben de Groot <mail25@bzerk.org>
|
| |
|
|
|
|
|
|
|
| |
We still use "normal" mode, AHCI mode is in the works still.
HW donated by: Sentex
HW donated by: Yahoo!
|
|
|
|
| |
HW donated by: Yahoo!
|
| |
|
|
|
|
| |
HW donated by: pil.dk
|
|
|
|
| |
failure reported instead.
|
| |
|
|
|
|
|
|
| |
used for static memory allocations.
Discussed with: sos
|
|
|
|
| |
cdrom/ata controller PC Card devices work better.
|
|
|
|
|
|
|
| |
Should fix hangs on IBM's etc with the fake slave problem.
MFC:
asap
|
|
|
|
| |
Cosmetic change to suspend, dont call tsleep an extra time at exit.
|
| |
|
|
|
|
|
|
|
|
|
| |
the ATA pccard locking function. This makes pccard devices like
Compact Flash cards work again.
PR: kern/72805
Submitted by: James E. Flemer <jflemer@alum.rpi.edu>
MFC in: 2 days
|
|
|
|
| |
Adjust comments etc to fit the new locking system.
|
| |
|
|
|
|
|
|
| |
The AHCI part is not supported yet, but is in the works.
5.3 RC1 candidate
|
|
|
|
|
|
|
|
| |
This also adds support for bigger disks on the controller I have access to,
and maybe others if I understood the adhoc methods used on those.
Those with more PC98 bigdrive controllers it is hereby invited to add/fix
support for those in geom_pc98.c and not using #ifdef PC98 all over the place.
|
|
|
|
| |
the model etc fields from identify.
|
|
|
|
|
| |
The interchannel locking for PC98 needed to be updated to match the
rest of the locking in ATA.
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
mutexes instead.
This closes the last (known) race issues in ATA which should fix
the various hangs etc seen on heavy loaded systems.
Change from using timeout functions to using callout functions in
the timeout code. This together with above closes the race that could
happen if timeout and device interrupt occured simultaniously.
Also fix the possible recursion in ata_reinit() on very dodgy
devices that could take us down in the probe.
|
|
|
|
| |
picky on the order of this, especially in error situations.
|
|
|
|
|
|
|
| |
This make "_NEC" devices appear as "NEC" which is more corrent.
The reason is tha NEC originally screwed up on the byteorder in the
model string, so now that they have realized that they prefixed the '_'
so that not every ATA driver on the planet would call them "EN C" :)
|
|
|
|
|
| |
This made the requirements for bouncebuffers too big with PAE.
Cleanup the way size defines for transfers are implemented.
|
|
|
|
|
|
| |
in the boot probe as well.
Suggested by: gibbs
|
|
|
|
|
|
| |
In places where we have long delays that doesn't depend on too accurate
timing, use ata_udelay() instead of DELAY() so we dont uselessly spin
the CPU if not nessesary;
|
| |
|
|
|
|
| |
Add new nVidia controllers.
|
| |
|
| |
|
|
|
|
|
|
| |
Add missing untimeout that would get lost in handling of some
error situations, and caused what looked like random timeouts
afterwards when the timeout fired.
|
| |
|
|
|
|
| |
Suggested by: phk
|
|
|
|
| |
use tsleep instead of DELAY.
|
| |
|
| |
|
|
|
|
| |
but fail utterly when we try to talk to the "fake" device.
|