libata: Apply NOLPM quirk to Crucial MX100 512GB SSDs
[pandora-kernel.git] / drivers / xen / grant-table.c
index 8c71ab8..b657de6 100644 (file)
@@ -193,7 +193,7 @@ int gnttab_query_foreign_access(grant_ref_t ref)
 
        nflags = shared[ref].flags;
 
-       return (nflags & (GTF_reading|GTF_writing));
+       return nflags & (GTF_reading|GTF_writing);
 }
 EXPORT_SYMBOL_GPL(gnttab_query_foreign_access);
 
@@ -355,9 +355,18 @@ void gnttab_request_free_callback(struct gnttab_free_callback *callback,
                                  void (*fn)(void *), void *arg, u16 count)
 {
        unsigned long flags;
+       struct gnttab_free_callback *cb;
+
        spin_lock_irqsave(&gnttab_list_lock, flags);
-       if (callback->next)
-               goto out;
+
+       /* Check if the callback is already on the list */
+       cb = gnttab_free_callback_list;
+       while (cb) {
+               if (cb == callback)
+                       goto out;
+               cb = cb->next;
+       }
+
        callback->fn = fn;
        callback->arg = arg;
        callback->count = count;