13 Feb, 2007

26 commits


12 Feb, 2007

14 commits

  • * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
    [MIPS] signal: do not inline handle_signal()
    [MIPS] signal: do not use save_static_function() anymore
    [MIPS] signal32: no need to save c0_status register in setup_sigcontext32()
    [MIPS] signal32: reduce {setup,restore}_sigcontext32 sizes
    [MIPS] signal: factorize debug code
    [MIPS] signal: test return value of install_sigtramp()
    [MIPS] signal32: remove duplicate code
    [MIPS] signal: clean up sigframe structure
    [MIPS] signal: do not inline functions in signal-common.h
    [MIPS] signals: reduce {setup,restore}_sigcontext sizes
    [MIPS] Fix warning in get_user when fetching pointer object from userspace.
    [MIPS] Fix eth2 platform device id for jaguar_atx and ocelot_3 platforms
    [MIPS] JMR3927 and RBTX49x7 support little endian
    [MIPS] RBTX49x7: declare prom_getcmdline()
    [MIPS] RTLX: Sprinkle device model code into code to make udev happier.
    [MIPS] VPE: Sprinkle device model code into code to make udev happier.

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
    [SPARC64]: Update defconfig.
    [SPARC64]: Add PCI MSI support on Niagara.
    [SPARC64] IRQ: Use irq_desc->chip_data instead of irq_desc->handler_data
    [SPARC64]: Add obppath sysfs attribute for SBUS and PCI devices.
    [PARTITION]: Add whole_disk attribute.

    Linus Torvalds
     
  • Martin Schwidefsky wrote:
    "s390 does not even need (in|out)b(_p|). I wondered what else from
    io.h do we not need. The answer is: almost nothing. With the devres
    patch from Al and the dma-mapping patch from Heiko we can get rid of
    iomem and all associated definitions."

    So we'll just need to replace NO_IOPORT with NO_IOMEM in Kconfig and
    kill arch/s390/mm/ioremap.c.

    BTW, there's an annoying bit of junk in there - IO_SPACE_LIMIT. We
    only need it for /proc/ioports, which AFAICS shouldn't even be there
    on s390 (or uml). OTOH, removing that thing would mean a user-visible
    change - we go from "empty file in /proc" to "no such file in /proc"...

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • * Split the implementation-agnostic stuff in separate files.
    * Make sure that targets using non-default request_irq() pull
    kernel/irq/devres.o
    * Introduce new symbols (HAS_IOPORT and HAS_IOMEM) defaulting to positive;
    allow architectures to turn them off (we needed these symbols anyway for
    dependencies of quite a few drivers).
    * protect the ioport-related parts of lib/devres.o with CONFIG_HAS_IOPORT.

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • Catch illegally nested kmap_atomic()s even if the page that is mapped by
    the 'inner' instance is from lowmem.

    This avoids spuriously zapped kmap-atomic ptes and turns hard to find
    crashes into clear asserts at the bug site.

    Signed-off-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     
  • Extend the set of "__attribute__" shortcut macros, and remove identical
    (and now superfluous) definitions from a couple of source files.

    based on a page at robert love's blog:

    http://rlove.org/log/2005102601

    extend the set of shortcut macros defined in compiler-gcc.h with the
    following:

    #define __packed __attribute__((packed))
    #define __weak __attribute__((weak))
    #define __naked __attribute__((naked))
    #define __noreturn __attribute__((noreturn))
    #define __pure __attribute__((pure))
    #define __aligned(x) __attribute__((aligned(x)))
    #define __printf(a,b) __attribute__((format(printf,a,b)))

    Once these are in place, it's up to subsystem maintainers to decide if they
    want to take advantage of them. there is already a strong precedent for
    using shortcuts like this in the source tree.

    The ones that might give people pause are "__aligned" and "__printf", but
    shortcuts for both of those are already in use, and in some ways very
    confusingly. note the two very different definitions for a macro named
    "ALIGNED":

    drivers/net/sgiseeq.c:#define ALIGNED(x) ((((unsigned long)(x)) + 0xf) & ~(0xf))
    drivers/scsi/ultrastor.c:#define ALIGNED(x) __attribute__((aligned(x)))

    also:

    include/acpi/platform/acgcc.h:
    #define ACPI_PRINTF_LIKE(c) __attribute__ ((__format__ (__printf__, c, c+1)))

    Given the precedent, then, it seems logical to at least standardize on a
    consistent set of these macros.

    Signed-off-by: Robert P. J. Day
    Acked-by: Ralf Baechle
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robert P. J. Day
     
  • Part of long forgotten patch
    http://groups.google.com/group/fa.linux.kernel/msg/e98e941ce1cf29f6?dmode=source
    Since then, m32r grabbed two copies.

    Leave s390 copy because of important absence of CONFIG_VT, but remove
    references to non-existent timerlist_lock. ia64 also loses timerlist_lock.

    Signed-off-by: Alexey Dobriyan
    Acked-by: Martin Schwidefsky
    Cc: Andi Kleen
    Cc: "Luck, Tony"
    Cc: Hirokazu Takata
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kirill Korotaev
     
  • fix-rmmod-read-write-races-in-proc-entries.patch doesn't want dynamically
    allocated ->proc_fops, because it will set it to NULL at module unload time.

    Regardless of module status, switch to statically allocated ->proc_fops which
    leads to simpler code without wrappers.

    AFAICS, also fix the following bug: "sn_force_interrupt" proc entry set
    ->write for itself, but was created with 0444 permissions. Change to 0644.

    Signed-off-by: Alexey Dobriyan
    Cc: Al Viro
    Cc: "Eric W. Biederman"
    Cc: "Luck, Tony"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • I noticed that almost all architectures implemented exactly the same
    sys32_sysinfo... except parisc, where a bug was to be found in handling of
    the uptime. So let's remove a whole whack of code for fun and profit.
    Cribbed compat_sys_sysinfo from x86_64's implementation, since I figured it
    would be the best tested.

    This patch incorporates Arnd's suggestion of not using set_fs/get_fs, but
    instead extracting out the common code from sys_sysinfo.

    Cc: Christoph Hellwig
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Kyle McMartin
     
  • Bug: pnx8550 code creates directory but resets ->nlink to 1.

    create_proc_entry() et al will correctly set ->nlink for you.

    Signed-off-by: Alexey Dobriyan
    Cc: Ralf Baechle
    Cc: Benjamin Herrenschmidt
    Cc: Paul Mackerras
    Cc: Jeff Dike
    Cc: Corey Minyard
    Cc: Alan Cox
    Cc: Kyle McMartin
    Cc: Martin Schwidefsky
    Cc: Greg KH
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • Delete the few remaining unnecessary calls to memset(0) after a call to
    kzalloc().

    Signed-off-by: Robert P. J. Day
    Cc: Andi Kleen
    Cc: Dmitry Torokhov
    Cc: Adam Belay
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robert P. J. Day
     
  • Use attribute(weak).

    Signed-off-by: Alexey Dobriyan
    Acked-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • Replace appropriate pairs of "kmem_cache_alloc()" + "memset(0)" with the
    corresponding "kmem_cache_zalloc()" call.

    Signed-off-by: Robert P. J. Day
    Cc: "Luck, Tony"
    Cc: Andi Kleen
    Cc: Roland McGrath
    Cc: James Bottomley
    Cc: Greg KH
    Acked-by: Joel Becker
    Cc: Steven Whitehouse
    Cc: Jan Kara
    Cc: Michael Halcrow
    Cc: "David S. Miller"
    Cc: Stephen Smalley
    Cc: James Morris
    Cc: Chris Wright
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Robert P. J. Day
     
  • The line discipline numbers N_* are currently defined for each architecture
    individually, but (except for a seeming mistake) identically, in
    asm/termios.h. There is no obvious reason why these numbers should be
    architecture specific, nor any apparent relationship with the termios
    structure. The total number of these, NR_LDISCS, is defined in linux/tty.h
    anyway. So I propose the following patch which moves the definitions of
    the individual line disciplines to linux/tty.h too.

    Three of these numbers (N_MASC, N_PROFIBUS_FDL, and N_SMSBLOCK) are unused
    in the current kernel, but the patch still keeps the complete set in case
    there are plans to use them yet.

    Signed-off-by: Tilman Schmidt
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tilman Schmidt