David Miller wrote: [Wed Sep 17 2014, 01:16:22PM EDT] > From: Bob Picco <bpicco@xxxxxxxxxx> > Date: Tue, 16 Sep 2014 12:50:39 -0400 > > > From: bob picco <bpicco@xxxxxxxxxx> > > > > For physical address larger than 47 bits the computed physical address > > was insufficient within KERN_TSB_LOOKUP_TL1. This resulted in a vmlinux > > loaded above 47 bits of physical address unable to boot in spectacular > > ways. > > > > For now we've expanded the physical address range to 52 bits at the cost of > > two instructions. Older sparc64 incur two nop-s. > > > > The two new instructions from this patch and the former KTSB_PHYS_SHIFT can > > potentially be eliminated using memblock aligning large and constraining > > the physical limit. Essentially use the "sethi" for a physical manipulated > > address and replacing the "or" at patch time with a "sllx". This would leave > > the tsb within head_64.S unused and possibly not a good solution for Cheetah+. > > We'll comtemplate this more in another round. > > > > Cc: sparclinux@xxxxxxxxxxxxxxx > > Signed-off-by: Bob Picco <bob.picco@xxxxxxxxxx> > > Bob, I think we can do this with a 4 instruction sequence, basically > "sethi, sethi, sllx, or". The two sethi's give us 22 bits each, and > we again take advantage of the 32K+ alignment of both kernel TSBs. > > Can you give this patch below a quick test on your machine that hits > this issue? Yes, please give me until later tomorrow. One, I haven't wrapped my head around this code in a bit. The other, the machine is possibly closer to you than me and can be temperamental. > > Thanks. you're welcome, bob -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html