All of lore.kernel.org
 help / color / mirror / Atom feed
* Linux on Sun e10k
@ 2007-01-19 21:20 Tõnu Samuel
  2007-01-21 15:25 ` Meelis Roos
                   ` (24 more replies)
  0 siblings, 25 replies; 26+ messages in thread
From: Tõnu Samuel @ 2007-01-19 21:20 UTC (permalink / raw)
  To: sparclinux

Hello all good people!

Just in short - cannot make Linux work on Sun StarFire. There are few
different reports which claim they made it work and even some dedicated
code for Starfire in kernel but I can't.

Current situation: we can boot till /bin/init. Then we loose console.
----------
Jan 19 17:44:29 unknown netcon_server: [ID 366040 local1.info] (linux) :
Warning: unable to open an initial console.
Jan 19 17:44:29 unknown netcon_server: [ID 366040 local1.info] (linux) : foobar1: '/sbin/init'
----------
No more output. But also does not come to network (there is a
preinstalled HDD under it with Aurora 2 and ssh enabled)

Adding init=/bin/bash will cause bash to fail and crash. Probably
because stdout is missing or such fatal stuff.

----------
Jan 19 21:51:19 unknown netcon_server: [ID 366040 local1.info] (linux) :
Warning: unable to open an initial console.
Jan 19 21:51:19 unknown netcon_server: [ID 366040 local1.info] (linux) : foobar: '/bin/bash'
Jan 19 21:51:19 unknown netcon_server: [ID 366040 local1.info] (linux) : foobar1: '/bin/bash'
Jan 19 21:51:20 unknown netcon_server: [ID 366040 local1.info] (linux) : Kernel panic - not syncing: Attempted to kill init!
----------

Those "foobars" are my own debugging. 

Our current output is posted in web http://no.spam.ee/~tonu/sparc/netcon (beware, 3,5M big file) and config http://no.spam.ee/~tonu/sparc/config
We tried very different configs, many of them panic. This one makes it mostly work. Kernel is vanilla 2.6.19.1.

There is a "known working" configuration for 2.6.4 but this kernel does not compile for me. Some sources where people report e10k works:

http://lists.debian.org/debian-sparc/2004/02/threads.html#00177

http://people.debian.org/~fabbione/e10k/debian_on_e10k.txt

http://samba.org/~anton/e10000/

Noone provided copy of their working kernel.

I think we need some help in moving forward. Can provide shell access and such. After we get it working I can set up 
automatic validating of linux kernels there to make sure it works in future.

  Tõnu


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
@ 2007-01-21 15:25 ` Meelis Roos
  2007-01-26 22:05 ` Tom 'spot' Callaway
                   ` (23 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Meelis Roos @ 2007-01-21 15:25 UTC (permalink / raw)
  To: sparclinux

TS> Warning: unable to open an initial console.

Try to use network console if the native console is not supported.
netconsole=..., see Documentation/networking/netconsole.txt

-- 
Meelis Roos

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
  2007-01-21 15:25 ` Meelis Roos
@ 2007-01-26 22:05 ` Tom 'spot' Callaway
  2007-01-26 22:15 ` Tom 'spot' Callaway
                   ` (22 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Tom 'spot' Callaway @ 2007-01-26 22:05 UTC (permalink / raw)
  To: sparclinux

On Sun, 2007-01-21 at 17:25 +0200, Meelis Roos wrote:
> TS> Warning: unable to open an initial console.
> 
> Try to use network console if the native console is not supported.
> netconsole=..., see Documentation/networking/netconsole.txt

It was a good idea, but unfortunately:

eth0: Quattro HME slot 0 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c8 
eth1: Quattro HME slot 1 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c9 
eth2: Quattro HME slot 2 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:ca 
eth3: Quattro HME slot 3 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:cb 
netconsole: eth0 doesn't support polling, aborting.

Yes, I have an e10k too. :)

~spot


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
  2007-01-21 15:25 ` Meelis Roos
  2007-01-26 22:05 ` Tom 'spot' Callaway
@ 2007-01-26 22:15 ` Tom 'spot' Callaway
  2007-01-26 23:12 ` Jan Engelhardt
                   ` (21 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Tom 'spot' Callaway @ 2007-01-26 22:15 UTC (permalink / raw)
  To: sparclinux

On Fri, 2007-01-26 at 16:05 -0600, Tom 'spot' Callaway wrote:
> On Sun, 2007-01-21 at 17:25 +0200, Meelis Roos wrote:
> > TS> Warning: unable to open an initial console.
> > 
> > Try to use network console if the native console is not supported.
> > netconsole=..., see Documentation/networking/netconsole.txt
> 
> It was a good idea, but unfortunately:
> 
> eth0: Quattro HME slot 0 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c8 
> eth1: Quattro HME slot 1 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c9 
> eth2: Quattro HME slot 2 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:ca 
> eth3: Quattro HME slot 3 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:cb 
> netconsole: eth0 doesn't support polling, aborting.
> 
> Yes, I have an e10k too. :)

Even when I mount a valid root over NFS, the kernel always says: 
Warning: unable to open an initial console.

It seems like we'd need to enable polling (NAPI?) for the sunHME in
order to use netconsole here, or fix the native console. Any suggestions
would be welcomed.

Here is the full log for 2.6.20-rc6, from OBP to dmesg, on a rather
small domain:

ultra5:spot% netcon -g
trying to connect...
connected.
Unlocked write permission is granted.

SUNW,Ultra-Enterprise-10000, using Network Console
OpenBoot 3.2.181, 2048 MB memory installed, Serial #10944558.
Ethernet address 0:0:be:a7:0:2e, Host ID: 80a7002e.



<#0> ok 
<#0> ok boot /sbus@41,0/SUNW,qfe@1,8c00000 -p root=/dev/nfs
nfsroot\x10.15.36.3:/build/gdb
ip\x10.15.36.9::10.15.36.254:255.255.255.0:spot1:eth0:both
netconsoleD44@10.15.36.9/eth0,@10.15.36.3/
Boot device: /sbus@41,0/SUNW,qfe@1,8c00000  File and args: -p
root=/dev/nfs nfsroot\x10.15.36.3:/build/gdb
ip\x10.15.36.9::10.15.36.254:255.255.255.0:spot1:eth0:both
netconsoleD44@10.15.36.9/eth0,@10.15.36.3/
24f800 
PROMLIB: Sun IEEE Boot Prom 'OBP 3.2.181 2003/08/15 11:02'
PROMLIB: Root node compatible: 
Linux version 2.6.20-rc6 (root@odyssey) (gcc version 4.1.1 20061011 (Red
Hat 4.1.1-30)) #3 SMP Fri Jan 26 16:34:09 EST 2007
ARCH: SUN4U
Ethernet address: 00:00:be:a7:00:2e
Remapping the kernel... done.
PROM: Built device tree with 49221 bytes of memory.
Booting Linux...
Built 1 zonelists.  Total pages: 258352
Kernel command line: -p root=/dev/nfs nfsroot\x10.15.36.3:/build/gdb
ip\x10.15.36.9::10.15.36.254:255.255.255.0:spot1:eth0:both
netconsoleD44@10.15.36.9/eth0,@10.15.36.3/
netconsole: local port 4444
netconsole: local IP 10.15.36.9
netconsole: interface eth0
netconsole: remote port 6666
netconsole: remote IP 10.15.36.3
netconsole: remote ethernet address ff:ff:ff:ff:ff:ff
PID hash table entries: 4096 (order: 12, 32768 bytes)
Console: colour dummy device 80x25
Dentry cache hash table entries: 262144 (order: 8, 2097152 bytes)
Inode-cache hash table entries: 131072 (order: 7, 1048576 bytes)
Memory: 2062424k available (1760k kernel code, 408k data, 152k init)
[fffff80000000000,000000007fcea000]
Calibrating delay using timer specific routine.. 799.75 BogoMIPS
(lpj\x1599501)
Mount-cache hash table entries: 512
CPU[0]: Caches D[sz(16384):line_sz(32)] I[sz(16384):line_sz(32)]
E[sz(8388608):line_sz(64)]
Using max_cache_size of 8MB
Calibrating delay using timer specific routine.. 799.30 BogoMIPS
(lpj\x1598606)
CPU[1]: Caches D[sz(16384):line_sz(32)] I[sz(16384):line_sz(32)]
E[sz(8388608):line_sz(64)]
CPU 1: synchronized TICK with master CPU (last diff -26 cycles,maxerr
973 cycles)
Calibrating delay using timer specific routine.. 799.30 BogoMIPS
(lpj\x1598611)
CPU[2]: Caches D[sz(16384):line_sz(32)] I[sz(16384):line_sz(32)]
E[sz(8388608):line_sz(64)]
CPU 2: synchronized TICK with master CPU (last diff -22 cycles,maxerr
993 cycles)
Calibrating delay using timer specific routine.. 799.30 BogoMIPS
(lpj\x1598612)
CPU[3]: Caches D[sz(16384):line_sz(32)] I[sz(16384):line_sz(32)]
E[sz(8388608):line_sz(64)]
CPU 3: synchronized TICK with master CPU (last diff -30 cycles,maxerr
991 cycles)
Brought up 4 CPUs
Total of 4 processors activated (3197.66 BogoMIPS).
migration_cost 0751
NET: Registered protocol family 16
SCSI subsystem initialized
SYSIO: UPA portID 40, at 0000010800000000
sbus0: Clock 25.0 MHz
SYSIO: UPA portID 41, at 0000010a00000000
sbus1: Clock 25.0 MHz
NET: Registered protocol family 2
IP route cache hash table entries: 65536 (order: 6, 524288 bytes)
TCP established hash table entries: 262144 (order: 9, 4194304 bytes)
TCP bind hash table entries: 65536 (order: 7, 1048576 bytes)
TCP: Hash tables configured (established 262144 bind 65536)
TCP reno registered
Mini RTC Driver
io scheduler noop registered
io scheduler deadline registered (default)
sunhme.c:v3.00 June 23, 2006 David S. Miller (davem@davemloft.net)
eth0: Quattro HME slot 0 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c8 
eth1: Quattro HME slot 1 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c9 
eth2: Quattro HME slot 2 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:ca 
eth3: Quattro HME slot 3 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:cb 
netconsole: eth0 doesn't support polling, aborting.
qpti0: IRQ 7 SCSI ID 7 <6>scsi0 : PTI Qlogic,ISP SBUS SCSI irq 7 regs at
0000010900010000
(Firmware v1.31.32)(Firmware 1.21 95/05/18) [Fast Wide, using single
ended interface]
scsi 0:0:2:0: Direct-Access     IBM      DDRS34560SUN4.2G S98E PQ: 0
ANSI: 2
SCSI device sda: 8385121 512-byte hdwr sectors (4293 MB)
sda: Write Protect is off
SCSI device sda: write cache: disabled, read cache: enabled, doesn't
support DPO or FUA
SCSI device sda: 8385121 512-byte hdwr sectors (4293 MB)
sda: Write Protect is off
SCSI device sda: write cache: disabled, read cache: enabled, doesn't
support DPO or FUA
 sda: sda1 sda2 sda3 sda4 sda6 sda7 sda8
