1. Nov 16, 2009
  2. Nov 15, 2009
  3. Nov 14, 2009
  4. Nov 13, 2009
  5. Nov 12, 2009
    • Arnd Bergmann's avatar
      net/atm: move all compat_ioctl handling to atm/ioctl.c · 805003a4
      Arnd Bergmann authored
      
      
      We have two implementations of the compat_ioctl handling for ATM, the
      one that we have had for ages in fs/compat_ioctl.c and the one added to
      net/atm/ioctl.c by David Woodhouse. Unfortunately, both versions are
      incomplete, and in practice we use a very confusing combination of the
      two.
      
      For ioctl numbers that have the same identifier on 32 and 64 bit systems,
      we go directly through the compat_ioctl socket operation, for those that
      
      differ, we do a conversion in fs/compat_ioctl.c.
      
      This patch moves both variants into the vcc_compat_ioctl() function,
      while preserving the current behaviour. It also kills off the COMPATIBLE_IOCTL
      definitions that we never use here.
      Doing it this way is clearly not a good solution, but I hope it is a
      step into the right direction, so that someone is able to clean up this
      mess for real.
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Eric Dumazet <eric.dumazet@gmail.com>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      805003a4
    • Arnd Bergmann's avatar
      net/compat: fix dev_ifsioc emulation corner cases · a2116ed2
      Arnd Bergmann authored
      
      
      Handling for SIOCSHWTSTAMP is broken on architectures
      with a split user/kernel address space like s390,
      because it passes a real user pointer while using
      set_fs(KERNEL_DS).
      A similar problem might arise the next time somebody
      adds code to dev_ifsioc.
      
      Split up dev_ifsioc into three separate functions for
      SIOCSHWTSTAMP, SIOC*IFMAP and all other numbers so
      we can get rid of set_fs in all potentially affected
      cases.
      
      Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
      Cc: Patrick Ohly <patrick.ohly@intel.com>
      Cc: David S. Miller <davem@davemloft.net>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      a2116ed2