[uClinux-dev] kernel 2.6

2007-03-20 Thread Muthu, Pushparaj IN GGN SISL
Hi Sir

I wanted to compile kernel 2.6 verion on the samsung snds 100  board .  Could 
any one  send me tool chain link ?

Regards
Pushparaj.M
___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev


Re: [uClinux-dev] kernel 2.6

2007-03-20 Thread munirupa chandra

if u get the tool chain  plz send to me also


"Muthu, Pushparaj IN GGN SISL" <[EMAIL PROTECTED]> wrote: Hi Sir

I wanted to compile kernel 2.6 verion on the samsung snds 100  board .  Could 
any one  send me tool chain link ?

Regards
Pushparaj.M
___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev



I Love To Walk In Rain, Because Nobody Can See Me Crying... 
from 
P.munirupa chandra. 
M.tech in VLSI.

-
 Here’s a new way to find what you're looking for - Yahoo! Answers ___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

[uClinux-dev] BUG: scheduling while atomic

2007-03-20 Thread Arnon Meydav

Hi,
I am running snapgear-3.4.0 with a preemptive 2.6 kernel, on a
montejade-like board (IXP425 CPU).
I get the following error message when I run some apps that access the
ethernet device, e.g. ifconfig:
 
BUG: scheduling while atomic: ifconfig/0x0001/802
[] (dump_stack+0x0/0x14) from []
(schedule+0x60/0x6b8)
[] (schedule+0x0/0x6b8) from []
(schedule_timeout+0x8c/0xbc)
[] (schedule_timeout+0x0/0xbc) from []
(ixOsalMutexLock+0x190/0x1b4 [ixp400])
 r8 = C0E07E0C  r7 = C021D740  r6 = A7C2  r5 = C0E06000
 r4 = BF0344B8
[] (ixOsalMutexLock+0x0/0x1b4 [ixp400]) from []
(ixEthAccMibIIStatsGetClear+0x1)
 r7 = 00E07E0C  r6 = 0520  r5 = BF0344C0  r4 = 
[] (ixEthAccMibIIStatsGetClear+0x0/0x164 [ixp400]) from
[] (0xbf09da28)
[] (0xbf09d9d0) from [] (dev_seq_show+0x4c/0x134)
 r6 = C1BAFB60  r5 = C1BAFB60  r4 = C08E4000
[] (dev_seq_show+0x0/0x134) from []
(seq_read+0x26c/0x3a4)
 r5 = 007B  r4 = C08E4000
[] (seq_read+0x0/0x3a4) from []
(vfs_read+0xc4/0x17c)
[] (vfs_read+0x0/0x17c) from [] (sys_read+0x4c/0x74)
 r8 = 0100  r7 =   r6 = C0E07F78  r5 = C02EF580
 r4 = C02EF5A0
[] (sys_read+0x0/0x74) from []
(ret_fast_syscall+0x0/0x2c)
 r8 = C001DF84  r7 = 0003  r6 = BE9CFB28  r5 = 
 r4 = 0001A008
 
Is this a know issue? Is it OK or a real bug that needs sorting out?
(I don't have any experience with the preemptive patch - we've been
using kernel 2.4 till now)
 
 
Thanks, 
 - Arnon


-- Disclaimer: --
This e-mail is intended solely for the person to whom it is addressed and may 
contain confidential or legally privileged information. Access to this e-mail 
by anyone else is unauthorized. If an addressing or transmission error has 
misdirected this e-mail, please notify the author by replying to this e-mail 
and destroy this e-mail and any attachments. 
E-mail may be susceptible to data corruption, interception, unauthorized 
amendment, viruses and delays or the consequences thereof. If you are not the 
intended recipient, be advised that you have received this email in error and 
that any use, dissemination, forwarding, printing or copying of this email is 
strictly prohibited.___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Re: [uClinux-dev] BUG: scheduling while atomic

2007-03-20 Thread Sven Johnsson

Aron,

It seems like you are accessing ifconfig from an atomic context such as an
interrupt service routine, a kernel timer handler or some code which is not
allowed to sleep. Ifconfig probably uses sleep or some other scheduling,
which is not allowed to run in an atomic context.
One workaround is to execute a work queue in the atomic context, because
tasks in a work queue are allowed to do scheduling.
You can find lots of information in the book "Linux Device drivers" by
Rubini.

Hope this helps.

Regards,
Sven

2007/3/20, Arnon Meydav <[EMAIL PROTECTED]>:


 Hi,
I am running snapgear-3.4.0 with a preemptive 2.6 kernel, on a
montejade-like board (IXP425 CPU).
I get the following error message when I run some apps that access the
ethernet device, e.g. ifconfig:

BUG: scheduling while atomic: ifconfig/0x0001/802
[] (dump_stack+0x0/0x14) from [] (schedule+0x60/0x6b8)
[] (schedule+0x0/0x6b8) from []
(schedule_timeout+0x8c/0xbc)
[] (schedule_timeout+0x0/0xbc) from []
(ixOsalMutexLock+0x190/0x1b4 [ixp400])
 r8 = C0E07E0C  r7 = C021D740  r6 = A7C2  r5 = C0E06000
 r4 = BF0344B8
[] (ixOsalMutexLock+0x0/0x1b4 [ixp400]) from []
(ixEthAccMibIIStatsGetClear+0x1)
 r7 = 00E07E0C  r6 = 0520  r5 = BF0344C0  r4 = 
[] (ixEthAccMibIIStatsGetClear+0x0/0x164 [ixp400]) from
[] (0xbf09da28)
[] (0xbf09d9d0) from [] (dev_seq_show+0x4c/0x134)
 r6 = C1BAFB60  r5 = C1BAFB60  r4 = C08E4000
[] (dev_seq_show+0x0/0x134) from []
(seq_read+0x26c/0x3a4)
 r5 = 007B  r4 = C08E4000
[] (seq_read+0x0/0x3a4) from [] (vfs_read+0xc4/0x17c)
[] (vfs_read+0x0/0x17c) from [] (sys_read+0x4c/0x74)
 r8 = 0100  r7 =   r6 = C0E07F78  r5 = C02EF580
 r4 = C02EF5A0
[] (sys_read+0x0/0x74) from []
(ret_fast_syscall+0x0/0x2c)
 r8 = C001DF84  r7 = 0003  r6 = BE9CFB28  r5 = 
 r4 = 0001A008

Is this a know issue? Is it OK or a real bug that needs sorting out?
(I don't have any experience with the preemptive patch - we've been using
kernel 2.4 till now)


Thanks,
 - Arnon
-- Disclaimer: --
This e-mail is intended solely for the person to whom it is addressed and
may contain confidential or legally privileged information. Access to this
e-mail by anyone else is unauthorized. If an addressing or transmission
error has misdirected this e-mail, please notify the author by replying to
this e-mail and destroy this e-mail and any attachments.
E-mail may be susceptible to data corruption, interception, unauthorized
amendment, viruses and delays or the consequences thereof. If you are not
the intended recipient, be advised that you have received this email in
error and that any use, dissemination, forwarding, printing or copying of
this email is strictly prohibited.

___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

[uClinux-dev] How to start uClinux with a simple bootloader?

2007-03-20 Thread Shuanglin Wang

Hi, All,

I'm porting uClinux to our board based on ARM946E-S. Now, I generated an 
uncompressed uClinux kernel image and romfs (txt+data+romfs) with 
command like:

cat image.txt image.data romfs > image.bin

And objdumping results like:

===
>arm-elf-objdump -h linux-2.6.x/linux

linux-2.6.x/linux: file format elf32-littlearm

Sections:
Idx Name  Size  VMA   LMA   File off  Algn
 0 .init c000  8000  8000  8000  2**5
 CONTENTS, ALLOC, LOAD, CODE
 1 .text 000a5384  00014000  00014000  00014000  2**5
 CONTENTS, ALLOC, LOAD, READONLY, CODE
 2 .pci_fixup  000ba000  000ba000  000d7500  2**0
 CONTENTS
 3 .rio_route  000ba000  000ba000  000d7500  2**0
 CONTENTS
 4 __ksymtab   000ba000  000ba000  000d7500  2**0
 CONTENTS
 5 __ksymtab_gpl   000ba000  000ba000  000d7500  2**0
 CONTENTS
 6 __ksymtab_unused   000ba000  000ba000  000d7500  2**0
 CONTENTS
 7 __ksymtab_unused_gpl   000ba000  000ba000  000d7500  2**0
 CONTENTS
 8 __ksymtab_gpl_future   000ba000  000ba000  000d7500  2**0
 CONTENTS
 9 __kcrctab   000ba000  000ba000  000d7500  2**0
 CONTENTS
