26 Apr, 2008

40 commits

  • add CONFIG_OPTIMIZE_INLINING=y.

    allow gcc to optimize the kernel image's size by uninlining
    functions that have been marked 'inline'. Previously gcc was
    forced by Linux to always-inline these functions via a gcc
    attribute:

    #define inline inline __attribute__((always_inline))

    Especially when the user has already selected
    CONFIG_OPTIMIZE_FOR_SIZE=y this can make a huge difference in
    kernel image size (using a standard Fedora .config):

    text data bss dec hex filename
    5613924 562708 3854336 10030968 990f78 vmlinux.before
    5486689 562708 3854336 9903733 971e75 vmlinux.after

    that's a 2.3% text size reduction (!).

    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • Signed-off-by: Harvey Harrison
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
    [PATCH] sanitize locate_fd()
    [PATCH] sanitize unshare_files/reset_files_struct
    [PATCH] sanitize handling of shared descriptor tables in failing execve()
    [PATCH] close race in unshare_files()
    [PATCH] restore sane ->umount_begin() API
    cifs: timeout dfs automounts +little fix.

    Linus Torvalds
     
  • Signed-off-by: Harvey Harrison
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • As requested by Sam Ravnborg: Remove Documentation/smart-config.txt.

    It is outdated and has been (functionally) replaced by
    Documentation/kbuild/*.txt.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Commit 1a747ee0 ("locks: don't call ->copy_lock methods on return of
    conflicting locks") changed fs/lockd/svclock.c to call
    __locks_copy_lock() instead of locks_copy_lock(), but lockd can be built
    as a module and __locks_copy_lock() is not exported, which causes a
    build error

    ERROR: "__locks_copy_lock" [fs/lockd/lockd.ko] undefined!

    with CONFIG_LOCKD=m.

    Fix this by exporting __locks_copy_lock().

    Signed-off-by: Roland Dreier
    Signed-off-by: Linus Torvalds

    Roland Dreier
     
  • * 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (49 commits)
    [POWERPC] Add zImage.iseries to arch/powerpc/boot/.gitignore
    [POWERPC] bootwrapper: fix build error on virtex405-head.S
    [POWERPC] 4xx: Fix 460GT support to not enable FPU
    [POWERPC] 4xx: Add NOR FLASH entries to Canyonlands and Glacier dts
    [POWERPC] Xilinx: of_serial support for Xilinx uart 16550.
    [POWERPC] Xilinx: boot support for Xilinx uart 16550.
    [POWERPC] celleb: Add support for PCI Express
    [POWERPC] celleb: Move miscellaneous files for Beat
    [POWERPC] celleb: Move a file for SPU on Beat
    [POWERPC] celleb: Move files for Beat mmu and iommu
    [POWERPC] celleb: Move files for Beat hvcall interfaces
    [POWERPC] celleb: Move the SCC related code for celleb
    [POWERPC] celleb: Move the files for celleb base support
    [POWERPC] celleb: Consolidate io-workarounds code
    [POWERPC] cell: Generalize io-workarounds code
    [POWERPC] Add CONFIG_PPC_PSERIES_DEBUG to enable debugging for platforms/pseries
    [POWERPC] Convert from DBG() to pr_debug() in platforms/pseries/
    [POWERPC] Register udbg console early on pseries LPAR
    [POWERPC] Mark udbg console as CON_ANYTIME, ie. callable early in boot
    [POWERPC] Set udbg_console index to 0
    ...

    Linus Torvalds
     
  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
    [PATCH] Build fix for CONFIG_NUMA=y && CONFIG_SMP=n
    [IA64] fix bootmem regression on Altix

    Linus Torvalds
     
  • * 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds:
    leds: Add default-on trigger
    leds: Document the context brightness_set needs
    leds: Add new driver for the LEDs on the Freecom FSG-3
    leds: Add support to leds with readable status
    leds: enable support for blink_set() platform hook in leds-gpio
    leds: Cleanup various whitespace and code style issues
    leds: disable triggers on brightness set
    leds: Add mail LED support for "Clevo D400P"

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86-pat:
    generic: add ioremap_wc() interface wrapper
    /dev/mem: make promisc the default
    pat: cleanups
    x86: PAT use reserve free memtype in mmap of /dev/mem
    x86: PAT phys_mem_access_prot_allowed for dev/mem mmap
    x86: PAT avoid aliasing in /dev/mem read/write
    devmem: add range_is_allowed() check to mmap of /dev/mem
    x86: introduce /dev/mem restrictions with a config option

    Linus Torvalds
     
  • …linux-2.6-sched-fixes

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-fixes:
    sched: fix share (re)distribution
    softlockup: fix NOHZ wakeup
    seqlock: livelock fix

    Linus Torvalds
     
  • * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
    pata_bf54x: decrease count first.
    sata_mv: re-enable hotplug, update TODO list
    sata_mv: leave SError bits untouched in mv_err_intr
    sata_mv: more interrupt handling rework
    sata_mv: tidy host controller interrupt handling
    sata_mv: simplify request/response queue handling
    sata_mv: simplify freeze/thaw bit-shift calculations
    sata_mv mask all interrupt coalescing bits
    sata_mv more cosmetics
    ata_piix: add Asus Eee 701 controller to short cable list
    libata-eh set tf flags in NCQ EH result_tf
    make sata_set_spd_needed() static
    make sata_print_link_status() static
    libata-acpi.c: remove unneeded #if's
    sata_nv: make hardreset return -EAGAIN on success
    ahci: retry enabling AHCI a few times before spitting out WARN_ON()
    libata: make WARN_ON conditions in ata_sff_hsm_move() more strict
    ATA/IDE: fix platform driver hotplug/coldplug
    sata_sis: SCR accessors return -EINVAL when requested SCR isn't available
    libata: functions with definition should not be extern

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb-2.6: (120 commits)
    usb: don't update devnum for wusb devices
    wusb: make ep0_reinit available for modules
    wusb: devices dont use a set address
    wusb: teach choose_address() about wireless devices
    wusb: add link wusb-usb device
    wusb: add authenticathed bit to usb_dev
    USB: remove unnecessary type casting of urb->context
    usb serial: more fixes and groundwork for tty changes
    USB: replace remaining __FUNCTION__ occurrences
    USB: usbfs: export the URB_NO_INTERRUPT flag to userspace
    USB: fix compile problems in ehci-hcd
    USB: ehci: qh_completions cleanup and bugfix
    USB: cdc-acm: signedness fix
    USB: add documentation about callbacks
    USB: don't explicitly reenable root-hub status interrupts
    USB: OHCI: turn off RD when remote wakeup is disabled
    USB: HCDs use the do_remote_wakeup flag
    USB: g_file_storage: ignore bulk-out data after invalid CBW
    USB: serial: remove endpoints setting checks from core and header
    USB: serial: remove unneeded number endpoints settings
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input: (40 commits)
    Input: wacom - add support for Cintiq 20WSX
    Input: ucb1400_ts - IRQ probe fix
    Input: at32psif - update MODULE_AUTHOR with new email
    Input: mac_hid - add lockdep annotation to emumousebtn
    Input: i8042 - fix incorrect usage of strncpy and strncat
    Input: bf54x-keys - add infrastructure for keypad wakeups
    Input: add MODULE_ALIAS() to hotpluggable platform modules
    Input: drivers/char/keyboard.c - use time_after
    Input: fix ordering in joystick Makefile
    Input: wm97xx-core - support use as a wakeup source
    Input: wm97xx-core - use IRQF_SAMPLE_RANDOM
    Input: wm97xx-core - only schedule interrupt handler if not already scheduled
    Input: add Zhen Hua driver
    Input: aiptek - add support for Genius G-PEN 560 tablet
    Input: wacom - implement suspend and autosuspend
    Input: xpad - set proper buffer length for outgoing requests
    Input: omap-keypad - fix build warning
    Input: gpio_keys - irq handling cleanup
    Input: add PS/2 serio driver for AVR32 devices
    Input: put ledstate in the keyboard notifier
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild:
    kconfig: fix broken target update-po-config
    kbuild: silence documentation GEN xml messages according to $(quiet)

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm: (24 commits)
    dm crypt: add documentation
    dm: remove md argument from specific_minor
    dm table: remove unused dm_create_error_table
    dm table: drop void suspend_targets return
    dm: unplug queues in threads
    dm raid1: use timer
    dm: move include files
    dm kcopyd: rename
    dm: expose macros
    dm kcopyd: remove redundant client counting
    dm kcopyd: private mempool
    dm kcopyd: per device
    dm log: make module use tracking internal
    dm log: move register functions
    dm log: clean interface
    dm kcopyd: clean interface
    dm io: clean interface
    dm io: rename error to error_bits
    dm snapshot: store pointer to target instance
    dm log: move dirty region log code into separate module
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-xen-next: (52 commits)
    xen: add balloon driver
    xen: allow compilation with non-flat memory
    xen: fold xen_sysexit into xen_iret
    xen: allow set_pte_at on init_mm to be lockless
    xen: disable preemption during tlb flush
    xen pvfb: Para-virtual framebuffer, keyboard and pointer driver
    xen: Add compatibility aliases for frontend drivers
    xen: Module autoprobing support for frontend drivers
    xen blkfront: Delay wait for block devices until after the disk is added
    xen/blkfront: use bdget_disk
    xen: Make xen-blkfront write its protocol ABI to xenstore
    xen: import arch generic part of xencomm
    xen: make grant table arch portable
    xen: replace callers of alloc_vm_area()/free_vm_area() with xen_ prefixed one
    xen: make include/xen/page.h portable moving those definitions under asm dir
    xen: add resend_irq_on_evtchn() definition into events.c
    Xen: make events.c portable for ia64/xen support
    xen: move events.c to drivers/xen for IA64/Xen support
    xen: move features.c from arch/x86/xen/features.c to drivers/xen
    xen: add missing definitions in include/xen/interface/vcpu.h which ia64/xen needs
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    [SPARC64]: Wrap SMP IPIs with irq_enter()/irq_exit().
    [SPARC64]: Fix args to 64-bit sys_semctl() via sys_ipc().

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (48 commits)
    net: Fix wrong interpretation of some copy_to_user() results.
    xfrm: alg_key_len & alg_icv_len should be unsigned
    [netdrvr] tehuti: move ioctl perm check closer to function start
    ipv6: Fix typo in net/ipv6/Kconfig
    via-velocity: fix vlan receipt
    tg3: sparse cleanup
    forcedeth: realtek phy crossover detection
    ibm_newemac: Increase MDIO timeouts
    gianfar: Fix skb allocation strategy
    netxen: reduce stack usage of netxen_nic_flash_print
    smc911x: test after postfix decrement fails in smc911x_{reset,drop_pkt}
    net drivers: fix platform driver hotplug/coldplug
    forcedeth: new backoff implementation
    ehea: make things static
    phylib: Add support for board-level PHY fixups
    [netdrvr] atlx: code movement: move atl1 parameter parsing
    atlx: remove flash vendor parameter
    korina: misc cleanup
    korina: fix misplaced return statement
    WAN: Fix confusing insmod error code for C101 too.
    ...

    Linus Torvalds
     
  • Add some autogenerated files to various .gitignore files

    Signed-off-by: Matthew Wilcox
    Signed-off-by: Linus Torvalds

    Matthew Wilcox
     
  • * git://git.infradead.org/mtd-2.6: (82 commits)
    [MTD] m25p80: Add Support for ATMEL AT25DF641 64-Megabit SPI Flash
    [MTD] m25p80: add FAST_READ access support to M25Pxx
    [MTD] [NAND] bf5xx_nand: Avoid crash if bfin_mac is installed.
    [MTD] [NAND] at91_nand: control NCE signal
    [MTD] [NAND] AT91 hardware ECC compile fix for at91sam9263 / at91sam9260
    [MTD] [NAND] Hardware ECC controller on at91sam9263 / at91sam9260
    [JFFS2] Introduce dbg_readinode2 log level, use it to shut read_dnode() up
    [JFFS2] Fix jffs2_reserve_space() when all blocks are pending erasure.
    [JFFS2] Add erase_checking_list to hold blocks being marked.
    UBI: add a message
    [JFFS2] Return values of jffs2_block_check_erase error paths
    [MTD] Clean up AR7 partition map support
    [MTD] [NOR] Fix Intel CFI driver for collie flash
    [JFFS2] Finally remove redundant ref->__totlen field.
    [JFFS2] Honour TEST_TOTLEN macro in debugging code. ref->__totlen is going!
    [JFFS2] Add paranoia debugging for superblock counts
    [JFFS2] Fix free space leak with in-band cleanmarkers
    [JFFS2] Self-sufficient #includes in jffs2_fs_i.h: include
    [MTD] [NAND] Verify probe by retrying to checking the results match
    [MTD] [NAND] S3C2410 Allow ECC disable to be specified by the board
    ...

    Linus Torvalds
     
  • …linux-2.6-sched-fixes2

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched-fixes2:
    sched: use alloc_bootmem() instead of alloc_bootmem_low()

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
    ieee1394: silence defined but not used warning in non-modular builds
    ieee1394: rawiso: requeue packet for transmission after skipped cycle

    Linus Torvalds
     
  • Massimo Maiurana reported:
    In the latest kernel "make update-po-config" fails because it tries
    to open arch/Kconfig/Kconfig, since the ls command doesn't
    distinguish between files and directories.

    Cc: Massimo Maiurana
    Signed-off-by: Sam Ravnborg

    Sam Ravnborg
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild:
    kbuild: fix depmod comment
    kbuild: Add new Kbuild variable KBUILD_EXTRA_SYMBOLS
    kbuild: support loading extra symbols in modpost
    Add option to enable -Wframe-larger-than= on gcc 4.4
    kbuild: add kconfig symbols to tags output
    kbuild: fix some minor typoes
    kbuild: error out on missing MODULE_LICENSE

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-x86-fixes4:
    x86: harden kernel code patching
    x86: clean up text_poke()
    x86: fix text_poke()
    x86: remove set_fixmap() warning
    x86: make __set_fixmap() non-init
    x86: make clear_fixmap() available on 64-bit as well

    Linus Torvalds
     
  • Add rules for gen_xml and its quiet & silent variants. This causes "make -s"
    to be silent for gen_xml.

    Signed-off-by: Mike Frysinger
    Acked-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Sam Ravnborg

    Mike Frysinger
     
  • Signed-off-by: Uwe Kleine-König
    Cc: trivial@kernel.org
    Signed-off-by: Sam Ravnborg

    Uwe Kleine-König
     
  • * 'for-linus' of git://linux-nfs.org/~bfields/linux:
    nfsd: don't allow setting ctime over v4
    Update to NFS/RDMA documentation
    locks: don't call ->copy_lock methods on return of conflicting locks
    lockd: unlock lockd locks held for a certain filesystem
    lockd: unlock lockd locks associated with a given server ip
    leases: remove unneeded variable from fcntl_setlease().
    leases: move lock allocation earlier in generic_setlease()
    leases: when unlocking, skip locking-related steps
    leases: fix a return-value mixup

    Linus Torvalds
     
  • This patch adds a new (Kbuild) Makefile variable KBUILD_EXTRA_SYMBOLS.
    The space separated list of file names assigned to KBUILD_EXTRA_SYMBOLS
    is used when calling scripts/mod/modpost during stage 2 of the Kbuild
    process for non-kernel-tree modules.

    Signed-off-by: Richard Hacker
    Signed-off-by: Sam Ravnborg

    Richard Hacker
     
  • This patch adds a new command line option -E to modpost, expecting a symbol
    file as an argument which is read prior to symbol processing. -E can be
    supplied multiple times for as many files as is needed.

    When building kernel modules that depend on other modules not in the main
    kernel tree, modpost complains about undefined symbols:
    # make -C /path/to/linux/kernel M=/path/to/my/module
    ...
    Building modules, stage 2.
    ....
    WARNING: "rt_copy_buf" [/home/rich/osc_etl_rtw/osc_kmod.ko] undefined!
    ...etc

    This situation occurs when modpost processes the new module's symbols. When
    it finds symbols not exported by the mainline kernel, it issues this warning.

    The patch adds a new command line option -e to modpost which expects a symbol
    file as an argument. The symbols listed in this file are added to modpost's
    symbol tables during startup. -e can be supplied as often as required.

    This patch works together with the second patch. It introduces a new make
    variable, KBUILD_EXTRA_SYMBOLS, which is used when calling modpost.

    Signed-off-by: Richard Hacker
    Signed-off-by: Sam Ravnborg

    Richard Hacker
     
  • Add option to enable -Wframe-larger-than= on gcc 4.4

    gcc mainline (upcoming 4.4) added a new -Wframe-larger-than=...
    option to warn at build time about too large stack frames. Add a config
    option to enable this warning, since this very useful for the kernel.

    I choose (somewhat arbitarily) 2048 as default warning threshold for 64bit
    and 1024 as default for 32bit architectures. With some research and
    fixing all the code for smaller values these defaults should be probably
    lowered.

    With the default allyesconfigs have some new warnings, but I think
    that is all code that should be just fixed.

    At some point (when gcc 4.4 is released and widely used) this should
    obsolete make checkstack

    Signed-off-by: Andi Kleen
    Signed-off-by: Sam Ravnborg

    Andi Kleen
     
  • Steps to reproduce:

    vi -t NETFILTER

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: Sam Ravnborg

    Alexey Dobriyan
     
  • Signed-off-by: Robert P. J. Day
    Signed-off-by: Sam Ravnborg

    Robert P. J. Day
     
  • Adrian Bunk suggested a build time check for
    missing MODULE_LICENSE annotation in modules.
    The build time check is fatal as we really
    want this fixed for all modules.
    In-tree modules should all have been fixed up by now.

    Signed-off-by: Sam Ravnborg
    Cc: Adrian Bunk

    Sam Ravnborg
     
  • Signed-off-by: Jonathan Corbet

    Jonathan Corbet
     
  • Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • Clean up the codepath, remove alignment restrictions and do sanity
    checking of the end result, to make sure we patched the right site.

    Signed-off-by: Mathieu Desnoyers
    Signed-off-by: Ingo Molnar

    Mathieu Desnoyers
     
  • kernel_text_address returns true even for modules which is not wanted
    in text_poke. Use core_kernel_text instead.

    This is a regression introduced in e587cadd8f47e202a30712e2906a65a0606d5865
    which caused occasionaly crashes after suspend/resume.

    Signed-off-by: Jiri Slaby
    CC: Mathieu Desnoyers
    CC: Andi Kleen
    CC: pageexec@freemail.hu
    CC: H. Peter Anvin
    CC: Jeremy Fitzhardinge
    Signed-off-by: Ingo Molnar

    Jiri Slaby
     
  • set_fixmap()+clear_fixmap() is safe.

    Signed-off-by: Ingo Molnar

    Ingo Molnar