Re: [kvm-unit-tests PATCH v7 4/4] s390x: SCLP unit test

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 13 Jan 2020 12:00:00 +0100
David Hildenbrand <david@xxxxxxxxxx> wrote:

> > +/**
> > + * Test some bits in the instruction format that are specified to
> > be ignored.
> > + */
> > +static void test_instbits(void)
> > +{
> > +	SCCBHeader *h = (SCCBHeader *)pagebuf;
> > +	int cc;
> > +
> > +	expect_pgm_int();
> > +	sclp_mark_busy();
> > +	h->length = 8;
> > +	sclp_setup_int();
> > +
> > +	asm volatile(
> > +		"       .insn   rre,0xb2204200,%1,%2\n"  /* servc
> > %1,%2 */
> > +		"       ipm     %0\n"
> > +		"       srl     %0,28"
> > +		: "=&d" (cc) : "d" (valid_code), "a"
> > (__pa(pagebuf))
> > +		: "cc", "memory");
> > +	if (lc->pgm_int_code) {
> > +		sclp_handle_ext();
> > +		cc = 1;
> > +	} else if (!cc)
> > +		  
> 
> I wonder if something like the following would be possible:
> 
> expect_pgm_int();
> ...
> asm volatiole();
> ...
> sclp_wait_busy();
> check_pgm_int_code(PGM_INT_CODE_SPECIFICATION);

we do not expect a specification exception, if that happens it's
a bug and the test should rightfully fail.

> We would have to clear "sclp_busy" when we get a progam interrupt on a
> servc instruction - shouldn't be too hard to add to the program
> exception handler.

Sure that could be done, but is it worth it to rework the program
interrupt handler only for one unit test?

[...]

> > +	valid_code = 0;  
> 
> This can be dropped because ...
> 
> > +	report_abort("READ_SCP_INFO failed");  
> 
> ... you abort here.

will fix 




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux