projects/linux·commit 54e514b9

Merge branch 'akpm' (patches from Andrew)

54e514b9 · Linus Torvalds <[email protected]> · 2015-04-17 09:04:38 -04:00

Merge third patchbomb from Andrew Morton:

 - various misc things

 - a couple of lib/ optimisations

 - provide DIV_ROUND_CLOSEST_ULL()

 - checkpatch updates

 - rtc tree

 - befs, nilfs2, hfs, hfsplus, fatfs, adfs, affs, bfs

 - ptrace fixes

 - fork() fixes

 - seccomp cleanups

 - more mmap_sem hold time reductions from Davidlohr

* emailed patches from Andrew Morton <[email protected]>: (138 commits)
  proc: show locks in /proc/pid/fdinfo/X
  docs: add missing and new /proc/PID/status file entries, fix typos
  drivers/rtc/rtc-at91rm9200.c: make IO endian agnostic
  Documentation/spi/spidev_test.c: fix warning
  drivers/rtc/rtc-s5m.c: allow usage on device type different than main MFD type
  .gitignore: ignore *.tar
  MAINTAINERS: add Mediatek SoC mailing list
  tomoyo: reduce mmap_sem hold for mm->exe_file
  powerpc/oprofile: reduce mmap_sem hold for exe_file
  oprofile: reduce mmap_sem hold for mm->exe_file
  mips: ip32: add platform data hooks to use DS1685 driver
  lib/Kconfig: fix up HAVE_ARCH_BITREVERSE help text
  x86: switch to using asm-generic for seccomp.h
  sparc: switch to using asm-generic for seccomp.h
  powerpc: switch to using asm-generic for seccomp.h
  parisc: switch to using asm-generic for seccomp.h
  mips: switch to using asm-generic for seccomp.h
  microblaze: use asm-generic for seccomp.h
  arm: use asm-generic for seccomp.h
  seccomp: allow COMPAT sigreturn overrides
  ...
Commit
54e514b91b95d6441c12a7955addfb9f9d2afc65
Parents
4fc8adcf · 6c8c9031

Merge commit. Changes below are compared with the first parent: 4fc8adcf.

Changes

157 files changed · +2182 −1543

