<feed xmlns='http://www.w3.org/2005/Atom'>
<title>src/sys/dev/ata/atapi-tape.c, branch releng/8.0</title>
<subtitle>FreeBSD source tree</subtitle>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/'/>
<entry>
<title>Remove unneeded device index from unit number.</title>
<updated>2009-04-26T09:21:37+00:00</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2009-04-26T09:21:37+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=e439bf9ccc2a4e81abaa0efd2876708b4e3b8c4b'/>
<id>e439bf9ccc2a4e81abaa0efd2876708b4e3b8c4b</id>
<content type='text'>
We only use the unit number to determine whether we should rewind the
device upon closure.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We only use the unit number to determine whether we should rewind the
device upon closure.
</pre>
</div>
</content>
</entry>
<entry>
<title>Revert my ata_identify()/ata_reinit() related changes: r189166, r189091</title>
<updated>2009-02-28T22:07:15+00:00</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2009-02-28T22:07:15+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=ea74abd5f54699f69263b2cce18f3dd1dff23c23'/>
<id>ea74abd5f54699f69263b2cce18f3dd1dff23c23</id>
<content type='text'>
and partially r188903. Revert breaks new drives detection on reinit to the
state as it was before me, but fixes series of new bugs reported by some
people.

Unconditional queueing of ata_completed() calls can lead to deadlock if
due to timeout ata_reinit() was called at the same thread by previous
ata_completed(). Calling of ata_identify() on ata_reinit() in current
implementation opens numerous races and deadlocks.

Problems I was touching here are still exist and should be addresed, but
probably in different way.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
and partially r188903. Revert breaks new drives detection on reinit to the
state as it was before me, but fixes series of new bugs reported by some
people.

Unconditional queueing of ata_completed() calls can lead to deadlock if
due to timeout ata_reinit() was called at the same thread by previous
ata_completed(). Calling of ata_identify() on ata_reinit() in current
implementation opens numerous races and deadlocks.

Problems I was touching here are still exist and should be addresed, but
probably in different way.
</pre>
</div>
</content>
</entry>
<entry>
<title>Rework device probing by moving ata_getparam() call from ata_identify() to</title>
<updated>2009-02-28T11:25:05+00:00</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2009-02-28T11:25:05+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=84b59262f102e564cafed54b3f4f2a9a893b04dc'/>
<id>84b59262f102e564cafed54b3f4f2a9a893b04dc</id>
<content type='text'>
drivers' probe routines. It allows not to sleep and so not drop Giant inside
ata_identify() critical section and so avoid crash if it reentered on
request timeout. Reentering of probe call checked inside of it.

Give device own knowledge about it's type (ata/atapi/atapicam). It is not
a good idea to ask channel status for device type inside ata_getparam().

Add softc memory deallocation on device destruction.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
drivers' probe routines. It allows not to sleep and so not drop Giant inside
ata_identify() critical section and so avoid crash if it reentered on
request timeout. Reentering of probe call checked inside of it.

Give device own knowledge about it's type (ata/atapi/atapicam). It is not
a good idea to ask channel status for device type inside ata_getparam().

Add softc memory deallocation on device destruction.
</pre>
</div>
</content>
</entry>
<entry>
<title>Teach device drivers' ata_reinit() methods, that there can be more then two</title>
<updated>2009-02-21T16:39:26+00:00</updated>
<author>
<name>Alexander Motin</name>
<email>mav@FreeBSD.org</email>
</author>
<published>2009-02-21T16:39:26+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=7c84b0bd945e07aed5a4ba62b8c5944150b75dd8'/>
<id>7c84b0bd945e07aed5a4ba62b8c5944150b75dd8</id>
<content type='text'>
devices per channel.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
devices per channel.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix shutdown routine to return 0 and change signature from void return</title>
<updated>2009-02-04T20:26:27+00:00</updated>
<author>
<name>Warner Losh</name>
<email>imp@FreeBSD.org</email>
</author>
<published>2009-02-04T20:26:27+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=02fa902fbede21f440193b72702155712f06cffe'/>
<id>02fa902fbede21f440193b72702155712f06cffe</id>
<content type='text'>
to int.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
to int.
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace all calls to minor() with dev2unit().</title>
<updated>2008-09-27T08:51:18+00:00</updated>
<author>
<name>Ed Schouten</name>
<email>ed@FreeBSD.org</email>
</author>
<published>2008-09-27T08:51:18+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=6bfa9a2d66dd0e00182017d6741d44e54d0b2cca'/>
<id>6bfa9a2d66dd0e00182017d6741d44e54d0b2cca</id>
<content type='text'>
After I removed all the unit2minor()/minor2unit() calls from the kernel
yesterday, I realised calling minor() everywhere is quite confusing.
Character devices now only have the ability to store a unit number, not
a minor number. Remove the confusion by using dev2unit() everywhere.

