1. 04 4月, 2014 1 次提交
  2. 02 4月, 2014 2 次提交
    • P
      fuse: Turn writeback cache on · 4d99ff8f
      Pavel Emelyanov 提交于
      Introduce a bit kernel and userspace exchange between each-other on
      the init stage and turn writeback on if the userspace want this and
      mount option 'allow_wbcache' is present (controlled by fusermount).
      
      Also add each writable file into per-inode write list and call the
      generic_file_aio_write to make use of the Linux page cache engine.
      Signed-off-by: NMaxim Patlasov <MPatlasov@parallels.com>
      Signed-off-by: NMiklos Szeredi <mszeredi@suse.cz>
      4d99ff8f
    • P
      HID: uhid: Add UHID_CREATE2 + UHID_INPUT2 · 4522643a
      Petri Gynther 提交于
      UHID_CREATE2:
      HID report descriptor data (rd_data) is an array in struct uhid_create2_req,
      instead of a pointer. Enables use from languages that don't support pointers,
      e.g. Python.
      
      UHID_INPUT2:
      Data array is the last field of struct uhid_input2_req. Enables userspace to
      write only the required bytes to kernel (ev.type + ev.u.input2.size + the part
      of the data array that matters), instead of the entire struct uhid_input2_req.
      
      Note:
      UHID_CREATE2 increases the total size of struct uhid_event slightly, thus
      increasing the size of messages that are queued for userspace. However, this
      won't affect the userspace processing of these events.
      
      [Jiri Kosina <jkosina@suse.cz>: adjust to hid_get_raw_report() and
      				hid_output_raw_report() API changes]
      Signed-off-by: NPetri Gynther <pgynther@google.com>
      Reviewed-by: NDavid Herrmann <dh.herrmann@gmail.com>
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      4522643a
  3. 01 4月, 2014 4 次提交
    • M
      vfs: add cross-rename · da1ce067
      Miklos Szeredi 提交于
      If flags contain RENAME_EXCHANGE then exchange source and destination files.
      There's no restriction on the type of the files; e.g. a directory can be
      exchanged with a symlink.
      Signed-off-by: NMiklos Szeredi <mszeredi@suse.cz>
      Reviewed-by: NJan Kara <jack@suse.cz>
      Reviewed-by: NJ. Bruce Fields <bfields@redhat.com>
      da1ce067
    • M
      vfs: add RENAME_NOREPLACE flag · 0a7c3937
      Miklos Szeredi 提交于
      If this flag is specified and the target of the rename exists then the
      rename syscall fails with EEXIST.
      
      The VFS does the existence checking, so it is trivial to enable for most
      local filesystems.  This patch only enables it in ext4.
      
      For network filesystems the VFS check is not enough as there may be a race
      between a remote create and the rename, so these filesystems need to handle
      this flag in their ->rename() implementations to ensure atomicity.
      
      Andy writes about why this is useful:
      
      "The trivial answer: to eliminate the race condition from 'mv -i'.
      
      Another answer: there's a common pattern to atomically create a file
      with contents: open a temporary file, write to it, optionally fsync
      it, close it, then link(2) it to the final name, then unlink the
      temporary file.
      
      The reason to use link(2) is because it won't silently clobber the destination.
      
      This is annoying:
       - It requires an extra system call that shouldn't be necessary.
       - It doesn't work on (IMO sensible) filesystems that don't support
      hard links (e.g. vfat).
       - It's not atomic -- there's an intermediate state where both files exist.
       - It's ugly.
      
      The new rename flag will make this totally sensible.
      
      To be fair, on new enough kernels, you can also use O_TMPFILE and
      linkat to achieve the same thing even more cleanly."
      
      Suggested-by: Andy Lutomirski <luto@amacapital.net> 
      Signed-off-by: NMiklos Szeredi <mszeredi@suse.cz>
      Reviewed-by: NJ. Bruce Fields <bfields@redhat.com>
      0a7c3937
    • D
      net-sysfs: expose number of carrier on/off changes · 2d3b479d
      david decotigny 提交于
      This allows to monitor carrier on/off transitions and detect link
      flapping issues:
       - new /sys/class/net/X/carrier_changes
       - new rtnetlink IFLA_CARRIER_CHANGES (getlink)
      
      Tested:
        - grep . /sys/class/net/*/carrier_changes
          + ip link set dev X down/up
          + plug/unplug cable
        - updated iproute2: prints IFLA_CARRIER_CHANGES
        - iproute2 20121211-2 (debian): unchanged behavior
      Signed-off-by: NDavid Decotigny <decot@googlers.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2d3b479d
    • F
      net: export NET_ADDR_* values to user-space API · 339e0223
      Florian Fainelli 提交于
      NET_ADDR_* values are exported in the
      /sys/class/net/<iface>/addr_assign_type sysfs attributes, and as such
      constitutes an user-space ABI. Move the NET_ADDR_* definitions from
      include/linux/netdevice.h to include/uapi/linux/netdevice.h
      Signed-off-by: NFlorian Fainelli <f.fainelli@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      339e0223
  4. 29 3月, 2014 1 次提交
  5. 22 3月, 2014 1 次提交
  6. 21 3月, 2014 3 次提交
  7. 20 3月, 2014 1 次提交
  8. 15 3月, 2014 1 次提交
  9. 13 3月, 2014 6 次提交
  10. 11 3月, 2014 2 次提交
  11. 07 3月, 2014 3 次提交
  12. 06 3月, 2014 14 次提交
  13. 05 3月, 2014 1 次提交
    • H
      usbfs: Add support for allocating / freeing streams · bcf7f6e3
      Hans de Goede 提交于
      This allows userspace to use bulk-streams, just like in kernel drivers, see
      Documentation/usb/bulk-streams.txt for details on the in kernel API. This
      is exported pretty much one on one to userspace.
      
      To use streams an app must first make a USBDEVFS_ALLOC_STREAMS ioctl,
      on success this will return the number of streams available (which may be
      less then requested). If there are n streams the app can then submit
      usbdevfs_urb-s with their stream_id member set to 1-n to use a specific
      stream. IE if USBDEVFS_ALLOC_STREAMS returns 4 then stream_id 1-4 can be
      used.
      
      When the app is done using streams it should call USBDEVFS_FREE_STREAMS
      
      Note applications are advised to use libusb rather then using the
      usbdevfs api directly. The latest version of libusb has support for streams.
      Signed-off-by: NHans de Goede <hdegoede@redhat.com>
      Signed-off-by: NSarah Sharp <sarah.a.sharp@linux.intel.com>
      bcf7f6e3