diag304 71 arch/s390/hypfs/hypfs_sprp.c struct hypfs_diag304 *diag304; diag304 79 arch/s390/hypfs/hypfs_sprp.c diag304 = kzalloc(sizeof(*diag304), GFP_KERNEL); diag304 80 arch/s390/hypfs/hypfs_sprp.c if (!data || !diag304) diag304 84 arch/s390/hypfs/hypfs_sprp.c if (copy_from_user(diag304, user_area, sizeof(*diag304))) diag304 87 arch/s390/hypfs/hypfs_sprp.c if ((diag304->args[0] >> 8) != 0 || diag304->args[1] > DIAG304_CMD_MAX) diag304 91 arch/s390/hypfs/hypfs_sprp.c udata = (void __user *)(unsigned long) diag304->data; diag304 92 arch/s390/hypfs/hypfs_sprp.c if (diag304->args[1] == DIAG304_SET_WEIGHTS || diag304 93 arch/s390/hypfs/hypfs_sprp.c diag304->args[1] == DIAG304_SET_CAPPING) diag304 97 arch/s390/hypfs/hypfs_sprp.c cmd = *(unsigned long *) &diag304->args[0]; diag304 98 arch/s390/hypfs/hypfs_sprp.c diag304->rc = hypfs_sprp_diag304(data, cmd); diag304 100 arch/s390/hypfs/hypfs_sprp.c if (diag304->args[1] == DIAG304_QUERY_PRP) diag304 106 arch/s390/hypfs/hypfs_sprp.c rc = copy_to_user(user_area, diag304, sizeof(*diag304)) ? -EFAULT : 0; diag304 108 arch/s390/hypfs/hypfs_sprp.c kfree(diag304);