search for: 29f1675

Displaying 4 results from an estimated 4 matches for "29f1675".

Did you mean: 29175
2009 Dec 20
0
[PATCH 1/3] vhost: prevent modification of an active ring
..._OWNER: return vhost_net_reset_owner(n); default: + mutex_lock(&n->dev.mutex); r = vhost_dev_ioctl(&n->dev, ioctl, arg); vhost_net_flush(n); + mutex_unlock(&n->dev.mutex); return r; } } diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c index e7b4dea..29f1675 100644 --- a/drivers/vhost/vhost.c +++ b/drivers/vhost/vhost.c @@ -288,6 +288,12 @@ static long vhost_set_vring(struct vhost_dev *d, int ioctl, void __user *argp) switch (ioctl) { case VHOST_SET_VRING_NUM: + /* Resizing ring with an active backend? + * You don't want to do that. */ +...
2009 Dec 20
0
[PATCH 1/3] vhost: prevent modification of an active ring
..._OWNER: return vhost_net_reset_owner(n); default: + mutex_lock(&n->dev.mutex); r = vhost_dev_ioctl(&n->dev, ioctl, arg); vhost_net_flush(n); + mutex_unlock(&n->dev.mutex); return r; } } diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c index e7b4dea..29f1675 100644 --- a/drivers/vhost/vhost.c +++ b/drivers/vhost/vhost.c @@ -288,6 +288,12 @@ static long vhost_set_vring(struct vhost_dev *d, int ioctl, void __user *argp) switch (ioctl) { case VHOST_SET_VRING_NUM: + /* Resizing ring with an active backend? + * You don't want to do that. */ +...
2009 Dec 20
0
[PATCH 2/3] vhost: add access_ok checks
...if (features & ~VHOST_FEATURES) return -EOPNOTSUPP; - vhost_net_set_features(n, features); - return 0; + return vhost_net_set_features(n, features); case VHOST_RESET_OWNER: return vhost_net_reset_owner(n); default: diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c index 29f1675..33e06bf 100644 --- a/drivers/vhost/vhost.c +++ b/drivers/vhost/vhost.c @@ -224,6 +224,91 @@ void vhost_dev_cleanup(struct vhost_dev *dev) dev->mm = NULL; } +static int log_access_ok(void __user *log_base, u64 addr, unsigned long sz) +{ + u64 a = addr / VHOST_PAGE_SIZE / 8; + /* Make sure 6...
2009 Dec 20
0
[PATCH 2/3] vhost: add access_ok checks
...if (features & ~VHOST_FEATURES) return -EOPNOTSUPP; - vhost_net_set_features(n, features); - return 0; + return vhost_net_set_features(n, features); case VHOST_RESET_OWNER: return vhost_net_reset_owner(n); default: diff --git a/drivers/vhost/vhost.c b/drivers/vhost/vhost.c index 29f1675..33e06bf 100644 --- a/drivers/vhost/vhost.c +++ b/drivers/vhost/vhost.c @@ -224,6 +224,91 @@ void vhost_dev_cleanup(struct vhost_dev *dev) dev->mm = NULL; } +static int log_access_ok(void __user *log_base, u64 addr, unsigned long sz) +{ + u64 a = addr / VHOST_PAGE_SIZE / 8; + /* Make sure 6...