public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [patch 1/3] uml: fix compile error from net_device_ops conversion
@ 2009-03-30 18:41 Miklos Szeredi
  2009-03-30 18:42 ` Miklos Szeredi
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Miklos Szeredi @ 2009-03-30 18:41 UTC (permalink / raw)
  To: user-mode-linux-devel; +Cc: jdike, akpm, linux-kernel

From: Miklos Szeredi <mszeredi@suse.cz>

Fix the following compile error:

arch/um/drivers/net_kern.c: In function 'uml_inetaddr_event':
arch/um/drivers/net_kern.c:760: error: 'struct net_device' has no member named 'open'

This was introduced by commit 8bb95b39, "uml: convert network device
to netdevice ops".

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
---
 arch/um/drivers/net_kern.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Index: linux-2.6/arch/um/drivers/net_kern.c
===================================================================
--- linux-2.6.orig/arch/um/drivers/net_kern.c	2009-03-30 17:07:10.000000000 +0200
+++ linux-2.6/arch/um/drivers/net_kern.c	2009-03-30 19:25:30.000000000 +0200
@@ -757,7 +757,7 @@ static int uml_inetaddr_event(struct not
 	void (*proc)(unsigned char *, unsigned char *, void *);
 	unsigned char addr_buf[4], netmask_buf[4];
 
-	if (dev->open != uml_net_open)
+	if (dev->netdev_ops->ndo_open != uml_net_open)
 		return NOTIFY_DONE;
 
 	lp = netdev_priv(dev);

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

* (no subject)
  2009-03-30 18:41 [patch 1/3] uml: fix compile error from net_device_ops conversion Miklos Szeredi
@ 2009-03-30 18:42 ` Miklos Szeredi
  2009-03-30 18:45 ` [patch 3/3] uml: fix warnings in kernel_execve Miklos Szeredi
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 9+ messages in thread
From: Miklos Szeredi @ 2009-03-30 18:42 UTC (permalink / raw)
  To: user-mode-linux-devel; +Cc: jdike, akpm, linux-kernel

BCC: miko
Subject: [patch 2/3] uml: fix link error from prefixing of i386 syscalls with ptregs_
References:  <E1LoMQ2-0007bB-By@pomaz-ex.szeredi.hu>
--text follows this line--
From: Miklos Szeredi <mszeredi@suse.cz>

Fix the following link error:

arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x11c): undefined reference to `ptregs_fork'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x140): undefined reference to `ptregs_execve'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x2cc): undefined reference to `ptregs_iopl'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x2d8): undefined reference to `ptregs_vm86old'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x2f0): undefined reference to `ptregs_sigreturn'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x2f4): undefined reference to `ptregs_clone'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x3ac): undefined reference to `ptregs_vm86'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x3c8): undefined reference to `ptregs_rt_sigreturn'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x3fc): undefined reference to `ptregs_sigaltstack'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x40c): undefined reference to `ptregs_vfork'

This was introduced by commit 253f29a4, "x86: pass in pt_regs pointer
for syscalls that need it"

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
---
 arch/um/sys-i386/sys_call_table.S |   11 +++++++++++
 1 file changed, 11 insertions(+)

Index: linux-2.6/arch/um/sys-i386/sys_call_table.S
===================================================================
--- linux-2.6.orig/arch/um/sys-i386/sys_call_table.S	2009-03-27 10:57:38.000000000 +0100
+++ linux-2.6/arch/um/sys-i386/sys_call_table.S	2009-03-30 19:53:14.000000000 +0200
@@ -9,6 +9,17 @@
 
 #define old_mmap old_mmap_i386
 
+#define ptregs_fork sys_fork
+#define ptregs_execve sys_execve
+#define ptregs_iopl sys_iopl
+#define ptregs_vm86old sys_vm86old
+#define ptregs_sigreturn sys_sigreturn
+#define ptregs_clone sys_clone
+#define ptregs_vm86 sys_vm86
+#define ptregs_rt_sigreturn sys_rt_sigreturn
+#define ptregs_sigaltstack sys_sigaltstack
+#define ptregs_vfork sys_vfork
+
 .section .rodata,"a"
 
 #include "../../x86/kernel/syscall_table_32.S"

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

