Loading drivers/bluetooth/hci_vhci.c +1 −1 Original line number Diff line number Diff line Loading @@ -181,7 +181,7 @@ static inline ssize_t vhci_get_user(struct vhci_data *data, if (!skb) return -ENOMEM; if (copy_from_iter(skb_put(skb, len), len, from) != len) { if (!copy_from_iter_full(skb_put(skb, len), len, from)) { kfree_skb(skb); return -EFAULT; } Loading drivers/net/macvtap.c +1 −3 Original line number Diff line number Diff line Loading @@ -673,7 +673,6 @@ static ssize_t macvtap_get_user(struct macvtap_queue *q, struct msghdr *m, int depth; bool zerocopy = false; size_t linear; ssize_t n; if (q->flags & IFF_VNET_HDR) { vnet_hdr_len = q->vnet_hdr_sz; Loading @@ -684,8 +683,7 @@ static ssize_t macvtap_get_user(struct macvtap_queue *q, struct msghdr *m, len -= vnet_hdr_len; err = -EFAULT; n = copy_from_iter(&vnet_hdr, sizeof(vnet_hdr), from); if (n != sizeof(vnet_hdr)) if (!copy_from_iter_full(&vnet_hdr, sizeof(vnet_hdr), from)) goto err; iov_iter_advance(from, vnet_hdr_len - sizeof(vnet_hdr)); if ((vnet_hdr.flags & VIRTIO_NET_HDR_F_NEEDS_CSUM) && Loading drivers/net/tun.c +2 −5 Original line number Diff line number Diff line Loading @@ -1171,7 +1171,6 @@ static ssize_t tun_get_user(struct tun_struct *tun, struct tun_file *tfile, bool zerocopy = false; int err; u32 rxhash; ssize_t n; if (!(tun->dev->flags & IFF_UP)) return -EIO; Loading @@ -1181,8 +1180,7 @@ static ssize_t tun_get_user(struct tun_struct *tun, struct tun_file *tfile, return -EINVAL; len -= sizeof(pi); n = copy_from_iter(&pi, sizeof(pi), from); if (n != sizeof(pi)) if (!copy_from_iter_full(&pi, sizeof(pi), from)) return -EFAULT; } Loading @@ -1191,8 +1189,7 @@ static ssize_t tun_get_user(struct tun_struct *tun, struct tun_file *tfile, return -EINVAL; len -= tun->vnet_hdr_sz; n = copy_from_iter(&gso, sizeof(gso), from); if (n != sizeof(gso)) if (!copy_from_iter_full(&gso, sizeof(gso), from)) return -EFAULT; if ((gso.flags & VIRTIO_NET_HDR_F_NEEDS_CSUM) && Loading drivers/staging/lustre/lustre/llite/dcache.c +7 −26 Original line number Diff line number Diff line Loading @@ -57,9 +57,6 @@ static void ll_release(struct dentry *de) LASSERT(de); lld = ll_d2d(de); if (!lld) /* NFS copies the de->d_op methods (bug 4655) */ return; if (lld->lld_it) { ll_intent_release(lld->lld_it); kfree(lld->lld_it); Loading Loading @@ -126,30 +123,13 @@ static int ll_ddelete(const struct dentry *de) return 0; } int ll_d_init(struct dentry *de) static int ll_d_init(struct dentry *de) { CDEBUG(D_DENTRY, "ldd on dentry %pd (%p) parent %p inode %p refc %d\n", de, de, de->d_parent, d_inode(de), d_count(de)); if (!de->d_fsdata) { struct ll_dentry_data *lld; lld = kzalloc(sizeof(*lld), GFP_NOFS); if (likely(lld)) { spin_lock(&de->d_lock); if (likely(!de->d_fsdata)) { de->d_fsdata = lld; __d_lustre_invalidate(de); } else { kfree(lld); } spin_unlock(&de->d_lock); } else { struct ll_dentry_data *lld = kzalloc(sizeof(*lld), GFP_KERNEL); if (unlikely(!lld)) return -ENOMEM; } } LASSERT(de->d_op == &ll_d_ops); lld->lld_invalid = 1; de->d_fsdata = lld; return 0; } Loading Loading @@ -300,6 +280,7 @@ static int ll_revalidate_nd(struct dentry *dentry, unsigned int flags) } const struct dentry_operations ll_d_ops = { .d_init = ll_d_init, .d_revalidate = ll_revalidate_nd, .d_release = ll_release, .d_delete = ll_ddelete, Loading drivers/staging/lustre/lustre/llite/llite_internal.h +3 −14 Original line number Diff line number Diff line Loading @@ -801,7 +801,6 @@ int ll_hsm_release(struct inode *inode); /* llite/dcache.c */ int ll_d_init(struct dentry *de); extern const struct dentry_operations ll_d_ops; void ll_intent_drop_lock(struct lookup_intent *); void ll_intent_release(struct lookup_intent *); Loading Loading @@ -1189,7 +1188,7 @@ dentry_may_statahead(struct inode *dir, struct dentry *dentry) * 'lld_sa_generation == lli->lli_sa_generation'. */ ldd = ll_d2d(dentry); if (ldd && ldd->lld_sa_generation == lli->lli_sa_generation) if (ldd->lld_sa_generation == lli->lli_sa_generation) return false; return true; Loading Loading @@ -1317,17 +1316,7 @@ static inline void ll_set_lock_data(struct obd_export *exp, struct inode *inode, static inline int d_lustre_invalid(const struct dentry *dentry) { struct ll_dentry_data *lld = ll_d2d(dentry); return !lld || lld->lld_invalid; } static inline void __d_lustre_invalidate(struct dentry *dentry) { struct ll_dentry_data *lld = ll_d2d(dentry); if (lld) lld->lld_invalid = 1; return ll_d2d(dentry)->lld_invalid; } /* Loading @@ -1343,7 +1332,7 @@ static inline void d_lustre_invalidate(struct dentry *dentry, int nested) spin_lock_nested(&dentry->d_lock, nested ? DENTRY_D_LOCK_NESTED : DENTRY_D_LOCK_NORMAL); __d_lustre_invalidate(dentry); ll_d2d(dentry)->lld_invalid = 1; /* * We should be careful about dentries created by d_obtain_alias(). * These dentries are not put in the dentry tree, instead they are Loading Loading
drivers/bluetooth/hci_vhci.c +1 −1 Original line number Diff line number Diff line Loading @@ -181,7 +181,7 @@ static inline ssize_t vhci_get_user(struct vhci_data *data, if (!skb) return -ENOMEM; if (copy_from_iter(skb_put(skb, len), len, from) != len) { if (!copy_from_iter_full(skb_put(skb, len), len, from)) { kfree_skb(skb); return -EFAULT; } Loading
drivers/net/macvtap.c +1 −3 Original line number Diff line number Diff line Loading @@ -673,7 +673,6 @@ static ssize_t macvtap_get_user(struct macvtap_queue *q, struct msghdr *m, int depth; bool zerocopy = false; size_t linear; ssize_t n; if (q->flags & IFF_VNET_HDR) { vnet_hdr_len = q->vnet_hdr_sz; Loading @@ -684,8 +683,7 @@ static ssize_t macvtap_get_user(struct macvtap_queue *q, struct msghdr *m, len -= vnet_hdr_len; err = -EFAULT; n = copy_from_iter(&vnet_hdr, sizeof(vnet_hdr), from); if (n != sizeof(vnet_hdr)) if (!copy_from_iter_full(&vnet_hdr, sizeof(vnet_hdr), from)) goto err; iov_iter_advance(from, vnet_hdr_len - sizeof(vnet_hdr)); if ((vnet_hdr.flags & VIRTIO_NET_HDR_F_NEEDS_CSUM) && Loading
drivers/net/tun.c +2 −5 Original line number Diff line number Diff line Loading @@ -1171,7 +1171,6 @@ static ssize_t tun_get_user(struct tun_struct *tun, struct tun_file *tfile, bool zerocopy = false; int err; u32 rxhash; ssize_t n; if (!(tun->dev->flags & IFF_UP)) return -EIO; Loading @@ -1181,8 +1180,7 @@ static ssize_t tun_get_user(struct tun_struct *tun, struct tun_file *tfile, return -EINVAL; len -= sizeof(pi); n = copy_from_iter(&pi, sizeof(pi), from); if (n != sizeof(pi)) if (!copy_from_iter_full(&pi, sizeof(pi), from)) return -EFAULT; } Loading @@ -1191,8 +1189,7 @@ static ssize_t tun_get_user(struct tun_struct *tun, struct tun_file *tfile, return -EINVAL; len -= tun->vnet_hdr_sz; n = copy_from_iter(&gso, sizeof(gso), from); if (n != sizeof(gso)) if (!copy_from_iter_full(&gso, sizeof(gso), from)) return -EFAULT; if ((gso.flags & VIRTIO_NET_HDR_F_NEEDS_CSUM) && Loading
drivers/staging/lustre/lustre/llite/dcache.c +7 −26 Original line number Diff line number Diff line Loading @@ -57,9 +57,6 @@ static void ll_release(struct dentry *de) LASSERT(de); lld = ll_d2d(de); if (!lld) /* NFS copies the de->d_op methods (bug 4655) */ return; if (lld->lld_it) { ll_intent_release(lld->lld_it); kfree(lld->lld_it); Loading Loading @@ -126,30 +123,13 @@ static int ll_ddelete(const struct dentry *de) return 0; } int ll_d_init(struct dentry *de) static int ll_d_init(struct dentry *de) { CDEBUG(D_DENTRY, "ldd on dentry %pd (%p) parent %p inode %p refc %d\n", de, de, de->d_parent, d_inode(de), d_count(de)); if (!de->d_fsdata) { struct ll_dentry_data *lld; lld = kzalloc(sizeof(*lld), GFP_NOFS); if (likely(lld)) { spin_lock(&de->d_lock); if (likely(!de->d_fsdata)) { de->d_fsdata = lld; __d_lustre_invalidate(de); } else { kfree(lld); } spin_unlock(&de->d_lock); } else { struct ll_dentry_data *lld = kzalloc(sizeof(*lld), GFP_KERNEL); if (unlikely(!lld)) return -ENOMEM; } } LASSERT(de->d_op == &ll_d_ops); lld->lld_invalid = 1; de->d_fsdata = lld; return 0; } Loading Loading @@ -300,6 +280,7 @@ static int ll_revalidate_nd(struct dentry *dentry, unsigned int flags) } const struct dentry_operations ll_d_ops = { .d_init = ll_d_init, .d_revalidate = ll_revalidate_nd, .d_release = ll_release, .d_delete = ll_ddelete, Loading
drivers/staging/lustre/lustre/llite/llite_internal.h +3 −14 Original line number Diff line number Diff line Loading @@ -801,7 +801,6 @@ int ll_hsm_release(struct inode *inode); /* llite/dcache.c */ int ll_d_init(struct dentry *de); extern const struct dentry_operations ll_d_ops; void ll_intent_drop_lock(struct lookup_intent *); void ll_intent_release(struct lookup_intent *); Loading Loading @@ -1189,7 +1188,7 @@ dentry_may_statahead(struct inode *dir, struct dentry *dentry) * 'lld_sa_generation == lli->lli_sa_generation'. */ ldd = ll_d2d(dentry); if (ldd && ldd->lld_sa_generation == lli->lli_sa_generation) if (ldd->lld_sa_generation == lli->lli_sa_generation) return false; return true; Loading Loading @@ -1317,17 +1316,7 @@ static inline void ll_set_lock_data(struct obd_export *exp, struct inode *inode, static inline int d_lustre_invalid(const struct dentry *dentry) { struct ll_dentry_data *lld = ll_d2d(dentry); return !lld || lld->lld_invalid; } static inline void __d_lustre_invalidate(struct dentry *dentry) { struct ll_dentry_data *lld = ll_d2d(dentry); if (lld) lld->lld_invalid = 1; return ll_d2d(dentry)->lld_invalid; } /* Loading @@ -1343,7 +1332,7 @@ static inline void d_lustre_invalidate(struct dentry *dentry, int nested) spin_lock_nested(&dentry->d_lock, nested ? DENTRY_D_LOCK_NESTED : DENTRY_D_LOCK_NORMAL); __d_lustre_invalidate(dentry); ll_d2d(dentry)->lld_invalid = 1; /* * We should be careful about dentries created by d_obtain_alias(). * These dentries are not put in the dentry tree, instead they are Loading