FileStatusAddDelContent
.gitignoremodified+1−0View file
Documentation/CodingStylemodified+13−0View file
Documentation/SubmittingPatchesmodified+2−2View file
Documentation/devicetree/bindings/rtc/digicolor-rtc.txtadded+17−0View file
Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txtmodified+5−0View file
Documentation/filesystems/proc.txtmodified+12−3View file
Documentation/spi/spidev_test.cmodified+2−2View file
Documentation/sysctl/kernel.txtmodified+21−0View file
MAINTAINERSmodified+2−0View file
arch/alpha/include/asm/processor.hmodified+1−0View file
arch/arc/kernel/troubleshoot.cmodified+1−2View file
arch/arm/include/asm/Kbuildmodified+1−0View file
arch/arm/include/asm/seccomp.hdeleted+0−11View before deletion
arch/microblaze/include/asm/seccomp.hmodified+1−7View file
arch/mips/configs/ip32_defconfigmodified+2−1View file
arch/mips/include/asm/mach-ip32/mc146818rtc.hdeleted+0−36View before deletion
arch/mips/include/asm/seccomp.hmodified+2−5View file
arch/mips/sgi-ip32/ip32-platform.cmodified+39−7View file
arch/mips/sgi-ip32/ip32-reset.cmodified+39−92View file
arch/parisc/include/asm/Kbuildmodified+1−0View file
arch/parisc/include/asm/seccomp.hdeleted+0−16View before deletion
arch/powerpc/include/uapi/asm/seccomp.h → arch/powerpc/include/asm/seccomp.hrenamed+2−8View file
arch/powerpc/include/uapi/asm/Kbuildmodified+0−1View file
arch/powerpc/oprofile/cell/spu_task_sync.cmodified+8−5View file
arch/sparc/include/asm/seccomp.hmodified+3−8View file
arch/x86/include/asm/seccomp.hmodified+18−3View file
arch/x86/include/asm/seccomp_32.hdeleted+0−11View before deletion
arch/x86/include/asm/seccomp_64.hdeleted+0−17View before deletion
drivers/clk/bcm/clk-kona.cmodified+7−21View file
drivers/clk/bcm/clk-kona.hmodified+0−1View file
drivers/cpuidle/governors/menu.cmodified+1−7View file
drivers/gpu/drm/i915/intel_drv.hmodified+0−3View file
drivers/gpu/drm/i915/intel_panel.cmodified+1−0View file
drivers/hwmon/ina2xx.cmodified+3−14View file
drivers/hwmon/lm85.cmodified+8−18View file
drivers/hwmon/w83795.cmodified+3−5View file
drivers/media/dvb-frontends/cxd2820r_c.cmodified+1−1View file
drivers/media/dvb-frontends/cxd2820r_core.cmodified+0−6View file
drivers/media/dvb-frontends/cxd2820r_priv.hmodified+0−2View file
drivers/media/dvb-frontends/cxd2820r_t.cmodified+1−1View file
drivers/media/dvb-frontends/cxd2820r_t2.cmodified+1−1View file
drivers/memstick/core/mspro_block.cmodified+2−1View file
drivers/oprofile/buffer_sync.cmodified+16−14View file
drivers/rtc/Kconfigmodified+13−3View file
drivers/rtc/Makefilemodified+1−0View file
drivers/rtc/class.cmodified+3−3View file
drivers/rtc/hctosys.cmodified+4−2View file
drivers/rtc/interface.cmodified+3−2View file
drivers/rtc/rtc-ab-b5ze-s3.cmodified+1−1View file
drivers/rtc/rtc-at91rm9200.cmodified+2−2View file
drivers/rtc/rtc-cmos.cmodified+4−2View file
drivers/rtc/rtc-da9052.cmodified+76−21View file
drivers/rtc/rtc-digicolor.cadded+227−0View file
drivers/rtc/rtc-ds1374.cmodified+5−3View file
drivers/rtc/rtc-ds1685.cmodified+5−4View file
drivers/rtc/rtc-ds3232.cmodified+4−2View file
drivers/rtc/rtc-efi-platform.cmodified+3−0View file
drivers/rtc/rtc-em3027.cmodified+11−0View file
drivers/rtc/rtc-hym8563.cmodified+6−6View file
drivers/rtc/rtc-m41t80.cmodified+4−2View file
drivers/rtc/rtc-max77686.cmodified+4−2View file
drivers/rtc/rtc-max8997.cmodified+5−3View file
drivers/rtc/rtc-msm6242.cmodified+3−1View file
drivers/rtc/rtc-omap.cmodified+55−13View file
drivers/rtc/rtc-opal.cmodified+2−1View file
drivers/rtc/rtc-pcf8563.cmodified+1−6View file
drivers/rtc/rtc-s3c.cmodified+53−140View file
drivers/rtc/rtc-s5m.cmodified+28−6View file
drivers/rtc/rtc-stmp3xxx.cmodified+60−6View file
drivers/rtc/rtc-twl.cmodified+5−4View file
drivers/rtc/rtc-x1205.cmodified+2−2View file
drivers/scsi/bfa/bfad.cmodified+9−13View file
firmware/ihex2fw.cmodified+1−0View file
fs/adfs/dir_fplus.cmodified+1−0View file
fs/adfs/super.cmodified+15−5View file
fs/affs/affs.hmodified+16−12View file
fs/affs/amigaffs.cmodified+2−1View file
fs/affs/file.cmodified+1−1View file
fs/affs/inode.cmodified+18−14View file
fs/affs/namei.cmodified+4−2View file
fs/affs/super.cmodified+24−19View file
fs/befs/befs.hmodified+10−12View file
fs/befs/datastream.cmodified+2−2View file
fs/befs/io.cmodified+1−1View file
fs/befs/linuxvfs.cmodified+8−8View file
fs/befs/super.cmodified+2−2View file
fs/bfs/dir.cmodified+2−2View file
fs/binfmt_misc.cmodified+9−21View file
fs/exec.cmodified+11−1View file
fs/fat/cache.cmodified+0−2View file
fs/fat/dir.cmodified+0−4View file
fs/fat/fat.hmodified+1−4View file
fs/fat/fatent.cmodified+0−3View file
fs/fat/file.cmodified+0−4View file
fs/fat/inode.cmodified+2−11View file
fs/fat/misc.cmodified+0−4View file
fs/fat/namei_msdos.cmodified+0−2View file
fs/fat/namei_vfat.cmodified+0−2View file
fs/file.cmodified+1−2View file
fs/hfs/dir.cmodified+2−2View file
fs/hfsplus/bfind.cmodified+1−3View file
fs/hfsplus/catalog.cmodified+2−1View file
fs/hfsplus/dir.cmodified+2−2View file
fs/hfsplus/inode.cmodified+6−0View file
fs/hfsplus/ioctl.cmodified+5−7View file
fs/hfsplus/xattr.cmodified+61−25View file
fs/hfsplus/xattr.hmodified+8−14View file
fs/hfsplus/xattr_security.cmodified+6−32View file
fs/hfsplus/xattr_trusted.cmodified+5−32View file
fs/hfsplus/xattr_user.cmodified+4−31View file
fs/locks.cmodified+38−0View file
fs/nilfs2/alloc.cmodified+3−2View file
fs/nilfs2/bmap.cmodified+37−11View file
fs/nilfs2/bmap.hmodified+8−5View file
fs/nilfs2/btree.cmodified+63−0View file
fs/nilfs2/cpfile.cmodified+52−6View file
fs/nilfs2/direct.cmodified+17−0View file
fs/nilfs2/inode.cmodified+13−12View file
fs/nilfs2/mdt.cmodified+54−0View file
fs/nilfs2/mdt.hmodified+8−2View file
fs/nilfs2/page.cmodified+10−14View file
fs/nilfs2/segment.cmodified+8−9View file
fs/nilfs2/super.cmodified+1−1View file
fs/proc/fd.cmodified+17−10View file
include/asm-generic/seccomp.hmodified+2−0View file
include/linux/bitmap.hmodified+4−4View file
include/linux/bitops.hmodified+2−2View file
include/linux/fs.hmodified+8−0View file
include/linux/kconfig.hmodified+7−8View file
include/linux/kernel.hmodified+12−0View file
include/linux/mfd/samsung/rtc.hmodified+2−0View file
include/linux/mm_types.hmodified+1−1View file
include/linux/sysctl.hmodified+3−0View file
include/linux/util_macros.hadded+40−0View file
include/uapi/asm-generic/errno.hmodified+10−1View file
init/main.cmodified+2−2View file
kernel/fork.cmodified+107−34View file
kernel/gcov/base.cmodified+4−1View file
kernel/pid.cmodified+8−7View file
kernel/ptrace.cmodified+29−10View file
kernel/signal.cmodified+5−9View file
kernel/sys.cmodified+28−19View file
kernel/sysctl.cmodified+11−5View file
lib/Kconfigmodified+2−3View file
lib/Makefilemodified+1−1View file
lib/bitmap.cmodified+0−30View file
lib/cpumask.cmodified+5−4View file
lib/dma-debug.cmodified+1−1View file
lib/find_bit.cadded+193−0View file
lib/find_last_bit.cmodified+14−22View file
lib/find_next_bit.cdeleted+0−285View before deletion
lib/vsprintf.cmodified+126−118View file
scripts/Makefile.kasanmodified+6−2View file
scripts/checkpatch.plmodified+141−23View file
scripts/spelling.txtmodified+1−0View file
security/tomoyo/util.cmodified+8−5View file
sound/soc/codecs/pcm512x.cmodified+1−2View file