* [patch 3/3] uml: fix warnings in kernel_execve
  2009-03-30 18:41 [patch 1/3] uml: fix compile error from net_device_ops conversion Miklos Szeredi
  2009-03-30 18:42 ` Miklos Szeredi
@ 2009-03-30 18:45 ` Miklos Szeredi
  2009-04-01 16:11   ` do_execve() needs const qualifiers (was Re: [patch 3/3] uml: fix warnings in kernel_execve) Américo Wang
  2009-03-30 18:47 ` [patch 2/3] uml: fix link error from prefixing of i386 syscalls with ptregs_ Miklos Szeredi
  2009-04-01 15:49 ` [patch 1/3] uml: fix compile error from net_device_ops conversion Américo Wang
  3 siblings, 1 reply; 9+ messages in thread
From: Miklos Szeredi @ 2009-03-30 18:45 UTC (permalink / raw)
  To: user-mode-linux-devel; +Cc: jdike, akpm, linux-kernel

From: Miklos Szeredi <mszeredi@suse.cz>

Fix the following warnings:

arch/um/kernel/syscall.c: In function 'kernel_execve':
arch/um/kernel/syscall.c:130: warning: passing argument 1 of 'um_execve' discards qualifiers from pointer target type
arch/um/kernel/syscall.c:130: warning: passing argument 2 of 'um_execve' discards qualifiers from pointer target type
arch/um/kernel/syscall.c:130: warning: passing argument 3 of 'um_execve' discards qualifiers from pointer target type

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
---
 arch/um/kernel/syscall.c |    3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Index: linux-2.6/arch/um/kernel/syscall.c
===================================================================
--- linux-2.6.orig/arch/um/kernel/syscall.c	2009-03-30 20:25:17.000000000 +0200
+++ linux-2.6/arch/um/kernel/syscall.c	2009-03-30 20:36:20.000000000 +0200
@@ -127,7 +127,8 @@ int kernel_execve(const char *filename,
 
 	fs = get_fs();
 	set_fs(KERNEL_DS);
-	ret = um_execve(filename, argv, envp);
+	ret = um_execve((char *)filename, (char __user *__user *)argv,
+			(char __user *__user *) envp);
 	set_fs(fs);
 
 	return ret;

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

* [patch 2/3] uml: fix link error from prefixing of i386 syscalls with ptregs_
  2009-03-30 18:41 [patch 1/3] uml: fix compile error from net_device_ops conversion Miklos Szeredi
  2009-03-30 18:42 ` Miklos Szeredi
  2009-03-30 18:45 ` [patch 3/3] uml: fix warnings in kernel_execve Miklos Szeredi
@ 2009-03-30 18:47 ` Miklos Szeredi
  2009-04-01 16:03   ` Américo Wang
  2009-04-01 15:49 ` [patch 1/3] uml: fix compile error from net_device_ops conversion Américo Wang
  3 siblings, 1 reply; 9+ messages in thread
From: Miklos Szeredi @ 2009-03-30 18:47 UTC (permalink / raw)
  To: user-mode-linux-devel; +Cc: jdike, akpm, linux-kernel

From: Miklos Szeredi <mszeredi@suse.cz>

Fix the following link error:

arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x11c): undefined reference to `ptregs_fork'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x140): undefined reference to `ptregs_execve'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x2cc): undefined reference to `ptregs_iopl'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x2d8): undefined reference to `ptregs_vm86old'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x2f0): undefined reference to `ptregs_sigreturn'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x2f4): undefined reference to `ptregs_clone'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x3ac): undefined reference to `ptregs_vm86'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x3c8): undefined reference to `ptregs_rt_sigreturn'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x3fc): undefined reference to `ptregs_sigaltstack'
arch/um/sys-i386/built-in.o: In function `sys_call_table':
(.rodata+0x40c): undefined reference to `ptregs_vfork'

This was introduced by commit 253f29a4, "x86: pass in pt_regs pointer
for syscalls that need it"

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
---
 arch/um/sys-i386/sys_call_table.S |   11 +++++++++++
 1 file changed, 11 insertions(+)

Index: linux-2.6/arch/um/sys-i386/sys_call_table.S
===================================================================
--- linux-2.6.orig/arch/um/sys-i386/sys_call_table.S	2009-03-27 10:57:38.000000000 +0100
+++ linux-2.6/arch/um/sys-i386/sys_call_table.S	2009-03-30 19:53:14.000000000 +0200
@@ -9,6 +9,17 @@
 
 #define old_mmap old_mmap_i386
 
+#define ptregs_fork sys_fork
+#define ptregs_execve sys_execve
+#define ptregs_iopl sys_iopl
+#define ptregs_vm86old sys_vm86old
+#define ptregs_sigreturn sys_sigreturn
+#define ptregs_clone sys_clone
+#define ptregs_vm86 sys_vm86
+#define ptregs_rt_sigreturn sys_rt_sigreturn
+#define ptregs_sigaltstack sys_sigaltstack
+#define ptregs_vfork sys_vfork
+
 .section .rodata,"a"
 
 #include "../../x86/kernel/syscall_table_32.S"

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

* Re: [patch 1/3] uml: fix compile error from net_device_ops conversion
  2009-03-30 18:41 [patch 1/3] uml: fix compile error from net_device_ops conversion Miklos Szeredi
                   ` (2 preceding siblings ...)
  2009-03-30 18:47 ` [patch 2/3] uml: fix link error from prefixing of i386 syscalls with ptregs_ Miklos Szeredi
@ 2009-04-01 15:49 ` Américo Wang
  3 siblings, 0 replies; 9+ messages in thread
From: Américo Wang @ 2009-04-01 15:49 UTC (permalink / raw)
  To: Miklos Szeredi; +Cc: user-mode-linux-devel, jdike, akpm, linux-kernel

On Mon, Mar 30, 2009 at 08:41:10PM +0200, Miklos Szeredi wrote:
>From: Miklos Szeredi <mszeredi@suse.cz>
>
>Fix the following compile error:
>
>arch/um/drivers/net_kern.c: In function 'uml_inetaddr_event':
>arch/um/drivers/net_kern.c:760: error: 'struct net_device' has no member named 'open'
>
>This was introduced by commit 8bb95b39, "uml: convert network device
>to netdevice ops".
>
>Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>


Reviewed-by: WANG Cong <xiyou.wangcong@gmail.com>

Thanks.

>---
> arch/um/drivers/net_kern.c |    2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
>Index: linux-2.6/arch/um/drivers/net_kern.c
>===================================================================
>--- linux-2.6.orig/arch/um/drivers/net_kern.c	2009-03-30 17:07:10.000000000 +0200
>+++ linux-2.6/arch/um/drivers/net_kern.c	2009-03-30 19:25:30.000000000 +0200
>@@ -757,7 +757,7 @@ static int uml_inetaddr_event(struct not
> 	void (*proc)(unsigned char *, unsigned char *, void *);
> 	unsigned char addr_buf[4], netmask_buf[4];
> 
>-	if (dev->open != uml_net_open)
>+	if (dev->netdev_ops->ndo_open != uml_net_open)
> 		return NOTIFY_DONE;
> 
> 	lp = netdev_priv(dev);
>--
>To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>the body of a message to majordomo@vger.kernel.org
>More majordomo info at  http://vger.kernel.org/majordomo-info.html
>Please read the FAQ at  http://www.tux.org/lkml/

-- 
Do what you love, f**k the rest! F**k the regulations!
 

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

* Re: [patch 2/3] uml: fix link error from prefixing of i386 syscalls with ptregs_
  2009-03-30 18:47 ` [patch 2/3] uml: fix link error from prefixing of i386 syscalls with ptregs_ Miklos Szeredi
