Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6
* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: [S390] irqstats: fix counting of pfault, dasd diag and virtio irqs [S390] prng: fix pointer arithmetic
This commit is contained in:
Коммит
96f3ee2805
|
@ -76,7 +76,7 @@ static void prng_seed(int nbytes)
|
|||
|
||||
/* Add the entropy */
|
||||
while (nbytes >= 8) {
|
||||
*((__u64 *)parm_block) ^= *((__u64 *)buf+i);
|
||||
*((__u64 *)parm_block) ^= *((__u64 *)(buf+i));
|
||||
prng_add_entropy();
|
||||
i += 8;
|
||||
nbytes -= 8;
|
||||
|
|
|
@ -543,7 +543,6 @@ static void pfault_interrupt(unsigned int ext_int_code,
|
|||
struct task_struct *tsk;
|
||||
__u16 subcode;
|
||||
|
||||
kstat_cpu(smp_processor_id()).irqs[EXTINT_PFL]++;
|
||||
/*
|
||||
* Get the external interruption subcode & pfault
|
||||
* initial/completion signal bit. VM stores this
|
||||
|
@ -553,6 +552,7 @@ static void pfault_interrupt(unsigned int ext_int_code,
|
|||
subcode = ext_int_code >> 16;
|
||||
if ((subcode & 0xff00) != __SUBCODE_MASK)
|
||||
return;
|
||||
kstat_cpu(smp_processor_id()).irqs[EXTINT_PFL]++;
|
||||
|
||||
/*
|
||||
* Get the token (= address of the task structure of the affected task).
|
||||
|
|
|
@ -239,7 +239,6 @@ static void dasd_ext_handler(unsigned int ext_int_code,
|
|||
addr_t ip;
|
||||
int rc;
|
||||
|
||||
kstat_cpu(smp_processor_id()).irqs[EXTINT_DSD]++;
|
||||
switch (ext_int_code >> 24) {
|
||||
case DASD_DIAG_CODE_31BIT:
|
||||
ip = (addr_t) param32;
|
||||
|
@ -250,6 +249,7 @@ static void dasd_ext_handler(unsigned int ext_int_code,
|
|||
default:
|
||||
return;
|
||||
}
|
||||
kstat_cpu(smp_processor_id()).irqs[EXTINT_DSD]++;
|
||||
if (!ip) { /* no intparm: unsolicited interrupt */
|
||||
DBF_EVENT(DBF_NOTICE, "%s", "caught unsolicited "
|
||||
"interrupt");
|
||||
|
|
|
@ -381,10 +381,10 @@ static void kvm_extint_handler(unsigned int ext_int_code,
|
|||
u16 subcode;
|
||||
u32 param;
|
||||
|
||||
kstat_cpu(smp_processor_id()).irqs[EXTINT_VRT]++;
|
||||
subcode = ext_int_code >> 16;
|
||||
if ((subcode & 0xff00) != VIRTIO_SUBCODE_64)
|
||||
return;
|
||||
kstat_cpu(smp_processor_id()).irqs[EXTINT_VRT]++;
|
||||
|
||||
/* The LSB might be overloaded, we have to mask it */
|
||||
vq = (struct virtqueue *)(param64 & ~1UL);
|
||||
|
|
Загрузка…
Ссылка в новой задаче