sd 0:0:2:0: Attached scsi disk sda
mice: PS/2 mouse device common for all mice
TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
IP-Config: Complete:
      device=eth0, addr\x10.15.36.9, mask%5.255.255.0, gw\x10.15.36.254,
     host=spot1, domain=, nis-domain=(none),
     bootserver%5.255.255.255, rootserver\x10.15.36.3, rootpathLooking up port of RPC 100003/2 on 10.15.36.3
Looking up port of RPC 100005/1 on 10.15.36.3
VFS: Mounted root (nfs filesystem) readonly.
Warning: unable to open an initial console.
eth0: Link is up using internal transceiver at 10Mb/s, Half Duplex.
eth0: Happy Meal out of receive descriptors, packet dropped.



^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (2 preceding siblings ...)
  2007-01-26 22:15 ` Tom 'spot' Callaway
@ 2007-01-26 23:12 ` Jan Engelhardt
  2007-01-26 23:17 ` Tom 'spot' Callaway
                   ` (20 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Jan Engelhardt @ 2007-01-26 23:12 UTC (permalink / raw)
  To: sparclinux


>On Fri, 2007-01-26 at 16:05 -0600, Tom 'spot' Callaway wrote:
>> On Sun, 2007-01-21 at 17:25 +0200, Meelis Roos wrote:
>> > TS> Warning: unable to open an initial console.
>> > 
>> > Try to use network console if the native console is not supported.
>> > netconsole=..., see Documentation/networking/netconsole.txt
>> 
>> It was a good idea, but unfortunately:
>> 
>> eth0: Quattro HME slot 0 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c8 
>> eth1: Quattro HME slot 1 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c9 
>> eth2: Quattro HME slot 2 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:ca 
>> eth3: Quattro HME slot 3 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:cb 
>> netconsole: eth0 doesn't support polling, aborting.
>> 
>> Yes, I have an e10k too. :)
>
>Even when I mount a valid root over NFS, the kernel always says: 
>Warning: unable to open an initial console.


>VFS: Mounted root (nfs filesystem) readonly.
>Warning: unable to open an initial console.

Create /dev/console as char(5,1) on the root fs.


	-`J'
-- 

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (3 preceding siblings ...)
  2007-01-26 23:12 ` Jan Engelhardt
@ 2007-01-26 23:17 ` Tom 'spot' Callaway
  2007-01-27  0:39 ` Tom 'spot' Callaway
                   ` (19 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Tom 'spot' Callaway @ 2007-01-26 23:17 UTC (permalink / raw)
  To: sparclinux

On Sat, 2007-01-27 at 00:12 +0100, Jan Engelhardt wrote:
> >On Fri, 2007-01-26 at 16:05 -0600, Tom 'spot' Callaway wrote:
> >> On Sun, 2007-01-21 at 17:25 +0200, Meelis Roos wrote:
> >> > TS> Warning: unable to open an initial console.
> >> > 
> >> > Try to use network console if the native console is not supported.
> >> > netconsole=..., see Documentation/networking/netconsole.txt
> >> 
> >> It was a good idea, but unfortunately:
> >> 
> >> eth0: Quattro HME slot 0 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c8 
> >> eth1: Quattro HME slot 1 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c9 
> >> eth2: Quattro HME slot 2 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:ca 
> >> eth3: Quattro HME slot 3 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:cb 
> >> netconsole: eth0 doesn't support polling, aborting.
> >> 
> >> Yes, I have an e10k too. :)
> >
> >Even when I mount a valid root over NFS, the kernel always says: 
> >Warning: unable to open an initial console.
> 
> 
> >VFS: Mounted root (nfs filesystem) readonly.
> >Warning: unable to open an initial console.
> 
> Create /dev/console as char(5,1) on the root fs.

Already existed:

[root@odyssey gdb]# ls -l dev/console
crw--w---- 1 root tty 5, 1 Jan 25 10:33 dev/console

~spot


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (4 preceding siblings ...)
  2007-01-26 23:17 ` Tom 'spot' Callaway
@ 2007-01-27  0:39 ` Tom 'spot' Callaway
  2007-01-27  2:10 ` David Miller
                   ` (18 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Tom 'spot' Callaway @ 2007-01-27  0:39 UTC (permalink / raw)
  To: sparclinux

On Fri, 2007-01-26 at 17:17 -0600, Tom 'spot' Callaway wrote:
> On Sat, 2007-01-27 at 00:12 +0100, Jan Engelhardt wrote:
> > >On Fri, 2007-01-26 at 16:05 -0600, Tom 'spot' Callaway wrote:
> > >> On Sun, 2007-01-21 at 17:25 +0200, Meelis Roos wrote:
> > >> > TS> Warning: unable to open an initial console.
> > >> > 
> > >> > Try to use network console if the native console is not supported.
> > >> > netconsole=..., see Documentation/networking/netconsole.txt
> > >> 
> > >> It was a good idea, but unfortunately:
> > >> 
> > >> eth0: Quattro HME slot 0 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c8 
> > >> eth1: Quattro HME slot 1 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:c9 
> > >> eth2: Quattro HME slot 2 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:ca 
> > >> eth3: Quattro HME slot 3 (SBUS) 10/100baseT Ethernet 08:00:20:b7:8f:cb 
> > >> netconsole: eth0 doesn't support polling, aborting.
> > >> 
> > >> Yes, I have an e10k too. :)
> > >
> > >Even when I mount a valid root over NFS, the kernel always says: 
> > >Warning: unable to open an initial console.
> > 
> > 
> > >VFS: Mounted root (nfs filesystem) readonly.
> > >Warning: unable to open an initial console.
> > 
> > Create /dev/console as char(5,1) on the root fs.
> 
> Already existed:
> 
> [root@odyssey gdb]# ls -l dev/console
> crw--w---- 1 root tty 5, 1 Jan 25 10:33 dev/console

Also tried mounting the nfsroot rw, but still:

TCP cubic registered
NET: Registered protocol family 1
NET: Registered protocol family 17
IP-Config: Complete:
      device=eth0, addr\x10.15.36.9, mask%5.255.255.0, gw\x10.15.36.254,
     host=spot1, domain=, nis-domain=(none),
     bootserver\x10.15.36.3, rootserver\x10.15.36.3, rootpathLooking up port of RPC 100003/2 on 10.15.36.3
Looking up port of RPC 100005/1 on 10.15.36.3
VFS: Mounted root (nfs filesystem).
Warning: unable to open an initial console.
eth0: Link is up using internal transceiver at 10Mb/s, Half Duplex.
eth0: Happy Meal out of receive descriptors, packet dropped.
eth0: Happy Meal out of receive descriptors, packet dropped.

Looking at init/main.c:

if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
   printk(KERN_WARNING "Warning: unable to open an initial console.\n");

... so, if root is mounted (over nfs), and root is mounted rw,
and /dev/console exists on the nfsroot, and it has rw permissions (I
gave it chmod 777 to just be sure), why would that sys_open call fail
and trigger that printk?

~spot


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (5 preceding siblings ...)
  2007-01-27  0:39 ` Tom 'spot' Callaway