10 __kcrctab_gpl   000ba000  000ba000  000d7500  2**0
 CONTENTS
11 __kcrctab_unused   000ba000  000ba000  000d7500  2**0
 CONTENTS
12 __kcrctab_unused_gpl   000ba000  000ba000  000d7500  2**0
 CONTENTS
13 __kcrctab_gpl_future   000ba000  000ba000  000d7500  2**0
 CONTENTS
14 __param   0050  000ba000  000ba000  000ba000  2**2
 CONTENTS, ALLOC, LOAD, READONLY, DATA
15 .data 0001b500  000bc000  000bc000  000bc000  2**5
 CONTENTS, ALLOC, LOAD, DATA
16 .bss  a2a0  000d7500  000d7500  000d7500  2**5
 ALLOC
17 .comment  10f2      000d7500  2**0
 CONTENTS, READONLY


Instead of a standard Linux bootloader. Our board has a simple 
bootloader, which can


1. Copy image to some place in main memory;
2. Transfer the control to kernel.

My questions are:
  Where should I put the uClinux kernel at 0x8000 in the main memory?
  Do I need to make some changes on our bootloader for booting uClinux?

Thanks a lot.

WSL



___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev


Re: [uClinux-dev] Using page_alloc2() yields high kswapd runtime.

2007-03-20 Thread David Spain

Telis,

I know I replied earlier saying this patch didn't help much, but that was
because I misapplied it. Correcting my original bug does fix this problem
for me! Thanks so much for the patch. I realize there is a trade-off involved
here, but our application is now very careful about how it uses memory, I don't
think we need such an aggressive use of kswapd.

Question for the developers: Why is the #ifndef conditional there at all?
Wouldn't you want to release the processor back to the scheduler when there
are no try_to_free_pages_zones?

Dave

Aristotelis Iordanidis wrote:

Hello, all.
I'm sending again a post I made about a year ago regarding a possible 
solution to the high CPU load caused by page_alloc2.c:

Regards,

   Telis

We've run into the same problem, working with an armnommu platform.
We tracked down the root of the high cpu load to the function 
kswapd_balance_pgdat() in linux-2.4.x/mmnommu/vmscan.c.
The problem occurs only when using the non-power-of-2 memory allocator 
(i.e. CONFIG_CONTIGUOUS_PAGE_ALLOC is defined).

Anyway, all this seems to be caused by the following piece of code:

#ifndef CONFIG_CONTIGUOUS_PAGE_ALLOC /* we always want the memory now !! */
   __set_current_state(TASK_INTERRUPTIBLE);
   schedule_timeout(HZ*5);
#endif

As a workaround, we changed it as shown below, for our architecture 
(e.g. CONFIG_ARCH_MINE):


static int kswapd_balance_pgdat(pg_data_t * pgdat)
{
   int need_more_balance = 0, i;
   zone_t * zone;  for (i = pgdat->nr_zones-1; i 
 >= 0; i--) {

   zone = pgdat->node_zones + i;
   if (unlikely(current->need_resched))
   schedule();
   if (!zone->need_balance || !zone->size)
   continue;
   if (!try_to_free_pages_zone(zone, GFP_KSWAPD)) {
   zone->need_balance = 0;
#ifdef CONFIG_ARCH_MINE
   __set_current_state(TASK_INTERRUPTIBLE);
   schedule_timeout(HZ/10);
#else  #ifndef CONFIG_CONTIGUOUS_PAGE_ALLOC /* we always want the memory 
now !! */

   __set_current_state(TASK_INTERRUPTIBLE);
   schedule_timeout(HZ*5);
#endif
#endif  /* CONFIG_ARCH_MINE */
   continue;
   }
   if (check_classzone_need_balance(zone))
   need_more_balance = 1;
   else
   zone->need_balance = 0;
   }

   return need_more_balance;
}

