1. 14 9月, 2009 2 次提交
    • N
      Seperate read and write statistics of in_flight requests · a9327cac
      Nikanth Karthikesan 提交于
      Currently, there is a single in_flight counter measuring the number of
      requests in the request_queue. But some monitoring tools would like to
      know how many read requests and write requests are in progress. Split the
      current in_flight counter into two seperate counters for read and write.
      
      This information is exported as a sysfs attribute, as changing the
      currently available stat files would break the existing tools.
      Signed-off-by: NNikanth Karthikesan <knikanth@suse.de>
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      a9327cac
    • E
      aoe: end barrier bios with EOPNOTSUPP · 18d8217b
      Ed Cashin 提交于
      BugLink: http://bugzilla.kernel.org/show_bug.cgi?id=13942
      
      Bruno Premont noticed that aoe throws a BUG during umount of an XFS in
      2.6.31:
      
      [ 5259.349897] aoe: bi_io_vec is NULL
      [ 5259.349940] ------------[ cut here ]------------
      [ 5259.349958] kernel BUG at /usr/src/linux-2.6/drivers/block/aoe/aoeblk.c:177!
      [ 5259.349990] invalid opcode: 0000 [#1]
      
      The bio in question is a barrier.  Jens Axboe suggested that such bios
      need to be recognized and ended with -EOPNOTSUPP by any driver that
      provides its own ->make_request_fn handler and does not handle
      barriers.
      
      In testing the changes below eliminate the BUG.
      
      (Better would be real barrier support, something that Ed says he'll add
      for later in the .32 cycle. For now, this at least gets rid of a bug
      with crashing on an empty barrier. Jens)
      Signed-off-by: NEd L. Cashin <ecashin@coraid.com>
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      18d8217b
  2. 11 9月, 2009 23 次提交
  3. 10 9月, 2009 3 次提交
    • L
      Merge branch 'lookup-permissions-cleanup' · 526b6780
      Linus Torvalds 提交于
      * lookup-permissions-cleanup:
        jffs2/jfs/xfs: switch over to 'check_acl' rather than 'permission()'
        ext[234]: move over to 'check_acl' permission model
        shmfs: use 'check_acl' instead of 'permission'
        Make 'check_acl()' a first-class filesystem op
        Simplify exec_permission_lite(), part 3
        Simplify exec_permission_lite() further
        Simplify exec_permission_lite() logic
        Do not call 'ima_path_check()' for each path component
      526b6780
    • R
      binfmt_elf: fix PT_INTERP bss handling · 752015d1
      Roland McGrath 提交于
      In fs/binfmt_elf.c, load_elf_interp() calls padzero() for .bss even if
      the PT_LOAD has no PROT_WRITE and no .bss.  This generates EFAULT.
      
      Here is a small test case.  (Yes, there are other, useful PT_INTERP
      which have only .text and no .data/.bss.)
      
      	----- ptinterp.S
      	_start: .globl _start
      		 nop
      		 int3
      	-----
      	$ gcc -m32 -nostartfiles -nostdlib -o ptinterp ptinterp.S
      	$ gcc -m32 -Wl,--dynamic-linker=ptinterp -o hello hello.c
      	$ ./hello
      	Segmentation fault  # during execve() itself
      
      	After applying the patch:
      	$ ./hello
      	Trace trap  # user-mode execution after execve() finishes
      
      If the ELF headers are actually self-inconsistent, then dying is fine.
      But having no PROT_WRITE segment is perfectly normal and correct if
      there is no segment with p_memsz > p_filesz (i.e. bss).  John Reiser
      suggested checking for PROT_WRITE in the bss logic.  I think it makes
      most sense to simply apply the bss logic only when there is bss.
      
      This patch looks less trivial than it is due to some reindentation.
      It just moves the "if (last_bss > elf_bss) {" test up to include the
      partial-page bss logic as well as the more-pages bss logic.
      Reported-by: NJohn Reiser <jreiser@bitwagon.com>
      Signed-off-by: NRoland McGrath <roland@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      752015d1
    • L
      Linux 2.6.31 · 74fca6a4
      Linus Torvalds 提交于
      74fca6a4
  4. 09 9月, 2009 11 次提交
  5. 08 9月, 2009 1 次提交