29 Apr, 2008

40 commits

  • SGI-PV: 976035
    SGI-Modid: xfs-linux-melb:xfs-kern:30913a

    Signed-off-by: Barry Naujok
    Signed-off-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

    Barry Naujok
     
  • The VFS always has an inode reference when we call these functions. So we
    only need to grab a signle reference to each inode that's joined to a
    transaction - all the other bumping and dropping is as useless as the
    comments describing the IRIX semantics.

    SGI-PV: 976035
    SGI-Modid: xfs-linux-melb:xfs-kern:30912a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     
  • VFS guaranteed these can't happen.

    SGI-PV: 976035
    SGI-Modid: xfs-linux-melb:xfs-kern:30911a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     
  • Similar to to the previous patch for remove and rmdir only grab a
    reference to inodes when we join them to transaction to balance the
    decrement on transaction completion. Everything else it taken care of by
    the VFS.

    Note that the old case had leaks of inode count when src == target or src
    or target == one of the parent inodes, but these cases are fortunately
    already rejected by the VFS.

    SGI-PV: 976035
    SGI-Modid: xfs-linux-melb:xfs-kern:30904a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     
  • ->rename already gets the target inode passed if it exits. Pass it down to
    xfs_rename so that we can avoid looking it up again. Also simplify locking
    as the first lock section in xfs_rename can go away now: the isdir is an
    invariant over the lifetime of the inode, and new_parent and the nlink
    check are namespace topology protected by i_mutex in the VFS. The projid
    check needs to move into the second lock section anyway to not be racy.

    Also kill the now unused xfs_dir_lookup_int and remove the now-unused
    first_locked argumet to xfs_lock_inodes.

    SGI-PV: 976035
    SGI-Modid: xfs-linux-melb:xfs-kern:30903a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     
  • The writer field is not needed for non_DEBU builds so remove it. While
    we're at i also clean up the interface for is locked asserts to go through
    and xfs_iget.c helper with an interface like the xfs_ilock routines to
    isolated the XFS codebase from mrlock internals. That way we can kill
    mrlock_t entirely once rw_semaphores grow an islocked facility. Also
    remove unused flags to the ilock family of functions.

    SGI-PV: 976035
    SGI-Modid: xfs-linux-melb:xfs-kern:30902a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     
  • Opencode xfs-kill-xfs_dir_lookup_int here, which gets rid of a lock
    roundtrip, and lots of stack space. Also kill the di_mode == 0 check that
    has been done in xfs_iget for a few years now.

    SGI-PV: 976035
    SGI-Modid: xfs-linux-melb:xfs-kern:30901a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     
  • Similar to rmdir and remove - avoids a potential transaction reservation
    overrun.

    SGI-PV: 976035
    SGI-Modid: xfs-linux-melb:xfs-kern:30900a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     
  • Unless XFS_IGET_CREATE is passed xfs_iget will return ENOENT if it
    encounters an inode with di_mode == 0. Remove the duplicated checks in the
    callers.

    (the log recovery case is not touched for now)

    SGI-PV: 976035
    SGI-Modid: xfs-linux-melb:xfs-kern:30898a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     
  • It's currently used by the ACL code to read di_mode/di_uid, but these are
    simple 32bit scalar values we can just read directly without locking.

    SGI-PV: 976035
    SGI-Modid: xfs-linux-melb:xfs-kern:30897a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

    Christoph Hellwig
     
  • We can just check i_mode / di_mode directly.

    SGI-PV: 976035
    SGI-Modid: xfs-linux-melb:xfs-kern:30896a

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Lachlan McIlroy

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

    Harvey Harrison
     
  • drivers/media/video/v4l2-common.c:719:16: warning: Using plain integer as NULL pointer
    drivers/media/video/au0828/au0828-dvb.c:122:19: warning: Using plain integer as NULL pointer
    drivers/media/video/ivtv/ivtv-yuv.c:1101:22: warning: Using plain integer as NULL pointer
    drivers/media/video/ivtv/ivtv-yuv.c:1102:23: warning: Using plain integer as NULL pointer
    drivers/media/video/pvrusb2/pvrusb2-audio.c:78:39: warning: Using plain integer as NULL pointer
    drivers/media/video/pvrusb2/pvrusb2-video-v4l.c:84:39: warning: Using plain integer as NULL pointer
    drivers/media/video/pvrusb2/pvrusb2-v4l2.c:1264:9: warning: Using plain integer as NULL pointer
    drivers/media/video/pvrusb2/pvrusb2-context.c:197:28: warning: Using plain integer as NULL pointer
    drivers/media/video/pvrusb2/pvrusb2-cx2584x-v4l.c:126:39: warning: Using plain integer as NULL pointer
    drivers/media/video/pvrusb2/pvrusb2-dvb.c:133:32: warning: Using plain integer as NULL pointer
    drivers/media/video/pvrusb2/pvrusb2-dvb.c:145:31: warning: Using plain integer as NULL pointer
    drivers/media/video/pvrusb2/pvrusb2-dvb.c:177:55: warning: Using plain integer as NULL pointer
    drivers/media/video/videobuf-core.c:100:9: warning: Using plain integer as NULL pointer

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

    Harvey Harrison
     
  • drivers/scsi/aic7xxx/aic7770_osm.c:53:58: warning: Using plain integer as NULL pointer
    drivers/scsi/aic7xxx/aic7xxx_osm_pci.c:355:47: warning: Using plain integer as NULL pointer
    drivers/scsi/aic7xxx/aic7xxx_osm_pci.c:372:55: warning: Using plain integer as NULL pointer
    drivers/scsi/aha152x.c:997:28: warning: Using plain integer as NULL pointer
    drivers/scsi/aha152x.c:1003:28: warning: Using plain integer as NULL pointer
    drivers/scsi/aha152x.c:1165:46: warning: Using plain integer as NULL pointer
    drivers/scsi/fdomain.c:1446:40: warning: Using plain integer as NULL pointer
    drivers/scsi/sym53c8xx_2/sym_hipd.c:1650:51: warning: Using plain integer as NULL pointer
    drivers/scsi/sym53c8xx_2/sym_hipd.c:3171:42: warning: Using plain integer as NULL pointer
    drivers/scsi/sym53c8xx_2/sym_hipd.c:5732:52: warning: Using plain integer as NULL pointer
    drivers/scsi/ncr53c8xx.c:8189:31: warning: Using plain integer as NULL pointer
    drivers/scsi/ncr53c8xx.c:8225:34: warning: Using plain integer as NULL pointer
    drivers/scsi/dpt_i2o.c:156:32: warning: Using plain integer as NULL pointer
    drivers/scsi/ultrastor.c:954:42: warning: Using plain integer as NULL pointer
    drivers/scsi/ultrastor.c:1104:18: warning: Using plain integer as NULL pointer

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

    Harvey Harrison
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (35 commits)
    siimage: coding style cleanup (take 2)
    ide-cd: clean up cdrom_analyze_sense_data()
    ide-cd: fix test unsigned var < 0
    ide: add TSSTcorp CDDVDW SH-S202H to ivb_list[]
    piix: add Asus Eee 701 controller to short cable list
    ARM: always select HAVE_IDE
    remove the broken ETRAX_IDE driver
    ide: remove ->dma_prdtable field from ide_hwif_t
    ide: remove ->dma_vendor{1,3} fields from ide_hwif_t
    scc_pata: add ->dma_host_set and ->dma_start methods
    ide: skip "VLB sync" if host uses MMIO
    ide: add ide_pad_transfer() helper
    ide: remove ->INW and ->OUTW methods
    ide: use IDE I/O helpers directly in ide_tf_{load,read}()
    ns87415: add ->tf_read method
    scc_pata: add ->tf_{load,read} methods
    ide-h8300: add ->tf_{load,read} methods
    ide-cris: add ->tf_{load,read} methods
    ide: add ->tf_load and ->tf_read methods
    ide: move ide_tf_{load,read} to ide-iops.c
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild:
    kconfig: add named choice group
    kconfig: fix choice dependency check
    kconifg: 'select' considered less evil
    dontdiff: ignore timeconst.h
    dontdiff: add modules.order
    kbuild: fix unportability in gen_initramfs_list.sh
    kbuild: fix help output to show correct arch
    kbuild: show defconfig subdirs in make help
    kconfig: reversed borderlines in inputbox

    Linus Torvalds
     
  • drivers/atm/nicstar.c:418:25: warning: Using plain integer as NULL pointer
    drivers/char/drm/r128_cce.c:820:25: warning: Using plain integer as NULL pointer
    drivers/char/tty_io.c:1183:10: warning: Using plain integer as NULL pointer

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

    Harvey Harrison
     
  • mm/hugetlb.c:207:11: warning: Using plain integer as NULL pointer

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

    Harvey Harrison
     
  • kernel/cpuset.c:1268:52: warning: Using plain integer as NULL pointer
    kernel/pid_namespace.c:95:24: warning: Using plain integer as NULL pointer

    Signed-off-by: Harvey Harrison
    Reviewed-by: Paul Jackson
    Signed-off-by: Linus Torvalds

    Harvey Harrison
     
  • init/do_mounts_rd.c:215:13: warning: Using plain integer as NULL pointer
    init/do_mounts_md.c:136:45: warning: Using plain integer as NULL pointer

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

    Harvey Harrison
     
  • Fix 18 errors and several warnings given by checkpatch.pl:

    - use of C99 // comments;

    - trailing whitespace;

    - 'switch' and 'case' not at the same indentation level;

    - no space before the open parenthesis of the 'if' and 'switch' statements;

    - space between function name and open parenthesis (though I have introduced
    such warnins in some places since the code looks prettier with the spaces);

    - including instead of ;

    - line over 80 characters.

    In addition to these changes, also do the following:

    - make the arrays in sil_set_pio_mode() 'static', and make the arrays in
    sil_set_dma_mode() 'static const';

    - change the string of the 'if' statements into the 'switch' statement in
    sil_pata_udma_filter();

    - drop the needless '==' operators from the 'if' statements where a condition
    is a mere bit test;

    - remove needless initializer for the 'tmp' variable in init_chipset_siimage();

    - beautify groups of the variable initializers and assignment operators;

    - add new line after variable definitions;

    - remove new line between the comment and the statements it refers to;

    - remove needless curly braces and parentheses;

    - fix typos, capitalize acronyms, etc. in the comments...

    Signed-off-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Sergei Shtylyov
     
  • [bart: fix handling of bio_sectors(failed_command->bio) == 0]

    Signed-off-by: Roel Kluin
    Cc: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Roel Kluin
     
  • valid is unsigned and cannot be below 0.

    Signed-off-by: Roel Kluin
    Cc: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Roel Kluin
     
  • Signed-off-by: Bartlomiej Zolnierkiewicz

    Alexander Smal
     
  • Based on ata_piix patch by Dan McGee.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • It's plain wrong for PCMCIA to select HAVE_IDE that implies e.g. the
    availability of an asm/ide.h

    It turns out this was done for ARM, and we can simply always select
    HAVE_IDE on ARM instead of manually tracking which platforms might
    possible have an IDE controller directly or indirectly.

    Signed-off-by: Adrian Bunk
    Cc: Russell King
    Cc: Sam Ravnborg
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Adrian Bunk
     
  • ETRAX_IDE was marked as broken last year with the comment
    "it doesn't even compile currently".

    Remove it since it won't get fixed in the near future.

    On Mon, Apr 14, 2008 at 02:50:19PM +0200, Mikael Starvik wrote:
    > You can remove it for now and we will resubmit a new if/when we get around
    > to fix it.

    [bart: ported it over IDE tree]

    Signed-off-by: Adrian Bunk
    Cc: Mikael Starvik
    Cc: Jesper Nilsson
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Adrian Bunk
     
  • * Use 'hwif->dma_base + {4,8}' instead of hwif->dma_prdtable in
    {ide,scc}_dma_setup().

    * Remove no longer needed ->dma_prdtable field from ide_hwif_t.

    While at it:

    * Use ATA_DMA_TABLE_OFS define.

    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Use 'hwif->dma_base + {1,3}' instead of hwif->dma_vendor{1,3} in
    pdc202xx_new host driver.

    * Remove no longer needed ->dma_vendor{1,3} fields from ide_hwif_t.

    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Add ->dma_host_set and ->dma_start methods (+ __scc_dma_end() helper)
    so scc_ide_{in,out}b() can be used directly.

    There should be no functional changes caused by this patch.

    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Skip "VLB sync" in ata_{in,out}put_data() if host uses MMIO.

    * Use I/O ops directly in ata_vlb_sync() an drop no longer needed
    'ide_drive_t *drive' argument.

    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Add ide_pad_transfer() helper (which uses ->{in,out}put_data methods
    internally so the transfer is also padded to drive+host requirements)
    and use it instead of ide_atapi_{write_zeros,discard_data}().

    * Remove no longer needed ide_atapi_{write_zeros,discard_data}().

    Cc: Borislav Petkov
    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Remove no longer used ->INW and ->OUTW methods.

    While at it:

    * scc_pata.c: scc_ide_{out,in}w() is called only in scc_tf_{load,read}()
    so inline it there.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • There should be no functional changes caused by this patch.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Add ->tf_read method so out{b,w}(), in{b,w}() and superio_ide_inb()
    can be used directly.

    There should be no functional changes caused by this patch.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Add ->tf_{load,read} methods so scc_ide_{outb,outw,inb,inw}()
    can be used directly.

    There should be no functional changes caused by this patch.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Add ->tf_{load,read} methods so outb()/inb() and mm_outw()/mm_inw()
    can be used directly.

    There should be no functional changes caused by this patch.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Add ->tf_{load,read} methods so cris_ide_{outb,outw,inb,inw}()
    can be used directly.

    There should be no functional changes caused by this patch.

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • * Add ->tf_load and ->tf_read methods to ide_hwif_t and set the default
    methods in default_hwif_transport().

    * Use ->tf_{load,read} instead o calling ide_tf_{load,read}() directly.

    * Make ide_tf_{load,read}() static.

    There should be no functional changes caused by this patch.

    Acked-by: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz