118326e940
ioctl_by_bdev may only be used INSIDE the kernel. If the "arg" argument refers to memory that is accessed by put_user/get_user in the ioctl function, the memory needs to be in the kernel address space (that's the set_fs(KERNEL_DS) doing in the ioctl_by_bdev). This works on i386 because even with set_fs(KERNEL_DS) the user space memory is still accessible with put_user/get_user. That is not true for s390. In short the ioctl implementation of the pktcdvd device driver is horribly broken. Signed-off-by: Peter Osterlund <petero2@telia.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> |
||
---|---|---|
.. | ||
aoe | ||
paride | ||
acsi_slm.c | ||
acsi.c | ||
amiflop.c | ||
as-iosched.c | ||
ataflop.c | ||
cciss_cmd.h | ||
cciss_scsi.c | ||
cciss_scsi.h | ||
cciss.c | ||
cciss.h | ||
cfq-iosched.c | ||
cpqarray.c | ||
cpqarray.h | ||
cryptoloop.c | ||
DAC960.c | ||
DAC960.h | ||
deadline-iosched.c | ||
elevator.c | ||
floppy.c | ||
genhd.c | ||
ida_cmd.h | ||
ida_ioctl.h | ||
ioctl.c | ||
Kconfig | ||
Kconfig.iosched | ||
ll_rw_blk.c | ||
loop.c | ||
Makefile | ||
nbd.c | ||
noop-iosched.c | ||
pktcdvd.c | ||
ps2esdi.c | ||
rd.c | ||
scsi_ioctl.c | ||
smart1,2.h | ||
swim3.c | ||
swim_iop.c | ||
sx8.c | ||
ub.c | ||
umem.c | ||
viodasd.c | ||
xd.c | ||
xd.h | ||
z2ram.c |