Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux
Pull s390 fixes from Martin Schwidefsky: "A couple of s390 bug fixes for 3.5-rc4" * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: s390/32: Don't clobber personality flags on exec s390/smp: add missing smp_store_status() for !SMP s390/dasd: fix ioctl return value s390: Always use "long" for ssize_t to match size_t
This commit is contained in:
commit
a492246c34
5 changed files with 7 additions and 9 deletions
|
@ -180,7 +180,8 @@ extern char elf_platform[];
|
|||
#define ELF_PLATFORM (elf_platform)
|
||||
|
||||
#ifndef CONFIG_64BIT
|
||||
#define SET_PERSONALITY(ex) set_personality(PER_LINUX)
|
||||
#define SET_PERSONALITY(ex) \
|
||||
set_personality(PER_LINUX | (current->personality & (~PER_MASK)))
|
||||
#else /* CONFIG_64BIT */
|
||||
#define SET_PERSONALITY(ex) \
|
||||
do { \
|
||||
|
|
|
@ -13,6 +13,7 @@
|
|||
*/
|
||||
|
||||
typedef unsigned long __kernel_size_t;
|
||||
typedef long __kernel_ssize_t;
|
||||
#define __kernel_size_t __kernel_size_t
|
||||
|
||||
typedef unsigned short __kernel_old_dev_t;
|
||||
|
@ -25,7 +26,6 @@ typedef unsigned short __kernel_mode_t;
|
|||
typedef unsigned short __kernel_ipc_pid_t;
|
||||
typedef unsigned short __kernel_uid_t;
|
||||
typedef unsigned short __kernel_gid_t;
|
||||
typedef int __kernel_ssize_t;
|
||||
typedef int __kernel_ptrdiff_t;
|
||||
|
||||
#else /* __s390x__ */
|
||||
|
@ -35,7 +35,6 @@ typedef unsigned int __kernel_mode_t;
|
|||
typedef int __kernel_ipc_pid_t;
|
||||
typedef unsigned int __kernel_uid_t;
|
||||
typedef unsigned int __kernel_gid_t;
|
||||
typedef long __kernel_ssize_t;
|
||||
typedef long __kernel_ptrdiff_t;
|
||||
typedef unsigned long __kernel_sigset_t; /* at least 32 bits */
|
||||
|
||||
|
|
|
@ -44,6 +44,7 @@ static inline void smp_call_online_cpu(void (*func)(void *), void *data)
|
|||
}
|
||||
|
||||
static inline int smp_find_processor_id(int address) { return 0; }
|
||||
static inline int smp_store_status(int cpu) { return 0; }
|
||||
static inline int smp_vcpu_scheduled(int cpu) { return 1; }
|
||||
static inline void smp_yield_cpu(int cpu) { }
|
||||
static inline void smp_yield(void) { }
|
||||
|
|
|
@ -3804,7 +3804,7 @@ dasd_eckd_ioctl(struct dasd_block *block, unsigned int cmd, void __user *argp)
|
|||
case BIODASDSYMMIO:
|
||||
return dasd_symm_io(device, argp);
|
||||
default:
|
||||
return -ENOIOCTLCMD;
|
||||
return -ENOTTY;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -498,12 +498,9 @@ int dasd_ioctl(struct block_device *bdev, fmode_t mode,
|
|||
break;
|
||||
default:
|
||||
/* if the discipline has an ioctl method try it. */
|
||||
if (base->discipline->ioctl) {
|
||||
rc = -ENOTTY;
|
||||
if (base->discipline->ioctl)
|
||||
rc = base->discipline->ioctl(block, cmd, argp);
|
||||
if (rc == -ENOIOCTLCMD)
|
||||
rc = -EINVAL;
|
||||
} else
|
||||
rc = -EINVAL;
|
||||
}
|
||||
dasd_put_device(base);
|
||||
return rc;
|
||||
|
|
Loading…
Reference in a new issue