Miscellaneous Operating Systems/Hardware

who is on Gentoo/MIPS_SGI ? - Page 2

Image
The first head-node in Cerberus, 24 June 2009
It's still running kernel 2.6.15 on a single pATA


Kumba wrote: Still need to get you off of 2.6.x entirely. I can only wonder about the security flaws that cumulatively exist in such an old release.


oh well, let me say a few words about:

Cerberus (click on the link in my signature to see it) is a NAS system, build on PowerPC technology, composed by 4 nodes, and loaded with different fs services (FUSE/SSHFS, NFS, SAMBA, …), and repo services (GIT, SVN, MERCURIAL, ...), ables to performs soft-mirroring (softRAID). A pretty old Kernels 2.6.15 and 2.6.24 are running on such a system since the beginning with no troubles in years of continuously working. Cerberus was born in single node configuration, then I added more nodes, all my source code archives are stored by that multi-heads-monster & in all of his heads I trust :D

All my routers (RS/PRO, TL703) are 2.6.* are 2.6.39.4 and no troubles with them, even if recent routers they are migrating to 3.3.* (e.g. in TL703 the RF wifi module needs a kernel workaround to fix an hardware bug, and this "patch" is available only for kernel 3.*, so I'd best move up)

Acme System is still supporting NetusG20 (arm5/embedded) with 2.6.39.4, no modern kernel are available from them without troubles, so, for the production I am using 2.6.39.4.

My PowerPC laptop is 2.6.26, my PDA C1K is 2.6.23 and it's the last kernel available really usable, so I have back ported an USB ethernet module from 2.6.26 (which sucks greatly about the battery charge and the suspend feature, which are the most important things in a portable device)

In short, everything I have developed for hobby & job is based on 2.6, this implies that my kernel modules (e.g. USB_LCD, used in shipbuilding, job purpose) are based on 2.6, and in order to "port them" to kernel 4.* I just need effort: time, a lot of time, in first place!

I am planning to attach my USB_LCD to ip30 through a NEC USB/OHCI chip installed inside the ShoeHorn, it's currently working fine with 2.6.17.4, but it's time to move , no doubt about that, and no doubt kernels 4.* are really supporting Btrfs, the new copy on write CoW filesystem for Linux aimed at implementing advanced features while focusing on fault tolerance, repair and easy administration.

It's time to move from ext3, I want the Btrfs filesystem :D

however, consider that moving kernel modules from 2.6 to 4.* requires a lot of effort in first place, and consider that I have other pending tasks in my queues (e.g. VHDL, soft core & TAP, planned to be completed the sooner )


OK, let's get rock & thank you for your help :D
bye.

Code: Select all

2015-12-10--18-28-43---2015-12-12--09-25-53 - root - host=mips32r2 - =sys-devel/kgcc64-4.9.3 - success

(start--stop - who - where - what - result)

so, gcc took longer to compile :lol:
bye.
@kumba

Code: Select all

>> version
PROM Monitor SGI Version 6.5 Rev 4.17 IP30 Jan 20, 2004 - 64 Bit



is there any problem if the kernel image is 22Mbyte (kernel + ramrootfs) ?
just to know, I currently also have a smaller 9Mbyte file (kernel + uclibc ramrootfs)
is your testing machine a dual R12K ? or R14K ?
bye.

Code: Select all

Option? 5
Command Monitor.  Type "exit" to return to the menu.
>> bootp():
Setting $netaddr to 192.168.1.4 (from server )
Obtaining  from server
9065452+214596 entry: 0xa800000020386000
Initializing cgroup subsys cpu
Initializing cgroup subsys cpuacct
version 4.3.0-Blurry-Fish-Butt-ip30 (root@kika) (gcc version 4.9.3 (Gentoo 4.9.3 p1.2) ) #9 Sun Dec 13 17:41:01 CET 2015
ARCH: SGI-IP30
PROMLIB: ARC firmware Version 64 Revision 0
CPU0 revision is: 00000f24 (R14000)
FPU revision is: 00000900
Checking for the multiply/shift bug... no.
Checking for the daddiu bug... no.
Detected 1536MB of physical memory.
Determined physical RAM map:
memory: 0000000000004000 @ 0000000000000000 (reserved)
memory: 00000000008da000 @ 0000000020004000 (reserved)
memory: 0000000000622000 @ 00000000208de000 (usable)
memory: 0000000000100000 @ 0000000020f00000 (ROM data)
memory: 000000005f000000 @ 0000000021000000 (usable)
Wasting 8533888 bytes for tracking 133342 unused pages
Initrd not found or empty - disabling initrd
Zone ranges:
DMA      [mem 0x0000000000000000-0x000000009fffffff]
Normal   empty
Movable zone start for each node
Early memory node ranges
node   0: [mem 0x0000000000000000-0x0000000000003fff]
node   0: [mem 0x0000000020004000-0x000000007fffffff]
Initmem setup node 0 [mem 0x0000000000000000-0x000000007fffffff]
Primary instruction cache 32kB, VIPT, 2-way, linesize 64 bytes.
Primary data cache 32kB, 2-way, VIPT, no aliases, linesize 32 bytes
Unified secondary cache 2048kB 2-way, linesize 128 bytes.
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 385024
Kernel command line: ip=off console=ttyS0,9600 rdinit=/sbin/init init=/bin/bash
PID hash table entries: 4096 (order: 3, 32768 bytes)
Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes)
Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes)
Memory: 1526808K/1572864K available (3619K kernel code, 214K rwdata, 716K rodata, 4304K init, 182K bss, 46056K reserved, 0K cma-reserved)
NR_IRQS:128
IP30: HEART interrupt controller initialized.
IP30: CPU0: 600 MHz CPU detected
clocksource: HEART: mask: 0xfffffffffffff max_cycles: 0x2e2049cda, max_idle_ns: 440795202628 ns
sched_clock: 52 bits at 12MHz, resolution 80ns, wraps every 4398046511080ns
clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 6370257034 ns
sched_clock: 32 bits at 300MHz, resolution 3ns, wraps every 7157592062ns
Console: colour dummy device 80x25
Calibrating delay loop... 898.66 BogoMIPS (lpj=4493312)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 4096 (order: 3, 32768 bytes)
Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes)
Initializing cgroup subsys io
Initializing cgroup subsys memory
Initializing cgroup subsys devices
Initializing cgroup subsys freezer
Initializing cgroup subsys net_cls
Initializing cgroup subsys net_prio
Checking for the daddi bug... no.
devtmpfs: initialized
clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
NET: Registered protocol family 16
xtalk:0 xbow widget (rev 2.0) registered as a platform device.
xtalk:8 heart widget (rev F) registered as a platform device.
xtalk:10 bridge widget (rev D) registered as a platform device.
xtalk:11 bridge widget (rev D) registered as a platform device.
xtalk:15 bridge widget (rev D) registered as a platform device.
SCSI subsystem initialized
PCI host bridge to bus 0000:00
pci_bus 0000:00: root bus resource [mem 0x1a200000-0x1a9fffff]
pci_bus 0000:00: root bus resource [io  0x1aa00000-0x1abfffff]
pci_bus 0000:00: root bus resource [bus 00-ff]
PCI host bridge to bus 0001:00
pci_bus 0001:00: root bus resource [mem 0x1b200000-0x1b9fffff]
pci_bus 0001:00: root bus resource [io  0x1ba00000-0x1bbfffff]
pci_bus 0001:00: root bus resource [bus 01-ff]
PCI host bridge to bus 0002:00
pci_bus 0002:00: root bus resource [mem 0x1f200000-0x1f9fffff]
pci_bus 0002:00: root bus resource [io  0x1fa00000-0x1fbfffff]
pci_bus 0002:00: root bus resource [bus 02-ff]
clocksource: Switched to clocksource HEART
NET: Registered protocol family 2
TCP established hash table entries: 16384 (order: 5, 131072 bytes)
TCP bind hash table entries: 16384 (order: 5, 131072 bytes)
TCP: Hash tables configured (established 16384 bind 16384)
UDP hash table entries: 1024 (order: 3, 32768 bytes)
UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes)
NET: Registered protocol family 1
futex hash table entries: 256 (order: 0, 6144 bytes)
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
pci_hotplug: PCI Hot Plug PCI Core version: 0.5
Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
loop: module loaded
pci-ip30: 0001:00:02.0 Bar 0 with size 0x00100000 at bus 0x01000000 vma 0x000000b041000000 is Direct 32-bit.
ioc3: part: [], serial: [] => class Unknown
console [ttyS0] disabled
console [ttyS0] disabled
IOC3 Master Driver loaded for 0001:00:02.0
pci-ip30: 0001:00:03.0 Bar 0 with size 0x00100000 at bus 0x01100000 vma 0x000000b041100000 is Direct 32-bit.
ioc3: part: [], serial: [] => class Unknown
console [ttyS0] disabled
console [ttyS0] disabled
IOC3 Master Driver loaded for 0001:00:03.0
pci-ip30: 0002:00:02.0 Bar 0 with size 0x00100000 at bus 0x01000000 vma 0x000000f041000000 is Direct 32-bit.
ioc3: part: [030-0891-003], serial: [KAL954] => class IP30 System Board
console [ttyS0] disabled
0002:00:02.0: ttyS0 at IOC3 0xf041020178 (irq = 0, base_baud = 458333) is a 16550A
console [ttyS0] enabled
0002:00:02.0: ttyS1 at IOC3 0xf041020170 (irq = 0, base_baud = 458333) is a 16550A
IOC3 Master Driver loaded for 0002:00:02.0
qla1280: QLA1040 found on PCI bus 0, dev 0
pci-ip30: 0002:00:00.0 Bar 0 with size 0x00000100 at bus 0x01000000 vma 0x000000f101000000 is Direct I/O.
pci-ip30: 0002:00:00.0 Bar 1 with size 0x00001000 at bus 0x01100000 vma 0x000000f041100000 is Direct 32-bit.
pci-ip30: 0002:00:00.0 Bar 6 with size 0x00010000 at bus 0x01110000 vma 0x000000f041110000 is Direct 32-bit.
PCI: Enabling device 0002:00:00.0 (0006 -> 0007)
random: nonblocking pool is initialized
scsi(0:0): Resetting SCSI BUS
scsi host0: QLogic QLA1040 PCI to SCSI Host Adapter
Firmware version:  7.65.06, Driver version 3.27.1
blk-mq: reduced tag depth to 10240
qla1280: QLA1040 found on PCI bus 0, dev 1
pci-ip30: 0002:00:01.0 Bar 0 with size 0x00000100 at bus 0x01000100 vma 0x000000f101000100 is Direct I/O.
pci-ip30: 0002:00:01.0 Bar 1 with size 0x00001000 at bus 0x01120000 vma 0x000000f041120000 is Direct 32-bit.
pci-ip30: 0002:00:01.0 Bar 6 with size 0x00010000 at bus 0x01130000 vma 0x000000f041130000 is Direct 32-bit.
PCI: Enabling device 0002:00:01.0 (0006 -> 0007)
scsi(1:0): Resetting SCSI BUS
scsi host1: QLogic QLA1040 PCI to SCSI Host Adapter
Firmware version:  7.65.06, Driver version 3.27.1
blk-mq: reduced tag depth to 10240
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
ioc3-eth: Ethernet address is 08:00:69:0d:53:5d.
IOC3 0001:00:02.0 eth0: link down
eth0: Using PHY 31, vendor 0x20005c0, model 0, rev 1.
eth0: IOC3 SSRAM has 128 kbyte.
ioc3-eth: Ethernet address is 08:00:69:0d:4b:2c.
IOC3 0001:00:03.0 eth1: link down
eth1: Using PHY 31, vendor 0x20005c0, model 0, rev 1.
eth1: IOC3 SSRAM has 128 kbyte.
ioc3-eth: Ethernet address is 08:00:69:13:70:27.
IOC3 0002:00:02.0 eth2: link up, 100Mbps, full-duplex, lpa 0x05E1
eth2: Using PHY 1, vendor 0x15f42, model 2, rev 3.
eth2: IOC3 SSRAM has 128 kbyte.
rtc-ds1685 rtc-ds1685: rtc core: registered rtc-ds1685 as rtc0
NET: Registered protocol family 17
rtc-ds1685 rtc-ds1685: setting system clock to 2015-12-14 00:57:35 UTC (1450054655)
Freeing unused kernel memory: 4304K (a80000002047c000 - a8000000208b0000)

