<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers, branch v2.6.20.5</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers?h=v2.6.20.5</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers?h=v2.6.20.5'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2007-04-06T10:43:17Z</updated>
<entry>
<title>generic_serial: fix decoding of baud rate</title>
<updated>2007-04-06T10:43:17Z</updated>
<author>
<name>Daniel Drake</name>
<email>dsd@gentoo.org</email>
</author>
<published>2007-03-27T05:32:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ef1ad177623878299bd49cf42a7974309b0c6435'/>
<id>urn:sha1:ef1ad177623878299bd49cf42a7974309b0c6435</id>
<content type='text'>
Commit d720bc4b8fc5d6d179ef094908d4fbb5e436ffad partially removed a private
implementation of baud speed decoding.  However it doesn't seem to be
complete: after the speed is decoded, it is still being used as an index to
a local speed table (array overrun, no doubt).

This was found by Graham Murray who noticed it caused a 2.6.19 regression
with the SX driver: https://bugs.gentoo.org/170554

Signed-off-by: Daniel Drake &lt;dsd@gentoo.org&gt;
Acked-by: Alan Cox &lt;alan@lxorguk.ukuu.org.uk&gt;
Cc: Russell King &lt;rmk@arm.linux.org.uk&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>libata: sata_mv: Fix 50xx irq mask</title>
<updated>2007-04-06T10:43:17Z</updated>
<author>
<name>Jeff Garzik</name>
<email>jeff@garzik.org</email>
</author>
<published>2007-03-28T22:39:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=5031b2a0cab077864d7147ed4ad00199fe3ba9e1'/>
<id>urn:sha1:5031b2a0cab077864d7147ed4ad00199fe3ba9e1</id>
<content type='text'>
[libata] sata_mv: Fix 50xx irq mask

IRQ mask bits assumed a 60xx or newer generation chip, which is very
wrong for the 50xx series.  Luckily both generations shared the per-port
interrupt mask bits, leaving only the "misc chip features" bits to be
completely mismatched.

Fix 50xx by ensuring we only program bits that exist.

Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Jeff Garzik &lt;jeff@garzik.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;


</content>
</entry>
<entry>
<title>libata: sata_mv: don't touch reserved bits in EDMA config register</title>
<updated>2007-04-06T10:43:17Z</updated>
<author>
<name>Jeff Garzik</name>
<email>jeff@garzik.org</email>
</author>
<published>2007-03-28T22:38:16Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=234b52fa61f364f339b1c285ad7bdc70886992d7'/>
<id>urn:sha1:234b52fa61f364f339b1c285ad7bdc70886992d7</id>
<content type='text'>
[libata] sata_mv: don't touch reserved bits in EDMA config register

The code in mv_edma_cfg() reflected its 60xx origins, by doing things
[slightly] incorrectly on the older 50xx and newer 6042/7042 chips.

Clean up the EDMA configuration setup such that, each chip family
carefully initializes its own EDMA setup.

Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Jeff Garzik &lt;jeff@garzik.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;


</content>
</entry>
<entry>
<title>libata bugfix: HDIO_DRIVE_TASK</title>
<updated>2007-04-06T10:43:17Z</updated>
<author>
<name>Mark Lord</name>
<email>liml@rtr.ca</email>
</author>
<published>2007-03-28T22:35:21Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=66478673825757e8ef8ab3d1ceaa4115274d1b57'/>
<id>urn:sha1:66478673825757e8ef8ab3d1ceaa4115274d1b57</id>
<content type='text'>
libata bugfix: HDIO_DRIVE_TASK

I was trying to use HDIO_DRIVE_TASK for something today,
and discovered that the libata implementation does not copy
over the upper four LBA bits from args[6].

This is serious, as any tools using this ioctl would have their
commands applied to the wrong sectors on the drive, possibly resulting
in disk corruption.

Ideally, newer apps should use SG_IO/ATA_16 directly,
avoiding this bug.  But with libata poised to displace drivers/ide,
better compatibility here is a must.