As I understand it, the downside of this change is that it makes kswapd 
less "sensitive" to handling a low memory situation.
The interval passed to schedule_timeout() above (HZ/10) showed to be the 
best choice for our 80MHz ARM (larger intervals didn't make much 
difference), but you might want to experiment for your platform.

I hope this helps,

   Telis


___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev



--
David Spain
SiCortex, Inc.
Three Clock Tower Place, Suite 210
Maynard, MA USA 01754  Email: [EMAIL PROTECTED]
___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev


[uClinux-dev] S3C44B0 with uClinux 2.6.17-uc1

2007-03-20 Thread Du Thomas

I port uClinux 2.6.17-uc1 to S3C44B0X[NOMMU, NOFP] for a long times, tools
chain downloaded arm-elf-tools-20040427.sh from
http://opensrc.sec.samsung.com/  (arm-elf-gcc 3.4.0), the uClinux just can
execute to the

linux-2.6.x/init/main.c's

run_init_process("/sbin/init");

there are some problems when run to linux-2.6.x/arch/arm/kernel/Sys_arm.c's
function: execve

=
long execve(const char *filename, char **argv, char **envp)
{
struct pt_regs regs;
int ret;

memset(®s, 0, sizeof(struct pt_regs));
ret = do_execve((char *)filename, (char __user * __user *)argv,
  (char __user * __user *)envp, ®s);
if (ret < 0)
 goto out;

/*
 * Save argc to the register structure for userspace.
 */
regs.ARM_r0 = ret;
/*
 * We were successful.  We won't be returning to our caller, but
 * instead to user space by manipulating the kernel stack.
 */

//--- hell begin 
asm( "add r0, %0, %1\n\t"
 "mov r1, %2\n\t"
 "mov r2, %3\n\t"
 "bl memmove\n\t" /* copy regs to top of stack */
 "mov r8, #0\n\t" /* not a syscall */
 "mov r9, %0\n\t" /* thread structure */
 "mov sp, r0\n\t" /* reposition stack pointer */
 "b ret_to_user"
 :
 : "r" (current_thread_info()),
   "Ir" (THREAD_START_SP - sizeof(regs)),
   "r" (®s),
   "Ir" (sizeof(regs))
 : "r0", "r1", "r2", "r3", "ip", "lr", "memory");
out:
return ret;
}
==

I trace to:
b ret_to_user
and pass a lots, there be:
swi 0x900036

what's the hell?

uClinux like fall into a death cycle, it make me crazy!
Is there anybody have some idea?

THX !
___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

Re: [uClinux-dev] BUG: scheduling while atomic

2007-03-20 Thread Greg Ungerer

Hi Arnon,

Arnon Meydav wrote:
I am running snapgear-3.4.0 with a preemptive 2.6 kernel, on a 
montejade-like board (IXP425 CPU).
I get the following error message when I run some apps that access the 
ethernet device, e.g. ifconfig:


What version of the AccessLibrary are you using?

Regards
Greg





BUG: scheduling while atomic: ifconfig/0x0001/802
[] (dump_stack+0x0/0x14) from [] (schedule+0x60/0x6b8)
[] (schedule+0x0/0x6b8) from [] 
(schedule_timeout+0x8c/0xbc)
[] (schedule_timeout+0x0/0xbc) from [] 
(ixOsalMutexLock+0x190/0x1b4 [ixp400])

 r8 = C0E07E0C  r7 = C021D740  r6 = A7C2  r5 = C0E06000
 r4 = BF0344B8
[] (ixOsalMutexLock+0x0/0x1b4 [ixp400]) from [] 
(ixEthAccMibIIStatsGetClear+0x1)

 r7 = 00E07E0C  r6 = 0520  r5 = BF0344C0  r4 = 
[] (ixEthAccMibIIStatsGetClear+0x0/0x164 [ixp400]) from 
[] (0xbf09da28)