i                   n                    i                   t
e    a    r    l    y     r    a    m    r    o    o    t    f    s

[*] kernel-wait
kernel waiting ...
[*] environment
[*] mount
[*] dev
adding /dev/initctl
[*] ttykeymaps
/dev/tty0 /dev/tty1 /dev/tty2 /dev/tty3 /dev/tty4 /dev/tty5 /dev/tty6 /dev/tty7
/dev/ttyS0 /dev/ttyS1
[*] machine-identify
[*] networking
net.up  []={ eth2  }
[*] rtc-dev
mknod /dev/rtc0     c
mknod /dev/misc/rtc c
[*] rtc-dummy
[*] hostname
[*] telnetd
[*] env-shared-libraries
[*] tiniweb
[*] tiniweb-machine-info
[*] issue
[*] sshd
[*] mysync
[*] machine-specific
sgi octane2 specific code init
- creating /dev/led
- loading kernel modules
[*] rtc
[*] pci

-+-[0002:00]-+-00.0  Device 1077:1020
|           +-01.0  Device 1077:1020
|           +-02.0  Device 10a9:0003
|           \-03.0  Device 10a9:0005
+-[0001:00]-+-02.0  Device 10a9:0003
|           \-03.0  Device 10a9:0003
\-[0000:00]---01.0  Device 14e4:1645


