Date: Wed, 23 Dec 2020 22:00:09 -0800 From: Mark Millard <marklmi@yahoo.com> To: Brandon Bergren <bdragon@FreeBSD.org> Cc: FreeBSD PowerPC ML <freebsd-ppc@freebsd.org> Subject: Re: Old PowerMac G5 2-socket/2-cores-each: head -r368820 kernel reports: bus_dmamem_alloc failed to align memory properly Message-ID: <4CB25235-BCFE-4429-AF67-45FDF5496766@yahoo.com> In-Reply-To: <8ADE5AF2-30E6-4101-BBF5-0197092C17B3@yahoo.com> References: <FE22D733-35A2-4FB4-83D7-1E953A53AC34.ref@yahoo.com> <FE22D733-35A2-4FB4-83D7-1E953A53AC34@yahoo.com> <40dead6f-2a69-cf74-0a23-cde56dd90510@blastwave.org> <53f15d43-62c3-e12c-f8db-ede6a30e4e95@blastwave.org> <46726BE0-00FF-4DE7-835B-C7B04F3B0693@yahoo.com> <04727338-1ecb-4a94-c8e9-dcef7abd1513@blastwave.org> <66ce8494-204b-4b8b-a043-94ba00509f41@www.fastmail.com> <7870C7CB-6104-4A63-AA86-4981913FA48D@yahoo.com> <8ADE5AF2-30E6-4101-BBF5-0197092C17B3@yahoo.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2020-Dec-23, at 12:32, Mark Millard <marklmi at yahoo.com> wrote: > On 2020-Dec-22, at 01:09, Mark Millard <marklmi at yahoo.com> wrote: >=20 >> On 2020-Dec-21, at 21:11, Brandon Bergren <bdragon at FreeBSD.org> = wrote: >>=20 >>> On Mon, Dec 21, 2020, at 10:25 PM, Dennis Clarke via freebsd-ppc = wrote: >>>> On 12/21/20 11:03 PM, Mark Millard wrote: >>>>=20 >>>>> As far as I know, 32-bit powerpc for old PowerMacs still has the = kernel >>>>> gradually zeroing out user-space pages, even for = single-socket/single-core >>>>> 32-bit PowerMacs. So I run 32-bit via a chroot on a 64-bit system: = the >>>>> 64-bit kernel does not have this specific problem. (I seem to = remember >>>>> that there was a different boot failure last I tried 32-bit, but I = do not >>>>> remember any detail at this time.) >>>=20 >>> This is the bridge mode bug that we haven't figured out yet. It's = specific to the G5 running a 32 bit kernel. The problem doesn't manifest = on actual 32-bit MMUs. >>=20 >> . . . >>=20 >> For the "seem to remember" part of my text . . . >>=20 >> Wrong problem and wrong machine context, I'm afraid. Back on >> Sept-22 I reported for the 2-socket G4s (typos preserved): >>=20 >> Subject: head -r365932 for 320bit powerpc unable to boot 2-socket = PowerMac G4 >>=20 >> QUOTE >> I attempted to boot an update from head -r365590 >> to head -r365932 and it dies just after: >>=20 >> Kernel entry at 0x100620 >>=20 >> via: >>=20 >> Invalid memory access at %SRR0: 0000ffff %SRR1: 00ffffff >> END QUOTE >>=20 >> (I did report at the time that the G5 gets much further along >> than the above when that same media (and content) is used to >> try to boot the G5. But the report was about the G4 context.) >=20 > Head -r368820 booted the 2-socket PowerMac G4. >=20 > But USB is somehow messed up, resulting in no keyboard input. > Eventually lots of: "bus_dmamem_alloc failed to align memory > properly" tied to attempted usb activity that fails. (This > was not a boot -v .) >=20 >=20 > Dec 23 12:13:21 FBSDG4S2 kernel: usbus0 numa-domain 0 on ohci0 > Dec 23 12:13:21 FBSDG4S2 kernel: ohci1: <NEC uPD 9210 USB controller> = mem 0x80081000-0x80081fff irq 63 at device 27.1 numa-domain 0 on pci1 > . . . > Dec 23 12:13:21 FBSDG4S2 kernel: usbus0: 12Mbps Full Speed USB v1.0 > Dec 23 12:13:21 FBSDG4S2 kernel: usbus1: 12Mbps Full Speed USB v1.0 > Dec 23 12:13:21 FBSDG4S2 kernel: ugen0.1: <NEC OHCI root HUB> at = usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: uhub0 numa-domain 0 on usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: uhub0: <NEC OHCI root HUB, class 9/0, = rev 1.00/1.00, addr 1> on usbus0 > . . . > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 1 times > Dec 23 12:13:21 FBSDG4S2 kernel: ugen0.2: <Mitsumi Electric Hub in = Apple Extended USB Keyboard> at usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: uhub4 numa-domain 0 on uhub0 > Dec 23 12:13:21 FBSDG4S2 kernel: uhub4: <Mitsumi Electric Hub in Apple = Extended USB Keyboard, class 9/0, rev 1.10/1.22, addr 2> on usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > . . . > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: CAM usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 4 times > Dec 23 12:13:21 FBSDG4S2 kernel: uhub_attach: port 1 power on or off = failed, USB_ERR_TIMEOUT > Dec 23 12:13:21 FBSDG4S2 kernel: uhub_attach: port 2 power on or off = failed, USB_ERR_TIMEOUT > Dec 23 12:13:21 FBSDG4S2 kernel: uhub_attach: port 3 power on or off = failed, USB_ERR_TIMEOUT > Dec 23 12:13:21 FBSDG4S2 kernel: uhub4: 3 ports with 2 removable, bus = powered > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: CAM usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 1 times > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: CAM usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: usb_alloc_device: set address 3 = failed (USB_ERR_TIMEOUT, ignored) > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: CAM usbus0 > . . . > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 4 times > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 4 times > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 3 times > Dec 23 12:13:21 FBSDG4S2 kernel: usbd_setup_device_desc: getting = device descriptor at addr 3 failed, USB_ERR_TIMEOUT > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: usbd_req_re_enumerate: addr=3D3, set = address failed! (USB_ERR_TIMEOUT, ignored) > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 5 times > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 3 times > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 4 times > Dec 23 12:13:21 FBSDG4S2 kernel: usbd_setup_device_desc: getting = device descriptor at addr 3 failed, USB_ERR_TIMEOUT > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: usbd_req_re_enumerate: addr=3D3, set = address failed! (USB_ERR_TIMEOUT, ignored) > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 5 times > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 4 times > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 3 times > Dec 23 12:13:21 FBSDG4S2 kernel: usbd_setup_device_desc: getting = device descriptor at addr 3 failed, USB_ERR_TIMEOUT > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: usbd_req_re_enumerate: addr=3D3, set = address failed! (USB_ERR_TIMEOUT, ignored) > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 5 times > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 3 times > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 4 times > Dec 23 12:13:21 FBSDG4S2 kernel: usbd_setup_device_desc: getting = device descriptor at addr 3 failed, USB_ERR_TIMEOUT > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > . . . > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 4 times > Dec 23 12:13:21 FBSDG4S2 kernel: usbd_setup_device_desc: getting = device descriptor at addr 3 failed, USB_ERR_TIMEOUT > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 kernel: usbd_req_re_enumerate: addr=3D3, set = address failed! (USB_ERR_TIMEOUT, ignored) > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 5 times > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 4 times > Dec 23 12:13:21 FBSDG4S2 kernel: bus_dmamem_alloc failed to align = memory properly. > Dec 23 12:13:21 FBSDG4S2 kernel: Root mount waiting for: usbus0 > Dec 23 12:13:21 FBSDG4S2 syslogd: last message repeated 4 times > Dec 23 12:13:21 FBSDG4S2 kernel: usbd_setup_device_desc: getting = device descriptor at addr 3 failed, USB_ERR_TIMEOUT > Dec 23 12:13:21 FBSDG4S2 kernel: ugen0.3: <Unknown > at usbus0 = (disconnected) > Dec 23 12:13:21 FBSDG4S2 kernel: uhub_reattach_port: could not = allocate new device > Dec 23 12:13:21 FBSDG4S2 kernel: usb_dev_suspend_peer: Setting device = remote wakeup failed > Dec 23 12:13:21 FBSDG4S2 kernel: lo0: link state changed to UP > Dec 23 12:13:21 FBSDG4S2 kernel: gem0: link state changed to DOWN > Dec 23 12:13:21 FBSDG4S2 kernel: gem0: link state changed to UP > Dec 23 12:13:21 FBSDG4S2 kernel: usb_dev_resume_peer: Clearing device = remote wakeup failed: USB_ERR_TIMEOUT > . . . > Dec 23 12:13:22 FBSDG4S2 ntpd[971]: leapsecond file = ('/var/db/ntpd.leap-seconds.list'): will expire in less than 5 days > Dec 23 12:14:41 FBSDG4S2 kernel: usb_dev_suspend_peer: Setting device = remote wakeup failed > Dec 23 12:14:49 FBSDG4S2 kernel: usb_dev_resume_peer: Clearing device = remote wakeup failed: USB_ERR_TIMEOUT > Dec 23 12:15:25 FBSDG4S2 kernel: usb_dev_suspend_peer: Setting device = remote wakeup failed > Dec 23 12:15:33 FBSDG4S2 kernel: usb_dev_resume_peer: Clearing device = remote wakeup failed: USB_ERR_TIMEOUT > Dec 23 12:15:59 FBSDG4S2 su[1072]: markmi to root on /dev/pts/0 > Dec 23 12:16:09 FBSDG4S2 kernel: usb_dev_suspend_peer: Setting device = remote wakeup failed > Dec 23 12:16:17 FBSDG4S2 kernel: usb_dev_resume_peer: Clearing device = remote wakeup failed: USB_ERR_TIMEOUT > Dec 23 12:16:53 FBSDG4S2 kernel: usb_dev_suspend_peer: Setting device = remote wakeup failed > Dec 23 12:17:01 FBSDG4S2 kernel: usb_dev_resume_peer: Clearing device = remote wakeup failed: USB_ERR_TIMEOUT > Dec 23 12:17:38 FBSDG4S2 kernel: usb_dev_suspend_peer: Setting device = remote wakeup failed > Dec 23 12:17:46 FBSDG4S2 kernel: usb_dev_resume_peer: Clearing device = remote wakeup failed: USB_ERR_TIMEOUT > Dec 23 12:18:22 FBSDG4S2 kernel: usb_dev_suspend_peer: Setting device = remote wakeup failed > Dec 23 12:18:30 FBSDG4S2 kernel: usb_dev_resume_peer: Clearing device = remote wakeup failed: USB_ERR_TIMEOUT > Dec 23 12:19:06 FBSDG4S2 kernel: usb_dev_suspend_peer: Setting device = remote wakeup failed > Dec 23 12:19:14 FBSDG4S2 kernel: usb_dev_resume_peer: Clearing device = remote wakeup failed: USB_ERR_TIMEOUT > . . . >=20 I modified the kernel to report the 2 operands of the & operation in: } else if (vtophys(*vaddr) & (dmat->alignment - 1)) { printf("bus_dmamem_alloc failed to align memory = properly.\n"); The context reported on below is the G4 booting and operating, a context that ends up with no USB keyboard input: # grep vtophys /var/log/messages Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bdaa80 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bdaa80 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda780 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff Dec 23 21:47:34 FBSDG4S2 kernel: vtophys(*vaddr)=3D=3D0x1bda480 and = dmat->alignment-1=3D=3D0xff =3D=3D=3D Mark Millard marklmi at yahoo.com ( dsl-only.net went away in early 2018-Mar)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4CB25235-BCFE-4429-AF67-45FDF5496766>