]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
[PATCH] add 2 more patches to queue.
authorgregkh@suse.de <gregkh@suse.de>
Fri, 8 Apr 2005 22:05:34 +0000 (15:05 -0700)
committerGreg KH <gregkh@suse.de>
Thu, 12 May 2005 05:16:08 +0000 (22:16 -0700)
queue/bttv.patch [new file with mode: 0644]
queue/uml-syscall.patch [new file with mode: 0644]

diff --git a/queue/bttv.patch b/queue/bttv.patch
new file mode 100644 (file)
index 0000000..3d9bf02
--- /dev/null
@@ -0,0 +1,37 @@
+From js@linuxtv.org Tue Apr  5 08:26:59 2005
+Date: Tue, 5 Apr 2005 16:55:52 +0200
+From: Johannes Stezenbach <js@linuxtv.org>
+To: Andrew Morton <akpm@osdl.org>
+Cc: linux-kernel@vger.kernel.org, Greg KH <greg@kroah.com>
+Subject: [PATCH] [fix Bug 4395] modprobe bttv freezes the computer
+Content-Length: 944
+Lines: 27
+
+Here's a patch that fixes
+http://bugme.osdl.org/show_bug.cgi?id=4395.
+
+In case there's a 2.6.11.7 before 2.6.12 is released it would
+be nice to include this patch there, too.
+
+Johannes
+
+---
+Patch by Manu Abraham and Gerd Knorr:
+Remove redundant bttv_reset_audio() which caused the computer to
+freeze with some bt8xx based DVB cards when loading the bttv driver.
+
+Signed-off-by: Johannes Stezenbach <js@linuxtv.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+
+--- linux-2.6.12-rc2.orig/drivers/media/video/bttv-cards.c     2005-04-05 02:35:41.000000000 +0200
++++ linux-2.6.12-rc2/drivers/media/video/bttv-cards.c  2005-04-05 02:37:31.000000000 +0200
+@@ -2785,8 +2785,6 @@ void __devinit bttv_init_card2(struct bt
+         }
+       btv->pll.pll_current = -1;
+-      bttv_reset_audio(btv);
+-
+       /* tuner configuration (from card list / autodetect / insmod option) */
+       if (UNSET != bttv_tvcards[btv->c.type].tuner_type)
+               if(UNSET == btv->tuner_type)
+
diff --git a/queue/uml-syscall.patch b/queue/uml-syscall.patch
new file mode 100644 (file)
index 0000000..2f71c5f
--- /dev/null
@@ -0,0 +1,156 @@
+From stable-bounces@linux.kernel.org Wed Apr  6 13:07:56 2005
+To: stable@kernel.org
+From: blaisorblade@yahoo.it
+Date: Wed, 06 Apr 2005 20:38:00 +0200
+Cc: jdike@addtoit.com, blaisorblade@yahoo.it, linux-kernel@vger.kernel.org
+Subject: uml: quick fix syscall table
+Content-Length: 7761
+Lines: 146
+
+
+CC: <stable@kernel.org>
+
+I'm resending this for inclusion in the -stable tree. I've deleted whitespace
+cleanups, and hope this can be merged. I've been asked to split the former
+patch, I don't know if I must split again this one, even because I don't want
+to split this correct patch into multiple non-correct ones by mistake.
+
+Uml 2.6.11 does not compile with gcc 2.95.4 because some entries are
+duplicated, and that GCC does not accept this (unlike gcc 3). Plus various
+other bugs in the syscall table definitions, resulting in probable wrong
+syscall entries:
+
+  *) 223 is a syscall hole (i.e. ni_syscall) only on i386, on x86_64 it's a
+  valid syscall (thus a duplicated one).
+
+  *) __NR_vserver must be only once with sys_ni_syscall, and not multiple
+  times with different values!
+
+  *) syscalls duplicated in SUBARCHs and in common files (thus assigning twice
+  to the same array entry and causing the GCC 2.95.4 failure mentioned above):
+  sys_utimes, which is common, and sys_fadvise64_64, sys_statfs64,
+  sys_fstatfs64, which exist only on i386.
+
+  *) syscalls duplicated in each SUBARCH, to put in common files:
+  sys_remap_file_pages, sys_utimes, sys_fadvise64
+
+  *) 285 is a syscall hole (i.e. ni_syscall) only on i386, on x86_64 the range
+  does not arrive to that point.
+
+  *) on x86_64, the macro name is __NR_kexec_load and not __NR_sys_kexec_load.
+  Use the correct name in either case.
+
+Note: as you can see, part of the syscall table definition in UML is
+arch-independent (with everywhere defined syscalls), and part is
+arch-dependant. This has created confusion (some syscalls are listed in both
+places, some in the wrong one, some are wrong on one arch or another).
+
+Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
+Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
+---
+
+ clean-linux-2.6.11-paolo/arch/um/include/sysdep-i386/syscalls.h   |   12 +++++-----
+ clean-linux-2.6.11-paolo/arch/um/include/sysdep-x86_64/syscalls.h |    5 ----
+ clean-linux-2.6.11-paolo/arch/um/kernel/sys_call_table.c          |   11 +++------
+ 3 files changed, 10 insertions(+), 18 deletions(-)
+
+diff -puN arch/um/include/sysdep-i386/syscalls.h~uml-quick-fix-syscall-table-for-stable arch/um/include/sysdep-i386/syscalls.h
+--- clean-linux-2.6.11/arch/um/include/sysdep-i386/syscalls.h~uml-quick-fix-syscall-table-for-stable   2005-04-05 16:56:57.000000000 +0200
++++ clean-linux-2.6.11-paolo/arch/um/include/sysdep-i386/syscalls.h    2005-04-05 16:56:57.000000000 +0200
+@@ -23,6 +23,9 @@ extern long sys_mmap2(unsigned long addr
+                     unsigned long prot, unsigned long flags,
+                     unsigned long fd, unsigned long pgoff);
++/* On i386 they choose a meaningless naming.*/
++#define __NR_kexec_load __NR_sys_kexec_load
++
+ #define ARCH_SYSCALLS \
+       [ __NR_waitpid ] = (syscall_handler_t *) sys_waitpid, \
+       [ __NR_break ] = (syscall_handler_t *) sys_ni_syscall, \
+@@ -101,15 +104,12 @@ extern long sys_mmap2(unsigned long addr
+       [ 223 ] = (syscall_handler_t *) sys_ni_syscall, \
+       [ __NR_set_thread_area ] = (syscall_handler_t *) sys_ni_syscall, \
+       [ __NR_get_thread_area ] = (syscall_handler_t *) sys_ni_syscall, \
+-      [ __NR_fadvise64 ] = (syscall_handler_t *) sys_fadvise64, \
+       [ 251 ] = (syscall_handler_t *) sys_ni_syscall, \
+-        [ __NR_remap_file_pages ] = (syscall_handler_t *) sys_remap_file_pages, \
+-      [ __NR_utimes ] = (syscall_handler_t *) sys_utimes, \
+-      [ __NR_vserver ] = (syscall_handler_t *) sys_ni_syscall,
+-        
++      [ 285 ] = (syscall_handler_t *) sys_ni_syscall,
++
+ /* 222 doesn't yet have a name in include/asm-i386/unistd.h */
+-#define LAST_ARCH_SYSCALL __NR_vserver
++#define LAST_ARCH_SYSCALL 285
+ /*
+  * Overrides for Emacs so that we follow Linus's tabbing style.
+diff -puN arch/um/include/sysdep-x86_64/syscalls.h~uml-quick-fix-syscall-table-for-stable arch/um/include/sysdep-x86_64/syscalls.h
+--- clean-linux-2.6.11/arch/um/include/sysdep-x86_64/syscalls.h~uml-quick-fix-syscall-table-for-stable 2005-04-05 16:56:57.000000000 +0200
++++ clean-linux-2.6.11-paolo/arch/um/include/sysdep-x86_64/syscalls.h  2005-04-05 16:56:57.000000000 +0200
+@@ -71,12 +71,7 @@ extern syscall_handler_t sys_arch_prctl;
+       [ __NR_iopl ] = (syscall_handler_t *) sys_ni_syscall, \
+       [ __NR_set_thread_area ] = (syscall_handler_t *) sys_ni_syscall, \
+       [ __NR_get_thread_area ] = (syscall_handler_t *) sys_ni_syscall, \
+-        [ __NR_remap_file_pages ] = (syscall_handler_t *) sys_remap_file_pages, \
+       [ __NR_semtimedop ] = (syscall_handler_t *) sys_semtimedop, \
+-      [ __NR_fadvise64 ] = (syscall_handler_t *) sys_fadvise64, \
+-      [ 223 ] = (syscall_handler_t *) sys_ni_syscall, \
+-      [ __NR_utimes ] = (syscall_handler_t *) sys_utimes, \
+-      [ __NR_vserver ] = (syscall_handler_t *) sys_ni_syscall, \
+       [ 251 ] = (syscall_handler_t *) sys_ni_syscall,
+ #define LAST_ARCH_SYSCALL 251
+diff -puN arch/um/kernel/sys_call_table.c~uml-quick-fix-syscall-table-for-stable arch/um/kernel/sys_call_table.c
+--- clean-linux-2.6.11/arch/um/kernel/sys_call_table.c~uml-quick-fix-syscall-table-for-stable  2005-04-05 16:56:57.000000000 +0200
++++ clean-linux-2.6.11-paolo/arch/um/kernel/sys_call_table.c   2005-04-05 16:56:57.000000000 +0200
+@@ -48,7 +48,6 @@ extern syscall_handler_t sys_vfork;
+ extern syscall_handler_t old_select;
+ extern syscall_handler_t sys_modify_ldt;
+ extern syscall_handler_t sys_rt_sigsuspend;
+-extern syscall_handler_t sys_vserver;
+ extern syscall_handler_t sys_mbind;
+ extern syscall_handler_t sys_get_mempolicy;
+ extern syscall_handler_t sys_set_mempolicy;
+@@ -242,6 +241,7 @@ syscall_handler_t *sys_call_table[] = {
+       [ __NR_epoll_create ] = (syscall_handler_t *) sys_epoll_create,
+       [ __NR_epoll_ctl ] = (syscall_handler_t *) sys_epoll_ctl,
+       [ __NR_epoll_wait ] = (syscall_handler_t *) sys_epoll_wait,
++      [ __NR_remap_file_pages ] = (syscall_handler_t *) sys_remap_file_pages,
+         [ __NR_set_tid_address ] = (syscall_handler_t *) sys_set_tid_address,
+       [ __NR_timer_create ] = (syscall_handler_t *) sys_timer_create,
+       [ __NR_timer_settime ] = (syscall_handler_t *) sys_timer_settime,
+@@ -252,12 +252,10 @@ syscall_handler_t *sys_call_table[] = {
+       [ __NR_clock_gettime ] = (syscall_handler_t *) sys_clock_gettime,
+       [ __NR_clock_getres ] = (syscall_handler_t *) sys_clock_getres,
+       [ __NR_clock_nanosleep ] = (syscall_handler_t *) sys_clock_nanosleep,
+-      [ __NR_statfs64 ] = (syscall_handler_t *) sys_statfs64,
+-      [ __NR_fstatfs64 ] = (syscall_handler_t *) sys_fstatfs64,
+       [ __NR_tgkill ] = (syscall_handler_t *) sys_tgkill,
+       [ __NR_utimes ] = (syscall_handler_t *) sys_utimes,
+-      [ __NR_fadvise64_64 ] = (syscall_handler_t *) sys_fadvise64_64,
+-      [ __NR_vserver ] = (syscall_handler_t *) sys_vserver,
++      [ __NR_fadvise64 ] = (syscall_handler_t *) sys_fadvise64,
++      [ __NR_vserver ] = (syscall_handler_t *) sys_ni_syscall,
+       [ __NR_mbind ] = (syscall_handler_t *) sys_mbind,
+       [ __NR_get_mempolicy ] = (syscall_handler_t *) sys_get_mempolicy,
+       [ __NR_set_mempolicy ] = (syscall_handler_t *) sys_set_mempolicy,
+@@ -267,9 +265,8 @@ syscall_handler_t *sys_call_table[] = {
+       [ __NR_mq_timedreceive ] = (syscall_handler_t *) sys_mq_timedreceive,
+       [ __NR_mq_notify ] = (syscall_handler_t *) sys_mq_notify,
+       [ __NR_mq_getsetattr ] = (syscall_handler_t *) sys_mq_getsetattr,
+-      [ __NR_sys_kexec_load ] = (syscall_handler_t *) sys_ni_syscall,
++      [ __NR_kexec_load ] = (syscall_handler_t *) sys_ni_syscall,
+       [ __NR_waitid ] = (syscall_handler_t *) sys_waitid,
+-      [ 285 ] = (syscall_handler_t *) sys_ni_syscall,
+       [ __NR_add_key ] = (syscall_handler_t *) sys_add_key,
+       [ __NR_request_key ] = (syscall_handler_t *) sys_request_key,
+       [ __NR_keyctl ] = (syscall_handler_t *) sys_keyctl,
+_
+
+_______________________________________________
+stable mailing list
+stable@linux.kernel.org
+http://linux.kernel.org/mailman/listinfo/stable
+