@ 2007-01-27  2:10 ` David Miller
  2007-01-27  3:42 ` Tom 'spot' Callaway
                   ` (17 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: David Miller @ 2007-01-27  2:10 UTC (permalink / raw)
  To: sparclinux

From: "Tom 'spot' Callaway" <tcallawa@redhat.com>
Date: Fri, 26 Jan 2007 16:15:30 -0600

> Warning: unable to open an initial console.

Enable PROM console, that should get you going at least
enough to boot into userspace, you won't be able to type
any input but it should get a /dev/console and be able to
thus boot past that point.

Adding proper support for the e10K console would be a nice
easy sparc64 kernel project for someone who wants to get
involved and has access to such a machine.

Don't bother with netconsole support.

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (6 preceding siblings ...)
  2007-01-27  2:10 ` David Miller
@ 2007-01-27  3:42 ` Tom 'spot' Callaway
  2007-01-27  4:28 ` Tom 'spot' Callaway
                   ` (16 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Tom 'spot' Callaway @ 2007-01-27  3:42 UTC (permalink / raw)
  To: sparclinux

[-- Attachment #1: Type: text/plain, Size: 1085 bytes --]

On Fri, 2007-01-26 at 18:10 -0800, David Miller wrote:
> From: "Tom 'spot' Callaway" <tcallawa@redhat.com>
> Date: Fri, 26 Jan 2007 16:15:30 -0600
> 
> > Warning: unable to open an initial console.
> 
> Enable PROM console, that should get you going at least
> enough to boot into userspace, you won't be able to type
> any input but it should get a /dev/console and be able to
> thus boot past that point.

Nope. In fact, it actually caused the kernel to die before I could get
it to mount the NFS root:

http://auroralinux.org/people/spot/e10k-dmesg-smp-promconsole.txt

Only changes were to disable netconsole and enable PROM_CONSOLE. Kernel
config is attached.

> Adding proper support for the e10K console would be a nice
> easy sparc64 kernel project for someone who wants to get
> involved and has access to such a machine.

Well, I've got unlimited access to my very own fully populated e10k, but
no experience writing console drivers. :/

Unfortunately, the subset of people to whom I can give access to are
limited to those @redhat.com, due to the machine's location.

~spot

[-- Attachment #2: e10k.config --]
[-- Type: text/plain, Size: 14083 bytes --]

#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.20-rc6
# Fri Jan 26 21:53:52 2007
#
CONFIG_SPARC=y
CONFIG_SPARC64=y
CONFIG_64BIT=y
CONFIG_MMU=y
CONFIG_STACKTRACE_SUPPORT=y
CONFIG_LOCKDEP_SUPPORT=y
CONFIG_TIME_INTERPOLATION=y
CONFIG_ARCH_MAY_HAVE_PC_FDC=y
# CONFIG_ARCH_HAS_ILOG2_U32 is not set
# CONFIG_ARCH_HAS_ILOG2_U64 is not set
CONFIG_AUDIT_ARCH=y
CONFIG_SPARC64_PAGE_SIZE_8KB=y
# CONFIG_SPARC64_PAGE_SIZE_64KB is not set
# CONFIG_SPARC64_PAGE_SIZE_512KB is not set
# CONFIG_SPARC64_PAGE_SIZE_4MB is not set
CONFIG_SECCOMP=y
# CONFIG_HZ_100 is not set
CONFIG_HZ_250=y
# CONFIG_HZ_300 is not set
# CONFIG_HZ_1000 is not set
CONFIG_HZ=250
CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"

#
# Code maturity level options
#
CONFIG_EXPERIMENTAL=y
CONFIG_LOCK_KERNEL=y
CONFIG_INIT_ENV_ARG_LIMIT=32

#
# General setup
#
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
# CONFIG_IPC_NS is not set
# CONFIG_POSIX_MQUEUE is not set
CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
# CONFIG_TASKSTATS is not set
# CONFIG_UTS_NS is not set
# CONFIG_AUDIT is not set
# CONFIG_IKCONFIG is not set
# CONFIG_CPUSETS is not set
# CONFIG_SYSFS_DEPRECATED is not set
# CONFIG_RELAY is not set
CONFIG_INITRAMFS_SOURCE=""
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
CONFIG_EMBEDDED=y
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
# CONFIG_KALLSYMS is not set
# CONFIG_HOTPLUG is not set
CONFIG_PRINTK=y
CONFIG_BUG=y
# CONFIG_ELF_CORE is not set
# CONFIG_BASE_FULL is not set
CONFIG_FUTEX=y
CONFIG_EPOLL=y
# CONFIG_SHMEM is not set
CONFIG_SLAB=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_RT_MUTEXES=y
CONFIG_TINY_SHMEM=y
CONFIG_BASE_SMALL=1
# CONFIG_SLOB is not set

#
# Loadable module support
#
# CONFIG_MODULES is not set

#
# Block layer
#
CONFIG_BLOCK=y
# CONFIG_BLK_DEV_IO_TRACE is not set

#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
# CONFIG_IOSCHED_AS is not set
CONFIG_IOSCHED_DEADLINE=y
# CONFIG_IOSCHED_CFQ is not set
# CONFIG_DEFAULT_AS is not set
CONFIG_DEFAULT_DEADLINE=y
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="deadline"
CONFIG_SYSVIPC_COMPAT=y
CONFIG_GENERIC_HARDIRQS=y

#
# General machine setup
#
CONFIG_SMP=y
# CONFIG_PREEMPT is not set
CONFIG_NR_CPUS=32
# CONFIG_CPU_FREQ is not set
CONFIG_RWSEM_XCHGADD_ALGORITHM=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
CONFIG_GENERIC_HWEIGHT=y
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_ARCH_SELECT_MEMORY_MODEL=y
CONFIG_ARCH_SPARSEMEM_ENABLE=y
CONFIG_ARCH_SPARSEMEM_DEFAULT=y
CONFIG_LARGE_ALLOCS=y
CONFIG_SELECT_MEMORY_MODEL=y
# CONFIG_FLATMEM_MANUAL is not set
# CONFIG_DISCONTIGMEM_MANUAL is not set
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_SPARSEMEM=y
CONFIG_HAVE_MEMORY_PRESENT=y
# CONFIG_SPARSEMEM_STATIC is not set
CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_RESOURCES_64BIT=y
CONFIG_GENERIC_ISA_DMA=y
CONFIG_SBUS=y
CONFIG_SBUSCHAR=y
CONFIG_SUN_AUXIO=y
CONFIG_SUN_IO=y
# CONFIG_PCI is not set
# CONFIG_PCI_DOMAINS is not set
# CONFIG_SUN_OPENPROMFS is not set
CONFIG_SPARC32_COMPAT=y
CONFIG_COMPAT=y
CONFIG_BINFMT_ELF32=y
CONFIG_BINFMT_AOUT32=y

#
# Executable file formats
#
CONFIG_BINFMT_ELF=y
# CONFIG_BINFMT_MISC is not set
# CONFIG_SUNOS_EMUL is not set
# CONFIG_SOLARIS_EMUL is not set
CONFIG_SCHED_SMT=y
# CONFIG_CMDLINE_BOOL is not set

#
# Networking
#
CONFIG_NET=y

#
# Networking options
#
# CONFIG_NETDEBUG is not set
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
# CONFIG_NET_KEY is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
CONFIG_IP_FIB_HASH=y
CONFIG_IP_PNP=y
CONFIG_IP_PNP_DHCP=y
CONFIG_IP_PNP_BOOTP=y
CONFIG_IP_PNP_RARP=y
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_ARPD is not set
# CONFIG_SYN_COOKIES is not set
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set
# CONFIG_INET_XFRM_TUNNEL is not set
# CONFIG_INET_TUNNEL is not set
# CONFIG_INET_XFRM_MODE_TRANSPORT is not set
# CONFIG_INET_XFRM_MODE_TUNNEL is not set
# CONFIG_INET_XFRM_MODE_BEET is not set
# CONFIG_INET_DIAG is not set
# CONFIG_TCP_CONG_ADVANCED is not set
CONFIG_TCP_CONG_CUBIC=y
CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_TCP_MD5SIG is not set
# CONFIG_IPV6 is not set
# CONFIG_INET6_XFRM_TUNNEL is not set
# CONFIG_INET6_TUNNEL is not set
# CONFIG_NETWORK_SECMARK is not set
# CONFIG_NETFILTER is not set

#
# DCCP Configuration (EXPERIMENTAL)
#
# CONFIG_IP_DCCP is not set

#
# SCTP Configuration (EXPERIMENTAL)
#
# CONFIG_IP_SCTP is not set

#
# TIPC Configuration (EXPERIMENTAL)
#
# CONFIG_TIPC is not set
# CONFIG_ATM is not set
# CONFIG_BRIDGE is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_DECNET is not set
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set

#
# QoS and/or fair queueing
#
# CONFIG_NET_SCHED is not set

#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_HAMRADIO is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
# CONFIG_IEEE80211 is not set

#
# Device Drivers
#

#
# Generic Driver Options
#
# CONFIG_STANDALONE is not set
CONFIG_PREVENT_FIRMWARE_BUILD=y
# CONFIG_SYS_HYPERVISOR is not set

#
# Connector - unified userspace <-> kernelspace linker
#
# CONFIG_CONNECTOR is not set

#
# Memory Technology Devices (MTD)
#
# CONFIG_MTD is not set

#
# Parallel port support
#
# CONFIG_PARPORT is not set

#
# Plug and Play support
#

#
# Block devices
#
# CONFIG_BLK_DEV_FD is not set
# CONFIG_BLK_DEV_COW_COMMON is not set
# CONFIG_BLK_DEV_LOOP is not set
# CONFIG_BLK_DEV_NBD is not set
# CONFIG_BLK_DEV_RAM is not set
# CONFIG_BLK_DEV_INITRD is not set
# CONFIG_CDROM_PKTCDVD is not set
# CONFIG_ATA_OVER_ETH is not set

#
# Misc devices
#
# CONFIG_TIFM_CORE is not set

#
# ATA/ATAPI/MFM/RLL support
#
# CONFIG_IDE is not set

#
# SCSI device support
#
# CONFIG_RAID_ATTRS is not set
CONFIG_SCSI=y
# CONFIG_SCSI_TGT is not set
# CONFIG_SCSI_NETLINK is not set
CONFIG_SCSI_PROC_FS=y

#
# SCSI support type (disk, tape, CD-ROM)
#
CONFIG_BLK_DEV_SD=y
# CONFIG_CHR_DEV_ST is not set
# CONFIG_CHR_DEV_OSST is not set
# CONFIG_BLK_DEV_SR is not set
# CONFIG_CHR_DEV_SG is not set
# CONFIG_CHR_DEV_SCH is not set

#
# Some SCSI devices (e.g. CD jukebox) support multiple LUNs
#
# CONFIG_SCSI_MULTI_LUN is not set
# CONFIG_SCSI_CONSTANTS is not set
# CONFIG_SCSI_LOGGING is not set
# CONFIG_SCSI_SCAN_ASYNC is not set

#
# SCSI Transports
#
# CONFIG_SCSI_SPI_ATTRS is not set
# CONFIG_SCSI_FC_ATTRS is not set
# CONFIG_SCSI_ISCSI_ATTRS is not set
# CONFIG_SCSI_SAS_ATTRS is not set
# CONFIG_SCSI_SAS_LIBSAS is not set

#
# SCSI low-level drivers
#
# CONFIG_ISCSI_TCP is not set
CONFIG_SCSI_QLOGICPTI=y
# CONFIG_SCSI_DEBUG is not set
# CONFIG_SCSI_SUNESP is not set

#
# Serial ATA (prod) and Parallel ATA (experimental) drivers
#
# CONFIG_ATA is not set

#
# Multi-device support (RAID and LVM)
#
# CONFIG_MD is not set

#
# Fusion MPT device support
#
# CONFIG_FUSION is not set

#
# IEEE 1394 (FireWire) support
#

#
# I2O device support
#

#
# Network device support
#
CONFIG_NETDEVICES=y
# CONFIG_DUMMY is not set
# CONFIG_BONDING is not set
# CONFIG_EQUALIZER is not set
# CONFIG_TUN is not set

#
# PHY device support
#
# CONFIG_PHYLIB is not set

#
# Ethernet (10 or 100Mbit)
#
CONFIG_NET_ETHERNET=y
# CONFIG_MII is not set
# CONFIG_SUNLANCE is not set
CONFIG_HAPPYMEAL=y
# CONFIG_SUNBMAC is not set
# CONFIG_SUNQE is not set

#
# Ethernet (1000 Mbit)
#
# CONFIG_MYRI_SBUS is not set

#
# Ethernet (10000 Mbit)
#

#
# Token Ring devices
#

#
# Wireless LAN (non-hamradio)
#
# CONFIG_NET_RADIO is not set

#
# Wan interfaces
#
# CONFIG_WAN is not set
# CONFIG_PPP is not set
# CONFIG_SLIP is not set
# CONFIG_SHAPER is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set

#
# ISDN subsystem
#
# CONFIG_ISDN is not set

#
# Telephony Support
#
# CONFIG_PHONE is not set

#
# Input device support
#
CONFIG_INPUT=y
# CONFIG_INPUT_FF_MEMLESS is not set

#
# Userland interfaces
#
CONFIG_INPUT_MOUSEDEV=y
CONFIG_INPUT_MOUSEDEV_PSAUX=y
CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024
CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768
# CONFIG_INPUT_JOYDEV is not set
# CONFIG_INPUT_TSDEV is not set
# CONFIG_INPUT_EVDEV is not set
# CONFIG_INPUT_EVBUG is not set

#
# Input Device Drivers
#
CONFIG_INPUT_KEYBOARD=y
CONFIG_KEYBOARD_ATKBD=y
# CONFIG_KEYBOARD_SUNKBD is not set
# CONFIG_KEYBOARD_LKKBD is not set
# CONFIG_KEYBOARD_XTKBD is not set
# CONFIG_KEYBOARD_NEWTON is not set
# CONFIG_KEYBOARD_STOWAWAY is not set
CONFIG_INPUT_MOUSE=y
CONFIG_MOUSE_PS2=y
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_MOUSE_VSXXXAA is not set
# CONFIG_INPUT_JOYSTICK is not set
# CONFIG_INPUT_TOUCHSCREEN is not set
# CONFIG_INPUT_MISC is not set

#
# Hardware I/O ports
#
CONFIG_SERIO=y
# CONFIG_SERIO_I8042 is not set
CONFIG_SERIO_SERPORT=y
CONFIG_SERIO_LIBPS2=y
# CONFIG_SERIO_RAW is not set
# CONFIG_GAMEPORT is not set

#
# Character devices
#
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_HW_CONSOLE=y
# CONFIG_VT_HW_CONSOLE_BINDING is not set
# CONFIG_SERIAL_NONSTANDARD is not set

#
# Serial drivers
#

#
# Non-8250 serial port support
#
CONFIG_SERIAL_SUNCORE=y
# CONFIG_SERIAL_SUNZILOG is not set
CONFIG_SERIAL_SUNHV=y
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_UNIX98_PTYS=y
# CONFIG_LEGACY_PTYS is not set

#
# IPMI
#
# CONFIG_IPMI_HANDLER is not set

#
# Watchdog Cards
#
# CONFIG_WATCHDOG is not set
CONFIG_HW_RANDOM=y
# CONFIG_DTLK is not set
# CONFIG_R3964 is not set
# CONFIG_RAW_DRIVER is not set

#
# TPM devices
#
# CONFIG_TCG_TPM is not set

#
# I2C support
#
# CONFIG_I2C is not set

#
# SPI support
#
# CONFIG_SPI is not set
# CONFIG_SPI_MASTER is not set

#
# Dallas's 1-wire bus
#
# CONFIG_W1 is not set

#
# Hardware Monitoring support
#
# CONFIG_HWMON is not set
# CONFIG_HWMON_VID is not set

#
# Multimedia devices
#
# CONFIG_VIDEO_DEV is not set

#
# Digital Video Broadcasting Devices
#
# CONFIG_DVB is not set

#
# Graphics support
#
# CONFIG_FIRMWARE_EDID is not set
# CONFIG_FB is not set

#
# Console display driver support
#
CONFIG_PROM_CONSOLE=y
CONFIG_DUMMY_CONSOLE=y
# CONFIG_BACKLIGHT_LCD_SUPPORT is not set

#
# Sound
#
# CONFIG_SOUND is not set

#
# HID Devices
#
# CONFIG_HID is not set

#
# USB support
#
# CONFIG_USB_ARCH_HAS_HCD is not set
# CONFIG_USB_ARCH_HAS_OHCI is not set
# CONFIG_USB_ARCH_HAS_EHCI is not set

#
# NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support'
#

#
# USB Gadget Support
#
# CONFIG_USB_GADGET is not set

#
# MMC/SD Card support
#
# CONFIG_MMC is not set

#
# LED devices
#
# CONFIG_NEW_LEDS is not set

#
# LED drivers
#

#
# LED Triggers
#

#
# InfiniBand support
#

#
# EDAC - error detection and reporting (RAS) (EXPERIMENTAL)
#

#
# Real Time Clock
#
# CONFIG_RTC_CLASS is not set

#
# DMA Engine support
#
# CONFIG_DMA_ENGINE is not set

#
# DMA Clients
#

#
# DMA Devices
#

#
# Virtualization
#

#
# Misc Linux/SPARC drivers
#
# CONFIG_SUN_OPENPROMIO is not set
# CONFIG_SUN_MOSTEK_RTC is not set
# CONFIG_OBP_FLASH is not set
# CONFIG_SUN_BPP is not set

#
# Fibre Channel support
#
# CONFIG_FC4 is not set

#
# File systems
#
# CONFIG_EXT2_FS is not set
CONFIG_EXT3_FS=y
CONFIG_EXT3_FS_XATTR=y
# CONFIG_EXT3_FS_POSIX_ACL is not set
# CONFIG_EXT3_FS_SECURITY is not set
# CONFIG_EXT4DEV_FS is not set
CONFIG_JBD=y
# CONFIG_JBD_DEBUG is not set
CONFIG_FS_MBCACHE=y
# CONFIG_REISERFS_FS is not set
# CONFIG_JFS_FS is not set
# CONFIG_FS_POSIX_ACL is not set
# CONFIG_XFS_FS is not set
# CONFIG_GFS2_FS is not set
# CONFIG_OCFS2_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_ROMFS_FS is not set
# CONFIG_INOTIFY is not set
# CONFIG_QUOTA is not set
# CONFIG_DNOTIFY is not set
# CONFIG_AUTOFS_FS is not set
# CONFIG_AUTOFS4_FS is not set
# CONFIG_FUSE_FS is not set

#
# CD-ROM/DVD Filesystems
#
# CONFIG_ISO9660_FS is not set
# CONFIG_UDF_FS is not set

#
# DOS/FAT/NT Filesystems
#
# CONFIG_MSDOS_FS is not set
# CONFIG_VFAT_FS is not set
# CONFIG_NTFS_FS is not set

#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_PROC_SYSCTL=y
CONFIG_SYSFS=y
# CONFIG_TMPFS is not set
# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set
CONFIG_RAMFS=y
# CONFIG_CONFIGFS_FS is not set

#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_HFSPLUS_FS is not set
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
# CONFIG_CRAMFS is not set
# CONFIG_VXFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set

#
# Network File Systems
#
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
# CONFIG_NFS_V3_ACL is not set
# CONFIG_NFS_V4 is not set
# CONFIG_NFS_DIRECTIO is not set
# CONFIG_NFSD is not set
CONFIG_ROOT_NFS=y
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
# CONFIG_RPCSEC_GSS_KRB5 is not set
# CONFIG_RPCSEC_GSS_SPKM3 is not set
# CONFIG_SMB_FS is not set
# CONFIG_CIFS is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set
# CONFIG_9P_FS is not set

#
# Partition Types
#
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y
CONFIG_SUN_PARTITION=y

#
# Native Language Support
#
# CONFIG_NLS is not set

#
# Distributed Lock Manager
#
# CONFIG_DLM is not set

#
# Instrumentation Support
#
# CONFIG_PROFILING is not set

#
# Kernel hacking
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
# CONFIG_PRINTK_TIME is not set
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_MAGIC_SYSRQ=y
# CONFIG_UNUSED_SYMBOLS is not set
# CONFIG_DEBUG_FS is not set
# CONFIG_HEADERS_CHECK is not set
# CONFIG_DEBUG_KERNEL is not set
CONFIG_LOG_BUF_SHIFT=15
# CONFIG_DEBUG_BUGVERBOSE is not set

#
# Security options
#
# CONFIG_KEYS is not set
# CONFIG_SECURITY is not set

#
# Cryptographic options
#
# CONFIG_CRYPTO is not set

#
# Library routines
#
CONFIG_BITREVERSE=y
# CONFIG_CRC_CCITT is not set
# CONFIG_CRC16 is not set
CONFIG_CRC32=y
# CONFIG_LIBCRC32C is not set
CONFIG_PLIST=y
CONFIG_IOMAP_COPY=y

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (7 preceding siblings ...)
  2007-01-27  3:42 ` Tom 'spot' Callaway
