1. 23 Oct, 2008 17 commits
    • Hidehiro Kawai's avatar
      ext3: add checks for errors from jbd · 2d7c820e
      Hidehiro Kawai authored
      If the journal has aborted due to a checkpointing failure, we have to
      keep the contents of the journal space.  Otherwise, the filesystem will
      lose uncheckpointed metadata completely and become inconsistent.  To
      avoid this, we need to keep needs_recovery flag if checkpoint has
      failed.
      
      With this patch, ext3_put_super() detects a checkpointing failure from
      the return value of journal_destroy(), then it invokes ext3_abort() to
      make the filesystem read only and keep needs_recovery flag.  Errors
      from journal_flush() are also handled by this patch in some places.
      Signed-off-by: default avatarHidehiro Kawai <hidehiro.kawai.ez@hitachi.com>
      Cc: Jan Kara <jack@ucw.cz>
      Cc: Stephen Rothwell <sfr@canb.auug.org.au>
      Cc: Al Viro <viro@zeniv.linux.org.uk>
      Cc: <linux-ext4@vger.kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      2d7c820e
    • Hidehiro Kawai's avatar
      jbd: fix error handling for checkpoint io · 4afe9785
      Hidehiro Kawai authored
      When a checkpointing IO fails, current JBD code doesn't check the error
      and continue journaling.  This means latest metadata can be lost from both
      the journal and filesystem.
      
      This patch leaves the failed metadata blocks in the journal space and
      aborts journaling in the case of log_do_checkpoint().  To achieve this, we
      need to do:
      
      1. don't remove the failed buffer from the checkpoint list where in
         the case of __try_to_free_cp_buf() because it may be released or
         overwritten by a later transaction
      2. log_do_checkpoint() is the last chance, remove the failed buffer
         from the checkpoint list and abort the journal
      3. when checkpointing fails, don't update the journal super block to
         prevent the journaled contents from being cleaned.  For safety,
         don't update j_tail and j_tail_sequence either
      4. when checkpointing fails, notify this error to the ext3 layer so
         that ext3 don't clear the needs_recovery flag, otherwise the
         journaled contents are ignored and cleaned in the recovery phase
      5. if the recovery fails, keep the needs_recovery flag
      6. prevent cleanup_journal_tail() from being called between
         __journal_drop_transaction() and journal_abort() (a race issue
         between journal_flush() and __log_wait_for_space()
      Signed-off-by: default avatarHidehiro Kawai <hidehiro.kawai.ez@hitachi.com>
      Acked-by: default avatarJan Kara <jack@suse.cz>
      Cc: <linux-ext4@vger.kernel.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      4afe9785
    • Paul Mundt's avatar
      profiling: fix up CONFIG_PROC_FS=n build · 66f50ee3
      Paul Mundt authored
      In the case where procfs is disabled, create_proc_profile() does not
      exist. Stub it in with the others.
      Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      66f50ee3
    • Paul Mundt's avatar
      mm: page_cgroup needs linux/vmalloc.h for vmalloc_node()/vfree(). · 4c821042
      Paul Mundt authored
      mm/page_cgroup.c: In function 'init_section_page_cgroup':
      mm/page_cgroup.c:111: error: implicit declaration of function 'vmalloc_node'
      mm/page_cgroup.c:111: warning: assignment makes pointer from integer without a cast
      mm/page_cgroup.c: In function '__free_page_cgroup':
      mm/page_cgroup.c:140: error: implicit declaration of function 'vfree'
      Signed-off-by: default avatarPaul Mundt <lethal@linux-sh.org>
      Reviewed-by: default avatarKAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      4c821042
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · 9bf9b2f3
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (53 commits)
        powerpc: Support for relocatable kdump kernel
        powerpc: Don't use a 16G page if beyond mem= limits
        powerpc: Add del_node() for early boot code to prune inapplicable devices.
        powerpc: Further compile fixup for STRICT_MM_TYPECHECKS
        powerpc: Remove empty #else from signal_64.c
        powerpc: Move memory size print into common show_cpuinfo for 32-bit
        hvc_console: Remove __devexit annotation of hvc_remove()
        hvc_console: Add support for tty window resizing
        hvc_console: Fix loop if put_char() returns 0
        hvc_console: Add tty driver flag TTY_DRIVER_RESET_TERMIOS
        hvc_console: Add a hangup notifier for backends
        powerpc/83xx: Add DS1339 RTC support for MPC8349E-mITX boards .dts
        powerpc/83xx: Add support for MCU microcontroller in .dts files
        powerpc/85xx: Move mpc8572ds.dts to address-cells/size-cells = <2>
        of/spi: Support specifying chip select as active high via device tree
        powerpc: Remove device_type = "board_control" properties in .dts files
        i2c-cpm: Suppress autoprobing for devices
        powerpc/85xx: Fix mpc8536ds dma interrupt numbers
        powerpc/85xx: Enable enhanced functions for 8536 TSEC
        powerpc: Delete unused prom_strtoul and prom_memparse
        ...
      9bf9b2f3
    • Linus Torvalds's avatar
      Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb · 9779a832
      Linus Torvalds authored
      * 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb: (47 commits)
        uwb: wrong sizeof argument in mac address compare
        uwb: don't use printk_ratelimit() so often
        uwb: use kcalloc where appropriate
        uwb: use time_after() when purging stale beacons
        uwb: add credits for the original developers of the UWB/WUSB/WLP subsystems
        uwb: add entries in the MAINTAINERS file
        uwb: depend on EXPERIMENTAL
        wusb: wusb-cbaf (CBA driver) sysfs ABI simplification
        uwb: document UWB and WUSB sysfs files
        uwb: add symlinks in sysfs between radio controllers and PALs
        uwb: dont tranmit identification IEs
        uwb: i1480/GUWA100U: fix firmware download issues
        uwb: i1480: remove MAC/PHY information checking function
        uwb: add Intel i1480 HWA to the UWB RC quirk table
        uwb: disable command/event filtering for D-Link DUB-1210
        uwb: initialize the debug sub-system
        uwb: Fix handling IEs with empty IE data in uwb_est_get_size()
        wusb: fix bmRequestType for Abort RPipe request
        wusb: fix error path for wusb_set_dev_addr()
        wusb: add HWA host controller driver
        ...
      9779a832
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.o-hand.com/linux-mfd · 309e1e42
      Linus Torvalds authored
      * 'for-next' of git://git.o-hand.com/linux-mfd:
        mfd: check for platform_get_irq() return value in sm501
        mfd: use pci_ioremap_bar() in sm501
        mfd: Don't store volatile bits in WM8350 register cache
        mfd: don't export wm3850 static functions
        mfd: twl4030-gpio driver
        mfd: rtc-twl4030 driver
        mfd: twl4030 IRQ handling update
      309e1e42
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband · 724bdd09
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
        IB/ehca: Reject dynamic memory add/remove when ehca adapter is present
        IB/ehca: Fix reported max number of QPs and CQs in systems with >1 adapter
        IPoIB: Set netdev offload features properly for child (VLAN) interfaces
        IPoIB: Clean up ethtool support
        mlx4_core: Add Ethernet PCI device IDs
        mlx4_en: Add driver for Mellanox ConnectX 10GbE NIC
        mlx4_core: Multiple port type support
        mlx4_core: Ethernet MAC/VLAN management
        mlx4_core: Get ethernet MTU and default address from firmware
        mlx4_core: Support multiple pre-reserved QP regions
        Update NetEffect maintainer emails to Intel emails
        RDMA/cxgb3: Remove cmid reference on tid allocation failures
        IB/mad: Use krealloc() to resize snoop table
        IPoIB: Always initialize poll_timer to avoid crash on unload
        IB/ehca: Don't allow creating UC QP with SRQ
        mlx4_core: Add QP range reservation support
        RDMA/ucma: Test ucma_alloc_multicast() return against NULL, not with IS_ERR()
      724bdd09
    • Linus Torvalds's avatar
      Merge branch 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev · dc8dcad8
      Linus Torvalds authored
      * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
        sata_via: load DEVICE register when CTL changes
        libata: set device class to NONE if phys_offline
        libata-eh: fix slave link EH action mask handling
        libata: transfer EHI control flags to slave ehc.i
        libata-sff: fix ata_sff_post_internal_cmd()
        libata: initialize port_task when !CONFIG_ATA_SFF
      dc8dcad8
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm · fdc76bf9
      Linus Torvalds authored
      * 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm:
        [ARM] clps711x: add sparsemem definitions
        [ARM] 5315/1: Fix section mismatch warning (sa1111)
        [ARM] Orion: activate workaround for 88f6183 SPI clock erratum
        [ARM] Orion: instantiate the dsa switch driver
        [ARM] mv78xx0: force link speed/duplex on eth2/eth3
        [ARM] remove extra brace in arch/arm/mach-pxa/trizeps4.c
        [ARM] balance parenthesis in header file
        [ARM] pxa: fix trizeps PCMCIA build
        [ARM] pxa: fix trizeps defconfig
        [ARM] dmabounce requires ZONE_DMA
        [ARM] 5303/1: period_cycles should be greater than 1
        [ARM] 5310/1: Fix cache flush functions for ARMv4
        [ARM] pxa: fix 3bca103a
        [ARM] pxa: fix redefinition of NR_IRQS
        [ARM] S3C24XX: Fix redefine of DEFINE_TIMER() in s3c24xx pwm-clock.c
        [ARM] S3C2443: Fix HCLK rate
        [ARM] S3C24XX: Serial driver debug depends on DEBUG_LL
        [ARM] S3C24XX: pwm-clock set_parent mask fix
      fdc76bf9
    • Linus Torvalds's avatar
      Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 · 72441bdc
      Linus Torvalds authored
      * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6: (41 commits)
        [IA64] Fix annoying IA64_TR_ALLOC_MAX message.
        [IA64] kill sys32_pipe
        [IA64] remove sys32_pause
        [IA64] Add Variable Page Size and IA64 Support in Intel IOMMU
        ia64/pv_ops: paravirtualized instruction checker.
        ia64/xen: a recipe for using xen/ia64 with pv_ops.
        ia64/pv_ops: update Kconfig for paravirtualized guest and xen.
        ia64/xen: preliminary support for save/restore.
        ia64/xen: define xen machine vector for domU.
        ia64/pv_ops/xen: implement xen pv_time_ops.
        ia64/pv_ops/xen: implement xen pv_irq_ops.
        ia64/pv_ops/xen: define the nubmer of irqs which xen needs.
        ia64/pv_ops/xen: implement xen pv_iosapic_ops.
        ia64/pv_ops/xen: paravirtualize entry.S for ia64/xen.
        ia64/pv_ops/xen: paravirtualize ivt.S for xen.
        ia64/pv_ops/xen: paravirtualize DO_SAVE_MIN for xen.
        ia64/pv_ops/xen: define xen paravirtualized instructions for hand written assembly code
        ia64/pv_ops/xen: define xen pv_cpu_ops.
        ia64/pv_ops/xen: define xen pv_init_ops for various xen initialization.
        ia64/pv_ops/xen: elf note based xen startup.
        ...
      72441bdc
    • Tejun Heo's avatar
      sata_via: load DEVICE register when CTL changes · b78152e9
      Tejun Heo authored
      VIA controllers clear DEVICE register when IEN changes.  Make sure
      DEVICE is updated along with CTL.
      
      This change is separated from Joseph Chan's larger patch.
      
        http://thread.gmane.org/gmane.linux.kernel.commits.mm/40640Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Cc: Joseph Chan <JosephChan@via.com.tw>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      b78152e9
    • Tejun Heo's avatar
      libata: set device class to NONE if phys_offline · 816ab897
      Tejun Heo authored
      Reset methods don't have access to phys link status for slave links
      and may incorrectly indicate device presence causing unnecessary probe
      failures for unoccupied links.  This patch clears device class to NONE
      during post-reset processing if phys link is offline.
      
      As on/offlineness semantics is strictly defined and used in multiple
      places by the core layer, this won't change behavior for drivers which
      don't use slave links.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      816ab897
    • Tejun Heo's avatar
      libata-eh: fix slave link EH action mask handling · a568d1d2
      Tejun Heo authored
      Slave link action mask is transferred to master link and all the EH
      actions are taken by the master link.  ata_eh_about_to_do() and
      ata_eh_done() are called with ATA_EH_ALL_ACTIONS to clear the slave
      link actions during transfer.  This always sets ATA_PFLAG_RECOVERED
      flag causing spurious "EH complete" messages.
      
      Don't set ATA_PFLAG_RECOVERED for slave link actions.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      a568d1d2
    • Tejun Heo's avatar
      libata: transfer EHI control flags to slave ehc.i · 848e4c68
      Tejun Heo authored
      ATA_EHI_NO_AUTOPSY and ATA_EHI_QUIET are used to control the behavior
      of EH.  As only the master link is visible outside EH, these flags are
      set only for the master link although they should also apply to the
      slave link, which causes spurious EH messages during probe and
      suspend/resume.
      
      This patch transfers those two flags to slave ehc.i before performing
      slave autopsy and reporting.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      848e4c68
    • Tejun Heo's avatar
      libata-sff: fix ata_sff_post_internal_cmd() · 570106df
      Tejun Heo authored
      ata_sff_post_internal_cmd() needs to grab port lock before calling
      ata_bmdma_stop() and also need to clear hsm_task_state.  Fix it.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      570106df
    • Tejun Heo's avatar
      libata: initialize port_task when !CONFIG_ATA_SFF · f667fdbb
      Tejun Heo authored
      ap->port_task was not initialized if !CONFIG_ATA_SFF later triggering
      lockdep warning.  Make sure it's initialized.
      
      Reported by Larry Finger.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Cc: Larry Finger <Larry.Finger@lwfinger.net>
      Signed-off-by: default avatarJeff Garzik <jgarzik@redhat.com>
      f667fdbb
  2. 22 Oct, 2008 19 commits
  3. 21 Oct, 2008 4 commits