Re: linux-3.10+: unable to boot 31bit builds

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

 



On Wed, 2 Apr 2014, Mike Frysinger wrote:
> On Wed 22 Jan 2014 08:55:36 Heiko Carstens wrote:
> > On Tue, Jan 21, 2014 at 12:58:36PM +0100, Heiko Carstens wrote:
> > > On Tue, Jan 21, 2014 at 12:22:52PM +0100, Heiko Carstens wrote:
> > > > On Tue, Jan 21, 2014 at 04:57:39AM -0500, Mike Frysinger wrote:
> > > > > hmm, doesn't seem to work for me.  don't get a crash, just a "virtual
> > > > > machine is placed in CP mode due to a SIGP initial C".  whatever that
> > > > > means :).> > 
> > > > Ah, that probably happened because the kernel failed to mount the
> > > > root file system and killed all CPUs before printing a nice error
> > > > message.
> > > 
> > > Ok, that's not correct. Just bisected it down to:
> > > 
> > > commit 14556b33f2a5d6a3bc75cd33b709452a31555b25
> > > Author: Sebastian Ott <sebott@xxxxxxxxxxxxxxxxxx>
> > > Date:   Sat Apr 13 13:03:54 2013 +0200
> > > 
> > >     s390/css: introduce cio_register_early_subchannels
> > >     
> > >     Use cio_register_early_subchannels to register early subchannels
> > >     which are already in use. Call this function before we do the
> > >     actual subchannel scanning loop. This helps us to get rid of some
> > >     more special cases regarding the console subchannel.
> > >     
> > >     Reviewed-by: Peter Oberparleiter <oberpar@xxxxxxxxxxxxxxxxxx>
> > >     Signed-off-by: Sebastian Ott <sebott@xxxxxxxxxxxxxxxxxx>
> > >     Signed-off-by: Martin Schwidefsky <schwidefsky@xxxxxxxxxx>
> > > 
> > > For some non-obvious reason this kills 31 bit with your config under z/VM.
> > 
> > The patch below fixes this for me...
> > The difference for 64 vs 32 bit was probably that even if cdev->drv was a
> > NULL pointer, dereferencing cdev->drv->path_event was also NULL by
> > coincidence. While on 32 bit it is not NULL and the kernel jumped to
> > somehere...
> > 
> > With all three patches within this thread s390 with CONFIG_64BIT=n ipl's
> > again, and the 32 bit native statfs64 syscall works as well.
> > 
> > However I would strongly suggest to use CONFIG_64BIT=y with CONFIG_COMPAT=y
> > instead for (now) obvious reasons ;)
> > 
> > diff --git a/drivers/s390/cio/device_fsm.c b/drivers/s390/cio/device_fsm.c
> > index c7638c543250..b19ab38a5e9a 100644
> > --- a/drivers/s390/cio/device_fsm.c
> > +++ b/drivers/s390/cio/device_fsm.c
> > @@ -484,7 +484,7 @@ static void ccw_device_report_path_events(struct
> > ccw_device *cdev) if (mask & cdev->private->pgid_reset_mask & sch->vpm)
> >  			path_event[chp] |= PE_PATHGROUP_ESTABLISHED;
> >  	}
> > -	if (cdev->online && cdev->drv->path_event)
> > +	if (cdev->online && cdev->drv && cdev->drv->path_event)
> >  		cdev->drv->path_event(cdev, path_event);
> >  }
> 
> looks like this patch was dropped somewhere ?  i had to re-apply it to my 3.14 
> build to get it to boot ...
> -mike

The commit to fix this is 2253e8d79 (which is included in 3.14). I'll
try an 31bit build with 3.14.

regards,
Sebastian

--
To unsubscribe from this list: send the line "unsubscribe linux-s390" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Kernel Development]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Info]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Linux Media]     [Device Mapper]

  Powered by Linux