Only the first 600 diff lines are shown. Download the complete patch.

.gitignore

View file
diff --git a/.gitignore b/.gitignore
index acb6afe..4ad4a98 100644
--- a/.gitignore
+++ b/.gitignore
@@ -24,6 +24,7 @@
*.order
*.elf
*.bin
+*.tar
*.gz
*.bz2
*.lzma

Documentation/CodingStyle

View file
diff --git a/Documentation/CodingStyle b/Documentation/CodingStyle
index 449a8a1..4d4f06d 100644
--- a/Documentation/CodingStyle
+++ b/Documentation/CodingStyle
@@ -659,6 +659,19 @@ macros using parameters.
#define CONSTANT 0x4000
#define CONSTEXP (CONSTANT | 3)
+5) namespace collisions when defining local variables in macros resembling
+functions:
+
+#define FOO(x) \
+({ \
+ typeof(x) ret; \
+ ret = calc_ret(x); \
+ (ret); \
+)}
+
+ret is a common name for a local variable - __foo_ret is less likely
+to collide with an existing variable.
+
The cpp manual deals with macros exhaustively. The gcc internals manual also
covers RTL which is used frequently with assembly language in the kernel.

Documentation/SubmittingPatches

View file
diff --git a/Documentation/SubmittingPatches b/Documentation/SubmittingPatches
index 447671b..b03a832 100644
--- a/Documentation/SubmittingPatches
+++ b/Documentation/SubmittingPatches
@@ -614,8 +614,8 @@ The canonical patch message body contains the following:
- An empty line.
- - The body of the explanation, which will be copied to the
- permanent changelog to describe this patch.
+ - The body of the explanation, line wrapped at 75 columns, which will
+ be copied to the permanent changelog to describe this patch.
- The "Signed-off-by:" lines, described above, which will
also go in the changelog.

Documentation/devicetree/bindings/rtc/digicolor-rtc.txt

View file
diff --git a/Documentation/devicetree/bindings/rtc/digicolor-rtc.txt b/Documentation/devicetree/bindings/rtc/digicolor-rtc.txt
new file mode 100644
index 0000000..d464986
--- /dev/null
+++ b/Documentation/devicetree/bindings/rtc/digicolor-rtc.txt
@@ -0,0 +1,17 @@
+Conexant Digicolor Real Time Clock controller
+
+This binding currently supports the CX92755 SoC.
+
+Required properties:
+- compatible: should be "cnxt,cx92755-rtc"
+- reg: physical base address of the controller and length of memory mapped
+ region.
+- interrupts: rtc alarm interrupt
+
+Example:
+
+ rtc@f0000c30 {
+ compatible = "cnxt,cx92755-rtc";
+ reg = <0xf0000c30 0x18>;
+ interrupts = <25>;
+ };

Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt

View file
diff --git a/Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt b/Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt
index b800070..fa6a942 100644
--- a/Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt
+++ b/Documentation/devicetree/bindings/rtc/stmp3xxx-rtc.txt
@@ -7,6 +7,11 @@ Required properties:
region.
- interrupts: rtc alarm interrupt
+Optional properties:
+- stmp,crystal-freq: override crystal frequency as determined from fuse bits.
+ Only <32000> and <32768> are possible for the hardware. Use <0> for
+ "no crystal".
+
Example:
rtc@80056000 {

Documentation/filesystems/proc.txt

View file
diff --git a/Documentation/filesystems/proc.txt b/Documentation/filesystems/proc.txt
index a07ba61..8e36c7e 100644
--- a/Documentation/filesystems/proc.txt
+++ b/Documentation/filesystems/proc.txt
@@ -200,12 +200,12 @@ contains details information about the process itself. Its fields are
explained in Table 1-4.
(for SMP CONFIG users)
-For making accounting scalable, RSS related information are handled in
-asynchronous manner and the vaule may not be very precise. To see a precise
+For making accounting scalable, RSS related information are handled in an
+asynchronous manner and the value may not be very precise. To see a precise
snapshot of a moment, you can see /proc/<pid>/smaps file and scan page table.
It's slow but very precise.
-Table 1-2: Contents of the status files (as of 2.6.30-rc7)
+Table 1-2: Contents of the status files (as of 3.20.0)
..............................................................................
Field Content
Name filename of the executable
@@ -213,6 +213,7 @@ Table 1-2: Contents of the status files (as of 2.6.30-rc7)
in an uninterruptible wait, Z is zombie,
T is traced or stopped)
Tgid thread group ID
+ Ngid NUMA group ID (0 if none)
Pid process id
PPid process id of the parent process
TracerPid PID of process tracing this process (0 if not)
@@ -220,6 +221,10 @@ Table 1-2: Contents of the status files (as of 2.6.30-rc7)
Gid Real, effective, saved set, and file system GIDs
FDSize number of file descriptor slots currently allocated
Groups supplementary group list
+ NStgid descendant namespace thread group ID hierarchy
+ NSpid descendant namespace process ID hierarchy
+ NSpgid descendant namespace process group ID hierarchy
+ NSsid descendant namespace session ID hierarchy
VmPeak peak virtual memory size
VmSize total program size
VmLck locked memory size
@@ -1704,6 +1709,10 @@ A typical output is
flags: 0100002
mnt_id: 19
+All locks associated with a file descriptor are shown in its fdinfo too.
+
+lock: 1: FLOCK ADVISORY WRITE 359 00:13:11691 0 EOF
+
The files such as eventfd, fsnotify, signalfd, epoll among the regular pos/flags
pair provide additional information particular to the objects they represent.