This patch fixes libata to use the upper four LBA bits passed
in from the ioctl.

The original drivers/ide implementation copies over all bits
except for the master/slave select bit.  With this patch,
libata will copy only the four high-order LBA bits,
just in case there are assumptions elsewhere in libata (?).

Signed-off-by: Mark Lord &lt;mlord@pobox.com&gt;
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Jeff Garzik &lt;jeff@garzik.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;


</content>
</entry>
<entry>
<title>libata: clear TF before IDENTIFYing</title>
<updated>2007-04-06T10:43:17Z</updated>
<author>
<name>Tejun Heo</name>
<email>htejun@gmail.com</email>
</author>
<published>2007-03-28T22:33:39Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=59e23e6198366f057ea49127f810098424d3417c'/>
<id>urn:sha1:59e23e6198366f057ea49127f810098424d3417c</id>
<content type='text'>
libata: clear TF before IDENTIFYing

Some devices chock if Feature is not clear when IDENTIFY is issued.
Set ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE for IDENTIFY such that whole
TF is cleared when reading ID data.

Kudos to Art Haas for testing various futile patches over several
months and Mark Lord for pointing out the fix.

Signed-off-by: Tejun Heo &lt;htejun@gmail.com&gt;
Cc: Art Haas &lt;ahaas@airmail.net&gt;
Cc: Mark Lord &lt;mlord@pobox.com&gt;
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Jeff Garzik &lt;jeff@garzik.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>ide: revert "ide: fix drive side 80c cable check, take 2" for now</title>
<updated>2007-04-06T10:43:16Z</updated>
<author>
<name>Bartlomiej Zolnierkiewicz</name>
<email>bzolnier@gmail.com</email>
</author>
<published>2007-03-28T19:11:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=8e76199aa2df59083a6e1dccbc76871f45b6eaad'/>
<id>urn:sha1:8e76199aa2df59083a6e1dccbc76871f45b6eaad</id>
<content type='text'>
"ide: fix drive side 80c cable check, take 2" patch from Tejun Heo (commit
fab59375b9543f84d1714f7dd00f5d11e531bd3e) fixed 80c bit test (bit13 of word93)
but we also need to fix master/slave IDENTIFY order (slave device should be
probed first in order to make it release PDIAG- signal) and we should also
check for pre-ATA3 slave devices (which may not release PDIAG- signal).

Unfortunately the fact that IDE driver doesn't reset devices itself helps
only a bit as it seems that some BIOS-es reset ATA devices after programming
the chipset, some BIOS-es can be set to not probe/configure selected devices,
there may be no BIOS in case of add-on cards etc.

Since we are quite late in the release cycle and the required changes will
affect a lot of systems just revert the fix for now.

[ Please also see libata commit f31f0cc2f0b7527072d94d02da332d9bb8d7d94c. ]

Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>i2o: block IO errors on i2o disk</title>
<updated>2007-04-06T10:43:16Z</updated>
<author>
<name>Vasily Averin</name>
<email>vvs@sw.ru</email>
</author>
<published>2007-03-28T16:35:29Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b2c3c20bcd086eb6bf9fdf5e920f916d76556e72'/>
<id>urn:sha1:b2c3c20bcd086eb6bf9fdf5e920f916d76556e72</id>
<content type='text'>
I2O subsystem has been broken in mainstream several months ago (after
2.6.18).  Commit 4aff5e2333c9a1609662f2091f55c3f6fffdad36 from Jens
Axboe split struct request -&gt;flags into two parts: cmd_type and
cmd_flags.

In i2o layer this patch has replaced flag REQ_SPECIAL by the according
cmd_type.  However i2o has used REQ_SPECIAL not as command type but as
driver-specific flag for the debug purposes.  As result all i2o requests
have type "special" now, are not processed to the hardware and fail with
I/O error:

   i2o/hda:&lt;3&gt;Buffer I/O error on device i2o/hda, logical block 0
  Buffer I/O error on device i2o/hda, logical block 0
  Buffer I/O error on device i2o/hda, logical block 0
   unable to read partition table
  block-osm: device added (TID: 207): i2o/hda

