On 10/01/2015 08:48, Jerome Glisse wrote: > On Thu, Jan 08, 2015 at 01:05:41PM +0200, Haggai Eran wrote: >> On 06/01/2015 00:44, j.glisse@xxxxxxxxx wrote: >>> + /* fence_wait() - to wait on device driver fence. >>> + * >>> + * @fence: The device driver fence struct. >>> + * Returns: 0 on success,-EIO on error, -EAGAIN to wait again. >>> + * >>> + * Called when hmm want to wait for all operations associated with a >>> + * fence to complete (including device cache flush if the event mandate >>> + * it). >>> + * >>> + * Device driver must free fence and associated resources if it returns >>> + * something else thant -EAGAIN. On -EAGAIN the fence must not be free >>> + * as hmm will call back again. >>> + * >>> + * Return error if scheduled operation failed or if need to wait again. >>> + * -EIO Some input/output error with the device. >>> + * -EAGAIN The fence not yet signaled, hmm reschedule waiting thread. >>> + * >>> + * All other return value trigger warning and are transformed to -EIO. >>> + */ >>> + int (*fence_wait)(struct hmm_fence *fence); >> >> According to the comment, the device frees the fence struct when the >> fence_wait callback returns zero or -EIO, but the code below calls >> fence_unref after fence_wait on the same fence. > > Yes comment is out of date, i wanted to simplify fence before readding > it once needed (by device memory migration). > >> >>> + >>> + /* fence_ref() - take a reference fence structure. >>> + * >>> + * @fence: Fence structure hmm is referencing. >>> + */ >>> + void (*fence_ref)(struct hmm_fence *fence); >> >> I don't see fence_ref being called anywhere in the patchset. Is it >> actually needed? > > Not right now but the page migration to device memory use it. But i > can remove it now. > > I can respin to make comment match code but i would like to know where > i stand on everythings else. > Well, I've read patches 1 through 4, and they seemed fine, although I still want to have a deeper look into patch 4, because the page table code seems a little tricky. I haven't completed reading patch 5 and 6 yet. Haggai -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>