[] (0xbf09d9d0) from [] (dev_seq_show+0x4c/0x134)
 r6 = C1BAFB60  r5 = C1BAFB60  r4 = C08E4000
[] (dev_seq_show+0x0/0x134) from [] 
(seq_read+0x26c/0x3a4)

 r5 = 007B  r4 = C08E4000
[] (seq_read+0x0/0x3a4) from [] (vfs_read+0xc4/0x17c)
[] (vfs_read+0x0/0x17c) from [] (sys_read+0x4c/0x74)
 r8 = 0100  r7 =   r6 = C0E07F78  r5 = C02EF580
 r4 = C02EF5A0
[] (sys_read+0x0/0x74) from [] 
(ret_fast_syscall+0x0/0x2c)

 r8 = C001DF84  r7 = 0003  r6 = BE9CFB28  r5 = 
 r4 = 0001A008
 
Is this a know issue? Is it OK or a real bug that needs sorting out?
(I don't have any experience with the preemptive patch - we've been 
using kernel 2.4 till now)
 
 
Thanks,

 - Arnon
-- Disclaimer: --
This e-mail is intended solely for the person to whom it is addressed 
and may contain confidential or legally privileged information. Access 
to this e-mail by anyone else is unauthorized. If an addressing or 
transmission error has misdirected this e-mail, please notify the author 
by replying to this e-mail and destroy this e-mail and any attachments.
E-mail may be susceptible to data corruption, interception, unauthorized 
amendment, viruses and delays or the consequences thereof. If you are 
not the intended recipient, be advised that you have received this email 
in error and that any use, dissemination, forwarding, printing or 
copying of this email is strictly prohibited.





___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev


--

Greg Ungerer  --  Chief Software Dude   EMAIL: [EMAIL PROTECTED]
Secure Computing CorporationPHONE:   +61 7 3435 2888
825 Stanley St, FAX: +61 7 3891 3630
Woolloongabba, QLD, 4102, Australia WEB: http://www.SnapGear.com
___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev


[uClinux-dev] Re: S3C44B0 with uClinux 2.6.17-uc1

2007-03-20 Thread Du Thomas

