11 Aug, 2010

15 commits

  • Conflicts:
    fs/exofs/inode.c

    Jiri Kosina
     
  • As pointed out by Jiri Slaby: when I resolved the the 32-bit x85 system
    call entry tables for prlimit (due to the conflict with fanotify), I
    forgot to add the numbering in comments that we do for every fifth entry.

    Reported-by: Jiri Slaby
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • * 'for-2.6.36' of git://git.kernel.dk/linux-2.6-block: (149 commits)
    block: make sure that REQ_* types are seen even with CONFIG_BLOCK=n
    xen-blkfront: fix missing out label
    blkdev: fix blkdev_issue_zeroout return value
    block: update request stacking methods to support discards
    block: fix missing export of blk_types.h
    writeback: fix bad _bh spinlock nesting
    drbd: revert "delay probes", feature is being re-implemented differently
    drbd: Initialize all members of sync_conf to their defaults [Bugz 315]
    drbd: Disable delay probes for the upcomming release
    writeback: cleanup bdi_register
    writeback: add new tracepoints
    writeback: remove unnecessary init_timer call
    writeback: optimize periodic bdi thread wakeups
    writeback: prevent unnecessary bdi threads wakeups
    writeback: move bdi threads exiting logic to the forker thread
    writeback: restructure bdi forker loop a little
    writeback: move last_active to bdi
    writeback: do not remove bdi from bdi_list
    writeback: simplify bdi code a little
    writeback: do not lose wake-ups in bdi threads
    ...

    Fixed up pretty trivial conflicts in drivers/block/virtio_blk.c and
    drivers/scsi/scsi_error.c as per Jens.

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (148 commits)
    USB: serial: fix stalled writes
    USB: remove fake "address-of" expressions
    USB: fix thread-unsafe anchor utiliy routines
    USB: usbtest: support test device with only one iso-in or iso-out endpoint
    USB: usbtest: avoid to free coherent buffer in atomic context
    USB: xhci: Set DMA mask for host.
    USB: xhci: Don't flush doorbell writes.
    USB: xhci: Reduce reads and writes of interrupter registers.
    USB: xhci: Make xhci_set_hc_event_deq() static.
    USB: xhci: Minimize HW event ring dequeue pointer writes.
    USB: xhci: Make xhci_handle_event() static.
    USB: xhci: Remove unnecessary reads of IRQ_PENDING register.
    USB: xhci: Performance - move xhci_work() into xhci_irq()
    USB: xhci: Performance - move interrupt handlers into xhci-ring.c
    USB: xhci: Performance - move functions that find ep ring.
    USB:: fix linux/usb.h kernel-doc warnings
    USB: add USB serial ssu100 driver
    USB: usb-storage: implement autosuspend
    USB: ehci: fix remove of ehci debugfs dir
    USB: Add USB 2.0 to ssb ohci driver
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty-2.6: (68 commits)
    U6715 16550A serial driver support
    Char: nozomi, set tty->driver_data appropriately
    Char: nozomi, fix tty->count counting
    serial: max3107: Fix gpiolib support
    hsu: call PCI pm hooks in suspend/resume function
    hsu: some code cleanup
    hsu: add a periodic timer to check dma rx channel
    hsu: driver for Medfield High Speed UART device
    mxser: remove unnesesary NULL check
    serial: add support for OX16PCI958 card
    serial: 68328serial.c: remove dead (ALMA_ANS | DRAGONIXVZ | M68EZ328ADS)
    timbuart: use __devinit and __devexit macros for probe and remove
    serial: MMIO32 support for 8250_early.c
    serial: mcf: don't take spinlocks in already protected functions
    serial: general fixes in the serial_rs485 structure
    serial: fix missing bit coverage of ASYNC_FLAGS
    serial: "altera_uart: simplify altera_uart_console_putc()" checkpatch fixes
    serial: crisv10: formatting of pointers in printk()
    vt: Fix warning: statement with no effect due to vt_kern.h
    tty_io: remove casts from void*
    ...

    Linus Torvalds
     
  • Add support for the dedicated FIFO mode on newer SoCs such as the S5PV210
    partly to improve support and to fix the bug where any non-EP0 IN endpoint
    requires its own FIFO allocation.

    To fix this, we ensure that any non-zero IN endpoint is given a TXFIFO
    using the same allocation method as the periodic case (all our current
    hardware has enough FIFOs and FIFO memory for a 1:1 mapping) and ensure
    that the necessary transmission done interrupt is enabled.

    The default settings from reset for the core point all EPs at FIFO0,
    used for the control endpoint. However, the controller documentation
    states that all IN endpoints _must_ have a unique FIFO to avoid any
    contention during transmission.

    Note, this leaves us with a large IN FIFO for EP0 (which re-uses the
    old NPTXFIFO) for an endpoint which cannot shift more than a pair of
    packets at a time... this is a waste, but it looks like we cannot
    re-allocate space to the individual IN FIFOs as they are already
    maxed out (to be confirmed).

    Signed-off-by: Ben Dooks
    Signed-off-by: Greg Kroah-Hartman

    Ben Dooks
     
  • 1) Introduce ulpi specific flags for control of the ulpi phy
    2) Extend the generic ulpi driver with support for Function and
    Interface control of upli phy
    3) Update the platforms using the generic ulpi driver with new ulpi
    flags
    4) Remove the otg control flags not in use

    Signed-off-by: Igor Grinberg
    Signed-off-by: Mike Rapoport
    Signed-off-by: Greg Kroah-Hartman

    Igor Grinberg
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
    zorro: Fix reading of proc/bus/zorro/* in small chunks
    zorro: BKL removal
    m68k/mac: Fix RTC on PMU machines
    m68k/mac: Add color classic ii support
    arch/m68k/sun3/leds.c: Checkpatch cleanup

    Linus Torvalds
     
  • * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6:
    [S390] dasd: tunable missing interrupt handler
    [S390] dasd: allocate fallback cqr for reserve/release
    [S390] topology: use default MC domain initializer
    [S390] initrd: change default load address
    [S390] cmm, smsgiucv_app: convert sender to uppercase
    [S390] cmm: add missing __init/__exit annotations
    [S390] cio: use all available paths for some internal I/O
    [S390] ccwreq: add ability to use all paths
    [S390] cio: ccw_device_online_store return -EINVAL in case of missing driver
    [S390] cio: Log the response from the unit check handler
    [S390] cio: CHSC SIOSL Support

    Linus Torvalds
     
  • This patch is against the 2.6.34 source.

    Paraphrased from the 1989 BSD patch by David Borman @ cray.com:

    These are the changes needed for the kernel to support
    LINEMODE in the server.

    There is a new bit in the termios local flag word, EXTPROC.
    When this bit is set, several aspects of the terminal driver
    are disabled. Input line editing, character echo, and mapping
    of signals are all disabled. This allows the telnetd to turn
    off these functions when in linemode, but still keep track of
    what state the user wants the terminal to be in.

    New ioctl:
    TIOCSIG Generate a signal to processes in the
    current process group of the pty.

    There is a new mode for packet driver, the TIOCPKT_IOCTL bit.
    When packet mode is turned on in the pty, and the EXTPROC bit
    is set, then whenever the state of the pty is changed, the
    next read on the master side of the pty will have the TIOCPKT_IOCTL
    bit set. This allows the process on the server side of the pty
    to know when the state of the terminal has changed; it can then
    issue the appropriate ioctl to retrieve the new state.

    Since the original BSD patches accompanied the source code for telnet
    I've left that reference here, but obviously the feature is useful for
    any remote terminal protocol, including ssh.

    The corresponding feature has existed in the BSD tty driver since 1989.
    For historical reference, a good copy of the relevant files can be found
    here:

    http://anonsvn.mit.edu/viewvc/krb5/trunk/src/appl/telnet/?pathrev=17741

    Signed-off-by: Howard Chu
    Cc: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    hyc@symas.com
     
  • As Jeff Dike pointed out, the Hayes ESP driver was removed in commit
    f53a2ade0bb9f2a81f473e6469155172a96b7c38, so these ioctl definitions
    should also be removed. This cleans up the remaining arch-specific
    locations of this ioctl value.

    Thanks to Arnd for pointing these out.

    Cc: Jeff Dike
    Cc: Arnd Bergmann
    Cc: Alan Cox
    Signed-off-by: Greg Kroah-Hartman

    Greg Kroah-Hartman
     
  • * 'writable_limits' of git://decibel.fi.muni.cz/~xslaby/linux:
    unistd: add __NR_prlimit64 syscall numbers
    rlimits: implement prlimit64 syscall
    rlimits: switch more rlimit syscalls to do_prlimit
    rlimits: redo do_setrlimit to more generic do_prlimit
    rlimits: add rlimit64 structure
    rlimits: do security check under task_lock
    rlimits: allow setrlimit to non-current tasks
    rlimits: split sys_setrlimit
    rlimits: selinux, do rlimits changes under task_lock
    rlimits: make sure ->rlim_max never grows in sys_setrlimit
    rlimits: add task_struct to update_rlimit_cpu
    rlimits: security, add task_struct to setrlimit

    Fix up various system call number conflicts. We not only added fanotify
    system calls in the meantime, but asm-generic/unistd.h added a wait4
    along with a range of reserved per-architecture system calls.

    Linus Torvalds
     
  • * git://git.infradead.org/mtd-2.6: (79 commits)
    mtd: Remove obsolete include
    mtd: Update copyright notices
    jffs2: Update copyright notices
    mtd-physmap: add support users can assign the probe type in board files
    mtd: remove redwood map driver
    mxc_nand: Add v3 (i.MX51) Support
    mxc_nand: support 8bit ecc
    mxc_nand: fix correct_data function
    mxc_nand: add V1_V2 namespace to registers
    mxc_nand: factor out a check_int function
    mxc_nand: make some internally used functions overwriteable
    mxc_nand: rework get_dev_status
    mxc_nand: remove 0xe00 offset from registers
    mtd: denali: Add multi connected NAND support
    mtd: denali: Remove set_ecc_config function
    mtd: denali: Remove unuseful code in get_xx_nand_para functions
    mtd: denali: Remove device_info_tag structure
    mtd: m25p80: add support for the Winbond W25Q32 SPI flash chip
    mtd: m25p80: add support for the Intel/Numonyx {16,32,64}0S33B SPI flash chips
    mtd: m25p80: add support for the EON EN25P{32, 64} SPI flash chips
    ...

    Fix up trivial conflicts in drivers/mtd/maps/{Kconfig,redwood.c} due to
    redwood driver removal.

    Linus Torvalds
     
  • * 'for-linus' of git://git.infradead.org/users/eparis/notify: (132 commits)
    fanotify: use both marks when possible
    fsnotify: pass both the vfsmount mark and inode mark
    fsnotify: walk the inode and vfsmount lists simultaneously
    fsnotify: rework ignored mark flushing
    fsnotify: remove global fsnotify groups lists
    fsnotify: remove group->mask
    fsnotify: remove the global masks
    fsnotify: cleanup should_send_event
    fanotify: use the mark in handler functions
    audit: use the mark in handler functions
    dnotify: use the mark in handler functions
    inotify: use the mark in handler functions
    fsnotify: send fsnotify_mark to groups in event handling functions
    fsnotify: Exchange list heads instead of moving elements
    fsnotify: srcu to protect read side of inode and vfsmount locks
    fsnotify: use an explicit flag to indicate fsnotify_destroy_mark has been called
    fsnotify: use _rcu functions for mark list traversal
    fsnotify: place marks on object in order of group memory address
    vfs/fsnotify: fsnotify_close can delay the final work in fput
    fsnotify: store struct file not struct path
    ...

    Fix up trivial delete/modify conflict in fs/notify/inotify/inotify.c.

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6: (96 commits)
    no need for list_for_each_entry_safe()/resetting with superblock list
    Fix sget() race with failing mount
    vfs: don't hold s_umount over close_bdev_exclusive() call
    sysv: do not mark superblock dirty on remount
    sysv: do not mark superblock dirty on mount
    btrfs: remove junk sb_dirt change
    BFS: clean up the superblock usage
    AFFS: wait for sb synchronization when needed
    AFFS: clean up dirty flag usage
    cifs: truncate fallout
    mbcache: fix shrinker function return value
    mbcache: Remove unused features
    add f_flags to struct statfs(64)
    pass a struct path to vfs_statfs
    update VFS documentation for method changes.
    All filesystems that need invalidate_inode_buffers() are doing that explicitly
    convert remaining ->clear_inode() to ->evict_inode()
    Make ->drop_inode() just return whether inode needs to be dropped
    fs/inode.c:clear_inode() is gone
    fs/inode.c:evict() doesn't care about delete vs. non-delete paths now
    ...

    Fix up trivial conflicts in fs/nilfs2/super.c

    Linus Torvalds
     

10 Aug, 2010

25 commits

  • Conflicts:
    arch/arm/mach-omap1/board-nokia770.c

    Jiri Kosina
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    sparc64: Update defconfig.
    sparc: Kill user copy check code.
    sparc64: Fix perf_arch_get_caller_regs().
    sparc64: Add missing ID to parport probing code.

    Linus Torvalds
     
  • * 'rs485fix' of git://www.jni.nu/cris:
    CRIS: ioctl for getting RS485 information

    Linus Torvalds
     
  • * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
    powerpc: fix build with make 3.82
    Revert "Input: appletouch - fix integer overflow issue"
    memblock: Fix memblock_is_region_reserved() to return a boolean
    powerpc: Trim defconfigs
    powerpc: fix i8042 module build error
    sound/soc: mpc5200_psc_ac97: Use gpio pins for cold reset
    powerpc/5200: add mpc5200_psc_ac97_gpio_reset

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/vapier/blackfin: (32 commits)
    Blackfin: gpio: add a debounce stub
    Blackfin: update defconfigs
    Blackfin: remove CONFIG_MEM_GENERIC_BOARD
    Blackfin: dpmc: punt unnecessary RTC_ISTAT clearing
    Blackfin: unify rotary encoder bitmasks
    Blackfin: unify SDH/RSI bitmasks
    Blackfin: BF54x: tweak DMAC MMR naming to match other ports
    Blackfin: TWI: clean up the MMR names
    Blackfin: add EVT_OVERRIDE/IPRIO core MMR helpers
    Blackfin: add support for dynamic ftrace
    Blackfin: add support for LZO compressed kernels
    Blackfin: portmux: fix peripheral map overflow when requesting pins
    Blackfin: document SPI CS limitations with CPHA=0
    Blackfin: remove useless and outdated documentation
    Blackfin: BF51x/BF52x: support GPIO Hysteresis/Schmitt Trigger options
    Blackfin: gpio/portmux: clean up whitespace corruption
    Blackfin: make sure mmiowb inserts a write barrier with SSYNC
    Blackfin: fix DMA/cache bug when resuming from suspend to RAM
    Blackfin: BF51x: fix handling of PH8 (the "internal" SPI0SEL4 pin)
    Blackfin: add a GPIO_DEFAULT_BOOT_SPI_CS
    ...

    Linus Torvalds
     
  • * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx: (30 commits)
    DMAENGINE: at_hdmac: locking fixlet
    DMAENGINE: pch_dma: kill another usage of __raw_{read|write}l
    dma: dmatest: fix potential sign bug
    ioat2: catch and recover from broken vtd configurations v6
    DMAENGINE: add runtime slave control to COH 901 318 v3
    DMAENGINE: add runtime slave config to DMA40 v3
    DMAENGINE: generic slave channel control v3
    dmaengine: Driver for Topcliff PCH DMA controller
    intel_mid: Add Mrst & Mfld DMA Drivers
    drivers/dma: Eliminate a NULL pointer dereference
    dma/timb_dma: compile warning on 32 bit
    DMAENGINE: ste_dma40: support older silicon
    DMAENGINE: ste_dma40: support disabling physical channels
    DMAENGINE: ste_dma40: no disabled phy channels on ux500
    DMAENGINE: ste_dma40: fix suspend bug
    DMAENGINE: ste_dma40: add DB8500 memcpy channels
    DMAENGINE: ste_dma40: no flow control on memcpy
    DMAENGINE: ste_dma40: arch updates for LCLA and LCPA
    DMAENGINE: ste_dma40: allocate LCLA dynamically
    DMAENGINE: ste_dma40: no premature stop
    ...

    Fix up trivial conflicts in arch/arm/mach-ux500/devices-db8500.c

    Linus Torvalds
     
  • Workqueues are now initialized as part of the early_initcall(). So they
    are available for use during cold boot process aswell.

    Signed-off-by: Suresh Siddha
    Cc: "H. Peter Anvin"
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Cc: Tejun Heo
    Cc: Oleg Nesterov
    Cc: Tony Luck
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Suresh Siddha
     
  • Removal of these started in 2.3.43pre3, ca. 10 years ago.

    Reported-by: Arnd Bergmann
    Signed-off-by: Geert Uytterhoeven
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Cc: Yoshinori Sato
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Geert Uytterhoeven
     
  • PROC_MM doesn't exist in Kconfig. Looking around it looks like a
    left-over from 2.6.0 or even 2.4 times, last mentioned in a fedora patch
    for 2.6.10. I believe it's time to get rid of that last tiny parts here
    that are still around.

    Signed-off-by: Christoph Egger
    Cc: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Egger
     
  • When I use OpenSUSE-11.2 on UML (> 2.6.25)
    I get lots of such errors:

    Registering fd 1 twice
    Irqs : 3, 3
    Ids : 0x09cb41a0, 0x09cb4120
    ------------[ cut here ]------------
    WARNING: at kernel/irq/manage.c:896 __free_irq+0x79/0x11a()
    Trying to free already-free IRQ 3
    Modules linked in:
    09dadc6c: [] dump_stack+0x1c/0x20
    09dadc84: [] warn_slowpath_common+0x49/0x77
    09dadc9c: [] warn_slowpath_fmt+0x26/0x2a
    09dadcb4: [] __free_irq+0x79/0x11a
    09dadce4: [] free_irq+0x2d/0x49
    09dadcf4: [] close_one_chan+0x70/0x9c
    09dadd0c: [] close_chan+0x17/0x22
    09dadd1c: [] enable_chan+0x70/0x7c
    09dadd3c: [] line_open+0x34/0x9f
    09dadd54: [] con_open+0x13/0x35
    09dadd6c: [] tty_open+0x285/0x384
    09dadda0: [] chrdev_open+0xe0/0xf9
    09daddc0: [] __dentry_open+0xf3/0x1e2
    09dadde4: [] nameidata_to_filp+0x35/0x49
    09daddfc: [] do_last+0x409/0x50e
    09dade28: [] do_filp_open+0x175/0x446
    09dadecc: [] do_sys_open+0x4a/0x128
    09dadf04: [] sys_open+0x19/0x21
    09dadf28: [] handle_syscall+0x7a/0x98
    09dadf78: [] userspace+0x2c9/0x370
    09dadfe0: [] fork_handler+0x53/0x5b
    09dadffc: [] 0x766564

    ---[ end trace 9ebc1094aaf4bded ]---

    This patch fixes the issue.

    Signed-off-by: Richard Weinberger
    Cc: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Richard Weinberger
     
  • This implements hardware performance events for the EV67 and later CPUs
    within the Linux performance events subsystem. Only using the performance
    monitoring unit in HP/Compaq's so called "Aggregrate mode" is supported.

    The code has been implemented in a manner that makes extension to other
    older Alpha CPUs relatively straightforward should some mug wish to
    indulge themselves.

    Signed-off-by: Michael Cree
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Cc: Matt Turner
    Cc: Thomas Gleixner
    Cc: Peter Zijlstra
    Cc: Ingo Molnar
    Cc: Jay Estabrook
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael Cree
     
  • Signed-off-by: Michael Cree
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Cc: Matt Turner
    Cc: Thomas Gleixner
    Cc: Peter Zijlstra
    Cc: Ingo Molnar
    Cc: Jay Estabrook
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael Cree
     
  • The following patches implement hardware performance events for the Alpha
    EV67 and later CPUs. I have had this running on a Compaq XP1000 (EV67,
    single CPU) for a few days now. Pretty cool -- discovered that the glibc
    exp2() library routine uses on average 985 cycles to execute 777 CPU
    instructions whereas Compaq's CPML library version of exp2() uses on
    average 32 cycles to execute 47 CPU instructions to achieve the same
    thing!

    This patch:

    Add performance monitor interrupt counternd and export the count to user
    space via /proc/interrupts.

    Signed-off-by: Michael Cree
    Cc: Richard Henderson
    Cc: Ivan Kokshaysky
    Cc: Matt Turner
    Cc: Thomas Gleixner
    Cc: Peter Zijlstra
    Cc: Ingo Molnar
    Cc: Jay Estabrook
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael Cree
     
  • No real bugs, just some dead code and some fixups.

    Signed-off-by: Andi Kleen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andi Kleen
     
  • As explained in commit 1c0fe6e3bd ("mm: invoke oom-killer from page
    fault") , we want to call the architecture independent oom killer when
    getting an unexplained OOM from handle_mm_fault, rather than simply
    killing current.

    Signed-off-by: Nick Piggin
    Acked-by: Haavard Skinnemoen
    Acked-by: David Rientjes
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Nick Piggin
     
  • Define stubs for the numa_*_id() generic percpu related functions for
    non-NUMA configurations in where the other
    non-numa stubs live.

    Fixes ia64 !NUMA build breakage -- e.g., tiger_defconfig

    Back out now unneeded '#ifndef CONFIG_NUMA' guards from ia64 smpboot.c

    Signed-off-by: Lee Schermerhorn
    Tested-by: Tony Luck
    Acked-by: Tony Luck
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Lee Schermerhorn
     
  • kunmap_atomic() is currently at level -4 on Rusty's "Hard To Misuse"
    list[1] ("Follow common convention and you'll get it wrong"), except in
    some architectures when CONFIG_DEBUG_HIGHMEM is set[2][3].

    kunmap() takes a pointer to a struct page; kunmap_atomic(), however, takes
    takes a pointer to within the page itself. This seems to once in a while
    trip people up (the convention they are following is the one from
    kunmap()).

    Make it much harder to misuse, by moving it to level 9 on Rusty's list[4]
    ("The compiler/linker won't let you get it wrong"). This is done by
    refusing to build if the type of its first argument is a pointer to a
    struct page.

    The real kunmap_atomic() is renamed to kunmap_atomic_notypecheck()
    (which is what you would call in case for some strange reason calling it
    with a pointer to a struct page is not incorrect in your code).

    The previous version of this patch was compile tested on x86-64.

    [1] http://ozlabs.org/~rusty/index.cgi/tech/2008-04-01.html
    [2] In these cases, it is at level 5, "Do it right or it will always
    break at runtime."
    [3] At least mips and powerpc look very similar, and sparc also seems to
    share a common ancestor with both; there seems to be quite some
    degree of copy-and-paste coding here. The include/asm/highmem.h file
    for these three archs mention x86 CPUs at its top.
    [4] http://ozlabs.org/~rusty/index.cgi/tech/2008-03-30.html
    [5] As an aside, could someone tell me why mn10300 uses unsigned long as
    the first parameter of kunmap_atomic() instead of void *?

    Signed-off-by: Cesar Eduardo Barros
    Cc: Russell King (arch/arm)
    Cc: Ralf Baechle (arch/mips)
    Cc: David Howells (arch/frv, arch/mn10300)
    Cc: Koichi Yasutake (arch/mn10300)
    Cc: Kyle McMartin (arch/parisc)
    Cc: Helge Deller (arch/parisc)
    Cc: "James E.J. Bottomley" (arch/parisc)
    Cc: Benjamin Herrenschmidt (arch/powerpc)
    Cc: Paul Mackerras (arch/powerpc)
    Cc: "David S. Miller" (arch/sparc)
    Cc: Thomas Gleixner (arch/x86)
    Cc: Ingo Molnar (arch/x86)
    Cc: "H. Peter Anvin" (arch/x86)
    Cc: Arnd Bergmann (include/asm-generic)
    Cc: Rusty Russell ("Hard To Misuse" list)
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Cesar Eduardo Barros
     
  • Provide an INIT_MM_CONTEXT intializer macro which can be used to
    statically initialize mm_struct:mm_context of init_mm. This way we can
    get rid of code which will do the initialization at run time (on s390).

    In addition the current code can be found at a place where it is not
    expected. So let's have a common initializer which architectures
    can use if needed.

    This is based on a patch from Suzuki Poulose.

    Signed-off-by: Heiko Carstens
    Cc: Martin Schwidefsky
    Cc: Suzuki Poulose
    Cc: Alexey Dobriyan
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Heiko Carstens
     
  • Add a flags field to help glibc implementing statvfs(3) efficiently.

    We copy the flag values from glibc, and add a new ST_VALID flag to
    denote that f_flags is implemented.

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Al Viro

    Christoph Hellwig
     
  • We'll need the path to implement the flags field for statvfs support.
    We do have it available in all callers except:

    - ecryptfs_statfs. This one doesn't actually need vfs_statfs but just
    needs to do a caller to the lower filesystem statfs method.
    - sys_ustat. Add a non-exported statfs_by_dentry helper for it which
    doesn't won't be able to fill out the flags field later on.

    In addition rename the helpers for statfs vs fstatfs to do_*statfs instead
    of the misleading vfs prefix.

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Al Viro

    Christoph Hellwig
     
  • Signed-off-by: Al Viro

    Al Viro
     
  • ... and since we never hash its inodes, default
    ->drop_inode() will work just fine.

    Signed-off-by: Al Viro

    Al Viro
     
  • Replace inode_setattr with opencoded variants of it in all callers. This
    moves the remaining call to vmtruncate into the filesystem methods where it
    can be replaced with the proper truncate sequence.

    In a few cases it was obvious that we would never end up calling vmtruncate
    so it was left out in the opencoded variant:

    spufs: explicitly checks for ATTR_SIZE earlier
    btrfs,hugetlbfs,logfs,dlmfs: explicitly clears ATTR_SIZE earlier
    ufs: contains an opencoded simple_seattr + truncate that sets the filesize just above

    In addition to that ncpfs called inode_setattr with handcrafted iattrs,
    which allowed to trim down the opencoded variant.

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Al Viro

    Christoph Hellwig
     
  • Signed-off-by: Al Viro

    Al Viro
     
  • Copy RTC response bytes correctly on powerbooks and duos. Thanks to Diego
    Cousinet who debugged this and provided me with the fix. Tested on
    PowerBook 190 and Duo 280c.

    Signed-off-by: Finn Thain
    Reported-by: Diego Cousinet
    Signed-off-by: Geert Uytterhoeven

    Finn Thain