Re: Boot problem on PPC with 4.4-git - Bisected to commit 21266be

From: Larry Finger
Date: Wed Jan 20 2016 - 16:36:16 EST

On 01/20/2016 02:33 PM, Dan Williams wrote:
On Wed, Jan 20, 2016 at 12:16 PM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
On Wed, Jan 20, 2016 at 12:08 PM, Dan Williams <dan.j.williams@xxxxxxxxx> wrote:
On Wed, Jan 20, 2016 at 12:01 PM, Larry Finger
<Larry.Finger@xxxxxxxxxxxx> wrote:
My PowerBook G4 Aluminum with a 32-bit PPC processor fails to boot for the
4.4-git series. The problem was bisected to commit 21266be. It took a while
to figure out why a commit that only rearranges the Kconfig files could
cause the problem.

The answer came when I read the commit message for 90a545e98126 and saw that
"Recompiling with CONFIG_IO_STRICT_DEVMEM=n" might be necessary. After I
made that change, the system boots.

If it is the graphics hardware driver at fault, the VGA controller is listed
as an ATI RV350 [Mobility Radeon 9600 M10] with PCI ID 1002:4350. It uses
radeon as the driver.

I'm not sure if this is a bug in the configuration, but I know that
selecting the default answer to all the new configuration parameters leaves
me with a machine that is unbootable.

I agree that the default configuration should remain bootable. I'll
send a change that does not force that default.

Thanks for the report and sorry for the inconvenience.

Are you sure that the bisect is pointing to "21266be9ed54 arch:
consolidate CONFIG_STRICT_DEVM in lib/Kconfig.debug" and not
"90a545e98126 restrict /dev/mem to idle io memory ranges"? The
default for CONFIG_STRICT_DEVM should be unchanged in 21266be9ed54,
it's not until 90a545e98126 that I would expect a behavior change.

Sorry for the mail flurry... if you can verify that the following
change resolves this problem I'll send it up:

diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index f75a33f29f6e..7d0b49c536c5 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -1919,7 +1919,6 @@ config STRICT_DEVMEM
bool "Filter I/O access to /dev/mem"
depends on STRICT_DEVMEM
If this option is disabled, you allow userspace (root) access to all
io-memory regardless of whether a driver is actively using that

That isn't quite right. I added that patch, and restored the 4.4.0 configuration. That one has "CONFIG_STRICT_DEVM=y". After I ran "make oldconfig", CONFIG_STRICT_DEVM was still set, which kills rebooting.

When I repeated the process, but removed the CONFIG_STRICT_DEVM line from .config before I ran "make oldconfig", then I got a bootable configuration. It seems that once STRICT_DEVM is yes, only a "make menuconfig", or equivalent, will let you turn it off.