The following patch removes the extra debug checks without any drawbacks and
restores the normal driver's work.

Signed-off-by:	Vasily Averin &lt;vvs@sw.ru&gt;
Acked-by: Markus Lidel &lt;Markus.Lidel@shadowconnect.com&gt;
Cc: Jens Axboe &lt;jens.axboe@oracle.com&gt;
From: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>jmicron: make ide jmicron driver play nice with libata ones</title>
<updated>2007-04-06T10:43:16Z</updated>
<author>
<name>Tejun Heo</name>
<email>htejun@gmail.com</email>
</author>
<published>2007-03-28T16:31:53Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=979c3d5113c97bdf7f94a24de86b83d8c79e18c6'/>
<id>urn:sha1:979c3d5113c97bdf7f94a24de86b83d8c79e18c6</id>
<content type='text'>
jmicron: make ide jmicron driver play nice with libata ones

When libata is configured, the device is configured such that SATA and
PATA ports live in separate functions with different programming
interfaces.  pata_jmicron and ide jmicron drivers can drive only the
PATA part.

This patch makes jmicron match PCI class code such that it doesn't
attach itself to the SATA part preventing the proper ahci driver from
attaching.

This change is suggested by Bartlomiej.

Signed-off-by: Tejun Heo &lt;htejun@gmail.com&gt;
Cc: Jeff Garzik &lt;jeff@garzik.org&gt;
Cc: justin@jmicron.com
Cc: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Bartlomiej Zolnierkiewicz &lt;bzolnier@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;


</content>
</entry>
<entry>
<title>dvb-core: fix several locking related problems</title>
<updated>2007-04-06T10:43:16Z</updated>
<author>
<name>Simon Arlott</name>
<email>simon@fire.lp0.eu</email>
</author>
<published>2007-03-29T01:22:40Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=5e37b8eb6d8f4caa1150a1f3666e08f69798ed31'/>
<id>urn:sha1:5e37b8eb6d8f4caa1150a1f3666e08f69798ed31</id>
<content type='text'>
dvb-core: fix several locking related problems

Fix several instances of dvb-core functions using mutex_lock_interruptible
and returning -ERESTARTSYS where the calling function will either never
retry or never check the return value.

These cause a race condition with dvb_dmxdev_filter_free and
dvb_dvr_release, both of which are filesystem release functions whose
return value is ignored and will never be retried.  When this happens it
becomes impossible to open dvr0 again (-EBUSY) since it has not been
released properly.

(cherry picked from commit c278850206fd9df0bb62a72ca0b277fe20c5a452)

Signed-off-by: Simon Arlott &lt;simon@fire.lp0.eu&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Acked-By: Johannes Stezenbach &lt;js@linuxtv.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@infradead.org&gt;
Signed-off-by: Michael Krufky &lt;mkrufky@linuxtv.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>DVB: isl6421: don't reference freed memory</title>
<updated>2007-04-06T10:43:16Z</updated>
<author>
<name>Thomas Viehweger</name>
<email>Thomas.Viehweger@marconi.com</email>
</author>
<published>2007-03-29T01:22:37Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=69e329bf0268ac4ac74e87636b1c745373d4ed65'/>
<id>urn:sha1:69e329bf0268ac4ac74e87636b1c745373d4ed65</id>
<content type='text'>
DVB: isl6421: don't reference freed memory

After freeing a block there should be no reference to this block.

(cherry picked from commit 09d4895488d4df5c58b739573846f514ceabc911)

Signed-off-by: Thomas Viehweger &lt;Thomas.Viehweger@marconi.com&gt;
Signed-off-by: Michael Krufky &lt;mkrufky@linuxtv.org&gt;
Signed-off-by: Mauro Carvalho Chehab &lt;mchehab@infradead.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
</feed>
