rpms/kernel/devel git-linus.diff,1.5,1.6 kernel.spec,1.845,1.846

Dave Jones (davej) fedora-extras-commits at redhat.com
Tue Aug 5 03:07:08 UTC 2008


Author: davej

Update of /cvs/pkgs/rpms/kernel/devel
In directory cvs-int.fedora.redhat.com:/tmp/cvs-serv12700

Modified Files:
	git-linus.diff kernel.spec 
Log Message:
Merge Linux-2.6 up to commit 2e1e9212ed8c532c6b324de77d3cafef5d2bc846

git-linus.diff:

View full diff with command:
/usr/bin/cvs -f diff  -kk -u -N -r 1.5 -r 1.6 git-linus.diff
Index: git-linus.diff
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/git-linus.diff,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -r1.5 -r1.6
--- git-linus.diff	29 Jul 2008 04:16:47 -0000	1.5
+++ git-linus.diff	5 Aug 2008 03:06:37 -0000	1.6
@@ -0,0 +1,120617 @@
+diff --git a/Documentation/DocBook/Makefile b/Documentation/DocBook/Makefile
+index 0eb0d02..1d1b345 100644
+--- a/Documentation/DocBook/Makefile
++++ b/Documentation/DocBook/Makefile
+@@ -12,7 +12,7 @@ DOCBOOKS := wanbook.xml z8530book.xml mcabook.xml videobook.xml \
+ 	    kernel-api.xml filesystems.xml lsm.xml usb.xml kgdb.xml \
+ 	    gadget.xml libata.xml mtdnand.xml librs.xml rapidio.xml \
+ 	    genericirq.xml s390-drivers.xml uio-howto.xml scsi.xml \
+-	    mac80211.xml debugobjects.xml
++	    mac80211.xml debugobjects.xml sh.xml
+ 
+ ###
+ # The build process is as follows (targets):
+diff --git a/Documentation/DocBook/sh.tmpl b/Documentation/DocBook/sh.tmpl
+new file mode 100644
+index 0000000..0c3dc4c
+--- /dev/null
++++ b/Documentation/DocBook/sh.tmpl
+@@ -0,0 +1,105 @@
++<?xml version="1.0" encoding="UTF-8"?>
++<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
++	"http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd" []>
++
++<book id="sh-drivers">
++ <bookinfo>
++  <title>SuperH Interfaces Guide</title>
++  
++  <authorgroup>
++   <author>
++    <firstname>Paul</firstname>
++    <surname>Mundt</surname>
++    <affiliation>
++     <address>
++      <email>lethal at linux-sh.org</email>
++     </address>
++    </affiliation>
++   </author>
++  </authorgroup>
++
++  <copyright>
++   <year>2008</year>
++   <holder>Paul Mundt</holder>
++  </copyright>
++  <copyright>
++   <year>2008</year>
++   <holder>Renesas Technology Corp.</holder>
++  </copyright>
++
++  <legalnotice>
++   <para>
++     This documentation is free software; you can redistribute
++     it and/or modify it under the terms of the GNU General Public
++     License version 2 as published by the Free Software Foundation.
++   </para>
++      
++   <para>
++     This program is distributed in the hope that it will be
++     useful, but WITHOUT ANY WARRANTY; without even the implied
++     warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
++     See the GNU General Public License for more details.
++   </para>
++      
++   <para>
++     You should have received a copy of the GNU General Public
++     License along with this program; if not, write to the Free
++     Software Foundation, Inc., 59 Temple Place, Suite 330, Boston,
++     MA 02111-1307 USA
++   </para>
++      
++   <para>
++     For more details see the file COPYING in the source
++     distribution of Linux.
++   </para>
++  </legalnotice>
++ </bookinfo>
++
++<toc></toc>
++
++  <chapter id="mm">
++    <title>Memory Management</title>
++    <sect1 id="sh4">
++    <title>SH-4</title>
++      <sect2 id="sq">
++        <title>Store Queue API</title>
++!Earch/sh/kernel/cpu/sh4/sq.c
++      </sect2>
++    </sect1>
++    <sect1 id="sh5">
++      <title>SH-5</title>
++      <sect2 id="tlb">
++	<title>TLB Interfaces</title>
++!Iarch/sh/mm/tlb-sh5.c
++!Iarch/sh/include/asm/tlb_64.h
++      </sect2>
++    </sect1>
++  </chapter>
++  <chapter id="clk">
++    <title>Clock Framework Extensions</title>
++!Iarch/sh/include/asm/clock.h
++  </chapter>
++  <chapter id="mach">
++    <title>Machine Specific Interfaces</title>
++    <sect1 id="dreamcast">
++      <title>mach-dreamcast</title>
++!Iarch/sh/boards/mach-dreamcast/rtc.c
++    </sect1>
++    <sect1 id="x3proto">
++      <title>mach-x3proto</title>
++!Earch/sh/boards/mach-x3proto/ilsel.c
++    </sect1>
++  </chapter>
++  <chapter id="busses">
++    <title>Busses</title>
++    <sect1 id="superhyway">
++      <title>SuperHyway</title>
++!Edrivers/sh/superhyway/superhyway.c
++    </sect1>
++
++    <sect1 id="maple">
++      <title>Maple</title>
++!Edrivers/sh/maple/maple.c
++    </sect1>
++  </chapter>
++</book>
+diff --git a/Documentation/powerpc/booting-without-of.txt b/Documentation/powerpc/booting-without-of.txt
+index 928a79c..de4063c 100644
+--- a/Documentation/powerpc/booting-without-of.txt
++++ b/Documentation/powerpc/booting-without-of.txt
+@@ -278,7 +278,7 @@ it with special cases.
+         a 64-bit platform.
+ 
+         d) request and get assigned a platform number (see PLATFORM_*
+-        constants in include/asm-powerpc/processor.h
++        constants in arch/powerpc/include/asm/processor.h
+ 
+ 32-bit embedded kernels:
+ 
+@@ -340,7 +340,7 @@ the block to RAM before passing it to the kernel.
+ ---------
+ 
+    The kernel is entered with r3 pointing to an area of memory that is
+-   roughly described in include/asm-powerpc/prom.h by the structure
++   roughly described in arch/powerpc/include/asm/prom.h by the structure
+    boot_param_header:
+ 
+ struct boot_param_header {
+diff --git a/Documentation/powerpc/eeh-pci-error-recovery.txt b/Documentation/powerpc/eeh-pci-error-recovery.txt
+index df7afe4..9d4e33d 100644
+--- a/Documentation/powerpc/eeh-pci-error-recovery.txt
++++ b/Documentation/powerpc/eeh-pci-error-recovery.txt
+@@ -133,7 +133,7 @@ error.  Given an arbitrary address, the routine
+ pci_get_device_by_addr() will find the pci device associated
+ with that address (if any).
+ 
+-The default include/asm-powerpc/io.h macros readb(), inb(), insb(),
++The default arch/powerpc/include/asm/io.h macros readb(), inb(), insb(),
+ etc. include a check to see if the i/o read returned all-0xff's.
+ If so, these make a call to eeh_dn_check_failure(), which in turn
+ asks the firmware if the all-ff's value is the sign of a true EEH
+diff --git a/arch/mn10300/kernel/module.c b/arch/mn10300/kernel/module.c
+index 0e4d2f6..8fa3689 100644
+--- a/arch/mn10300/kernel/module.c
++++ b/arch/mn10300/kernel/module.c
+@@ -24,6 +24,7 @@
+ #include <linux/fs.h>
+ #include <linux/string.h>
+ #include <linux/kernel.h>
++#include <linux/bug.h>
+ 
+ #if 0
+ #define DEBUGP printk
+@@ -195,7 +196,7 @@ int module_finalize(const Elf_Ehdr *hdr,
+ 		    const Elf_Shdr *sechdrs,
+ 		    struct module *me)
+ {
+-	return 0;
++	return module_bug_finalize(hdr, sechdrs, me);
+ }
+ 
+ /*
+@@ -203,4 +204,5 @@ int module_finalize(const Elf_Ehdr *hdr,
+  */
+ void module_arch_cleanup(struct module *mod)
+ {
++	module_bug_cleanup(mod);
+ }
+diff --git a/arch/powerpc/Kconfig.debug b/arch/powerpc/Kconfig.debug
+index 8c8aadb..4ebc52a 100644
+--- a/arch/powerpc/Kconfig.debug
++++ b/arch/powerpc/Kconfig.debug
+@@ -97,7 +97,7 @@ config IRQSTACKS
[...120226 lines suppressed...]
+-					   SD_LAST_BUGGY_SECTORS */
++	unsigned last_sector_bug:1;	/* Always read last sector in a 1 sector read */
+ 
+ 	DECLARE_BITMAP(supported_events, SDEV_EVT_MAXBITS); /* supported events */
+ 	struct list_head event_list;	/* asserted events */
+diff --git a/kernel/auditsc.c b/kernel/auditsc.c
+index 496c3dd..972f8e6 100644
+--- a/kernel/auditsc.c
++++ b/kernel/auditsc.c
+@@ -243,6 +243,9 @@ static inline int open_arg(int flags, int mask)
+ 
+ static int audit_match_perm(struct audit_context *ctx, int mask)
+ {
++	if (unlikely(!ctx))
++		return 0;
++
+ 	unsigned n = ctx->major;
+ 	switch (audit_classify_syscall(ctx->arch, n)) {
+ 	case 0:	/* native */
+@@ -284,6 +287,10 @@ static int audit_match_filetype(struct audit_context *ctx, int which)
+ {
+ 	unsigned index = which & ~S_IFMT;
+ 	mode_t mode = which & S_IFMT;
++
++	if (unlikely(!ctx))
++		return 0;
++
+ 	if (index >= ctx->name_count)
+ 		return 0;
+ 	if (ctx->names[index].ino == -1)
+diff --git a/kernel/sched.c b/kernel/sched.c
+index 21f7da9..04160d2 100644
+--- a/kernel/sched.c
++++ b/kernel/sched.c
+@@ -5004,19 +5004,21 @@ recheck:
+ 			return -EPERM;
+ 	}
+ 
++	if (user) {
+ #ifdef CONFIG_RT_GROUP_SCHED
+-	/*
+-	 * Do not allow realtime tasks into groups that have no runtime
+-	 * assigned.
+-	 */
+-	if (user
+-	    && rt_policy(policy) && task_group(p)->rt_bandwidth.rt_runtime == 0)
+-		return -EPERM;
++		/*
++		 * Do not allow realtime tasks into groups that have no runtime
++		 * assigned.
++		 */
++		if (rt_policy(policy) && task_group(p)->rt_bandwidth.rt_runtime == 0)
++			return -EPERM;
+ #endif
+ 
+-	retval = security_task_setscheduler(p, policy, param);
+-	if (retval)
+-		return retval;
++		retval = security_task_setscheduler(p, policy, param);
++		if (retval)
++			return retval;
++	}
++
+ 	/*
+ 	 * make sure no PI-waiters arrive (or leave) while we are
+ 	 * changing the priority of the task:
+diff --git a/mm/memory.c b/mm/memory.c
+index 6793b9c..a472bcd 100644
+--- a/mm/memory.c
++++ b/mm/memory.c
+@@ -2765,16 +2765,26 @@ int make_pages_present(unsigned long addr, unsigned long end)
+ 
+ 	vma = find_vma(current->mm, addr);
+ 	if (!vma)
+-		return -1;
++		return -ENOMEM;
+ 	write = (vma->vm_flags & VM_WRITE) != 0;
+ 	BUG_ON(addr >= end);
+ 	BUG_ON(end > vma->vm_end);
+ 	len = DIV_ROUND_UP(end, PAGE_SIZE) - addr/PAGE_SIZE;
+ 	ret = get_user_pages(current, current->mm, addr,
+ 			len, write, 0, NULL, NULL);
+-	if (ret < 0)
++	if (ret < 0) {
++		/*
++		   SUS require strange return value to mlock
++		    - invalid addr generate to ENOMEM.
++		    - out of memory should generate EAGAIN.
++		*/
++		if (ret == -EFAULT)
++			ret = -ENOMEM;
++		else if (ret == -ENOMEM)
++			ret = -EAGAIN;
+ 		return ret;
+-	return ret == len ? 0 : -1;
++	}
++	return ret == len ? 0 : -ENOMEM;
+ }
+ 
+ #if !defined(__HAVE_ARCH_GATE_AREA)
+diff --git a/mm/mlock.c b/mm/mlock.c
+index 7b26560..01fbe93 100644
+--- a/mm/mlock.c
++++ b/mm/mlock.c
+@@ -78,8 +78,6 @@ success:
+ 
+ 	mm->locked_vm -= pages;
+ out:
+-	if (ret == -ENOMEM)
+-		ret = -EAGAIN;
+ 	return ret;
+ }
+ 
+diff --git a/mm/nommu.c b/mm/nommu.c
+index 5edccd9..ed75bc9 100644
+--- a/mm/nommu.c
++++ b/mm/nommu.c
+@@ -266,6 +266,27 @@ void *vmalloc_node(unsigned long size, int node)
+ }
+ EXPORT_SYMBOL(vmalloc_node);
+ 
++#ifndef PAGE_KERNEL_EXEC
++# define PAGE_KERNEL_EXEC PAGE_KERNEL
++#endif
++
++/**
++ *	vmalloc_exec  -  allocate virtually contiguous, executable memory
++ *	@size:		allocation size
++ *
++ *	Kernel-internal function to allocate enough pages to cover @size
++ *	the page level allocator and map them into contiguous and
++ *	executable kernel virtual space.
++ *
++ *	For tight control over page level allocator and protection flags
++ *	use __vmalloc() instead.
++ */
++
++void *vmalloc_exec(unsigned long size)
++{
++	return __vmalloc(size, GFP_KERNEL | __GFP_HIGHMEM, PAGE_KERNEL_EXEC);
++}
++
+ /**
+  * vmalloc_32  -  allocate virtually contiguous memory (32bit addressable)
+  *	@size:		allocation size
+diff --git a/scripts/kconfig/conf.c b/scripts/kconfig/conf.c
+index 9fba838..36b5eed 100644
+--- a/scripts/kconfig/conf.c
++++ b/scripts/kconfig/conf.c
+@@ -596,7 +596,7 @@ int main(int ac, char **av)
+ 		break;
+ 	}
+ 
+-	if (conf_get_changed() && conf_write(NULL)) {
++	if (conf_write(NULL)) {
+ 		fprintf(stderr, _("\n*** Error during writing of the kernel configuration.\n\n"));
+ 		exit(1);
+ 	}
+diff --git a/scripts/kconfig/confdata.c b/scripts/kconfig/confdata.c
+index 0759761..df6a188 100644
+--- a/scripts/kconfig/confdata.c
++++ b/scripts/kconfig/confdata.c
+@@ -222,10 +222,8 @@ load:
+ 				continue;
+ 			if (def == S_DEF_USER) {
+ 				sym = sym_find(line + 9);
+-				if (!sym) {
+-					conf_warning("trying to assign nonexistent symbol %s", line + 9);
++				if (!sym)
+ 					break;
+-				}
+ 			} else {
+ 				sym = sym_lookup(line + 9, 0);
+ 				if (sym->type == S_UNKNOWN)
+@@ -261,10 +259,8 @@ load:
+ 			}
+ 			if (def == S_DEF_USER) {
+ 				sym = sym_find(line + 7);
+-				if (!sym) {
+-					conf_warning("trying to assign nonexistent symbol %s", line + 7);
++				if (!sym)
+ 					break;
+-				}
+ 			} else {
+ 				sym = sym_lookup(line + 7, 0);
+ 				if (sym->type == S_UNKNOWN)
+diff --git a/sound/core/seq/oss/seq_oss_synth.c b/sound/core/seq/oss/seq_oss_synth.c
+index 558dadb..e024e45 100644
+--- a/sound/core/seq/oss/seq_oss_synth.c
++++ b/sound/core/seq/oss/seq_oss_synth.c
+@@ -604,6 +604,9 @@ snd_seq_oss_synth_make_info(struct seq_oss_devinfo *dp, int dev, struct synth_in
+ {
+ 	struct seq_oss_synth *rec;
+ 
++	if (dev < 0 || dev >= dp->max_synthdev)
++		return -ENXIO;
++
+ 	if (dp->synths[dev].is_midi) {
+ 		struct midi_info minf;
+ 		snd_seq_oss_midi_make_info(dp, dp->synths[dev].midi_mapped, &minf);


Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/devel/kernel.spec,v
retrieving revision 1.845
retrieving revision 1.846
diff -u -r1.845 -r1.846
--- kernel.spec	4 Aug 2008 22:38:45 -0000	1.845
+++ kernel.spec	5 Aug 2008 03:06:38 -0000	1.846
@@ -961,7 +961,7 @@
   done
 %endif
 
-#ApplyPatch git-linus.diff
+ApplyPatch git-linus.diff
 
 # This patch adds a "make nonint_oldconfig" which is non-interactive and
 # also gives a list of missing options at the end. Useful for automated
@@ -1729,6 +1729,9 @@
 %kernel_variant_files -k vmlinux %{with_kdump} kdump
 
 %changelog
+* Mon Aug 04 2008 Dave Jones <davej at redhat.com>
+- Merge Linux-2.6 up to commit 2e1e9212ed8c532c6b324de77d3cafef5d2bc846
+
 * Mon Aug 04 2008 Matthew Garrett <mjg at redhat.com>
 - disable ACPI video display switching by default
 




More information about the fedora-extras-commits mailing list