This commit could also be considered as a bug fix. A lot of drivers call
minor(), while they should actually be calling dev2unit(). In -CURRENT
this isn't a problem, but it turns out we never had any problem reports
related to that issue in the past. I suspect not many people connect
more than 256 pieces of the same hardware.

Reviewed by:	kib
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
After I removed all the unit2minor()/minor2unit() calls from the kernel
yesterday, I realised calling minor() everywhere is quite confusing.
Character devices now only have the ability to store a unit number, not
a minor number. Remove the confusion by using dev2unit() everywhere.

This commit could also be considered as a bug fix. A lot of drivers call
minor(), while they should actually be calling dev2unit(). In -CURRENT
this isn't a problem, but it turns out we never had any problem reports
related to that issue in the past. I suspect not many people connect
more than 256 pieces of the same hardware.

Reviewed by:	kib
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix panic and breakage for non-DMA ATA devices e.g. powermac macio cells.</title>
<updated>2008-05-08T17:55:44+00:00</updated>
<author>
<name>Peter Grehan</name>
<email>grehan@FreeBSD.org</email>
</author>
<published>2008-05-08T17:55:44+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=a384947e923445d99aafa1388b79a761afc6bb75'/>
<id>a384947e923445d99aafa1388b79a761afc6bb75</id>
<content type='text'>
Handle cases where dma function pointers may be NULL, and where
the max_iosize can't be derived from a DMA data structure. For
the latter, revert to the prior behaviour of using DFLTPHYS for
the max i/o size when there is no other data.

Reviewed by:		marcel
No objection by:	sos
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Handle cases where dma function pointers may be NULL, and where
the max_iosize can't be derived from a DMA data structure. For
the latter, revert to the prior behaviour of using DFLTPHYS for
the max i/o size when there is no other data.

Reviewed by:		marcel
No objection by:	sos
</pre>
</div>
</content>
</entry>
<entry>
<title>Go back to preallocating everything possible on init.</title>
<updated>2008-04-17T12:29:35+00:00</updated>
<author>
<name>Søren Schmidt</name>
<email>sos@FreeBSD.org</email>
</author>
<published>2008-04-17T12:29:35+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=104c094e0674fcaccab37258f5bf53b8471bd396'/>
<id>104c094e0674fcaccab37258f5bf53b8471bd396</id>
<content type='text'>
This avoids calling busdma in the request processing path which caused a traumatic performance degradation.
Allocation has be postponed to after we know how many devices we possible can have on portmulitpliers to save some space.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This avoids calling busdma in the request processing path which caused a traumatic performance degradation.
Allocation has be postponed to after we know how many devices we possible can have on portmulitpliers to save some space.
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix the brokenness in the former commit, sorry for the mess.</title>
<updated>2008-04-11T11:30:27+00:00</updated>
<author>
<name>Søren Schmidt</name>
<email>sos@FreeBSD.org</email>
</author>
<published>2008-04-11T11:30:27+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=dca5e1abd5f3e39b89244763df528063510f3781'/>
<id>dca5e1abd5f3e39b89244763df528063510f3781</id>
<content type='text'>
The problem is that the PM support is part of a much larger WIP here, but due to popular demand I decided to get some of it imported.

Also I forgot the mention:

HW sponsored by: Vitsch Electronics / VEHosting
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The problem is that the PM support is part of a much larger WIP here, but due to popular demand I decided to get some of it imported.

Also I forgot the mention:

HW sponsored by: Vitsch Electronics / VEHosting
</pre>
</div>
</content>
</entry>
<entry>
<title>Add experimental support for SATA Port Multipliers</title>
<updated>2008-04-10T13:05:05+00:00</updated>
<author>
<name>Søren Schmidt</name>
<email>sos@FreeBSD.org</email>
</author>
<published>2008-04-10T13:05:05+00:00</published>
<link rel='alternate' type='text/html' href='http://cgit.freebsd.org/src/commit/?id=9f82379c24da01a791b10154df1948893d56c3c0'/>
<id>9f82379c24da01a791b10154df1948893d56c3c0</id>
<content type='text'>
Support is working on the Silicon Image SiI3124/3132.
Support is working on some AHCI chips but far from all.

Remember this is WIP, so test reports and (constructive) suggestions are welcome!
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Support is working on the Silicon Image SiI3124/3132.
Support is working on some AHCI chips but far from all.

Remember this is WIP, so test reports and (constructive) suggestions are welcome!
</pre>
</div>
</content>
</entry>
</feed>
