On Thu, Jan 19, 2012 at 5:14 PM, Adrian Hunter <adrian.hunter@xxxxxxxxx> wrote: > On 19/01/12 13:33, Jaehoon Chung wrote: >> Hi Adrian. >> >> On 01/19/2012 07:21 PM, Adrian Hunter wrote: >> >>> On 19/01/12 07:29, Jaehoon Chung wrote: >>>> Enable eMMC background operations (BKOPS) feature. >>>> >>>> If URGENT_BKOPS is set after a response, note that BKOPS >>>> are required. After all I/O requests are finished, run >>>> BKOPS if required. Should read/write operations be requested >>>> during BKOPS, first issue HPI to interrupt the ongoing BKOPS >>>> and then service the request. >>> >>> This still does not seem to address my earlier comment which was: >>> >>> The main problem with bkops is: >>> >>> If the status is at level 3 ("critical"), some operations >>> may extend beyond their original timeouts due to maintenance >>> operations which cannot be delayed anymore. >>> >>> This means: >>> >>> 1. at level 3 either bkops are run or the timeout of the next >>> (data?) operation is extended >>> >>> 2. at level 3 either the bkops must not be interrupted or the >>> level must be rechecked after interruption and bkops run again >>> if the level is still 3, or the timeout of the next (data?) >>> operation is extended >>> >> >> This patch didn't issue the HPI when bkops-status is level2-3 >> (URGENT_BKOPS case). >> I didn't understand that must be recheck?? it's case of using HPI..? >> If HPI didn't issue,though must be recheck bkops status? >> And level-1 control should be considered for future-work. >> I will also modify the patch comment..it's confused something. > > 1. Say there are 2 write requests queued and after the first write request > the bkops level is 3. That means the 2nd write request may timeout because > the normal timeout rules do not apply. > > Thus: > 1. at level 3 either bkops are run or the timeout of the next > (data?) operation is extended > > 2. Say you are running bkops because the level was 3 and a write request > arrives. You use HPI to interrupt the bkops, but the bkops level may still > be 3, so the write request may timeout. Hence: > > 2. at level 3 either the bkops must not be interrupted or the > level must be rechecked after interruption and bkops run again > if the level is still 3, or the timeout of the next (data?) > operation is extended > A naive question perhaps, but don't the current timeout values include sufficient buffer to do implicit garbage collection anyways ? -- To unsubscribe from this list: send the line "unsubscribe linux-mmc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html