qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Huth <thuth@redhat.com>
To: Christian Borntraeger <borntraeger@de.ibm.com>,
	qemu-s390x@nongnu.org,
	Viktor Mihajlovski <mihajlov@linux.vnet.ibm.com>
Cc: Cornelia Huck <cohuck@redhat.com>,
	qemu-devel@nongnu.org, Farhan Ali <alifm@linux.ibm.com>,
	Alexey Kardashevskiy <aik@ozlabs.ru>
Subject: Re: [Qemu-devel] [PATCH v3 2/3] pc-bios/s390-ccw/net: Use diag308 to reset machine before jumping to the OS
Date: Wed, 25 Apr 2018 14:34:36 +0200	[thread overview]
Message-ID: <775de9f5-7da0-45fa-da32-edceac7cf258@redhat.com> (raw)
In-Reply-To: <60dc9968-58fd-46e3-b471-7a0b7093ba15@de.ibm.com>

On 25.04.2018 14:18, Christian Borntraeger wrote:
> 
> On 04/25/2018 11:08 AM, Thomas Huth wrote:
> 
>> --- a/pc-bios/s390-ccw/netmain.c
>> +++ b/pc-bios/s390-ccw/netmain.c
>> @@ -283,6 +283,15 @@ void panic(const char *string)
>>      }
>>  }
>>  
>> +void write_subsystem_identification(void)
>> +{
>> +    uint32_t *schid = (uint32_t *) 184;
>> +    uint32_t *zeroes = (uint32_t *) 188;
>> +
>> +    *schid = 0;         /* We must not set this for virtio-net */
>> +    *zeroes = 0;
>> +}
>> +
> 
> I think we actually want to have the CCW devno of that network device
> stored. It has some value to know which CCW device we bootet from, no?

Actually, I tried that first (and it took quite some time to debug it),
but the Linux kernel then bails out quite early, without any error
message. The trace looks like this:

0x0000000007801802:  diag	%r1,%r1,776
0x0000000007801780:  larl	%r2,0x7831004
0x0000000007801786:  llgf	%r1,8
0x000000000780178c:  mvc	0(12,%r0),0(%r2)
0x0000000007801792:  br	%r1
0x0000000000000418:  bas	%r14,512
0x0000000000000200:  mvi	163,1
0x0000000000000204:  slr	%r0,%r0
0x0000000000000206:  lhi	%r1,2
0x000000000000020a:  sigp	%r1,%r0,18
0x000000000000020e:  bras	%r13,0x252
0x0000000000000252:  lmh	%r0,%r15,0(%r13)
0x0000000000000258:  sam31
0x000000000000025a:  br	%r14
0x000000000000041c:  lh	%r1,184
0x0000000000000420:  bct	%r1,1322
0x0000000000000424:  l	%r1,184
0x0000000000000428:  la	%r2,1840
0x000000000000042c:  bas	%r14,640
0x0000000000000280:  la	%r4,0(%r14)
0x0000000000000284:  la	%r3,792
0x0000000000000288:  la	%r5,804
0x000000000000028c:  la	%r6,888
0x0000000000000290:  la	%r7,20
0x0000000000000294:  st	%r2,4(%r6)
0x0000000000000298:  la	%r2,80(%r2)
0x000000000000029c:  la	%r6,8(%r6)
0x00000000000002a0:  bct	%r7,660
0x00000000000002a4:  lctl	%c6,%c6,868
0x00000000000002a8:  slr	%r2,%r2
0x00000000000002aa:  ssch	0(%r3)
0x00000000000002ae:  bne	786
0x0000000000000312:  lpsw	880
Guest crashed on cpu 0: disabled-wait
PSW: 0x000a000000000000 0x0000000000000000

That's the Lloader function in arch/s390/kernel/head.S which is failing
here, so seems like Linux tries to load from a block device in case
there is a value in 184. Thus I assume that 184 has to contain 0 in this
case.

 Thomas

  reply	other threads:[~2018-04-25 12:34 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-25  9:08 [Qemu-devel] [PATCH v3 0/3] pc-bios/s390-ccw: Some few network boot improvements Thomas Huth
2018-04-25  9:08 ` [Qemu-devel] [PATCH v3 1/3] pc-bios/s390-ccw/net: Split up net_load() into init, load and uninit parts Thomas Huth
2018-04-25 15:51   ` Farhan Ali
2018-04-25  9:08 ` [Qemu-devel] [PATCH v3 2/3] pc-bios/s390-ccw/net: Use diag308 to reset machine before jumping to the OS Thomas Huth
2018-04-25 12:18   ` Christian Borntraeger
2018-04-25 12:34     ` Thomas Huth [this message]
2018-04-25 12:41       ` Christian Borntraeger
2018-04-25 12:44         ` Christian Borntraeger
2018-04-25 15:36           ` Thomas Huth
2018-04-25 15:45             ` Christian Borntraeger
2018-04-25 16:03             ` Christian Borntraeger
2018-04-26  3:43               ` Thomas Huth
2018-04-26  6:00                 ` Christian Borntraeger
2018-04-25  9:08 ` [Qemu-devel] [PATCH v3 3/3] pc-bios/s390-ccw/net: Add support for .INS config files Thomas Huth
2018-04-25 12:44 ` [Qemu-devel] [PATCH v3 0/3] pc-bios/s390-ccw: Some few network boot improvements Viktor VM Mihajlovski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=775de9f5-7da0-45fa-da32-edceac7cf258@redhat.com \
    --to=thuth@redhat.com \
    --cc=aik@ozlabs.ru \
    --cc=alifm@linux.ibm.com \
    --cc=borntraeger@de.ibm.com \
    --cc=cohuck@redhat.com \
    --cc=mihajlov@linux.vnet.ibm.com \
    --cc=qemu-devel@nongnu.org \
    --cc=qemu-s390x@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).