Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 19 Feb 2009 02:33:04 +0000 (18:33 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 19 Feb 2009 02:33:04 +0000 (18:33 -0800)
* 'for-linus' of git://git.kernel.dk/linux-2.6-block:
  block: fix deadlock in blk_abort_queue() for drivers that readd to timeout list
  block: fix booting from partitioned md array
  block: revert part of 18ce3751ccd488c78d3827e9f6bf54e6322676fb
  cciss: PCI power management reset for kexec
  paride/pg.c: xs(): &&/|| confusion
  fs/bio: bio_alloc_bioset: pass right object ptr to mempool_free
  block: fix bad definition of BIO_RW_SYNC
  bsg: Fix sense buffer bug in SG_IO

1  2 
fs/buffer.c
include/linux/fs.h

diff --combined fs/buffer.c
@@@ -777,7 -777,6 +777,7 @@@ static int __set_page_dirty(struct pag
                        __inc_zone_page_state(page, NR_FILE_DIRTY);
                        __inc_bdi_stat(mapping->backing_dev_info,
                                        BDI_RECLAIMABLE);
 +                      task_dirty_inc(current);
                        task_io_account_write(PAGE_CACHE_SIZE);
                }
                radix_tree_tag_set(&mapping->page_tree,
@@@ -3109,7 -3108,7 +3109,7 @@@ int sync_dirty_buffer(struct buffer_hea
        if (test_clear_buffer_dirty(bh)) {
                get_bh(bh);
                bh->b_end_io = end_buffer_write_sync;
-               ret = submit_bh(WRITE_SYNC, bh);
+               ret = submit_bh(WRITE, bh);
                wait_on_buffer(bh);
                if (buffer_eopnotsupp(bh)) {
                        clear_buffer_eopnotsupp(bh);
diff --combined include/linux/fs.h
@@@ -54,30 -54,24 +54,30 @@@ struct inodes_stat_t 
  #define MAY_ACCESS 16
  #define MAY_OPEN 32
  
 +/*
 + * flags in file.f_mode.  Note that FMODE_READ and FMODE_WRITE must correspond
 + * to O_WRONLY and O_RDWR via the strange trick in __dentry_open()
 + */
 +
  /* file is open for reading */
  #define FMODE_READ            ((__force fmode_t)1)
  /* file is open for writing */
  #define FMODE_WRITE           ((__force fmode_t)2)
  /* file is seekable */
  #define FMODE_LSEEK           ((__force fmode_t)4)
 -/* file can be accessed using pread/pwrite */
 +/* file can be accessed using pread */
  #define FMODE_PREAD           ((__force fmode_t)8)
 -#define FMODE_PWRITE          FMODE_PREAD     /* These go hand in hand */
 +/* file can be accessed using pwrite */
 +#define FMODE_PWRITE          ((__force fmode_t)16)
  /* File is opened for execution with sys_execve / sys_uselib */
 -#define FMODE_EXEC            ((__force fmode_t)16)
 +#define FMODE_EXEC            ((__force fmode_t)32)
  /* File is opened with O_NDELAY (only set for block devices) */
 -#define FMODE_NDELAY          ((__force fmode_t)32)
 +#define FMODE_NDELAY          ((__force fmode_t)64)
  /* File is opened with O_EXCL (only set for block devices) */
 -#define FMODE_EXCL            ((__force fmode_t)64)
 +#define FMODE_EXCL            ((__force fmode_t)128)
  /* File is opened using open(.., 3, ..) and is writeable only for ioctls
     (specialy hack for floppy.c) */
 -#define FMODE_WRITE_IOCTL     ((__force fmode_t)128)
 +#define FMODE_WRITE_IOCTL     ((__force fmode_t)256)
  
  /*
   * Don't update ctime and mtime.
  #define WRITE 1
  #define READA 2               /* read-ahead  - don't block if no resources */
  #define SWRITE 3      /* for ll_rw_block() - wait for buffer lock */
- #define READ_SYNC     (READ | (1 << BIO_RW_SYNC))
+ #define READ_SYNC     (READ | (1 << BIO_RW_SYNCIO) | (1 << BIO_RW_UNPLUG))
  #define READ_META     (READ | (1 << BIO_RW_META))
- #define WRITE_SYNC    (WRITE | (1 << BIO_RW_SYNC))
- #define SWRITE_SYNC   (SWRITE | (1 << BIO_RW_SYNC))
+ #define WRITE_SYNC    (WRITE | (1 << BIO_RW_SYNCIO) | (1 << BIO_RW_UNPLUG))
+ #define SWRITE_SYNC   (SWRITE | (1 << BIO_RW_SYNCIO) | (1 << BIO_RW_UNPLUG))
  #define WRITE_BARRIER (WRITE | (1 << BIO_RW_BARRIER))
  #define DISCARD_NOBARRIER (1 << BIO_RW_DISCARD)
  #define DISCARD_BARRIER ((1 << BIO_RW_DISCARD) | (1 << BIO_RW_BARRIER))