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.gli...@gmail.com 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 from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to