Revision tags: v6.2.1, v6.2.0, v6.3.0, v6.0.1, v6.0.0, v6.0.0rc1, v6.1.0, v5.8.3, v5.8.2, v5.8.1, v5.8.0, v5.9.0, v5.8.0rc1, v5.6.3, v5.6.2, v5.6.1, v5.6.0, v5.6.0rc1, v5.7.0, v5.4.3, v5.4.2, v5.4.1, v5.4.0, v5.5.0, v5.4.0rc1, v5.2.2, v5.2.1, v5.2.0, v5.3.0, v5.2.0rc, v5.0.2 |
|
#
2458a87a |
| 26-Nov-2017 |
zrj <rimvydas.jasinskas@gmail.com> |
kernel/nata: Deal with ATA_DEV() and atadev->unit.
Hopefully I got all places correctly.
While there, some misc cleanup.
|
#
37c16061 |
| 26-Nov-2017 |
zrj <rimvydas.jasinskas@gmail.com> |
kernel/nata: Fix HT1000 DMA engine 64k transfer issue.
Some chips seem to need 16bit writes.
Taken-from: FreeBSD
Also noticed interesting change back in: 5b527db0a83182c576889a67555810d780759bb7
|
#
cbf684e5 |
| 26-Nov-2017 |
zrj <rimvydas.jasinskas@gmail.com> |
kernel/nata: Extract ad_get_geometry().
While there, extract ata_unit2str() too.
|
#
878a3234 |
| 25-Nov-2017 |
zrj <rimvydas.jasinskas@gmail.com> |
kernel/nata: Add Adaptec 1420 support.
It depends on Marwell so group it together.
While there, split out Cenatek, Micron generic chipset support to their own drivers. Also fix up few drivers that
kernel/nata: Add Adaptec 1420 support.
It depends on Marwell so group it together.
While there, split out Cenatek, Micron generic chipset support to their own drivers. Also fix up few drivers that cannot reliably do 64k transfers and remove few unused ATA_AHCI_P_CMD_* defines.
Taken-from: FreeBSD
show more ...
|
#
954c7881 |
| 25-Nov-2017 |
zrj <rimvydas.jasinskas@gmail.com> |
kernel/nata: Extract reset functions in chipset drivers.
Explicitly do not import any port multipliers support for now. Use only higher half of device signature, some devices return incorrect values
kernel/nata: Extract reset functions in chipset drivers.
Explicitly do not import any port multipliers support for now. Use only higher half of device signature, some devices return incorrect values in lower part and causes issues in detection. All of this is a bit messy in ata-ahci.c.
While there, include several later bugfixes.
Taken-from: FreeBSD
show more ...
|
#
bb15467a |
| 25-Nov-2017 |
zrj <rimvydas.jasinskas@gmail.com> |
kernel/nata: Misc cleanup in non chipset codes.
* Move some stuff around. * Add local implementations of biofinish() and g_io_deliver(). * Add prints for READ_NATIVE_MAX_ADDRESS. * Use >= in
kernel/nata: Misc cleanup in non chipset codes.
* Move some stuff around. * Add local implementations of biofinish() and g_io_deliver(). * Add prints for READ_NATIVE_MAX_ADDRESS. * Use >= in comparisons for devclass_get_maxunit()
No functional change.
show more ...
|
#
9243051b |
| 24-Nov-2017 |
zrj <rimvydas.jasinskas@gmail.com> |
kernel/nata: Return more data for natacontrol(8).
* include info about backing subdisks * use last 16 bytes of serial number in meta (as MatrixRAID does) * add optional automatc spindown/spinup s
kernel/nata: Return more data for natacontrol(8).
* include info about backing subdisks * use last 16 bytes of serial number in meta (as MatrixRAID does) * add optional automatc spindown/spinup support (dmesg noisy) * various cleanups * natacontrol(8) additions + cleanup
Taken-from: FreeBSD
show more ...
|
#
43156ad7 |
| 24-Nov-2017 |
zrj <rimvydas.jasinskas@gmail.com> |
kernel/nata: Pass interrupt function to ata_setup_interrupt().
There is one strange change ATA_AHCI_GHC_HR 0x80000001 -> 0x00000001. It is used for AHCI reset, all other bits are already in place so
kernel/nata: Pass interrupt function to ata_setup_interrupt().
There is one strange change ATA_AHCI_GHC_HR 0x80000001 -> 0x00000001. It is used for AHCI reset, all other bits are already in place so going with the flow on this one.
Futher reduce differences with FreeBSD r183724: * add ata_netcell_setmode() instead of relying on ata_generic_chipinit() * add ata_promise_mio_setprd() for promise * prepare siliconimage for port multipliers * spray some KASSERT() here and there * fix typo for ATA_READ_NATIVE_MAX_ADDRESS
Taken-from: FreeBSD
show more ...
|
#
59503772 |
| 23-Nov-2017 |
zrj <rimvydas.jasinskas@gmail.com> |
kernel/nata: Constification.
Attempt at making nata a bit more safe: * const attributes where possible * add and use ata_set_desc() helper * add early returns (for future split modules support
kernel/nata: Constification.
Attempt at making nata a bit more safe: * const attributes where possible * add and use ata_set_desc() helper * add early returns (for future split modules support) * fix a bug in ata-sis.c where it was patching ids table.
As a bonus, now CCVER=gcc47 no longer warn on -Warray-bounds in ata-ite.c, finally allowing to buildkernel w/o NO_WERROR (ata_mode2idx() in ata-pci.c).
No functional change intended, except for bugfix in ata-sis.c.
show more ...
|
#
13b0cf9e |
| 23-Nov-2017 |
zrj <rimvydas.jasinskas@gmail.com> |
kernel/nata: Separate sata bits.
Do some cleanup of defines and headers. Rename few ATI controllers.
While there, remove no longer used PC98 defines.
|
Revision tags: v5.0.1, v5.0.0, v5.0.0rc2, v5.1.0, v5.0.0rc1, v4.8.1, v4.8.0, v4.6.2, v4.9.0, v4.8.0rc, v4.6.1, v4.6.0, v4.6.0rc2, v4.6.0rc, v4.7.0, v4.4.3, v4.4.2, v4.4.1, v4.4.0, v4.5.0, v4.4.0rc, v4.2.4, v4.3.1, v4.2.3, v4.2.1, v4.2.0, v4.0.6, v4.3.0, v4.2.0rc, v4.0.5, v4.0.4, v4.0.3, v4.0.2 |
|
#
15bd3c73 |
| 25-Nov-2014 |
Matthew Dillon <dillon@apollo.backplane.com> |
kernel - Fix boot-time panic in NATA revealed by new callout mechanics
* The NATA driver was using spin locks in a very, very dangerous way. They did not play nice with the new blocking callout me
kernel - Fix boot-time panic in NATA revealed by new callout mechanics
* The NATA driver was using spin locks in a very, very dangerous way. They did not play nice with the new blocking callout mechanism.
* Replace all of NATAs spinlocks with lockmgr locks. In addition, change all asynchronous callout_stop() calls to synchronous callout_stop_sync() calls, and use callout_init_lk() to auto-lock ch->state_lock for the callback, which fixes a long-time deadlock race.
Reported-by: tuxillo
show more ...
|
Revision tags: v4.0.1, v4.0.0, v4.0.0rc3, v4.0.0rc2, v4.0.0rc, v4.1.0, v3.8.2, v3.8.1, v3.6.3 |
|
#
f6e8a0a1 |
| 07-Jun-2014 |
Imre Vadasz <imre@vdsz.com> |
Convert files to UTF-8
Taken-from: FreeBSD
|
Revision tags: v3.8.0, v3.8.0rc2, v3.9.0, v3.8.0rc, v3.6.2, v3.6.1, v3.6.0, v3.7.1, v3.6.0rc, v3.7.0, v3.4.3 |
|
#
06ddf0c8 |
| 05-Aug-2013 |
Sascha Wildner <saw@online.de> |
kernel: Remove some unused externs.
|
Revision tags: v3.4.2, v3.4.0, v3.4.1, v3.4.0rc, v3.5.0, v3.2.2, v3.2.1, v3.2.0, v3.3.0, v3.0.3, v3.0.2, v3.0.1, v3.1.0, v3.0.0 |
|
#
86d7f5d3 |
| 26-Nov-2011 |
John Marino <draco@marino.st> |
Initial import of binutils 2.22 on the new vendor branch
Future versions of binutils will also reside on this branch rather than continuing to create new binutils branches for each new version.
|
Revision tags: v2.12.0, v2.13.0, v2.10.1, v2.11.0, v2.10.0, v2.9.1, v2.8.2, v2.8.1, v2.8.0, v2.9.0, v2.6.3, v2.7.3, v2.6.2, v2.7.2, v2.7.1, v2.6.1, v2.7.0, v2.6.0, v2.5.1, v2.4.1, v2.5.0, v2.4.0 |
|
#
9469b9f3 |
| 19-Aug-2009 |
Matthew Dillon <dillon@apollo.backplane.com> |
NATA - Replace the queuing algorithm with the one used by bioq.
* NATA doesn't use bioq yet, but I replicated the algorithm to fix the read starvation issue.
* Interesting note: Because NATA does
NATA - Replace the queuing algorithm with the one used by bioq.
* NATA doesn't use bioq yet, but I replicated the algorithm to fix the read starvation issue.
* Interesting note: Because NATA does not have NCQ reads appear to be prioritized even more then they are on AHCI.
show more ...
|
Revision tags: v2.3.2, v2.3.1, v2.2.1, v2.2.0, v2.3.0 |
|
#
03a48513 |
| 20-Jan-2009 |
Matthew Dillon <dillon@apollo.backplane.com> |
NATA disk sort / elevator algorithm adjustments.
Move the sortq_lost counter from the request structure to the channel structure to fix some edge conditions. Limit the sort to a maximum of 16 eleme
NATA disk sort / elevator algorithm adjustments.
Move the sortq_lost counter from the request structure to the channel structure to fix some edge conditions. Limit the sort to a maximum of 16 elements before moving the freeze pointer.
This should improve the protection against large continuous linear reads and writes which can delay unrelated I/O's for very long periods of time.
Reported-by: Hasso Tepper <sinknull@crater.dragonflybsd.org>, "Simon 'corecode' Schubert" <corecode@fs.ei.tum.de>
show more ...
|
Revision tags: v2.1.1 |
|
#
167d8114 |
| 27-Sep-2008 |
Sepherosa Ziehau <sephe@dragonflybsd.org> |
Revoke the INTR_MPSAFE flag; nata is not MPSAFE yet.
|
Revision tags: v2.0.1 |
|
#
dbe4d046 |
| 28-Jun-2008 |
Matthew Dillon <dillon@dragonflybsd.org> |
Fix a system performance issue created by ata_sort_queue(). This function implements an elevator sort but it also allows requests to be delayed indefinitely when other requests continually get inser
Fix a system performance issue created by ata_sort_queue(). This function implements an elevator sort but it also allows requests to be delayed indefinitely when other requests continually get inserted in front of them. HAMMER's almost log-linear writing really exposes this issue.
The fix is to count how many times a request got delayed due to an insertion. If the count exceeds 8, the new request is placed at the end of the queue and set as the new freeze point.
show more ...
|
#
3c0963e0 |
| 27-Jun-2008 |
Matthew Dillon <dillon@dragonflybsd.org> |
Increase the default request timeout from 5 seconds to 10 seconds.
Using advise from Volker Theile of the FreeNAS project via: http://wiki.freebsd.org/JeremyChadwick/ATA_issues_and_troubleshooting
|
#
3ec9ecbc |
| 24-Mar-2008 |
Matthew Dillon <dillon@dragonflybsd.org> |
Synchronize various changes from FreeBSD. This is not exhaustive but gets the most important patches.
* Better AHCI detection and reporting. * More robust AHCI chipinit. * Fixes for additional chip
Synchronize various changes from FreeBSD. This is not exhaustive but gets the most important patches.
* Better AHCI detection and reporting. * More robust AHCI chipinit. * Fixes for additional chipsets which do not support 64K DMA transfers * VIA8237S support * Hitachi detection logic. * Vendor identification for otherwise unidentified chipsets. * keep ivars intact on atapi-cd reinit.
show more ...
|
#
7adc7a24 |
| 23-Jul-2007 |
Matthew Dillon <dillon@dragonflybsd.org> |
Add assertions for 0-length transfers and panic if one is attempted. Properly track the open count on the underlying device.
|
#
02d7aa4a |
| 05-Jun-2007 |
Sascha Wildner <swildner@dragonflybsd.org> |
Update FreeBSD ID tags.
|
#
658104b9 |
| 03-Jun-2007 |
Matthew Dillon <dillon@dragonflybsd.org> |
Part 1/2: Add a sanity check to the NATA interrupt code to assert that the command has actually been issued.
|
#
87870bc8 |
| 01-Jun-2007 |
Matthew Dillon <dillon@dragonflybsd.org> |
Merge all the FreeBSD work done since our initial import of NATA, except for the disk flushing code. The disk flushing code still needs to be done. The work includes a ton of SATA chipset work, bug
Merge all the FreeBSD work done since our initial import of NATA, except for the disk flushing code. The disk flushing code still needs to be done. The work includes a ton of SATA chipset work, bug fixes, cleanups, and new chip support.
Obtained-from: FreeBSD / =?ISO-8859-1?Q?S=F8ren_Schmidt?= <sos@deepcore.dk>
show more ...
|
#
4554c338 |
| 10-Dec-2006 |
Thomas E. Spanjaard <tgen@dragonflybsd.org> |
Fix a deadlock in the request completion code when the timeout timed out. The cause was not unlocking the done spinlock before calling ata_completed, resulting in ata_completed waiting forever becaus
Fix a deadlock in the request completion code when the timeout timed out. The cause was not unlocking the done spinlock before calling ata_completed, resulting in ata_completed waiting forever because it needs to acquire the lock as well.
The solution introduces a new request flag, ATA_R_COMPLETED to signal sleepers that a request has or has not been completed. In theory, we could just check the return value of msleep(), but this is quite elegant, and corecode convinced me ;).
Reported-by: YONETANI Tomokazu <qhwt+dfly@les.ath.cx> Reviewed-by: Simon 'corecode' Schubert <corecode@fs.ei.tum.de>
show more ...
|