calling login 1th/2 ...
,,,,
$$$$$$
$$$$$$$$$
$$$$$$$$$$$                                 ,,
$$$$$$$$$$$$                              $$$$$,
`$$$$$$$$$$$                            $$$$$$$$
`$$$$$$$$$Z$      $$$       $$$       $$$$$$$$`
`$ZzZ$$$Z$$$   $$$$$$$   $$$$$$$    $$$$$$$$`
`$$$ZZZ$$$$$ $$$$$$$$$ $$$$$$$$$  $$$$$$$$`
`$$$$$$$$$$ $$ZZ$$$$$ $$ZZZ$$$$ $$$$$$$$
u$$$$$$u      `$$$$$$$$$$ $$$ZZZ$$ $$$$$ZZ$$ $$$$$$$`
$$$$$$$$$$Z$     `$ZZ$$$ZZZ $$$$$$$$ $$$$$$$$$ $$$$$$
$$$$$$$$$$$Z$$$$  $$$$zzz$$$ $$$$$$$$ $$$$$$$$$ $$$$$$`
$$$$$$$$$$Z$$$$$$$$$$$$$$$$$ $$ZZ$$$$ $ZZZ$$$$$ $$$$$`
`$$$$$$$Z$$$$$$$$$$$$$$$$$ $$$$$ZZ$ $ $$$$$$$ $$$$$`
`$Z$$$$$$$$$$$$$$$$$$ $SB$$$  $$ $$$$$$ $$$$`
`$$$$$$$$$$$$$$$$$$$,````,$$$$, ````,$$$$`
`$$$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$$$`
`$$$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$$`
`$$$$$$$$$$$$$$$$$$$ $$$$$$$$$$$$`
`$$$$$$$$$$$$$$$$ $$$$$$$$$$`
`$$$$$$$$$$$$$$$$ $$$$$$$`
$$$$$$$$$$$$$$$$$$$$$$

P  o  w  e  r  u  c   m  a  c  h  i  n  e

genuine interest in the u' n i x platform
genuine appreciation of solid engineering


i   n   s   e   r   t      c  o  i  n  s      p   l   e   a   s   e

-> [*******]  ... access allowed, calling shell ...

e    a    r    l    y     r    a    m    r    o    o    t    f    s
Y O U    H A V E    T H E   P O W E R    U S E    C A R E F U L L Y

uc-ip30-octane2-2xR12K / #



I have
  • forced R10K (with R12K, R14K, R16K it hangs up)
  • force early serial
  • removed gfx kprintf (we do not have a gfx installed, so it's no sense)
  • attached a compressed ramrootfs
&& it boots !!!!!!!!!!!!!!!!!



hApPyhApPy
Celebration



:D




p.s.
the SMP is not enabled (cat /proc/cpuinfo says 1 CPU), the Menet has 2 NICs instead of 4
bye.

Code: Select all

Option? 5
Command Monitor.  Type "exit" to return to the menu.
>> bootp():
Setting $netaddr to 192.168.1.4 (from server )
Obtaining  from server
9431808+254896 entry: 0xa8000000203d10b0
Initializing cgroup subsys cpu
Initializing cgroup subsys cpuacct
Linux version 4.3.0-Blurry-Fish-Butt-ip30 (root@kika) (gcc version 4.9.3 (Gentoo 4.9.3 p1.2) ) #10 SMP Sun Dec 13 23:57:29 CET 2015
ARCH: SGI-IP30
PROMLIB: ARC firmware Version 64 Revision 0
CPU0 revision is: 00000e35 (R12000)
FPU revision is: 00000900
Checking for the multiply/shift bug... no.
Checking for the daddiu bug... no.
Detected 1792MB of physical memory.
Determined physical RAM map:
memory: 0000000000004000 @ 0000000000000000 (reserved)
memory: 000000000093d000 @ 0000000020004000 (reserved)
memory: 00000000005bf000 @ 0000000020941000 (usable)
memory: 0000000000100000 @ 0000000020f00000 (ROM data)
memory: 000000006f000000 @ 0000000021000000 (usable)
Wasting 8540224 bytes for tracking 133441 unused pages
Initrd not found or empty - disabling initrd
Zone ranges:
DMA      [mem 0x0000000000000000-0x000000009fffffff]
Normal   empty
Movable zone start for each node
Early memory node ranges
node   0: [mem 0x0000000000000000-0x0000000000003fff]
node   0: [mem 0x0000000020004000-0x000000008fffffff]
Initmem setup node 0 [mem 0x0000000000000000-0x000000008fffffff]
IP30: Slot: 0, PrID: 00000e35, PhyID: 0, VirtID: 0
IP30: Slot: 1, PrID: 00000e35, PhyID: 1, VirtID: 1
IP30: Detected 2 CPU(s) present.
Primary instruction cache 32kB, VIPT, 2-way, linesize 64 bytes.
Primary data cache 32kB, 2-way, VIPT, no aliases, linesize 32 bytes
Unified secondary cache 2048kB 2-way, linesize 128 bytes.
PERCPU: Embedded 14 pages/cpu @a80000002341b000 s19200 r8192 d29952 u57344
Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 449536
Kernel command line: ip=off console=ttyS0,9600 rdinit=/sbin/init init=/bin/bash
PID hash table entries: 4096 (order: 3, 32768 bytes)
Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes)
Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes)
Memory: 1784312K/1835008K available (3923K kernel code, 218K rwdata, 728K rodata, 4368K init, 195K bss, 50696K reserved, 0K cma-reserved)
Hierarchical RCU implementation.
Build-time adjustment of leaf fanout to 64.
NR_IRQS:128
IP30: HEART interrupt controller initialized.
IP30: CPU0: 400 MHz CPU detected
clocksource: HEART: mask: 0xfffffffffffff max_cycles: 0x2e2049cda, max_idle_ns: 440795202628 ns
sched_clock: 52 bits at 12MHz, resolution 80ns, wraps every 4398046511080ns
clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 9532565193 ns
sched_clock: 32 bits at 200MHz, resolution 4ns, wraps every 10710747133ns
Console: colour dummy device 80x25
Calibrating delay loop... 600.47 BogoMIPS (lpj=3002368)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 4096 (order: 3, 32768 bytes)
Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes)
Initializing cgroup subsys io
Initializing cgroup subsys memory
Initializing cgroup subsys devices
Initializing cgroup subsys freezer
Initializing cgroup subsys net_cls
Initializing cgroup subsys net_prio
Checking for the daddi bug... no.
Primary instruction cache 32kB, VIPT, 2-way, linesize 64 bytes.
Primary data cache 32kB, 2-way, VIPT, no aliases, linesize 32 bytes
Unified secondary cache 2048kB 2-way, linesize 128 bytes.
CPU1 revision is: 00000e35 (R12000)
FPU revision is: 00000900
Synchronize counters for CPU 1: done.
Brought up 2 CPUs
devtmpfs: initialized
clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
NET: Registered protocol family 16
xtalk:0 xbow widget (rev 2.0) registered as a platform device.
xtalk:8 heart widget (rev F) registered as a platform device.
xtalk:11 odyssey widget (rev unknown) registered as a platform device.
xtalk:13 bridge widget (rev C) registered as a platform device.
xtalk:15 bridge widget (rev D) registered as a platform device.
SCSI subsystem initialized
PCI host bridge to bus 0000:00
pci_bus 0000:00: root bus resource [mem 0x1d200000-0x1d9fffff]
pci_bus 0000:00: root bus resource [io  0x1da00000-0x1dbfffff]
pci_bus 0000:00: root bus resource [bus 00-ff]
PCI host bridge to bus 0001:00
pci_bus 0001:00: root bus resource [mem 0x1f200000-0x1f9fffff]
pci_bus 0001:00: root bus resource [io  0x1fa00000-0x1fbfffff]
pci_bus 0001:00: root bus resource [bus 01-ff]
clocksource: Switched to clocksource HEART
NET: Registered protocol family 2
TCP established hash table entries: 16384 (order: 5, 131072 bytes)
TCP bind hash table entries: 16384 (order: 6, 262144 bytes)
TCP: Hash tables configured (established 16384 bind 16384)
UDP hash table entries: 1024 (order: 3, 32768 bytes)
UDP-Lite hash table entries: 1024 (order: 3, 32768 bytes)
NET: Registered protocol family 1
futex hash table entries: 512 (order: 4, 65536 bytes)
Block layer SCSI generic (bsg) driver version 0.4 loaded (major 253)
io scheduler noop registered
io scheduler deadline registered
io scheduler cfq registered (default)
pci_hotplug: PCI Hot Plug PCI Core version: 0.5
Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
loop: module loaded
pci-ip30: 0001:00:02.0 Bar 0 with size 0x00100000 at bus 0x01000000 vma 0x000000f041000000 is Direct 32-bit.
ioc3: part: [030-0891-003], serial: [KZG030] => class IP30 System Board
console [ttyS0] disabled
0001:00:02.0: ttyS0 at IOC3 0xf041020178 (irq = 0, base_baud = 458333) is a 16550A
console [ttyS0] enabled
0001:00:02.0: ttyS1 at IOC3 0xf041020170 (irq = 0, base_baud = 458333) is a 16550A
IOC3 Master Driver loaded for 0001:00:02.0
qla1280: QLA1040 found on PCI bus 0, dev 3
pci-ip30: 0000:00:03.0 Bar 0 with size 0x00000100 at bus 0x00700000 vma 0x000000001d700000 is Window.
pci-ip30: 0000:00:03.0 Bar 1 with size 0x00001000 at bus 0x01000000 vma 0x000000d041000000 is Direct 32-bit.
pci-ip30: 0000:00:03.0 Bar 6 with size 0x00010000 at bus 0x01010000 vma 0x000000d041010000 is Direct 32-bit.
PCI: Enabling device 0000:00:03.0 (0006 -> 0007)
random: nonblocking pool is initialized
scsi(0:0): Resetting SCSI BUS
scsi host0: QLogic QLA1040 PCI to SCSI Host Adapter
Firmware version:  7.65.06, Driver version 3.27.1
blk-mq: reduced tag depth to 10240
qla1280: QLA1040 found on PCI bus 0, dev 0
pci-ip30: 0001:00:00.0 Bar 0 with size 0x00000100 at bus 0x01000000 vma 0x000000f101000000 is Direct I/O.
pci-ip30: 0001:00:00.0 Bar 1 with size 0x00001000 at bus 0x01100000 vma 0x000000f041100000 is Direct 32-bit.
pci-ip30: 0001:00:00.0 Bar 6 with size 0x00010000 at bus 0x01110000 vma 0x000000f041110000 is Direct 32-bit.
PCI: Enabling device 0001:00:00.0 (0006 -> 0007)
scsi(1:0): Resetting SCSI BUS
scsi host1: QLogic QLA1040 PCI to SCSI Host Adapter
Firmware version:  7.65.06, Driver version 3.27.1
blk-mq: reduced tag depth to 10240
qla1280: QLA1040 found on PCI bus 0, dev 1
pci-ip30: 0001:00:01.0 Bar 0 with size 0x00000100 at bus 0x01000100 vma 0x000000f101000100 is Direct I/O.
pci-ip30: 0001:00:01.0 Bar 1 with size 0x00001000 at bus 0x01120000 vma 0x000000f041120000 is Direct 32-bit.
pci-ip30: 0001:00:01.0 Bar 6 with size 0x00010000 at bus 0x01130000 vma 0x000000f041130000 is Direct 32-bit.
PCI: Enabling device 0001:00:01.0 (0006 -> 0007)
scsi(2:0): Resetting SCSI BUS
scsi host2: QLogic QLA1040 PCI to SCSI Host Adapter
Firmware version:  7.65.06, Driver version 3.27.1
blk-mq: reduced tag depth to 10240
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
ioc3-eth: Ethernet address is 08:00:69:13:66:d4.
IOC3 0001:00:02.0 eth0: link up, 100Mbps, full-duplex, lpa 0x05E1
eth0: Using PHY 1, vendor 0x15f42, model 2, rev 3.
eth0: IOC3 SSRAM has 128 kbyte.
rtc-ds1685 rtc-ds1685: rtc core: registered rtc-ds1685 as rtc0
NET: Registered protocol family 17
rtc-ds1685 rtc-ds1685: setting system clock to 2015-12-13 22:31:30 UTC (1450045890)
Freeing unused kernel memory: 4368K (a8000000204cc000 - a800000020910000)

i                   n                    i                   t
e    a    r    l    y     r    a    m    r    o    o    t    f    s

[*] kernel-wait
kernel waiting ...
[*] environment
[*] mount
[*] dev
adding /dev/initctl
[*] ttykeymaps
/dev/tty0 /dev/tty1 /dev/tty2 /dev/tty3 /dev/tty4 /dev/tty5 /dev/tty6 /dev/tty7
/dev/ttyS0 /dev/ttyS1
[*] machine-identify
[*] networking
net.up  []={ eth0  }
[*] rtc-dev
Instruction bus error, epc == 00000000004472cc, ra == 000000000044722c
mknod /dev/rtc0     c
mknod /dev/misc/rtc c
[*] rtc-dummy
[*] hostname
[*] telnetd
[*] env-shared-libraries
[*] tiniweb
[*] tiniweb-machine-info
[*] issue
Instruction bus error, epc == 0000000000443b3c, ra == 0000000000444b88
[*] sshd
/usr/bin/myNET-web-machine-info: line 51:   199 Bus error               myNET-networktraffic $netdev >>$page_name2
[*] mysync
[*] machine-specific
sgi octane2 specific code init
- creating /dev/led
- loading kernel modules
Instruction bus error, epc == 0000000000443b3c, ra == 0000000000444b88
/usr/bin/myNET-web-machine-info: line 51:   246 Bus error               myNET-networktraffic $netdev >>$page_name2
[*] rtc
rdate: timeout connecting to time server
Instruction bus error, epc == 0000000000437a40, ra == 0000000000439bb8
rdate: timeout connecting to time server
[*] pci


Code: Select all

Instruction bus error, epc == 0000000000443b3c, ra == 0000000000444b88
/usr/bin/myNET-web-machine-info: line 51:   246 Bus error               myNET-networktraffic $netdev >>$page_name2


Code: Select all

[ ] Enable idle page tracking
│ │[*] Multi-Processing support
│ │(2) Maximum number of CPUs (2-256)
│ │Timer frequency (100 HZ)  --->
│ │Preemption Model (No Forced Preemption (Server))  --->


I have forced cpu_type=R10000 && Multi-Processing support && Preemption Model=No Forced Preemption
and … something bad is happening now :shock: :shock: :shock:
bye.
ivelegacy wrote:

Code: Select all

Instruction bus error, epc == 0000000000443b3c, ra == 0000000000444b88
/usr/bin/myNET-web-machine-info: line 51:   246 Bus error               myNET-networktraffic $netdev >>$page_name2


How old is your initramfs? The problems I ran into on the Octane were Data Bus Errors (DBE), not IBEs, and those were solved once I learned to use the correct handle_*_irq() function. I'm wondering if you've got that initramfs built using really old toolchains/kernel headers and it's just not playing nice.
:Onyx2: 4x R14000 :Tezro: 4x R16000 :Fuel: 1x R16000 :Octane: 2x R14000 :O2+: RM7000 :O2: R10000 :O2: RM5200 :Indigo: R4400 :Indigo2IMP: R10000 :Indigo2: R8000 :O3x0: 4x R14000 :Indy: R5000

"The past tempts us, the present confuses us, the future frightens us. And our lives slip away, moment by moment, lost in that vast, terrible in-between."
--Emperor Turhan, Centauri Republic
Kumba wrote: How old is your initramfs?


built in 2009
multi arch[]={ ppc/G3, mips3/be, x86/i586 }
used everywhere with my routers, Cerberus, etc

no reason to update, since now

Kumba wrote: The problems I ran into on the Octane were Data Bus Errors (DBE), not IBEs


it works with SMP=disabled

Code: Select all

CONFIG_SMP=is not set
CONFIG_SYS_SUPPORTS_SMP=is not set
CONFIG_NR_CPUS=is not set


it does not work properly with SMP=enabled

Code: Select all

CONFIG_SMP=y
CONFIG_SYS_SUPPORTS_SMP=y
CONFIG_NR_CPUS=2


Kumba wrote: and those were solved once I learned to use the correct handle_*_irq() function


isn't kernel affair ? is the users pace also involved ?
can you tell me more ?

Kumba wrote: I'm wondering if you've got that initramfs built using really old toolchains/kernel headers and it's just not playing nice


Code: Select all

kika # uname -r
2.6.39-flesh-eating-bats


she has

Code: Select all

kika # gcc-config -l
[1] mips-unknown-linux-gnu-4.1.2 *
[2] mips-unknown-linux-gnu-4.5.2
[3] mips-unknown-linux-gnu-4.6.3


I used gcc- v4.1.2, uclibc profiled (cross compiler, mips3-be-glibc ---> mips3-be-uclibc)
and I can reuse my OpenWrt builder (kernel v4.2.*, gcc v4.6.*)

do you have a "demo" version ?
do you have a good ram-rootfs ?

is there a good & updated version of gentoo-stage3-mips3-be-uclibc ?
I haven't checked yet

Code: Select all

CONFIG_INITRAMFS_SOURCE="/mnt/diske-source/gentoo/rootfs/mips/3/be-uclibc"
CONFIG_INITRAMFS_ROOT_UID=0
CONFIG_INITRAMFS_ROOT_GID=0
CONFIG_RD_GZIP=y
CONFIG_CC_OPTIMIZE_FOR_SIZE=y


my ram-rootfs is included within the kernel
bye.
ivelegacy wrote: built in 2008

Okay, about as old as the last one I built (2007).


ivelegacy wrote: it works with SMP=disabled

I figured as much. Although I have not had any severe problems with SMP once I fixed the IRQ setup, I can't rule out that all SMP-related problems have been solved, though.


ivelegacy wrote:
Kumba wrote: and those were solved once I learned to use the correct handle_*_irq() function


isn't kernel matter?

Not following what you're asking here?


ivelegacy wrote:

Code: Select all

kika # uname -r
2.6.39-flesh-eating-bats


she has

Code: Select all

kika # gcc-config -l
[1] mips-unknown-linux-gnu-4.1.2 *
[2] mips-unknown-linux-gnu-4.5.2
[3] mips-unknown-linux-gnu-4.6.3

I used gcc- v4.1.2, uclibc profiled (cross compiler, mips3-be-glibc ---> mips3-be-uclibc)
and I can reuse my OpenWrt builder (kernel v4.2.*, gcc v4.6.*)

do you have a "demo" version ?
do you have a good ram-rootfs ?

I don't have a current initramfs at the moment. This is the thing that has been irritating me to no end over the weekend, is trying to get a uclibc-based mips3 chroot working so that I can create a new initramfs, but there's something jacked up with this uclibc root and the ncurses library. If I recompile ncurses, anything linked to libncurses.so.5.9 starts segfaulting, and I am stumped as to why. I am trying one last nutty idea before I call it quits and just focus instead on making a glibc-based initramfs.

Although, using OpenWRT to kickstart a new uclibc root is an interesting idea. I tried this with buildroot a while back, but they sadly chose to drop support for the old MIPS ISAs prior to mips32r1/mips64r1. When I asked how to undo that, the answer basically involved inserting lots of #ifdef macros in their code, and they didn't seem inclined to specify where. So I abandoned that idea entirely.

As for a demo kernel, I haven't had time to spin you one yet, since I've got the Octane tied up trying to get this uclibc idea working.

My thinking at the moment is, you've just got an incompatibility between the really old code of your initramfs, likely built against 2.6.x kernel headers or such, and the 4.3.x nature of the current kernel. If you were getting the same problems I was, you'd be seeing Data Bus Errors, not Instruction Bus Errors. An IBE means that the CPU attempted to decode a CPU opcode that it doesn't understand, so do make sure your binaries are compiled for MIPS-III or MIPS-IV at a minimum, and that no mips32rX/mips64rX stuff snuck in by accident.
:Onyx2: 4x R14000 :Tezro: 4x R16000 :Fuel: 1x R16000 :Octane: 2x R14000 :O2+: RM7000 :O2: R10000 :O2: RM5200 :Indigo: R4400 :Indigo2IMP: R10000 :Indigo2: R8000 :O3x0: 4x R14000 :Indy: R5000

"The past tempts us, the present confuses us, the future frightens us. And our lives slip away, moment by moment, lost in that vast, terrible in-between."
--Emperor Turhan, Centauri Republic
Kumba wrote: Not following what you're asking here?


I haven't understood if "handle_*_irq() function" is related only to the kernel
or if it has a relation with the userspace, and in case where/what?

is it related to "something" in libc? some kernel-helper?

Kumba wrote: make sure your binaries are compiled for MIPS-III or MIPS-IV at a minimum, and that no mips32rX/mips64rX stuff snuck in by accident.


they are mips3
bye.
ivelegacy wrote: I haven't understood if "handle_*_irq() function" is related only to the kernel
or if it has a relation with the userspace, and in case where/what?

is it related to "something" in libc? some kernel-helper?

Oh, sorry, it's a kernel function. In the IP30's IRQ initialization code, I was assigning the "handle_level_irq" to all IRQ numbers (HEART has 64 interrupt vectors available). handle_level_irq() isn't percpu-aware, and so it takes a longer code path, which adds latency, when handling a specific interrupt. This is fine for normal IRQs, but not SMP IPI's. So a quick-rejig to assign "handle_percpu_irq" for SMP IPI's was the final piece of the SMP puzzle, and that's how I got my Octane to boot in SMP mode and actually work well.


ivelegacy wrote: they are mips3

So in theory, it should work fine. What PAGE_SIZE is set in your kernel? 4KB should be universal and work with everything. If I get this uclibc-based netboot working, though, I'll find out if there are PAGE_SIZE incompatibilities there, as there were in the musl-based netboot I built. I run 64KB PAGE_SIZE on the Octane right now, as it helps speed compiles up by reducing TLB pressure. musl couldn't handle that well, though.
:Onyx2: 4x R14000 :Tezro: 4x R16000 :Fuel: 1x R16000 :Octane: 2x R14000 :O2+: RM7000 :O2: R10000 :O2: RM5200 :Indigo: R4400 :Indigo2IMP: R10000 :Indigo2: R8000 :O3x0: 4x R14000 :Indy: R5000

"The past tempts us, the present confuses us, the future frightens us. And our lives slip away, moment by moment, lost in that vast, terrible in-between."
--Emperor Turhan, Centauri Republic
Kumba wrote: My thinking at the moment is, you've just got an incompatibility between the really old code of your initramfs, likely built against 2.6.x kernel headers or such, and the 4.3.x nature of the current kernel.


I can say "no!". It randomly works, and randomly fails, which sounds related to the kernel (more specifically to the SMP, with no SMP enabled I have no issue, it never fails), perhaps something wrong or missing with the SMP initialization.

Kumba wrote: I run 64KB PAGE_SIZE on the Octane right now, as it helps speed compiles up by reducing TLB pressure. musl couldn't handle that well, though


I am on 4Kbyte PAGE_SIZE, with 64KB it crashes soon :shock: :shock: :shock:



Currently, where is your rootfs ? Attached to an external scsi bus ? NFS imported ?
I wish I could enter into the vegetable garden of William Gibson , on the right of a director, to decide how a film is ultimately released for public viewing, but I am not a nor Cyberpunk writer neither a dude in Hollywood , and my * flawless English * still looks like an old rusty trailer which needs a fix-up, so my personal wonderland begins with a pill ... tumbling down the rabbit hole , where the sky above the router port is the color of television, tuned to a dead channel and some gears still need a debugger there.

Code: Select all

/bin/bash:     ELF 32-bit MSB executable, MIPS, MIPS-III version 1 (SYSV), dynamically linked, uses shared libs
/bin/busybox:  ELF 32-bit MSB executable, MIPS, MIPS-I   version 1 (SYSV), statically linked


busybox has been compiled as "MIPS-I", can cause problems on a MIPS-IV machine ?
R12K claims to be

Code: Select all

isa                     : mips2 mips3 mips4


I am going to recompile it as MIPS-III


I have also modified my rootfs to work with an hard drive instead of running within ramfs
I wish I could enter into the vegetable garden of William Gibson , on the right of a director, to decide how a film is ultimately released for public viewing, but I am not a nor Cyberpunk writer neither a dude in Hollywood , and my * flawless English * still looks like an old rusty trailer which needs a fix-up, so my personal wonderland begins with a pill ... tumbling down the rabbit hole , where the sky above the router port is the color of television, tuned to a dead channel and some gears still need a debugger there.
ivelegacy wrote: busybox has been compiled as "MIPS-I", can cause problems on a MIPS-IV machine ?

IIRC, MIPS-II is MIPS-I plus a handful of new instructions plus pipeline interlocks to eliminate some of the hazards. MIPS-IV is superscalar with speculative execution and whatnot, so the pipeline hazards are even less of an issue. On the other hand, it might still be an issue for some reason or another.
nyef wrote: MIPS-II is MIPS-I plus a handful of new instructions plus pipeline interlocks to eliminate some of the hazards


I wonder if these new instructions & pipeline interlocks introduced by MIPS-II && MIPS-III && MIPS-IV to eliminate some of the hazards, are exposing a "weakness" within the spin-lock in the kernel-SMP, as I still and randomly get Instruction Bus Error on CPU1.

There is also this problem about stages: no man power to build them!
I wish I could enter into the vegetable garden of William Gibson , on the right of a director, to decide how a film is ultimately released for public viewing, but I am not a nor Cyberpunk writer neither a dude in Hollywood , and my * flawless English * still looks like an old rusty trailer which needs a fix-up, so my personal wonderland begins with a pill ... tumbling down the rabbit hole , where the sky above the router port is the color of television, tuned to a dead channel and some gears still need a debugger there.
deadline respected by the end of the year:
completed 20 minutes ago
we have a working kernel v4 with a working uclib-rootfs
Yahhhhooooooo :D :D :D :D

+H~a~P~p~Y~n~E~w~Y~e~A~r+
I wish I could enter into the vegetable garden of William Gibson , on the right of a director, to decide how a film is ultimately released for public viewing, but I am not a nor Cyberpunk writer neither a dude in Hollywood , and my * flawless English * still looks like an old rusty trailer which needs a fix-up, so my personal wonderland begins with a pill ... tumbling down the rabbit hole , where the sky above the router port is the color of television, tuned to a dead channel and some gears still need a debugger there.
ivelegacy wrote:
nyef wrote: MIPS-II is MIPS-I plus a handful of new instructions plus pipeline interlocks to eliminate some of the hazards


I wonder if these new instructions & pipeline interlocks introduced by MIPS-II && MIPS-III && MIPS-IV to eliminate some of the hazards, are exposing a "weakness" within the spin-lock in the kernel-SMP, as I still and randomly get Instruction Bus Error on CPU1.

There is also this problem about stages: no man power to build them!


I'm making progress on the MIPS-II uClibc netboot thing. Had to rebuild my three stages all over again after running into some oddities with a few options I had in uclibc's config. Setting up a chroot now to built the netboot by hand in, while mapping out file/libs and looking into scripting the process for the future.

That said, your problem is not tied to spinlocks or anything. If it was a spinlock issue, you'd get a proper oops message and the kernel would likely die pretty fast due to a race condition, sleeping while atomic, etc. I still think it's something really weird about your hardware...maybe there's a hardware bug that simply isn't known about and thus, not being worked around? Hard to know right now. If I can get this netboot actually built and working without any more screwy issues popping up (uClibc apparently has quite a lot of them), then you'll be one of the first to test it to see if you're still having problems. I'll update the Gentoo bug you opened with further info when I have it. Only have time on the weekends to really get stuff done.

Additionally, the R10000 family handles *all* hazards in hardware, I think the only MIPS CPU to do so. Ralf's indicated that's one of the nicest features about this class of CPU.

All that said, stay away from the 4.4.x kernel on Octane for now. Something changed with (I think) Device DMA memory setups and the contiguous memory allocator. You'll get a Oops message when pci-ip30.c tries probing something, then updates devtmpfs (via kdevtmpfsd), and hits an unaligned access bug. So that's on my list to fix now. Cannot reproduce the problem on the Onyx2 and pci-ip27.c, so it's probably Octane-specific. The other possibility is you'll get ~27+ Oops messages in a row, if you have a graphics board installed and booting with the early printk hack enabled. Have to figure that one out, too...
:Onyx2: 4x R14000 :Tezro: 4x R16000 :Fuel: 1x R16000 :Octane: 2x R14000 :O2+: RM7000 :O2: R10000 :O2: RM5200 :Indigo: R4400 :Indigo2IMP: R10000 :Indigo2: R8000 :O3x0: 4x R14000 :Indy: R5000

"The past tempts us, the present confuses us, the future frightens us. And our lives slip away, moment by moment, lost in that vast, terrible in-between."
--Emperor Turhan, Centauri Republic
Kumba wrote: I'm making progress on the MIPS-II uClibc net boot thing


instead of using gentoo.Catalyst I used Aboriginal (which looks similar to O.E.), it's Qemu based and works fine!
mips-3-uclibC-be was completed by the end of the year, hardly tested, it's working with kernel 4.*
I wish I could enter into the vegetable garden of William Gibson , on the right of a director, to decide how a film is ultimately released for public viewing, but I am not a nor Cyberpunk writer neither a dude in Hollywood , and my * flawless English * still looks like an old rusty trailer which needs a fix-up, so my personal wonderland begins with a pill ... tumbling down the rabbit hole , where the sky above the router port is the color of television, tuned to a dead channel and some gears still need a debugger there.
Almost forgot to add, the MIPS-I, MIPS-II, etc, are Instruction Set Architecture (ISA) references. They don't really have much to do with the actual CPU hardware, in a way. Instead, they specify features a CPU should support, such as register size (32bits, 64bits), specific opcodes (MIPS-IV added square root), etc.

The way it works in MIPS is kinda like this:

  • MIPS-I (32-bit)
    • MIPS-II (32-bit)
      • MIPS32R1
        • MIPS32R2 ... MIPS32R6
      • MIPS-III (64-bit)
        • MIPS-IV (64-bit)
          • MIPS64R1
            • MIPS64R2 ... MIPS64R6

You can see how ugly it looks when visualized in a tree-like layout, but that shows the compatibility chain. In other words, MIPS32r* branches off of MIPS-II, with some 32-bit backports of 64-bit opcodes added in various MIPS32R* releases (the latest being R6; there was no R4 due to some Asian cultural fear of the number 4). MIPS64R1 was spun off of what WAS going to be MIPS-V, but since MIPS-V never made it into actual silicon (it was supposed to be instituted by the aborted R18000 CPU), it technically doesn't exist. So MIPS64R* can instead be visualized as branching off of MIPS-IV.
:Onyx2: 4x R14000 :Tezro: 4x R16000 :Fuel: 1x R16000 :Octane: 2x R14000 :O2+: RM7000 :O2: R10000 :O2: RM5200 :Indigo: R4400 :Indigo2IMP: R10000 :Indigo2: R8000 :O3x0: 4x R14000 :Indy: R5000

"The past tempts us, the present confuses us, the future frightens us. And our lives slip away, moment by moment, lost in that vast, terrible in-between."
--Emperor Turhan, Centauri Republic
ivelegacy wrote:
Kumba wrote: I'm making progress on the MIPS-II uClibc net boot thing


mips-3-uclibC-be was completed them by the end of the year, it's working with kernel 4.*

I can't use your netboot for Gentoo purposes, though. Stuff we support has to be built through our release tools (which is where all of the fun is at...). Glad your build is working for you (would still be curious to know if the problem really was old rootfs + new kernel or something else). But in the end, I still have to make this MIPS-II netboot work for (theoretically) anyone that has an Octane.
:Onyx2: 4x R14000 :Tezro: 4x R16000 :Fuel: 1x R16000 :Octane: 2x R14000 :O2+: RM7000 :O2: R10000 :O2: RM5200 :Indigo: R4400 :Indigo2IMP: R10000 :Indigo2: R8000 :O3x0: 4x R14000 :Indy: R5000

"The past tempts us, the present confuses us, the future frightens us. And our lives slip away, moment by moment, lost in that vast, terrible in-between."
--Emperor Turhan, Centauri Republic
Kumba wrote: would still be curious to know if the problem really was old rootfs + new kernel or something else


I do not know, but I can say that the old rootfs is working fine with MIPS32r2, successfully used with kernel 2.6.39 and v3.* on my routers, so, I suspect the kernel v4.* is bugged somewhere as I can't run the last 2015 MIPS4- glibc -stage3 made by Catalyst with PAGESIZE={ 4K, 16K }, while it works fine with PAGESIZE=64K :shock: :shock: :shock:


Image

do you think things like the one above will work with ip30 ?
planning to interface a micro drive
I wish I could enter into the vegetable garden of William Gibson , on the right of a director, to decide how a film is ultimately released for public viewing, but I am not a nor Cyberpunk writer neither a dude in Hollywood , and my * flawless English * still looks like an old rusty trailer which needs a fix-up, so my personal wonderland begins with a pill ... tumbling down the rabbit hole , where the sky above the router port is the color of television, tuned to a dead channel and some gears still need a debugger there.