Re: Huh?? [PATCH]

Tommy McCabe
2004-07-20T01:58:04Z

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

--- Tommy McCabe <rocketjet314@yahoo.com> wrote:
> What the heck is if ((num = sys_execve("/bin/init",
> args, 18))) supposed to mean? num is an
> uninitialized
> variable which could equal anything.
>

I found out what it means- it's supposed to set num
equal to sys_execve and then evaluate if that
statement is equal to 0. This, for some reason, is
compiled wrong and causes ELKS to hang at "Loading
init" at boot. The patch not only makes the intent
clearer but fixes the error.

>
> __________________________________
> Do you Yahoo!?
> Vote for the stars of Yahoo!'s next ad campaign!
>
http://advision.webevents.yahoo.com/yahoo/votelifeengine/
>
> -
> To unsubscribe from this list: send the line
> "unsubscribe linux-8086" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at
> http://vger.kernel.org/majordomo-info.html
>

__________________________________
Do you Yahoo!?
Vote for the stars of Yahoo!'s next ad campaign!
http://advision.webevents.yahoo.com/yahoo/votelifeengine/

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: init.diff --]
[-- Type: text/x-diff; name="init.diff", Size: 409 bytes --]

--- ./elkscomp/elks/init/main.c 2004-05-31 09:49:25.000000000 -0400
+++ ./elkscurr/elks/init/main.c 2004-07-19 21:44:20.000000000 -0400
@@ -98,8 +98,11 @@
mount_root();

printk("Loading init\n");
-
- if ((num = sys_execve("/bin/init", args, 18))) {
+
+ num = sys_execve("/bin/init", args, 18);
+
+ if (num != 0)
+ {

printk("sys_execve(\"/bin/init\",args,18) => %d.\n",num);