1. 27 Sep, 2014 2 commits
    • Miklos Szeredi's avatar
      fuse: honour max_read and max_write in direct_io mode · 2c80929c
      Miklos Szeredi authored
      The third argument of fuse_get_user_pages() "nbytesp" refers to the number of
      bytes a caller asked to pack into fuse request. This value may be lesser
      than capacity of fuse request or iov_iter.  So fuse_get_user_pages() must
      ensure that *nbytesp won't grow.
      
      Now, when helper iov_iter_get_pages() performs all hard work of extracting
      pages from iov_iter, it can be done by passing properly calculated
      "maxsize" to the helper.
      
      The other caller of iov_iter_get_pages() (dio_refill_pages()) doesn't need
      this capability, so pass LONG_MAX as the maxsize argument here.
      
      Fixes: c9c37e2e ("fuse: switch to iov_iter_get_pages()")
      Reported-by: default avatarWerner Baumann <werner.baumann@onlinehome.de>
      Tested-by: default avatarMaxim Patlasov <mpatlasov@parallels.com>
      Signed-off-by: default avatarMiklos Szeredi <mszeredi@suse.cz>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      2c80929c
    • Miklos Szeredi's avatar
      shmem: fix nlink for rename overwrite directory · b928095b
      Miklos Szeredi authored
      If overwriting an empty directory with rename, then need to drop the extra
      nlink.
      
      Test prog:
      
      #include <stdio.h>
      #include <fcntl.h>
      #include <err.h>
      #include <sys/stat.h>
      
      int main(void)
      {
      	const char *test_dir1 = "test-dir1";
      	const char *test_dir2 = "test-dir2";
      	int res;
      	int fd;
      	struct stat statbuf;
      
      	res = mkdir(test_dir1, 0777);
      	if (res == -1)
      		err(1, "mkdir(\"%s\")", test_dir1);
      
      	res = mkdir(test_dir2, 0777);
      	if (res == -1)
      		err(1, "mkdir(\"%s\")", test_dir2);
      
      	fd = open(test_dir2, O_RDONLY);
      	if (fd == -1)
      		err(1, "open(\"%s\")", test_dir2);
      
      	res = rename(test_dir1, test_dir2);
      	if (res == -1)
      		err(1, "rename(\"%s\", \"%s\")", test_dir1, test_dir2);
      
      	res = fstat(fd, &statbuf);
      	if (res == -1)
      		err(1, "fstat(%i)", fd);
      
      	if (statbuf.st_nlink != 0) {
      		fprintf(stderr, "nlink is %lu, should be 0\n", statbuf.st_nlink);
      		return 1;
      	}
      
      	return 0;
      }
      Signed-off-by: default avatarMiklos Szeredi <mszeredi@suse.cz>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      b928095b
  2. 21 Sep, 2014 3 commits
    • Linus Torvalds's avatar
      Linux 3.17-rc6 · 0f33be00
      Linus Torvalds authored
      0f33be00
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm · dae0af78
      Linus Torvalds authored
      Pull ARM fixes from Russell King:
       "Fixes for ARM, the most notable being the fix from Nathan Lynch to fix
        the state of various registers during execve, to ensure that data
        can't be leaked between two executables.
      
        Fixes from Victor Kamensky for get_user() on big endian platforms,
        since the addition of 8-byte get_user() support broke these fairly
        badly.
      
        A fix from Sudeep Holla for affinity setting when hotplugging CPU 0.
      
        A fix from Stephen Boyd for a perf-induced sleep attempt while atomic.
      
        Lastly, a correctness fix for emulation of the SWP instruction on
        ARMv7+, and a fix for wrong carry handling when updating the
        translation table base address on LPAE platforms"
      
      * 'fixes' of git://ftp.arm.linux.org.uk/~rmk/linux-arm:
        ARM: 8149/1: perf: Don't sleep while atomic when enabling per-cpu interrupts
        ARM: 8148/1: flush TLS and thumbee register state during exec
        ARM: 8151/1: add missing exports for asm functions required by get_user macro
        ARM: 8137/1: fix get_user BE behavior for target variable with size of 8 bytes
        ARM: 8135/1: Fix in-correct barrier usage in SWP{B} emulation
        ARM: 8133/1: use irq_set_affinity with force=false when migrating irqs
        ARM: 8132/1: LPAE: drop wrong carry flag correction after adding TTBR1_OFFSET
      dae0af78
    • Linus Torvalds's avatar
      Merge tag 'media-v3.17-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · c1f03b48
      Linus Torvalds authored
      Pull media fixes from Mauro Carvalho Chehab:
       "some media bug fixes:
         - a Kconfig dependency issue
         - some fixes for af9033/it913x demod to be more reliable and address
           a performance regression
         - cx18: fix an oops on devices with tda8290 tuner
         - two new USB IDs for af9035
         - a couple fixes on smapp driver"
      
      * tag 'media-v3.17-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        [media] af9035: new IDs: add support for PCTV 78e and PCTV 79e
        [media] af9033: feed clock to RF tuner
        [media] it913x: init tuner on attach
        [media] af9033: update IT9135 tuner inittabs
        [media] Kconfig: do not select SPI bus on sub-driver auto-select
        [media] cx18: fix kernel oops with tda8290 tuner
        [media] smiapp: Set sub-device owner
        [media] smiapp: Fix power count handling
      c1f03b48
  3. 20 Sep, 2014 8 commits
  4. 19 Sep, 2014 21 commits
  5. 18 Sep, 2014 6 commits