Documentation/spi/spidev_test.c

View file
diff --git a/Documentation/spi/spidev_test.c b/Documentation/spi/spidev_test.c
index 94f574b..135b3f5 100644
--- a/Documentation/spi/spidev_test.c
+++ b/Documentation/spi/spidev_test.c
@@ -80,7 +80,7 @@ static void hex_dump(const void *src, size_t length, size_t line_size, char *pre
* Unescape - process hexadecimal escape character
* converts shell input "\x23" -> 0x23
*/
-int unespcape(char *_dst, char *_src, size_t len)
+static int unescape(char *_dst, char *_src, size_t len)
{
int ret = 0;
char *src = _src;
@@ -304,7 +304,7 @@ int main(int argc, char *argv[])
size = strlen(input_tx+1);
tx = malloc(size);
rx = malloc(size);
- size = unespcape((char *)tx, input_tx, size);
+ size = unescape((char *)tx, input_tx, size);
transfer(fd, tx, rx, size);
free(rx);
free(tx);

Documentation/sysctl/kernel.txt

View file
diff --git a/Documentation/sysctl/kernel.txt b/Documentation/sysctl/kernel.txt
index 99d7eb3..c831001 100644
--- a/Documentation/sysctl/kernel.txt
+++ b/Documentation/sysctl/kernel.txt
@@ -872,6 +872,27 @@ can be ORed together:
==============================================================
+threads-max
+
+This value controls the maximum number of threads that can be created
+using fork().
+
+During initialization the kernel sets this value such that even if the
+maximum number of threads is created, the thread structures occupy only
+a part (1/8th) of the available RAM pages.
+
+The minimum value that can be written to threads-max is 20.
+The maximum value that can be written to threads-max is given by the
+constant FUTEX_TID_MASK (0x3fffffff).
+If a value outside of this range is written to threads-max an error
+EINVAL occurs.
+
+The value written is checked against the available RAM pages. If the
+thread structures would occupy too much (more than 1/8th) of the
+available RAM pages threads-max is reduced accordingly.
+
+==============================================================
+
unknown_nmi_panic:
The value in this file affects behavior of handling NMI. When the

MAINTAINERS

View file
diff --git a/MAINTAINERS b/MAINTAINERS
index bf990f5..f7bbaec 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1215,6 +1215,7 @@ F: arch/arm/mach-orion5x/ts78xx-*
ARM/Mediatek SoC support
M: Matthias Brugger <[email protected]>
L: [email protected] (moderated for non-subscribers)
+L: [email protected] (moderated for non-subscribers)
S: Maintained
F: arch/arm/boot/dts/mt6*
F: arch/arm/boot/dts/mt8*
@@ -8183,6 +8184,7 @@ X: kernel/torture.c
REAL TIME CLOCK (RTC) SUBSYSTEM
M: Alessandro Zummo <[email protected]>
+M: Alexandre Belloni <[email protected]>
Q: http://patchwork.ozlabs.org/project/rtc-linux/list/
S: Maintained

arch/alpha/include/asm/processor.h

View file
diff --git a/arch/alpha/include/asm/processor.h b/arch/alpha/include/asm/processor.h
index b4cf036..43a7559 100644
--- a/arch/alpha/include/asm/processor.h
+++ b/arch/alpha/include/asm/processor.h
@@ -44,6 +44,7 @@ struct task_struct;
extern unsigned long thread_saved_pc(struct task_struct *);
/* Do necessary setup to start up a newly executed thread. */
+struct pt_regs;
extern void start_thread(struct pt_regs *, unsigned long, unsigned long);
/* Free all resources held by a thread. */

arch/arc/kernel/troubleshoot.c

View file
diff --git a/arch/arc/kernel/troubleshoot.c b/arch/arc/kernel/troubleshoot.c
index 1badf9b..e00a018 100644
--- a/arch/arc/kernel/troubleshoot.c
+++ b/arch/arc/kernel/troubleshoot.c
@@ -52,7 +52,7 @@ static void show_callee_regs(struct callee_regs *cregs)
print_reg_file(&(cregs->r13), 13);
}
-void print_task_path_n_nm(struct task_struct *tsk, char *buf)
+static void print_task_path_n_nm(struct task_struct *tsk, char *buf)
{
struct path path;
char *path_nm = NULL;
@@ -77,7 +77,6 @@ void print_task_path_n_nm(struct task_struct *tsk, char *buf)
done:
pr_info("Path: %s\n", path_nm);
}
-EXPORT_SYMBOL(print_task_path_n_nm);
static void show_faulting_vma(unsigned long address, char *buf)
{

arch/arm/include/asm/Kbuild

View file
diff --git a/arch/arm/include/asm/Kbuild b/arch/arm/include/asm/Kbuild
index eb0f43f..3c4596d 100644
--- a/arch/arm/include/asm/Kbuild
+++ b/arch/arm/include/asm/Kbuild
@@ -21,6 +21,7 @@ generic-y += preempt.h
generic-y += resource.h
generic-y += rwsem.h
generic-y += scatterlist.h
+generic-y += seccomp.h
generic-y += sections.h
generic-y += segment.h
generic-y += sembuf.h

arch/arm/include/asm/seccomp.h

View before deletion
diff --git a/arch/arm/include/asm/seccomp.h b/arch/arm/include/asm/seccomp.h
deleted file mode 100644
index 52b156b..0000000
--- a/arch/arm/include/asm/seccomp.h
+++ /dev/null
@@ -1,11 +0,0 @@
-#ifndef _ASM_ARM_SECCOMP_H
-#define _ASM_ARM_SECCOMP_H
-
-#include <linux/unistd.h>
-
-#define __NR_seccomp_read __NR_read
-#define __NR_seccomp_write __NR_write
-#define __NR_seccomp_exit __NR_exit
-#define __NR_seccomp_sigreturn __NR_rt_sigreturn
-
-#endif /* _ASM_ARM_SECCOMP_H */

arch/microblaze/include/asm/seccomp.h

View file
diff --git a/arch/microblaze/include/asm/seccomp.h b/arch/microblaze/include/asm/seccomp.h
index 0d91275..204618a 100644
--- a/arch/microblaze/include/asm/seccomp.h
+++ b/arch/microblaze/include/asm/seccomp.h
@@ -3,14 +3,8 @@
#include <linux/unistd.h>
-#define __NR_seccomp_read __NR_read
-#define __NR_seccomp_write __NR_write
-#define __NR_seccomp_exit __NR_exit
#define __NR_seccomp_sigreturn __NR_sigreturn
-#define __NR_seccomp_read_32 __NR_read
-#define __NR_seccomp_write_32 __NR_write
-#define __NR_seccomp_exit_32 __NR_exit
-#define __NR_seccomp_sigreturn_32 __NR_sigreturn
+#include <asm-generic/seccomp.h>
#endif /* _ASM_MICROBLAZE_SECCOMP_H */

arch/mips/configs/ip32_defconfig

View file
diff --git a/arch/mips/configs/ip32_defconfig b/arch/mips/configs/ip32_defconfig
index 70ffe9b..fe48220 100644
--- a/arch/mips/configs/ip32_defconfig
+++ b/arch/mips/configs/ip32_defconfig
@@ -105,7 +105,8 @@ CONFIG_RTC_CLASS=y
# CONFIG_RTC_HCTOSYS is not set
# CONFIG_RTC_INTF_SYSFS is not set
# CONFIG_RTC_INTF_PROC is not set
-CONFIG_RTC_DRV_CMOS=y
+CONFIG_RTC_DRV_DS1685_FAMILY=y
+CONFIG_RTC_DRV_DS1685=y
CONFIG_EXT2_FS=y
CONFIG_EXT2_FS_XATTR=y
CONFIG_EXT2_FS_POSIX_ACL=y

arch/mips/include/asm/mach-ip32/mc146818rtc.h

View before deletion
diff --git a/arch/mips/include/asm/mach-ip32/mc146818rtc.h b/arch/mips/include/asm/mach-ip32/mc146818rtc.h
deleted file mode 100644
index 6b6bab4..0000000
--- a/arch/mips/include/asm/mach-ip32/mc146818rtc.h
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * This file is subject to the terms and conditions of the GNU General Public
- * License. See the file "COPYING" in the main directory of this archive
- * for more details.
- *
- * Copyright (C) 1998, 2001, 03 by Ralf Baechle
- * Copyright (C) 2000 Harald Koerfgen
- *
- * RTC routines for IP32 style attached Dallas chip.
- */
-#ifndef __ASM_MACH_IP32_MC146818RTC_H
-#define __ASM_MACH_IP32_MC146818RTC_H
-
-#include <asm/ip32/mace.h>
-
-#define RTC_PORT(x) (0x70 + (x))
-
-static unsigned char CMOS_READ(unsigned long addr)
-{
- return mace->isa.rtc[addr << 8];
-}
-
-static inline void CMOS_WRITE(unsigned char data, unsigned long addr)
-{
- mace->isa.rtc[addr << 8] = data;
-}
-
-/*
- * FIXME: Do it right. For now just assume that no one lives in 20th century
- * and no O2 user in 22th century ;-)
- */
-#define mc146818_decode_year(year) ((year) + 2000)
-
-#define RTC_ALWAYS_BCD 0
-
-#endif /* __ASM_MACH_IP32_MC146818RTC_H */

arch/mips/include/asm/seccomp.h

View file
diff --git a/arch/mips/include/asm/seccomp.h b/arch/mips/include/asm/seccomp.h
index f29c75c..1d8a2e2 100644
--- a/arch/mips/include/asm/seccomp.h
+++ b/arch/mips/include/asm/seccomp.h
@@ -2,11 +2,6 @@
#include <linux/unistd.h>
-#define __NR_seccomp_read __NR_read
-#define __NR_seccomp_write __NR_write
-#define __NR_seccomp_exit __NR_exit
-#define __NR_seccomp_sigreturn __NR_rt_sigreturn
-
/*
* Kludge alert:
*
@@ -29,4 +24,6 @@
#endif /* CONFIG_MIPS32_O32 */
+#include <asm-generic/seccomp.h>
+
#endif /* __ASM_SECCOMP_H */

arch/mips/sgi-ip32/ip32-platform.c

View file
diff --git a/arch/mips/sgi-ip32/ip32-platform.c b/arch/mips/sgi-ip32/ip32-platform.c
index 511e9ff..b522477 100644
--- a/arch/mips/sgi-ip32/ip32-platform.c
+++ b/arch/mips/sgi-ip32/ip32-platform.c
@@ -9,10 +9,13 @@
#include <linux/init.h>
#include <linux/platform_device.h>
#include <linux/serial_8250.h>
+#include <linux/rtc/ds1685.h>
#include <asm/ip32/mace.h>
#include <asm/ip32/ip32_ints.h>
+extern void ip32_prepare_poweroff(void);
+
#define MACEISA_SERIAL1_OFFS offsetof(struct sgi_mace, isa.serial1)
#define MACEISA_SERIAL2_OFFS offsetof(struct sgi_mace, isa.serial2)
@@ -90,18 +93,47 @@ static __init int sgio2btns_devinit(void)
device_initcall(sgio2btns_devinit);
-static struct resource sgio2_cmos_rsrc[] = {
+#define MACE_RTC_RES_START (MACE_BASE + offsetof(struct sgi_mace, isa.rtc))
+#define MACE_RTC_RES_END (MACE_RTC_RES_START + 32767)
+
+static struct resource ip32_rtc_resources[] = {
{
- .start = 0x70,
- .end = 0x71,
- .flags = IORESOURCE_IO
+ .start = MACEISA_RTC_IRQ,
+ .end = MACEISA_RTC_IRQ,
+ .flags = IORESOURCE_IRQ
+ }, {
+ .start = MACE_RTC_RES_START,
+ .end = MACE_RTC_RES_END,
+ .flags = IORESOURCE_MEM,
}
};
-static __init int sgio2_cmos_devinit(void)
+/* RTC registers on IP32 are each padded by 256 bytes (0x100). */
+static struct ds1685_rtc_platform_data
+ip32_rtc_platform_data[] = {
+ {
+ .regstep = 0x100,
+ .bcd_mode = true,
+ .no_irq = false,
+ .uie_unsupported = false,
+ .alloc_io_resources = true,
+ .plat_prepare_poweroff = ip32_prepare_poweroff,
+ },
+};
+
+struct platform_device ip32_rtc_device = {
+ .name = "rtc-ds1685",
+ .id = -1,
+ .dev = {
+ .platform_data = ip32_rtc_platform_data,
+ },
+ .num_resources = ARRAY_SIZE(ip32_rtc_resources),
+ .resource = ip32_rtc_resources,
+};
+
++static int __init sgio2_rtc_devinit(void)
{
- return IS_ERR(platform_device_register_simple("rtc_cmos", -1,
- sgio2_cmos_rsrc, 1));
+ return platform_device_register(&ip32_rtc_device);
}
device_initcall(sgio2_cmos_devinit);

arch/mips/sgi-ip32/ip32-reset.c

View file
diff --git a/arch/mips/sgi-ip32/ip32-reset.c b/arch/mips/sgi-ip32/ip32-reset.c
index 44b3470..8bd415c 100644
--- a/arch/mips/sgi-ip32/ip32-reset.c
+++ b/arch/mips/sgi-ip32/ip32-reset.c
@@ -11,10 +11,11 @@
#include <linux/compiler.h>
#include <linux/init.h>
#include <linux/kernel.h>
+#include <linux/module.h>
#include <linux/sched.h>
#include <linux/notifier.h>
#include <linux/delay.h>
-#include <linux/ds17287rtc.h>
+#include <linux/rtc/ds1685.h>
#include <linux/interrupt.h>
#include <linux/pm.h>
@@ -33,53 +34,40 @@
#define POWERDOWN_FREQ (HZ / 4)
#define PANIC_FREQ (HZ / 8)
-static struct timer_list power_timer, blink_timer, debounce_timer;
-static int has_panicked, shuting_down;
+extern struct platform_device ip32_rtc_device;
-static void ip32_machine_restart(char *command) __noreturn;
-static void ip32_machine_halt(void) __noreturn;
-static void ip32_machine_power_off(void) __noreturn;
+static struct timer_list power_timer, blink_timer;
+static int has_panicked, shutting_down;
-static void ip32_machine_restart(char *cmd)
+static __noreturn void ip32_poweroff(void *data)
{
- crime->control = CRIME_CONTROL_HARD_RESET;
- while (1);
-}
+ void (*poweroff_func)(struct platform_device *) =
+ symbol_get(ds1685_rtc_poweroff);
+
+#ifdef CONFIG_MODULES
+ /* If the first __symbol_get failed, our module wasn't loaded. */
+ if (!poweroff_func) {
+ request_module("rtc-ds1685");
+ poweroff_func = symbol_get(ds1685_rtc_poweroff);
+ }
+#endif
-static inline void ip32_machine_halt(void)
-{
- ip32_machine_power_off();
-}
+ if (!poweroff_func)
+ pr_emerg("RTC not available for power-off. Spinning forever ...\n");
+ else {
+ (*poweroff_func)((struct platform_device *)data);
+ symbol_put(ds1685_rtc_poweroff);
+ }
-static void ip32_machine_power_off(void)
-{
- unsigned char reg_a, xctrl_a, xctrl_b;
-
- disable_irq(MACEISA_RTC_IRQ);
- reg_a = CMOS_READ(RTC_REG_A);
-
- /* setup for kickstart & wake-up (DS12287 Ref. Man. p. 19) */
- reg_a &= ~DS_REGA_DV2;
- reg_a |= DS_REGA_DV1;
-
- CMOS_WRITE(reg_a | DS_REGA_DV0, RTC_REG_A);
- wbflush();
- xctrl_b = CMOS_READ(DS_B1_XCTRL4B)
- | DS_XCTRL4B_ABE | DS_XCTRL4B_KFE;
- CMOS_WRITE(xctrl_b, DS_B1_XCTRL4B);
- xctrl_a = CMOS_READ(DS_B1_XCTRL4A) & ~DS_XCTRL4A_IFS;
- CMOS_WRITE(xctrl_a, DS_B1_XCTRL4A);
- wbflush();
- /* adios amigos... */
- CMOS_WRITE(xctrl_a | DS_XCTRL4A_PAB, DS_B1_XCTRL4A);
- CMOS_WRITE(reg_a, RTC_REG_A);
- wbflush();
- while (1);
+ unreachable();
}
-static void power_timeout(unsigned long data)
+static void ip32_machine_restart(char *cmd) __noreturn;
+static void ip32_machine_restart(char *cmd)
{
- ip32_machine_power_off();
+ msleep(20);
+ crime->control = CRIME_CONTROL_HARD_RESET;
+ unreachable();
}
static void blink_timeout(unsigned long data)
@@ -89,44 +77,27 @@ static void blink_timeout(unsigned long data)
mod_timer(&blink_timer, jiffies + data);
}
-static void debounce(unsigned long data)
+static void ip32_machine_halt(void)
{
- unsigned char reg_a, reg_c, xctrl_a;
-
- reg_c = CMOS_READ(RTC_INTR_FLAGS);
- reg_a = CMOS_READ(RTC_REG_A);
- CMOS_WRITE(reg_a | DS_REGA_DV0, RTC_REG_A);
- wbflush();
- xctrl_a = CMOS_READ(DS_B1_XCTRL4A);
- if ((xctrl_a & DS_XCTRL4A_IFS) || (reg_c & RTC_IRQF )) {
- /* Interrupt still being sent. */
- debounce_timer.expires = jiffies + 50;
- add_timer(&debounce_timer);
-
- /* clear interrupt source */
- CMOS_WRITE(xctrl_a & ~DS_XCTRL4A_IFS, DS_B1_XCTRL4A);
- CMOS_WRITE(reg_a & ~DS_REGA_DV0, RTC_REG_A);
- return;
- }
- CMOS_WRITE(reg_a & ~DS_REGA_DV0, RTC_REG_A);
-
- if (has_panicked)
- ip32_machine_restart(NULL);
+ ip32_poweroff(&ip32_rtc_device);
+}
- enable_irq(MACEISA_RTC_IRQ);
+static void power_timeout(unsigned long data)
+{
+ ip32_poweroff(&ip32_rtc_device);
}
-static inline void ip32_power_button(void)
+void ip32_prepare_poweroff(void)
{
if (has_panicked)
return;
- if (shuting_down || kill_cad_pid(SIGINT, 1)) {
+ if (shutting_down || kill_cad_pid(SIGINT, 1)) {
/* No init process or button pressed twice. */
- ip32_machine_power_off();
+ ip32_poweroff(&ip32_rtc_device);
}
- shuting_down = 1;
+ shutting_down = 1;
blink_timer.data = POWERDOWN_FREQ;
blink_timeout(POWERDOWN_FREQ);

This diff is incomplete. Download the complete patch.

arch/parisc/include/asm/Kbuild

View file

This diff is incomplete. Download the complete patch.

arch/parisc/include/asm/seccomp.h

View before deletion

This diff is incomplete. Download the complete patch.

arch/powerpc/include/asm/seccomp.h

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/include/uapi/asm/Kbuild

View file

This diff is incomplete. Download the complete patch.

arch/powerpc/oprofile/cell/spu_task_sync.c

View file

This diff is incomplete. Download the complete patch.

arch/sparc/include/asm/seccomp.h

View file

This diff is incomplete. Download the complete patch.

arch/x86/include/asm/seccomp.h

View file

This diff is incomplete. Download the complete patch.

arch/x86/include/asm/seccomp_32.h

View before deletion

This diff is incomplete. Download the complete patch.

arch/x86/include/asm/seccomp_64.h

View before deletion

This diff is incomplete. Download the complete patch.

drivers/clk/bcm/clk-kona.c

View file

This diff is incomplete. Download the complete patch.

drivers/clk/bcm/clk-kona.h

View file

This diff is incomplete. Download the complete patch.

drivers/cpuidle/governors/menu.c

View file

This diff is incomplete. Download the complete patch.

drivers/gpu/drm/i915/intel_drv.h

View file

This diff is incomplete. Download the complete patch.

drivers/gpu/drm/i915/intel_panel.c

View file

This diff is incomplete. Download the complete patch.

drivers/hwmon/ina2xx.c

View file

This diff is incomplete. Download the complete patch.

drivers/hwmon/lm85.c

View file

This diff is incomplete. Download the complete patch.

drivers/hwmon/w83795.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb-frontends/cxd2820r_c.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb-frontends/cxd2820r_core.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb-frontends/cxd2820r_priv.h

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb-frontends/cxd2820r_t.c

View file

This diff is incomplete. Download the complete patch.

drivers/media/dvb-frontends/cxd2820r_t2.c

View file

This diff is incomplete. Download the complete patch.

drivers/memstick/core/mspro_block.c

View file

This diff is incomplete. Download the complete patch.

drivers/oprofile/buffer_sync.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/Kconfig

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/Makefile

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/class.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/hctosys.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/interface.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-ab-b5ze-s3.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-at91rm9200.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-cmos.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-da9052.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-digicolor.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-ds1374.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-ds1685.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-ds3232.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-efi-platform.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-em3027.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-hym8563.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-m41t80.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-max77686.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-max8997.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-msm6242.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-omap.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-opal.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-pcf8563.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-s3c.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-s5m.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-stmp3xxx.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-twl.c

View file

This diff is incomplete. Download the complete patch.

drivers/rtc/rtc-x1205.c

View file

This diff is incomplete. Download the complete patch.

drivers/scsi/bfa/bfad.c

View file

This diff is incomplete. Download the complete patch.

firmware/ihex2fw.c

View file

This diff is incomplete. Download the complete patch.

fs/adfs/dir_fplus.c

View file

This diff is incomplete. Download the complete patch.

fs/adfs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/affs/affs.h

View file

This diff is incomplete. Download the complete patch.

fs/affs/amigaffs.c

View file

This diff is incomplete. Download the complete patch.

fs/affs/file.c

View file

This diff is incomplete. Download the complete patch.

fs/affs/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/affs/namei.c

View file

This diff is incomplete. Download the complete patch.

fs/affs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/befs/befs.h

View file

This diff is incomplete. Download the complete patch.

fs/befs/datastream.c

View file

This diff is incomplete. Download the complete patch.

fs/befs/io.c

View file

This diff is incomplete. Download the complete patch.

fs/befs/linuxvfs.c

View file

This diff is incomplete. Download the complete patch.

fs/befs/super.c

View file

This diff is incomplete. Download the complete patch.

fs/bfs/dir.c

View file

This diff is incomplete. Download the complete patch.

fs/binfmt_misc.c

View file

This diff is incomplete. Download the complete patch.

fs/exec.c

View file

This diff is incomplete. Download the complete patch.

fs/fat/cache.c

View file

This diff is incomplete. Download the complete patch.

fs/fat/dir.c

View file

This diff is incomplete. Download the complete patch.

fs/fat/fat.h

View file

This diff is incomplete. Download the complete patch.

fs/fat/fatent.c

View file

This diff is incomplete. Download the complete patch.

fs/fat/file.c

View file

This diff is incomplete. Download the complete patch.

fs/fat/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/fat/misc.c

View file

This diff is incomplete. Download the complete patch.

fs/fat/namei_msdos.c

View file

This diff is incomplete. Download the complete patch.

fs/fat/namei_vfat.c

View file

This diff is incomplete. Download the complete patch.

fs/file.c

View file

This diff is incomplete. Download the complete patch.

fs/hfs/dir.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/bfind.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/catalog.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/dir.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/ioctl.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/xattr.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/xattr.h

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/xattr_security.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/xattr_trusted.c

View file

This diff is incomplete. Download the complete patch.

fs/hfsplus/xattr_user.c

View file

This diff is incomplete. Download the complete patch.

fs/locks.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/alloc.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/bmap.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/bmap.h

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/btree.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/cpfile.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/direct.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/inode.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/mdt.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/mdt.h

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/page.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/segment.c

View file

This diff is incomplete. Download the complete patch.

fs/nilfs2/super.c

View file

This diff is incomplete. Download the complete patch.

fs/proc/fd.c

View file

This diff is incomplete. Download the complete patch.

include/asm-generic/seccomp.h

View file

This diff is incomplete. Download the complete patch.

include/linux/bitmap.h

View file

This diff is incomplete. Download the complete patch.

include/linux/bitops.h

View file

This diff is incomplete. Download the complete patch.

include/linux/fs.h

View file

This diff is incomplete. Download the complete patch.

include/linux/kconfig.h

View file

This diff is incomplete. Download the complete patch.

include/linux/kernel.h

View file

This diff is incomplete. Download the complete patch.

include/linux/mfd/samsung/rtc.h

View file

This diff is incomplete. Download the complete patch.

include/linux/mm_types.h

View file

This diff is incomplete. Download the complete patch.

include/linux/sysctl.h

View file

This diff is incomplete. Download the complete patch.

include/linux/util_macros.h

View file

This diff is incomplete. Download the complete patch.

include/uapi/asm-generic/errno.h

View file

This diff is incomplete. Download the complete patch.

init/main.c

View file

This diff is incomplete. Download the complete patch.

kernel/fork.c

View file

This diff is incomplete. Download the complete patch.

kernel/gcov/base.c

View file

This diff is incomplete. Download the complete patch.

kernel/pid.c

View file

This diff is incomplete. Download the complete patch.

kernel/ptrace.c

View file

This diff is incomplete. Download the complete patch.

kernel/signal.c

View file

This diff is incomplete. Download the complete patch.

kernel/sys.c

View file

This diff is incomplete. Download the complete patch.

kernel/sysctl.c

View file

This diff is incomplete. Download the complete patch.

lib/Kconfig

View file

This diff is incomplete. Download the complete patch.

lib/Makefile

View file

This diff is incomplete. Download the complete patch.

lib/bitmap.c

View file

This diff is incomplete. Download the complete patch.

lib/cpumask.c

View file

This diff is incomplete. Download the complete patch.

lib/dma-debug.c

View file

This diff is incomplete. Download the complete patch.

lib/find_bit.c

View file

This diff is incomplete. Download the complete patch.

lib/find_last_bit.c

View file

This diff is incomplete. Download the complete patch.

lib/find_next_bit.c

View before deletion

This diff is incomplete. Download the complete patch.

lib/vsprintf.c

View file

This diff is incomplete. Download the complete patch.

scripts/Makefile.kasan

View file

This diff is incomplete. Download the complete patch.

scripts/checkpatch.pl

View file

This diff is incomplete. Download the complete patch.

scripts/spelling.txt

View file

This diff is incomplete. Download the complete patch.

security/tomoyo/util.c

View file

This diff is incomplete. Download the complete patch.

sound/soc/codecs/pcm512x.c

View file

This diff is incomplete. Download the complete patch.