login
Login
/
Register
Search
Forums
News
Blogs
Features
Site
Home
»
Mailing list archives
»
linux-kernel
»
2007
»
November
»
1
Re: "Fix ATAPI transfer lengths" causes CD writing regression
view
thread
!MAILaRCHIVE_VOTE_RePLACE
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [
author
]
[view in full thread]
From:
Tejun Heo <htejun@...>
To: Jeff Garzik <jeff@...>
Cc: Jens Axboe <jens.axboe@...>, Alan Cox <alan@...>, Daniel Drake <dsd@...>, linux list <linux-kernel@...>, <linux-ide@...>
Subject:
Re: "Fix ATAPI transfer lengths" causes CD writing regression
Date: Thursday, November 1, 2007 - 3:24 am
Tejun Heo wrote:
quoted text
> Hello, Jeff. > > Jeff Garzik wrote: >> That's easy for the PIO case. But CD writing is normally DMA, which >> means you will get a DMA engine exception if the device wants to give >> you more data than the scatter/gather entries permit. > > For sense data and mode pages, the standard-sanctioned way to know the > transfer size is to issue command with short buffer size just enough to > contain the fixed size header part, determine actual transfer size from > it and issue the command again with the correct buffer size. This > doesn't happen for READ/WRITE commands. Transfer sizes are > pre-determined for those commands and WRITE's to optical devices often > can't be retried w/o side effect. > > I've just went through the ATA spec and this basically means we can't > use DMA for these variable-transfer-length commands. Some DMA engines > have "throw away what's left over bit" in its command structure or SG > entry but not all do and none of drivers we currently has such feature > enabled. > > Hmmm.... reading ide-cd.c::cdrom_pc_intr(). OIC, ide-cd is dealing with > this problem by draining PIO after BMDMA engine is done. This is > possible for BMDMA engines as they simply step out when the SG entries > are exhausted; then, the interrupt handler kicks in and drains the > left-over using PIO. This just isn't possible with more modern DMA engines. > > This really makes me think libata should do these commands via PIO > unless we're gonna enable leftover draining for each DMA engine > implementation or blacklist the ones which can't drain individually. > Then again, nobody really knows how well those features would work as > probably none has actually used them.
Eeek, please ignore this. I somehow completely forgot about Allocation Length fields in CDBs. Thanks. -- tejun -
unsubscribe notice
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to
majordomo@vger.kernel.org
More majordomo info at
http://vger.kernel.org/majordomo-info.html
Please read the FAQ at
http://www.tux.org/lkml/
Previous message: [
thread
] [
date
] [
author
]
Next message: [
thread
] [
date
] [
author
]
Messages in current thread:
"Fix ATAPI transfer lengths" causes CD writing regression
, Daniel Drake
, (Tue Oct 30, 11:14 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Jeff Garzik
, (Tue Oct 30, 12:02 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Tue Oct 30, 12:10 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Tue Oct 30, 11:34 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Daniel Drake
, (Tue Oct 30, 1:45 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Tue Oct 30, 3:01 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Daniel Drake
, (Tue Oct 30, 3:21 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Wed Oct 31, 7:49 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Jens Axboe
, (Wed Oct 31, 7:57 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Jeff Garzik
, (Thu Nov 1, 5:48 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Thu Nov 1, 6:53 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Jeff Garzik
, (Thu Nov 1, 7:09 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Thu Nov 1, 10:15 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Daniel Drake
, (Thu Nov 1, 11:33 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Jeff Garzik
, (Fri Nov 2, 1:58 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Tejun Heo
, (Thu Nov 1, 12:04 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Daniel Drake
, (Fri Nov 2, 5:19 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Tejun Heo
, (Fri Nov 2, 9:17 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Daniel Drake
, (Sat Nov 3, 4:02 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Tejun Heo
, (Sat Nov 3, 8:07 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Daniel Drake
, (Sun Nov 4, 8:15 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Albert Lee
, (Sun Nov 4, 12:02 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Sun Nov 4, 7:42 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Tejun Heo
, (Sun Nov 4, 8:05 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Mon Nov 5, 9:03 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Tejun Heo
, (Tue Nov 6, 6:18 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Tue Nov 6, 8:48 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Jeff Garzik
, (Sat Nov 3, 8:34 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Thu Nov 1, 11:57 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Tejun Heo
, (Thu Nov 1, 12:06 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Wed Oct 31, 8:49 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Jeff Garzik
, (Wed Oct 31, 8:20 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Tejun Heo
, (Wed Oct 31, 8:40 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Thu Nov 1, 6:50 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Tejun Heo
, (Thu Nov 1, 3:24 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Jens Axboe
, (Wed Oct 31, 8:26 am)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Jeff Garzik
, (Wed Oct 31, 12:05 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Jens Axboe
, (Wed Oct 31, 1:55 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Daniel Drake
, (Wed Oct 31, 12:34 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Alan Cox
, (Wed Oct 31, 12:29 pm)
Re: "Fix ATAPI transfer lengths" causes CD writing regression
, Frans Pop
, (Tue Oct 30, 2:26 pm)
Navigation
Create content
Mailing list archives
Recent posts
Popular discussions
linux-kernel
:
jjohansen
[AppArmor 39/45] AppArmor: Profile loading and manipulation, pathname matching
Vladislav Bolkhovitin
Re: Integration of SCST in the mainstream Linux kernel
Heiko Carstens
Re: -mm merge plans for 2.6.23 -- sys_fallocate
Andrew Morton
2.6.23-rc6-mm1
git
:
linux-netdev
:
Gerrit Renker
[PATCH 27/37] dccp: Integration of dynamic feature activation - part 2 (server side)
Evgeniy Polyakov
Re: [BUG] New Kernel Bugs
Jarek Poplawski
[PATCH] pkt_sched: Destroy gen estimators under rtnl_lock().
David Miller
[GIT]: Networking
openbsd-misc
:
Colocation donated by:
Who's online
There are currently
1 user
and
666 guests
online.
Online users
ivy1234
Syndicate