@ 2009-04-01 16:03   ` Américo Wang
  0 siblings, 0 replies; 9+ messages in thread
From: Américo Wang @ 2009-04-01 16:03 UTC (permalink / raw)
  To: Miklos Szeredi; +Cc: user-mode-linux-devel, jdike, akpm, linux-kernel

On Mon, Mar 30, 2009 at 08:47:12PM +0200, Miklos Szeredi wrote:
>From: Miklos Szeredi <mszeredi@suse.cz>
>
>Fix the following link error:
>
>arch/um/sys-i386/built-in.o: In function `sys_call_table':
>(.rodata+0x11c): undefined reference to `ptregs_fork'
>arch/um/sys-i386/built-in.o: In function `sys_call_table':
>(.rodata+0x140): undefined reference to `ptregs_execve'
>arch/um/sys-i386/built-in.o: In function `sys_call_table':
>(.rodata+0x2cc): undefined reference to `ptregs_iopl'
>arch/um/sys-i386/built-in.o: In function `sys_call_table':
>(.rodata+0x2d8): undefined reference to `ptregs_vm86old'
>arch/um/sys-i386/built-in.o: In function `sys_call_table':
>(.rodata+0x2f0): undefined reference to `ptregs_sigreturn'
>arch/um/sys-i386/built-in.o: In function `sys_call_table':
>(.rodata+0x2f4): undefined reference to `ptregs_clone'
>arch/um/sys-i386/built-in.o: In function `sys_call_table':
>(.rodata+0x3ac): undefined reference to `ptregs_vm86'
>arch/um/sys-i386/built-in.o: In function `sys_call_table':
>(.rodata+0x3c8): undefined reference to `ptregs_rt_sigreturn'
>arch/um/sys-i386/built-in.o: In function `sys_call_table':
>(.rodata+0x3fc): undefined reference to `ptregs_sigaltstack'
>arch/um/sys-i386/built-in.o: In function `sys_call_table':
>(.rodata+0x40c): undefined reference to `ptregs_vfork'
>
>This was introduced by commit 253f29a4, "x86: pass in pt_regs pointer
>for syscalls that need it"
>
>Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>

Looks good.

Reviewed-by: WANG Cong <xiyou.wangcong@gmail.com>


>---
> arch/um/sys-i386/sys_call_table.S |   11 +++++++++++
> 1 file changed, 11 insertions(+)
>
>Index: linux-2.6/arch/um/sys-i386/sys_call_table.S
>===================================================================
>--- linux-2.6.orig/arch/um/sys-i386/sys_call_table.S	2009-03-27 10:57:38.000000000 +0100
>+++ linux-2.6/arch/um/sys-i386/sys_call_table.S	2009-03-30 19:53:14.000000000 +0200
>@@ -9,6 +9,17 @@
> 
> #define old_mmap old_mmap_i386
> 
>+#define ptregs_fork sys_fork
>+#define ptregs_execve sys_execve
>+#define ptregs_iopl sys_iopl
>+#define ptregs_vm86old sys_vm86old
>+#define ptregs_sigreturn sys_sigreturn
>+#define ptregs_clone sys_clone
>+#define ptregs_vm86 sys_vm86
>+#define ptregs_rt_sigreturn sys_rt_sigreturn
>+#define ptregs_sigaltstack sys_sigaltstack
>+#define ptregs_vfork sys_vfork
>+
> .section .rodata,"a"
> 
> #include "../../x86/kernel/syscall_table_32.S"
>--
>To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>the body of a message to majordomo@vger.kernel.org
>More majordomo info at  http://vger.kernel.org/majordomo-info.html
>Please read the FAQ at  http://www.tux.org/lkml/

-- 
Do what you love, f**k the rest! F**k the regulations!
 

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

* do_execve() needs const qualifiers (was Re: [patch 3/3] uml: fix warnings in kernel_execve)
  2009-03-30 18:45 ` [patch 3/3] uml: fix warnings in kernel_execve Miklos Szeredi
@ 2009-04-01 16:11   ` Américo Wang
  2009-04-01 16:21     ` Al Viro
  0 siblings, 1 reply; 9+ messages in thread
From: Américo Wang @ 2009-04-01 16:11 UTC (permalink / raw)
  To: Miklos Szeredi; +Cc: user-mode-linux-devel, jdike, akpm, linux-kernel, viro

