[S390] cpcmd with vmalloc addresses.
authorChristian Borntraeger <cborntra@de.ibm.com>
Mon, 5 Feb 2007 20:16:54 +0000 (21:16 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Mon, 5 Feb 2007 20:16:54 +0000 (21:16 +0100)
commitbda3563fb28e3a4260ac3566cf11700792a336bb
treefd64e35a8ce5dd26b84c10ae4397b9967a1befcf
parent60383201c2c155fae2aaffd483d09eb4198b6356
[S390] cpcmd with vmalloc addresses.

Change the bounce buffer logic of cpcmd. diag8 needs _real_ memory below
2GB. Therefore vmalloced data does not work. As the data might cross a
page boundary, we cannot use virt_to_page either. The solution is to use
virt_to_page only in the check for a bounce buffer.

There was a redundant check for response==NULL. response < 2GB contains
this check as well.

I also removed the rlen==0 check, since rlen=0 and response!=NULL would
be a caller bug and response==NULL is already checked.

Signed-off-by: Christian Borntraeger <cborntra@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/kernel/cpcmd.c