On Thu, Mar 22, 2018 at 12:57 PM, 亀井仁志 / KAMEI,HITOSHI <hitoshi.kamei.xm@xxxxxxxxxxx> wrote: > Hi Yang, > >> I am not sure is this the best way for this case, what about adding an option in "rbd map -o thick rbd/test"? > > I will add such option to the rbd map command to manipulate image settings. So, the end-user > do not change the settings directly via sysfs file. > >> @@ -4011,6 +4012,15 @@ static void rbd_queue_workfn(struct work_struct *work) >> goto err; >> } >> >> + /* Ignore/skip discard requests for thick-provision image */ >> >> Just ignore? or return -EOPNOTSUPP? > > Thanks, I think -EOPNOTSUPP is better because user programs cannot know > the result of requested operation when the kernel rbd driver ignores > discard request. The result of requested operation when the kernel rbd driver > ignores discard requests, which probably misleads the user programs. > >> In addition, we should not ignore the REQ_OP_WRITE_ZEROES. > > Relating to the above, the return code of REQ_OP_WRITE_ZEROS request > is also -EOPNOTSUPP instead of ignoring. I think the result of > -EOPNOTSUPP is also better for this request because the kernel > rbd driver can expect that user programs write zero data by itself. REQ_OP_WRITE_ZEROES should continue to work, we just need to make sure it never issues truncates or deletes and instead writes zeroes explicitly. I think we should be explicit about the fact that discard is not supported instead of accepting the discard request and failing it in rbd_queue_workfn(). Attached patch is what I have in mind. Thanks, Ilya -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html