The output message:
Linux version 2.6.17-uc1[DT0.8] ([EMAIL PROTECTED]) (gcc version
3.4.0) #556 PREEMPT Thu Feb 15 05:23:31 CST 2007
CPU: Samsung-S3C44B0x [44b07700]
Machine: S3C44B0X Development Board
CPU0: D VIVT write-through cache
CPU0: cache: 512 bytes, associativity 1, 8 byte lines, 64 sets
Built 1 zonelists
Kernel command line: root=/dev/ram0 initrd=0x0c30,800k keepinitrd
PID hash table entries: 64 (order: 6, 256 bytes)
Dentry cache hash table entries: 1024 (order: 0, 4096 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Memory: 8MB = 8MB total
Memory: 6448KB available (652K code, 140K data, 60K init)
Mount-cache hash table entries: 512
checking if image is initramfs...it isn't (bad gzip magic numbers);
looks like an initrd, initrd_start=0xc30, initrd_size=819200
ttyS0 at I/O 0x1d0 (irq = 3) is a Samsung S3C44B0 Internal UART
ttyS1 at I/O 0x1d04000 (irq = 2) is a Samsung S3C44B0 Internal UART
NetWinder Floating Point Emulator V0.97 (double precision)
io scheduler noop registered
io scheduler deadline registered (default)
io scheduler cfq registered
RAMDISK driver initialized: 2 RAM disks of 800K size 1024 blocksize
loop: loaded (max 8 devices)
RAMDISK: romfs filesystem found at block 0
RAMDISK: Loading 137KiB [1 disk] into ram disk... done.
VFS: Mounted root (romfs filesystem) readonly.
Freeing init memory: 60K
console init ready.
Star run init process!
do_execve(...) @ fs/exec.c:01222 exec /sbin/init successfully !
.
execve(...) @ arch/arm/kernel/sys_arm.c:00312 execve asm BEGIN
.



2007/3/21, Du Thomas <[EMAIL PROTECTED]>:


I port uClinux 2.6.17-uc1 to S3C44B0X[NOMMU, NOFP] for a long times, tools
chain downloaded arm-elf-tools-20040427.sh from
http://opensrc.sec.samsung.com/  
(arm-elf-gcc
3.4.0 ), the uClinux just can execute to the

linux-2.6.x/init/main.c's

run_init_process("/sbin/init");

 there are some problems when run to linux-2.6.x/arch/arm/kernel/Sys_arm.c's
function: execve

=
long execve(const char *filename, char **argv, char **envp)
{
 struct pt_regs regs;
 int ret;

 memset(®s, 0, sizeof(struct pt_regs));
 ret = do_execve((char *)filename, (char __user * __user *)argv,
   (char __user * __user *)envp, ®s);
 if (ret < 0)
  goto out;

 /*
  * Save argc to the register structure for userspace.
  */
 regs.ARM_r0 = ret;
 /*
  * We were successful.  We won't be returning to our caller, but
  * instead to user space by manipulating the kernel stack.
  */

//--- hell begin 
 asm( "add r0, %0, %1\n\t"
  "mov r1, %2\n\t"
  "mov r2, %3\n\t"
  "bl memmove\n\t" /* copy regs to top of stack */
  "mov r8, #0\n\t" /* not a syscall */
  "mov r9, %0\n\t" /* thread structure */
  "mov sp, r0\n\t" /* reposition stack pointer */
  "b ret_to_user"
  :
  : "r" (current_thread_info()),
"Ir" (THREAD_START_SP - sizeof(regs)),
"r" (®s),
"Ir" (sizeof(regs))
  : "r0", "r1", "r2", "r3", "ip", "lr", "memory");
 out:
 return ret;
}
==

I trace to:
 b ret_to_user
and pass a lots, there be:
 swi 0x900036

what's the hell?

uClinux like fall into a death cycle, it make me crazy!
Is there anybody have some idea?

THX !


___
uClinux-dev mailing list
uClinux-dev@uclinux.org
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by uclinux-dev@uclinux.org
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev

[uClinux-dev] Re: S3C44B0 with uClinux 2.6.17-uc1

2007-03-20 Thread Du Thomas

Trace info:

0c284784 [0xeaf8]   b0xc28476c  ; (platform_notify + 0x1a56ac)
0c284788 [0xeaf0]   b0xc284750  ; (platform_notify + 0x1a5690)
0c28478c [0xe1a0c00d]   mov  r12,r13
0c284790 [0xe92dd810]   stmfdr13!,{r4,r11,r12,r14,pc}
0c284794 [0xe24cb004]   sub  r11,r12,#4

0c284798 [0xef900036]   swi  0x900036 <- point

0c28479c [0xe3700a01]   cmn  r0,#0x1000
0c2847a0 [0xe1a04000]   mov  r4,r0
0c2847a4 [0x8a01]   bhi  0xc2847b0  ; (platform_notify + 0x1a56f0)
0c2847a8 [0xe1a4]   mov  r0,r4
0c2847ac [0xe89da810]   ldmiar13,{r4,r11,r13,pc}
0c2847b0 [0xebfff953]   bl   0xc282d04  ; (platform_notify + 0x1a3c44)


2007/3/21, Du Thomas <[EMAIL PROTECTED]>:


The output message:
Linux version 2.6.17-uc1[DT0.8] ([EMAIL PROTECTED]) (gcc version
3.4.0) #556 PREEMPT Thu Feb 15 05:23:31 CST 2007
CPU: Samsung-S3C44B0x [44b07700]
Machine: S3C44B0X Development Board
CPU0: D VIVT write-through cache
CPU0: cache: 512 bytes, associativity 1, 8 byte lines, 64 sets
Built 1 zonelists
Kernel command line: root=/dev/ram0 initrd=0x0c30,800k keepinitrd
PID hash table entries: 64 (order: 6, 256 bytes)
Dentry cache hash table entries: 1024 (order: 0, 4096 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Memory: 8MB = 8MB total
Memory: 6448KB available (652K code, 140K data, 60K init)
Mount-cache hash table entries: 512
checking if image is initramfs...it isn't (bad gzip magic numbers);
looks like an initrd, initrd_start=0xc30, initrd_size=819200
ttyS0 at I/O 0x1d0 (irq = 3) is a Samsung S3C44B0 Internal UART
ttyS1 at I/O 0x1d04000 (irq = 2) is a Samsung S3C44B0 Internal UART
NetWinder Floating Point Emulator V0.97 (double precision)
io scheduler noop registered
io scheduler deadline registered (default)
io scheduler cfq registered
RAMDISK driver initialized: 2 RAM disks of 800K size 1024 blocksize
loop: loaded (max 8 devices)
RAMDISK: romfs filesystem found at block 0
RAMDISK: Loading 137KiB [1 disk] into ram disk... done.
VFS: Mounted root (romfs filesystem) readonly.
Freeing init memory: 60K
console init ready.
Star run init process!
do_execve(...) @ fs/exec.c:01222 exec /sbin/init successfully !
.
execve(...) @ arch/arm/kernel/sys_arm.c:00312 execve asm BEGIN
.






2007/3/21, Du Thomas <[EMAIL PROTECTED]>:


The output message:
Linux version 2.6.17-uc1[DT0.8] ([EMAIL PROTECTED]) (gcc version
3.4.0) #556 PREEMPT Thu Feb 15 05:23:31 CST 2007
CPU: Samsung-S3C44B0x [44b07700]
Machine: S3C44B0X Development Board
CPU0: D VIVT write-through cache
CPU0: cache: 512 bytes, associativity 1, 8 byte lines, 64 sets
Built 1 zonelists
Kernel command line: root=/dev/ram0 initrd=0x0c30,800k keepinitrd
PID hash table entries: 64 (order: 6, 256 bytes)
Dentry cache hash table entries: 1024 (order: 0, 4096 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Memory: 8MB = 8MB total
Memory: 6448KB available (652K code, 140K data, 60K init)
Mount-cache hash table entries: 512
checking if image is initramfs...it isn't (bad gzip magic numbers);
looks like an initrd, initrd_start=0xc30, initrd_size=819200
ttyS0 at I/O 0x1d0 (irq = 3) is a Samsung S3C44B0 Internal UART
ttyS1 at I/O 0x1d04000 (irq = 2) is a Samsung S3C44B0 Internal UART
NetWinder Floating Point Emulator V0.97 (double precision)
io scheduler noop registered
io scheduler deadline registered (default)
io scheduler cfq registered
RAMDISK driver initialized: 2 RAM disks of 800K size 1024 blocksize
loop: loaded (max 8 devices)
RAMDISK: romfs filesystem found at block 0
RAMDISK: Loading 137KiB [1 disk] into ram disk... done.
VFS: Mounted root (romfs filesystem) readonly.
Freeing init memory: 60K
console init ready.
Star run init process!
do_execve(...) @ fs/exec.c:01222 exec /sbin/init successfully !
.
execve(...) @ arch/arm/kernel/sys_arm.c:00312 execve asm BEGIN
.



2007/3/21, Du Thomas <[EMAIL PROTECTED]>:
>
> I port uClinux 2.6.17-uc1 to S3C44B0X[NOMMU, NOFP] for a long times,
> tools chain downloaded arm-elf-tools-20040427.sh from
> http://opensrc.sec.samsung.com/  
(arm-elf-gcc
> 3.4.0 ), the uClinux just can execute to the
>
> linux-2.6.x/init/main.c's
>
> run_init_process("/sbin/init");
>
>  there are some problems when run to linux-2.6.x/arch/arm/kernel/Sys_arm.c's
> function: execve
>
> =
> long execve(const char *filename, char **argv, char **envp)
> {
>  struct pt_regs regs;
>  int ret;
>
>  memset(®s, 0, sizeof(struct pt_regs));
>  ret = do_execve((char *)filename, (char __user * __user *)argv,
>(char __user * __user *)envp, ®s);
>  if (ret < 0)
>   goto out;
>
>  /*
>   * Save argc to the register structure for userspace.
>   */
>  regs.ARM_r0 = ret;
>  /*
>   * We were successful.  We won't be returning to our caller, but
>   * instead to user space by manipulating the kernel stack.
>   */
>
> //--- hell begin --