#define SHALLOW_DEBUG 0
#if DEEP_DEBUG
-#define DEEP_DEBUG_PRINT(fmt, args...) printk((fmt), ##args)
+#define DEEP_DEBUG_PRINT(fmt, args...) DEBUG((fmt), ##args)
#else
#define DEEP_DEBUG_PRINT(fmt, args...)
#endif
#if SHALLOW_DEBUG
-#define SHALLOW_DEBUG_PRINT(fmt, args...) printk((fmt), ##args)
+#define SHALLOW_DEBUG_PRINT(fmt, args...) INFO((fmt), ##args)
#else
#define SHALLOW_DEBUG_PRINT(fmt, args...)
#endif
-
-#define ERROR(fmt, args...) printk((fmt), ##args)
-#define INFO(fmt, args...) printk((fmt), ##args)
+// Moved to palacios.h
+//define ERROR(fmt, args...)
+//define INFO(fmt, args...)
struct palacios_host_device_user {
spinlock_t lock;
return 0;
}
-
-static int host_dev_ioctl(struct inode *ip, struct file *fp, unsigned int val, unsigned long arg)
+static long host_dev_ioctl(struct file * fp, unsigned int val, unsigned long arg)
{
void __user *argp = (void __user *)arg;
return -EFAULT;
}
- if (v3_host_dev_read_guest_mem(dev->guestdev,
- dev,
+ if (v3_host_dev_read_guest_mem(dev,
+ dev->guestdev,
op.gpa,
temp,
op.len) != op.len) {
return -EFAULT;
}
- if (v3_host_dev_write_guest_mem(dev->guestdev,
- dev,
+ if (v3_host_dev_write_guest_mem(dev,
+ dev->guestdev,
op.gpa,
temp,
op.len) != op.len) {
DEEP_DEBUG_PRINT("palacios: hostdev: irq guest\n");
- return v3_host_dev_raise_irq(dev->guestdev, dev, op.irq);
+ return v3_host_dev_raise_irq(dev, dev->guestdev, op.irq);
}
break;
}
-
-
-
static struct file_operations host_dev_fops = {
.poll = host_dev_poll,
.release = host_dev_release,
- .ioctl = host_dev_ioctl,
+ .compat_ioctl = host_dev_ioctl,
+ .unlocked_ioctl = host_dev_ioctl,
};
if (copy_from_user(url, argp, MAX_URL)) {
- printk("copy from user error getting url for host device connect...\n");
+ ERROR("copy from user error getting url for host device connect...\n");
return -EFAULT;
}
host_dev = get_vm_ext_data(guest, "HOST_DEVICE_INTERFACE");
if (host_dev == NULL) {
- printk("Error locating vm host data for HOST_DEVICE_INTERFACE\n");
+ ERROR("Error locating vm host data for HOST_DEVICE_INTERFACE\n");
return 0;
}