@ 2007-01-27  4:28 ` Tom 'spot' Callaway
  2007-01-27 10:19 ` Tõnu Samuel
                   ` (15 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Tom 'spot' Callaway @ 2007-01-27  4:28 UTC (permalink / raw)
  To: sparclinux

On Fri, 2007-01-26 at 21:42 -0600, Tom 'spot' Callaway wrote:
> On Fri, 2007-01-26 at 18:10 -0800, David Miller wrote:
> > From: "Tom 'spot' Callaway" <tcallawa@redhat.com>
> > Date: Fri, 26 Jan 2007 16:15:30 -0600
> > 
> > > Warning: unable to open an initial console.
> > 
> > Enable PROM console, that should get you going at least
> > enough to boot into userspace, you won't be able to type
> > any input but it should get a /dev/console and be able to
> > thus boot past that point.
> 
> Nope. In fact, it actually caused the kernel to die before I could get
> it to mount the NFS root:
> 
> http://auroralinux.org/people/spot/e10k-dmesg-smp-promconsole.txt

Enabled all sorts of memory related debugging, and got this:

Console: mono PROM 80x34                                    
Dentry cache hash table entries: 262144 (order: 8, 2097152 bytes)
Inode-cache hash table entries: 131072 (order: 7, 1048576 bytes)   
Memory: 2058328k available (1752k kernel code, 416k data, 152k init)
[fffff80000000000,000000007fcea000]
slab error in cache_alloc_debugcheck_after(): cache `size-512': double
free, or memory outside object was overwritten
Call Trace: [000000000047be28]  [000000000047c2cc]  [00000000006370fc]
[000000000062a62c]  [00000000004045c0]  [0000000000000000] 
fffff8007fce6000: redzone 1:0x5a5a5a5a5a5a5a5a, redzone
2:0x170fc2a5              
slab error in cache_alloc_debugcheck_after(): cache `size-512': double
free, or memory outside object was overwritten
Call Trace: [000000000047be28]  [000000000047c2cc]  [00000000006370fc]
[000000000062a62c]  [00000000004045c0]  [0000000000000000] 
fffff8007fce6000: redzone 1:0x5a5a5a5a5a5a5a5a, redzone
2:0x170fc2a5                                    
slab error in cache_alloc_debugcheck_after(): cache `size-512': double
free, or memory outside object was overwritten
Call Trace: [000000000047be28]  [000000000047c2cc]  [00000000006370fc]
[000000000062a62c]  [00000000004045c0]  [0000000000000000] 
fffff8007fce6000: redzone 1:0x5a5a5a5a5a5a5a5a, redzone
2:0x170fc2a5              
slab error in cache_alloc_debugcheck_after(): cache `size-512': double
free, or memory outside object was overwritten
Call Trace: [000000000047be28]  [000000000047c2cc]  [00000000006370fc]
[000000000062a62c]  [00000000004045c0]  [0000000000000000] 
fffff8007fce6000: redzone 1:0x5a5a5a5a5a5a5a5a, redzone
2:0x170fc2a5              
slab error in cache_alloc_debugcheck_after(): cache `size-512': double
free, or memory outside object was overwritten
Call Trace: [000000000047be28]  [000000000047c2cc]  [00000000006370fc]
[000000000062a62c]  [00000000004045c0]  [0000000000000000] 
fffff8007fce6000: redzone 1:0x5a5a5a5a5a5a5a5a, redzone
2:0x170fc2a5                
slab error in cache_alloc_debugcheck_after(): cache `size-512': double
free, or memory outside object was overwritten
Call Trace: [000000000047be28]  [000000000047c2cc]  [00000000006370fc]
[000000000062a62c]  [00000000004045c0]  [0000000000000000] 
fffff8007fce6000: redzone 1:0x5a5a5a5a5a5a5a5a, redzone
2:0x170fc2a5                 
slab error in cache_alloc_debugcheck_after(): cache `size-512': double
free, or memory outside object was overwritten
Call Trace: [000000000047be28]  [000000000047c2cc]  [00000000006370fc]
[000000000062a62c]  [00000000004045c0]  [0000000000000000] 
fffff8007fce6000: redzone 1:0x5a5a5a5a5a5a5a5a, redzone
2:0x170fc2a5          ^[[7          \x03þ                                
slab error in cache_alloc_debugcheck_after(): cache `size-512': double
free, or memory outside object was overwritten
Call Trace: [000000000047be28]  [000000000047c2cc]  [00000000006370fc]
[000000000062a62c]  [00000000004045c0]  [0000000000000000] 
fffff8007fce6000: redzone 1:0x5a5a5a5a5a5a5a5a, redzone 2:0x170fc2a5
Unable to handle kernel paging request at virtual address
fffff803db27c000
tsk->{mm,active_mm}->context = 0000000000000000
tsk->{mm,active_mm}->pgd = fffff800002572d0
              \|/ ____ \|/
              "@'/ .. \`@"
              /_| \__/ |_\                                        
                 \__U_/
swapper(0): Oops [#1]
TSTATE: 0000004480f01607 TPC: 000000000050ac50 TNPC: 000000000050ac54 Y:
00000000    Not tainted
g0: 00000000005e75d1 g1: 0000000000000018 g2: 0000000000000000 g3:
0000000000000001
g4: 00000000005e8400 g5: fffff80000e67a80 g6: 00000000005e4400 g7:
0000000000000060
o0: fffff8007fcc9f18 o1: fffff803db27d710 o2: 0000000000000000 o3:
fffffffca4a4c808
o4: fffff8007fcc9f18 o5: fffff8000028e0f8 sp: 00000000005e75e1 ret_pc:
000000000047b13c
l0: 000000000000000c l1: fffff8007fcc9ef0 l2: fffff800002866f8 l3:
fffff8007fcc7bf0
l4: 000000000000000c l5: fffff8000028853c l6: 0000000000000001 l7:
0000000000000010
i0: fffff8000028b700 i1: 00000000000000d0 i2: 0000000000000000 i3:
000000000047bdd8
i4: 0000000000000001 i5: fffff80000288538 i6: 00000000005e76a1 i7:
000000000047b998
Caller[000000000047b998]
Caller[000000000047bdd8]
Caller[000000000047bfbc]
Caller[000000000047c2cc]
Caller[00000000006370fc]
Caller[000000000062a62c]
Caller[00000000004045c0]
Caller[0000000000000000]
Instruction DUMP: 96220009  8e2aa00f  940aa00f <da5a6000> c25a6008
8ea1e010  da72400b  92026008  c272400b 
Kernel panic - not syncing: Attempted to kill the idle task!
 <0>Press Stop-A (L1-A) to return to the boot prom



^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (8 preceding siblings ...)
  2007-01-27  4:28 ` Tom 'spot' Callaway
@ 2007-01-27 10:19 ` Tõnu Samuel
  2007-01-27 11:17 ` Jan Engelhardt
                   ` (14 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Tõnu Samuel @ 2007-01-27 10:19 UTC (permalink / raw)
  To: sparclinux

On Fri, 2007-01-26 at 18:10 -0800, David Miller wrote:


> Adding proper support for the e10K console would be a nice
> easy sparc64 kernel project for someone who wants to get
> involved and has access to such a machine.

I am ready to provide access to any kernel developer or other who uses
it for something useful.

  Tõnu


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (9 preceding siblings ...)
  2007-01-27 10:19 ` Tõnu Samuel
@ 2007-01-27 11:17 ` Jan Engelhardt
  2007-01-27 15:37 ` Tom 'spot' Callaway
                   ` (13 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Jan Engelhardt @ 2007-01-27 11:17 UTC (permalink / raw)
  To: sparclinux


>Looking at init/main.c:
>
>if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
>   printk(KERN_WARNING "Warning: unable to open an initial console.\n");

That looks almost like a bug :-/
"/dev/console" will decay into a pointer to kernel space, but
sys_open takes a userspace one. The __user annotation does not
change that. Try adding this:

>... so, if root is mounted (over nfs), and root is mounted rw,
>and /dev/console exists on the nfsroot, and it has rw permissions (I
>gave it chmod 777 to just be sure), why would that sys_open call fail
>and trigger that printk?

int ret = sys_open((const char __user *)"/dev/console", O_RDWR, 0);
if(ret < 0)
  printk(KERN_WARNING "Warning: unable to open an "
         "initial console (%d)\n", ret);

I wonder what return code it will give (-EFAULT is my guess).


	-`J'
-- 

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (10 preceding siblings ...)
  2007-01-27 11:17 ` Jan Engelhardt
@ 2007-01-27 15:37 ` Tom 'spot' Callaway
  2007-01-27 16:05 ` Jan Engelhardt
                   ` (12 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Tom 'spot' Callaway @ 2007-01-27 15:37 UTC (permalink / raw)
  To: sparclinux

On Sat, 2007-01-27 at 12:17 +0100, Jan Engelhardt wrote:
> >Looking at init/main.c:
> >
> >if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
> >   printk(KERN_WARNING "Warning: unable to open an initial console.\n");
> 
> That looks almost like a bug :-/
> "/dev/console" will decay into a pointer to kernel space, but
> sys_open takes a userspace one. The __user annotation does not
> change that. Try adding this:
> 
> >... so, if root is mounted (over nfs), and root is mounted rw,
> >and /dev/console exists on the nfsroot, and it has rw permissions (I
> >gave it chmod 777 to just be sure), why would that sys_open call fail
> >and trigger that printk?
> 
> int ret = sys_open((const char __user *)"/dev/console", O_RDWR, 0);
> if(ret < 0)
>   printk(KERN_WARNING "Warning: unable to open an "
>          "initial console (%d)\n", ret);
> 
> I wonder what return code it will give (-EFAULT is my guess).

Warning: unable to open an initial console (-2)

-ENOENT ?

/dev/console is definitely inside the nfsroot that I'm mounting...

bash-3.1# ls -l /dev/console 
crwxrwxrwx 1 root tty 5, 1 Jan 25 11:33 /dev/console

~spot


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (11 preceding siblings ...)
  2007-01-27 15:37 ` Tom 'spot' Callaway
@ 2007-01-27 16:05 ` Jan Engelhardt
  2007-01-27 16:31 ` Tom 'spot' Callaway
                   ` (11 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Jan Engelhardt @ 2007-01-27 16:05 UTC (permalink / raw)
  To: sparclinux


On Jan 27 2007 09:37, Tom 'spot' Callaway wrote:
>> 
>> int ret = sys_open((const char __user *)"/dev/console", O_RDWR, 0);
>> if(ret < 0)
>>   printk(KERN_WARNING "Warning: unable to open an "
>>          "initial console (%d)\n", ret);
>> 
>> I wonder what return code it will give (-EFAULT is my guess).
>
>Warning: unable to open an initial console (-2)
>
>-ENOENT ?
>
>/dev/console is definitely inside the nfsroot that I'm mounting...


In case you are using initramfs/initrd, make it available there too.



	-`J'
-- 

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (12 preceding siblings ...)
  2007-01-27 16:05 ` Jan Engelhardt
@ 2007-01-27 16:31 ` Tom 'spot' Callaway
  2007-01-27 16:53 ` Jan Engelhardt
                   ` (10 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Tom 'spot' Callaway @ 2007-01-27 16:31 UTC (permalink / raw)
  To: sparclinux

On Sat, 2007-01-27 at 17:05 +0100, Jan Engelhardt wrote:
> On Jan 27 2007 09:37, Tom 'spot' Callaway wrote:
> >> 
> >> int ret = sys_open((const char __user *)"/dev/console", O_RDWR, 0);
> >> if(ret < 0)
> >>   printk(KERN_WARNING "Warning: unable to open an "
> >>          "initial console (%d)\n", ret);
> >> 
> >> I wonder what return code it will give (-EFAULT is my guess).
> >
> >Warning: unable to open an initial console (-2)
> >
> >-ENOENT ?
> >
> >/dev/console is definitely inside the nfsroot that I'm mounting...
> 
> 
> In case you are using initramfs/initrd, make it available there too.

I'm not. Everything is compiled in. I'm running make image, then
elftoaout arch/sparc64/boot/image, and booting the a.out kernel over
tftp.

~spot


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (13 preceding siblings ...)
  2007-01-27 16:31 ` Tom 'spot' Callaway
@ 2007-01-27 16:53 ` Jan Engelhardt
  2007-01-28  2:38 ` David Miller
                   ` (9 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Jan Engelhardt @ 2007-01-27 16:53 UTC (permalink / raw)
  To: sparclinux


>On Sat, 2007-01-27 at 17:05 +0100, Jan Engelhardt wrote:
>> On Jan 27 2007 09:37, Tom 'spot' Callaway wrote:
>> >> 
>> >> int ret = sys_open((const char __user *)"/dev/console", O_RDWR, 0);
>> >> if(ret < 0)
>> >>   printk(KERN_WARNING "Warning: unable to open an "
>> >>          "initial console (%d)\n", ret);
>> >> 
>> >> I wonder what return code it will give (-EFAULT is my guess).
>> >
>> >Warning: unable to open an initial console (-2)
>> >-ENOENT ?
>> >/dev/console is definitely inside the nfsroot that I'm mounting...
>> 
>> In case you are using initramfs/initrd, make it available there too.
>
>I'm not. Everything is compiled in. I'm running make image, then
>elftoaout arch/sparc64/boot/image, and booting the a.out kernel over
>tftp.

Please try adding this before sys_open...

  /* this sys_open never succeeds, hence sys_close is not needed */
  ret = sys_open((const char __user *)"/dev", O_RDWR, 0);
  printk(KERN_WARNING "Unable to open /dev (%d)\n", ret);

And tell us the error code.

  * either it's EISDIR
  * or ENOENT

in either case, more digging is needed, and if it means writing a namespace
walker [ls -Rl] ;-)


	-`J'
-- 

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (14 preceding siblings ...)
  2007-01-27 16:53 ` Jan Engelhardt
@ 2007-01-28  2:38 ` David Miller
  2007-01-28 12:26 ` Jan Engelhardt
                   ` (8 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: David Miller @ 2007-01-28  2:38 UTC (permalink / raw)
  To: sparclinux

From: Jan Engelhardt <jengelh@linux01.gwdg.de>
Date: Sat, 27 Jan 2007 12:17:53 +0100 (MET)

> 
> >Looking at init/main.c:
> >
> >if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0)
> >   printk(KERN_WARNING "Warning: unable to open an initial console.\n");
> 
> That looks almost like a bug :-/
> "/dev/console" will decay into a pointer to kernel space, but
> sys_open takes a userspace one. The __user annotation does not
> change that. Try adding this:
> 
> >... so, if root is mounted (over nfs), and root is mounted rw,
> >and /dev/console exists on the nfsroot, and it has rw permissions (I
> >gave it chmod 777 to just be sure), why would that sys_open call fail
> >and trigger that printk?
> 
> int ret = sys_open((const char __user *)"/dev/console", O_RDWR, 0);
> if(ret < 0)
>   printk(KERN_WARNING "Warning: unable to open an "
>          "initial console (%d)\n", ret);
> 
> I wonder what return code it will give (-EFAULT is my guess).

It's not getting -EFAULT, the init task runs with set_fs(KERNEL_DS).

It's getting -ENOENT because no console device has registered
itself, and therefore even if you have a /dev/console node in
the filesystem the open will still fail.

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (15 preceding siblings ...)
  2007-01-28  2:38 ` David Miller
@ 2007-01-28 12:26 ` Jan Engelhardt
  2007-01-29 15:08 ` Meelis Roos
                   ` (7 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Jan Engelhardt @ 2007-01-28 12:26 UTC (permalink / raw)
  To: sparclinux


On Jan 27 2007 18:38, David Miller wrote:
>> 
>> int ret = sys_open((const char __user *)"/dev/console", O_RDWR, 0);
>> if(ret < 0)
>>   printk(KERN_WARNING "Warning: unable to open an "
>>          "initial console (%d)\n", ret);
>> 
>> I wonder what return code it will give (-EFAULT is my guess).
>
>It's not getting -EFAULT, the init task runs with set_fs(KERNEL_DS).

Ok.

>It's getting -ENOENT because no console device has registered
>itself, and therefore even if you have a /dev/console node in
>the filesystem the open will still fail.

Hm that is a little bit misleading. I'd like to see the regular -ENXIO as
happens with "all" the other block/character devices in /dev that don't have
anything associated (well, at least bcak in the days where /dev was static)


	-`J'
-- 

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (16 preceding siblings ...)
  2007-01-28 12:26 ` Jan Engelhardt
@ 2007-01-29 15:08 ` Meelis Roos
  2007-01-29 16:39 ` David Miller
                   ` (6 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Meelis Roos @ 2007-01-29 15:08 UTC (permalink / raw)
  To: sparclinux

> Adding proper support for the e10K console would be a nice
> easy sparc64 kernel project for someone who wants to get
> involved and has access to such a machine.

Are the any specs available, or is it just reverse engineering?

> Don't bother with netconsole support.

Orthogonally from real console, this would be a nice-to-have. I have't 
looked what netpoll actually needs - some drivers get away with very 
simple patches. Would it be easy for sunhme too?

-- 
Meelis Roos (mroos@ut.ee)      http://www.cs.ut.ee/~mroos/

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (17 preceding siblings ...)
  2007-01-29 15:08 ` Meelis Roos
@ 2007-01-29 16:39 ` David Miller
  2007-01-29 16:52 ` Tom 'spot' Callaway
                   ` (5 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: David Miller @ 2007-01-29 16:39 UTC (permalink / raw)
  To: sparclinux

From: Meelis Roos <mroos@ut.ee>
Date: Mon, 29 Jan 2007 17:08:06 +0200 (EET)

> > Don't bother with netconsole support.
> 
> Orthogonally from real console, this would be a nice-to-have. I have't 
> looked what netpoll actually needs - some drivers get away with very 
> simple patches. Would it be easy for sunhme too?

Drivers which use NAPI already are the ones that are supported
by easy patches, sunhme does not use NAPI.  That's why netconsole
support would be a bit of work, you'd have to convert it to NAPI
and then you could easily add netconsole.

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (18 preceding siblings ...)
  2007-01-29 16:39 ` David Miller
@ 2007-01-29 16:52 ` Tom 'spot' Callaway
  2007-01-29 17:34 ` David Miller
                   ` (4 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Tom 'spot' Callaway @ 2007-01-29 16:52 UTC (permalink / raw)
  To: sparclinux

On Mon, 2007-01-29 at 17:08 +0200, Meelis Roos wrote:
> > Adding proper support for the e10K console would be a nice
> > easy sparc64 kernel project for someone who wants to get
> > involved and has access to such a machine.
> 
> Are the any specs available, or is it just reverse engineering?

This is the question I'd really like to hear the answer to. I can't find
anything at all, either in the Sun docs or in the Internet tubes.

The prom console seems to work to a point, up until the kernel oopses. I
don't know what more to do to debug that oops, the VM is a bit of a
black box to me.

~spot


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (19 preceding siblings ...)
  2007-01-29 16:52 ` Tom 'spot' Callaway
@ 2007-01-29 17:34 ` David Miller
  2007-01-29 19:45 ` Tom 'spot' Callaway
                   ` (3 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: David Miller @ 2007-01-29 17:34 UTC (permalink / raw)
  To: sparclinux

From: "Tom 'spot' Callaway" <tcallawa@redhat.com>
Date: Mon, 29 Jan 2007 10:52:40 -0600

> This is the question I'd really like to hear the answer to. I can't find
> anything at all, either in the Sun docs or in the Internet tubes.

The starfire boxes have an SRAM area on the bootbus.

This is a shared communication area between the running system and the
SSP.  There is a receive buffer, a send buffer, and a 16-bit count for
each of those 2 buffers.  The receive side is polled, you just wait
for the count to become non-zero and that means console input is
available.

The console output buffer is 1024 bytes, the console input buffer
is 256 bytes.  However, the final 2 bytes of each of those buffers
contains the 16-bit count, so essentially you have 1022 bytes for
console output and 254 bytes for console input.

Another oddity is that the buffers are filled at the tail.  So, for
example if you have 16 characters to output, you copy them to the
final 16-bytes of the buffer area (right before the 2-byte count)
and then you write the count to be 16.

So the memory layout is essentially, offsets in bytes:

0	Console output buffer
1022	Console output buffer count, 16-bit
1024	Console input buffer
1278	Console input buffer count, 16-bit
1280	Control register, 8-bit

So, again, to write a 16-byte console output chunk, you'd
copy to the tail 16-bytes of the output buffer (offsets
1006 to 1021) and then write the 16-bit count of 16 at
offset 1022.

You can't write another console message until the SSP takes
it in, at which point the count will hit zero.  So you'll
have to have some polling scheme for output too, and I guess
a good heuristic would be to wait for a newline character or
some timeout before trying to toss things into this buffer.
But initially you can just write whatever you get.

The control register contains either zero (means nothing to do)
or another value which indicates certain events have occurred,
you poll this when you poll for console input.  The possible
values are:

0	nothing
1	Stop-A break sequence
2	SSP hung up on us and disconnected
3	Console switch to network, stop posting output bytes to SRAM
4	Console switch to SRAM, resume posting output bytes to SRAM
5	Console via network closed

Ignore values 3, 4, and 5 for now, there is a way to redirect console
output over the network with the SSP but we'll not support that yet.

drivers/serial/sunhv.c is probably a good model to start
with.

The physical address to get at the bootbus SRAM area is different on
each cpu.  It is calculated as:

	0x100f8000000 + (hwmid << 33) + 0x10000000000

hwmid is defined as:

	hwmid = ((cpuid & 0x3c) << 1) |
		((cpuid & 0x40) >> 4) |
		(cpuid & 0x3);

and cpuid is of course smp_processor_id().  You can see an existing
use of these calculations in

	arch/sparc64/kernel/starfire.c:starfire_hookup()

You can then use upa_{read,write}{b,w,l,q}() from asm/upa.h to
access this area using the physical addresses.

I don't know if the machine is OK with multiple cpus accessing
the bootbus SRAM area.  If not, it might be necessary to start
up a polling thread, which is the only entity accessing the SRAM
area, and force bind it to a particular CPU.  I don't think it
will be necessary, just something to keep in mind.

Hope this helps.

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (20 preceding siblings ...)
  2007-01-29 17:34 ` David Miller
@ 2007-01-29 19:45 ` Tom 'spot' Callaway
  2007-01-29 20:07 ` David Miller
                   ` (2 subsequent siblings)
  24 siblings, 0 replies; 26+ messages in thread
From: Tom 'spot' Callaway @ 2007-01-29 19:45 UTC (permalink / raw)
  To: sparclinux

On Mon, 2007-01-29 at 09:34 -0800, David Miller wrote:
> Ignore values 3, 4, and 5 for now, there is a way to redirect console
> output over the network with the SSP but we'll not support that yet. 

Maybe I'm confused here, but the only way I've been able to get to the
OpenBoot console has been via netcon_server and netcon through the SSP.

Is there some other way I should be accessing the starfire domains?

~spot


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (21 preceding siblings ...)
  2007-01-29 19:45 ` Tom 'spot' Callaway
@ 2007-01-29 20:07 ` David Miller
  2007-02-21 16:01 ` Peter Jones
  2007-02-22 11:09 ` David Miller
  24 siblings, 0 replies; 26+ messages in thread
From: David Miller @ 2007-01-29 20:07 UTC (permalink / raw)
  To: sparclinux

From: "Tom 'spot' Callaway" <tcallawa@redhat.com>
Date: Mon, 29 Jan 2007 13:45:52 -0600

> On Mon, 2007-01-29 at 09:34 -0800, David Miller wrote:
> > Ignore values 3, 4, and 5 for now, there is a way to redirect console
> > output over the network with the SSP but we'll not support that yet. 
> 
> Maybe I'm confused here, but the only way I've been able to get to the
> OpenBoot console has been via netcon_server and netcon through the SSP.
> 
> Is there some other way I should be accessing the starfire domains?

I'm talking about a network console that bypasses the normal
SSP communications.

Just code up the SRAM bits, it should work.

^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (22 preceding siblings ...)
  2007-01-29 20:07 ` David Miller
@ 2007-02-21 16:01 ` Peter Jones
  2007-02-22 11:09 ` David Miller
  24 siblings, 0 replies; 26+ messages in thread
From: Peter Jones @ 2007-02-21 16:01 UTC (permalink / raw)
  To: sparclinux

(apologies if you get this more than once; apparently I've been having
some email trouble)

On Mon, 2007-01-29 at 09:34 -0800, David Miller wrote:

> Another oddity is that the buffers are filled at the tail.  So, for
> example if you have 16 characters to output, you copy them to the
> final 16-bytes of the buffer area (right before the 2-byte count)
> and then you write the count to be 16.

Is the buffer actually filled backwards, or merely aligned to the tail?

> The control register contains either zero (means nothing to do)
> or another value which indicates certain events have occurred,
> you poll this when you poll for console input.  The possible
> values are:
> 
> 0	nothing
> 1	Stop-A break sequence
> 2	SSP hung up on us and disconnected
> 3	Console switch to network, stop posting output bytes to SRAM
> 4	Console switch to SRAM, resume posting output bytes to SRAM
> 5	Console via network closed
> 
> Ignore values 3, 4, and 5 for now, there is a way to redirect console
> output over the network with the SSP but we'll not support that yet.

Are 3, 4, and 5 messages from the kernel to the SSP?  If so, don't we
want to set 4 (and wait for it to clear?) on port->startup() ?

-- 
  Peter


^ permalink raw reply	[flat|nested] 26+ messages in thread

* Re: Linux on Sun e10k
  2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
                   ` (23 preceding siblings ...)
  2007-02-21 16:01 ` Peter Jones
@ 2007-02-22 11:09 ` David Miller
  24 siblings, 0 replies; 26+ messages in thread
From: David Miller @ 2007-02-22 11:09 UTC (permalink / raw)
  To: sparclinux

From: Peter Jones <pjones@redhat.com>
Date: Wed, 21 Feb 2007 11:01:49 -0500

> (apologies if you get this more than once; apparently I've been having
> some email trouble)
> 
> On Mon, 2007-01-29 at 09:34 -0800, David Miller wrote:
> 
> > Another oddity is that the buffers are filled at the tail.  So, for
> > example if you have 16 characters to output, you copy them to the
> > final 16-bytes of the buffer area (right before the 2-byte count)
> > and then you write the count to be 16.
> 
> Is the buffer actually filled backwards, or merely aligned to the tail?

The first byte of your console output goes SIZE bytes before the
tail, the last byte goes at the tail.

> > The control register contains either zero (means nothing to do)
> > or another value which indicates certain events have occurred,
> > you poll this when you poll for console input.  The possible
> > values are:
> > 
> > 0	nothing
> > 1	Stop-A break sequence
> > 2	SSP hung up on us and disconnected
> > 3	Console switch to network, stop posting output bytes to SRAM
> > 4	Console switch to SRAM, resume posting output bytes to SRAM
> > 5	Console via network closed
> > 
> > Ignore values 3, 4, and 5 for now, there is a way to redirect console
> > output over the network with the SSP but we'll not support that yet.
> 
> Are 3, 4, and 5 messages from the kernel to the SSP?  If so, don't we
> want to set 4 (and wait for it to clear?) on port->startup() ?

I have no idea, sorry.  Probably they are initiated by a daemon
or similar in userspace under Solaris.  I never checked the details.



^ permalink raw reply	[flat|nested] 26+ messages in thread

end of thread, other threads:[~2007-02-22 11:09 UTC | newest]

Thread overview: 26+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2007-01-19 21:20 Linux on Sun e10k Tõnu Samuel
2007-01-21 15:25 ` Meelis Roos
2007-01-26 22:05 ` Tom 'spot' Callaway
2007-01-26 22:15 ` Tom 'spot' Callaway
2007-01-26 23:12 ` Jan Engelhardt
2007-01-26 23:17 ` Tom 'spot' Callaway
2007-01-27  0:39 ` Tom 'spot' Callaway
2007-01-27  2:10 ` David Miller
2007-01-27  3:42 ` Tom 'spot' Callaway
2007-01-27  4:28 ` Tom 'spot' Callaway
2007-01-27 10:19 ` Tõnu Samuel
2007-01-27 11:17 ` Jan Engelhardt
2007-01-27 15:37 ` Tom 'spot' Callaway
2007-01-27 16:05 ` Jan Engelhardt
2007-01-27 16:31 ` Tom 'spot' Callaway
2007-01-27 16:53 ` Jan Engelhardt
2007-01-28  2:38 ` David Miller
2007-01-28 12:26 ` Jan Engelhardt
2007-01-29 15:08 ` Meelis Roos
2007-01-29 16:39 ` David Miller
2007-01-29 16:52 ` Tom 'spot' Callaway
2007-01-29 17:34 ` David Miller
2007-01-29 19:45 ` Tom 'spot' Callaway
2007-01-29 20:07 ` David Miller
2007-02-21 16:01 ` Peter Jones
2007-02-22 11:09 ` David Miller

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.