On Mon, Mar 30, 2009 at 08:45:12PM +0200, Miklos Szeredi wrote:
>From: Miklos Szeredi <mszeredi@suse.cz>
>
>Fix the following warnings:
>
>arch/um/kernel/syscall.c: In function 'kernel_execve':
>arch/um/kernel/syscall.c:130: warning: passing argument 1 of 'um_execve' discards qualifiers from pointer target type
>arch/um/kernel/syscall.c:130: warning: passing argument 2 of 'um_execve' discards qualifiers from pointer target type
>arch/um/kernel/syscall.c:130: warning: passing argument 3 of 'um_execve' discards qualifiers from pointer target type
>
>Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
>---
> arch/um/kernel/syscall.c |    3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
>Index: linux-2.6/arch/um/kernel/syscall.c
>===================================================================
>--- linux-2.6.orig/arch/um/kernel/syscall.c	2009-03-30 20:25:17.000000000 +0200
>+++ linux-2.6/arch/um/kernel/syscall.c	2009-03-30 20:36:20.000000000 +0200
>@@ -127,7 +127,8 @@ int kernel_execve(const char *filename,
> 
> 	fs = get_fs();
> 	set_fs(KERNEL_DS);
>-	ret = um_execve(filename, argv, envp);
>+	ret = um_execve((char *)filename, (char __user *__user *)argv,
>+			(char __user *__user *) envp);

Well... I found this many days ago and I did a similar fix.

However, I think this doesn't fix the real problem. The real problem
is do_execve() doesn't have the correct const qualifiers, I am queueing
a huge patch to fix all the 'const' issues from do_execve() and more,
but I don't if Al would like it or not.

So let's Cc Al to see his advice.

Thanks.


-- 
Do what you love, f**k the rest! F**k the regulations!
 

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

* Re: do_execve() needs const qualifiers (was Re: [patch 3/3] uml: fix warnings in kernel_execve)
  2009-04-01 16:11   ` do_execve() needs const qualifiers (was Re: [patch 3/3] uml: fix warnings in kernel_execve) Américo Wang
@ 2009-04-01 16:21     ` Al Viro
  2009-04-04 16:51       ` Américo Wang
  0 siblings, 1 reply; 9+ messages in thread
From: Al Viro @ 2009-04-01 16:21 UTC (permalink / raw)
  To: Am??rico Wang
  Cc: Miklos Szeredi, user-mode-linux-devel, jdike, akpm, linux-kernel

On Thu, Apr 02, 2009 at 12:11:14AM +0800, Am??rico Wang wrote:
> On Mon, Mar 30, 2009 at 08:45:12PM +0200, Miklos Szeredi wrote:
> >From: Miklos Szeredi <mszeredi@suse.cz>
> >
> >Fix the following warnings:
> >
> >arch/um/kernel/syscall.c: In function 'kernel_execve':
> >arch/um/kernel/syscall.c:130: warning: passing argument 1 of 'um_execve' discards qualifiers from pointer target type
> >arch/um/kernel/syscall.c:130: warning: passing argument 2 of 'um_execve' discards qualifiers from pointer target type
> >arch/um/kernel/syscall.c:130: warning: passing argument 3 of 'um_execve' discards qualifiers from pointer target type
> >
> >Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
> >---
> > arch/um/kernel/syscall.c |    3 ++-
> > 1 file changed, 2 insertions(+), 1 deletion(-)
> >
> >Index: linux-2.6/arch/um/kernel/syscall.c
> >===================================================================
> >--- linux-2.6.orig/arch/um/kernel/syscall.c	2009-03-30 20:25:17.000000000 +0200
> >+++ linux-2.6/arch/um/kernel/syscall.c	2009-03-30 20:36:20.000000000 +0200
> >@@ -127,7 +127,8 @@ int kernel_execve(const char *filename,
> > 
> > 	fs = get_fs();
> > 	set_fs(KERNEL_DS);
> >-	ret = um_execve(filename, argv, envp);
> >+	ret = um_execve((char *)filename, (char __user *__user *)argv,
> >+			(char __user *__user *) envp);
> 
> Well... I found this many days ago and I did a similar fix.
> 
> However, I think this doesn't fix the real problem. The real problem
> is do_execve() doesn't have the correct const qualifiers, I am queueing
> a huge patch to fix all the 'const' issues from do_execve() and more,
> but I don't if Al would like it or not.

I don't know...  The thing is, it'll trail down into bprm->filename /
bprm->interp and the things get very ugly very fast from that point.

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

* Re: do_execve() needs const qualifiers (was Re: [patch 3/3] uml: fix warnings in kernel_execve)
  2009-04-01 16:21     ` Al Viro
@ 2009-04-04 16:51       ` Américo Wang
  0 siblings, 0 replies; 9+ messages in thread
From: Américo Wang @ 2009-04-04 16:51 UTC (permalink / raw)
  To: Al Viro
  Cc: Am??rico Wang, Miklos Szeredi, user-mode-linux-devel, jdike, akpm,
	linux-kernel

On Wed, Apr 01, 2009 at 05:21:22PM +0100, Al Viro wrote:
>On Thu, Apr 02, 2009 at 12:11:14AM +0800, Am??rico Wang wrote:
>> On Mon, Mar 30, 2009 at 08:45:12PM +0200, Miklos Szeredi wrote:
>> >From: Miklos Szeredi <mszeredi@suse.cz>
>> >
>> >Fix the following warnings:
>> >
>> >arch/um/kernel/syscall.c: In function 'kernel_execve':
>> >arch/um/kernel/syscall.c:130: warning: passing argument 1 of 'um_execve' discards qualifiers from pointer target type
>> >arch/um/kernel/syscall.c:130: warning: passing argument 2 of 'um_execve' discards qualifiers from pointer target type
>> >arch/um/kernel/syscall.c:130: warning: passing argument 3 of 'um_execve' discards qualifiers from pointer target type
>> >
>> >Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
>> >---
>> > arch/um/kernel/syscall.c |    3 ++-
>> > 1 file changed, 2 insertions(+), 1 deletion(-)
>> >
>> >Index: linux-2.6/arch/um/kernel/syscall.c
>> >===================================================================
>> >--- linux-2.6.orig/arch/um/kernel/syscall.c	2009-03-30 20:25:17.000000000 +0200
>> >+++ linux-2.6/arch/um/kernel/syscall.c	2009-03-30 20:36:20.000000000 +0200
>> >@@ -127,7 +127,8 @@ int kernel_execve(const char *filename,
>> > 
>> > 	fs = get_fs();
>> > 	set_fs(KERNEL_DS);
>> >-	ret = um_execve(filename, argv, envp);
>> >+	ret = um_execve((char *)filename, (char __user *__user *)argv,
>> >+			(char __user *__user *) envp);
>> 
>> Well... I found this many days ago and I did a similar fix.
>> 
>> However, I think this doesn't fix the real problem. The real problem
>> is do_execve() doesn't have the correct const qualifiers, I am queueing
>> a huge patch to fix all the 'const' issues from do_execve() and more,
>> but I don't if Al would like it or not.
>
>I don't know...  The thing is, it'll trail down into bprm->filename /
>bprm->interp and the things get very ugly very fast from that point.

Yes, I agree, my queued patch is huge. 8-)
But it is still worthy to fix, right?
 

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

end of thread, other threads:[~2009-04-04 16:51 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-30 18:41 [patch 1/3] uml: fix compile error from net_device_ops conversion Miklos Szeredi
2009-03-30 18:42 ` Miklos Szeredi
2009-03-30 18:45 ` [patch 3/3] uml: fix warnings in kernel_execve Miklos Szeredi
2009-04-01 16:11   ` do_execve() needs const qualifiers (was Re: [patch 3/3] uml: fix warnings in kernel_execve) Américo Wang
2009-04-01 16:21     ` Al Viro
2009-04-04 16:51       ` Américo Wang
2009-03-30 18:47 ` [patch 2/3] uml: fix link error from prefixing of i386 syscalls with ptregs_ Miklos Szeredi
2009-04-01 16:03   ` Américo Wang
2009-04-01 15:49 ` [patch 1/3] uml: fix compile error from net_device_ops conversion Américo Wang

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox