1. 01 1月, 2015 30 次提交
  2. 31 12月, 2014 10 次提交
    • K
      net: gianfar: add missing __iomem annotation · 03366a33
      Kevin Hao 提交于
      Fix the following spare warning:
      drivers/net/ethernet/freescale/gianfar.c:3521:60: warning: incorrect type in argument 1 (different address spaces)
      drivers/net/ethernet/freescale/gianfar.c:3521:60:    expected unsigned int [noderef] <asn:2>*addr
      drivers/net/ethernet/freescale/gianfar.c:3521:60:    got unsigned int [usertype] *rfbptr
      drivers/net/ethernet/freescale/gianfar.c:205:16: warning: incorrect type in assignment (different address spaces)
      drivers/net/ethernet/freescale/gianfar.c:205:16:    expected unsigned int [usertype] *rfbptr
      drivers/net/ethernet/freescale/gianfar.c:205:16:    got unsigned int [noderef] <asn:2>*<noident>
      drivers/net/ethernet/freescale/gianfar.c:2918:44: warning: incorrect type in argument 1 (different address spaces)
      drivers/net/ethernet/freescale/gianfar.c:2918:44:    expected unsigned int [noderef] <asn:2>*addr
      drivers/net/ethernet/freescale/gianfar.c:2918:44:    got unsigned int [usertype] *rfbptr
      Signed-off-by: NKevin Hao <haokexin@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      03366a33
    • K
      net: gianfar: mark the local functions static · 91c53f76
      Kevin Hao 提交于
      Signed-off-by: NKevin Hao <haokexin@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      91c53f76
    • J
      virtio-net: don't do header check for dodgy gso packets · 41f2f127
      Jason Wang 提交于
      There's no need to do header check for virtio-net since:
      
      - Host sets dodgy for all gso packets from guest and check the header.
      - Host should be prepared for all kinds of evil packets from guest, since
        malicious guest can send any kinds of packet.
      
      So this patch sets NETIF_F_GSO_ROBUST for virtio-net to skip the check.
      
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: Michael S. Tsirkin <mst@redhat.com>
      Acked-by: NMichael S. Tsirkin <mst@redhat.com>
      Signed-off-by: NJason Wang <jasowang@redhat.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      41f2f127
    • D
      arm: sa1100: move irda header to linux/platform_data · dd450777
      Dmitry Eremin-Solenikov 提交于
      In the end asm/mach/irda.h header is not used by anybody except sa1100.
      Move the header to the platform data includes dir and rename it to
      irda-sa11x0.h.
      Signed-off-by: NDmitry Eremin-Solenikov <dbaryshkov@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      dd450777
    • J
      net: sxgbe: Use setup_timer · 12141337
      Julia Lawall 提交于
      Convert a call to init_timer and accompanying intializations of
      the timer's data and function fields to a call to setup_timer.
      
      A simplified version of the semantic match that fixes this problem is as
      follows: (http://coccinelle.lip6.fr/)
      
      // <smpl>
      @@
      expression t,f,d;
      @@
      
      -init_timer(&t);
      +setup_timer(&t,f,d);
      -t.function = f;
      -t.data = d;
      // </smpl>
      Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      12141337
    • J
      ksz884x: Use setup_timer · fea3cb06
      Julia Lawall 提交于
      Convert a call to init_timer and accompanying intializations of
      the timer's data and function fields to a call to setup_timer.
      
      A simplified version of the semantic match that fixes this problem is as
      follows: (http://coccinelle.lip6.fr/)
      
      // <smpl>
      @@
      expression t,f,d;
      @@
      
      -init_timer(&t);
      +setup_timer(&t,f,d);
      -t.function = f;
      -t.data = d;
      // </smpl>
      Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      fea3cb06
    • J
      atl1e: Use setup_timer · cc73e41f
      Julia Lawall 提交于
      Convert a call to init_timer and accompanying intializations of
      the timer's data and function fields to a call to setup_timer.
      
      A simplified version of the semantic match that fixes this problem is as
      follows: (http://coccinelle.lip6.fr/)
      
      // <smpl>
      @@
      expression t,f,d;
      @@
      
      -init_timer(&t);
      +setup_timer(&t,f,d);
      -t.function = f;
      -t.data = d;
      // </smpl>
      Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      cc73e41f
    • J
      atheros: atlx: Use setup_timer · d0e520ef
      Julia Lawall 提交于
      Convert a call to init_timer and accompanying intializations of
      the timer's data and function fields to a call to setup_timer.
      
      A simplified version of the semantic match that fixes this problem is as
      follows: (http://coccinelle.lip6.fr/)
      
      // <smpl>
      @@
      expression t,f,d;
      @@
      
      -init_timer(&t);
      +setup_timer(&t,f,d);
      -t.function = f;
      -t.data = d;
      // </smpl>
      Signed-off-by: NJulia Lawall <Julia.Lawall@lip6.fr>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      d0e520ef
    • D
      Merge branch 'timecounter' · 5115ec96
      David S. Miller 提交于
      Richard Cochran says:
      
      ====================
      Time Counter fixes and improvements
      
      Several PTP Hardware Clock (PHC) drivers implement the clock in
      software using the timecounter/cyclecounter code. This series adds one
      simple improvement and one more subtle fix to the shared timecounter
      facility. Credit for this series goes to Janusz Użycki, who pointed
      the issues out to me off list.
      
      Patch #1 simply move the timecounter code into its own file. When
      working on this series, it was really annoying to see half the kernel
      recompile after every tweak to the timecounter stuff. There is no
      reason to keep this together with the clocksource code.
      
      Patch #2 implements an improved adjtime() method, and patches 3-10
      convert all of the drivers over to the new method.
      
      Patch #11 fixes a subtle but important issue with the timecounter WRT
      frequency adjustment. As it stands now, a timecounter based PHC will
      exhibit a variable frequency resolution (and variable time error)
      depending on how often the clock is read.
      
      In timecounter_read_delta(), the expression
      
         (delta * cc->mult) >> cc->shift;
      
      can lose resolution from the adjusted value of 'mult'. If the value
      of 'delta' is too small, then small changes in 'mult' have no effect.
      However, if the delta value is large enough, then small changes in
      'mult' will have an effect.
      
      Reading the clock too often means smaller 'delta' values which in turn
      will spoil the fine adjustments made to 'mult'. Up until now, this
      effect did not show up in my testing. The following example explains
      why.
      
      The CPTS has an input clock of 250 MHz, and the clock source uses
      mult=0x80000000 and shift=29, making the ticks to nanoseconds
      conversion like this:
      
         ticks * 2^31
         ------------
             2^29
      
      Imagine what happens if the clock is read every 10 milliseconds. Ten
      milliseconds are about 2500000 ticks, which corresponds to about 21
      bits. The product in the numerator has then 52 bits. After the shift
      operation, 23 bits are preserved. This results in a frequency
      adjustment resolution of about 0.1 ppm (not _too_ bad.)
      
      A frequency resolution of 1 ppm requires 20 bits.
      A frequency resolution of 1 ppb requires 30 bits.
      
      For the 250 MHz CPTS clock, reading every 4 seconds yields a 1 ppb
      resolution (which is the finest that our API allows).
      
      However, the error can be much higher if the clock is read too often
      or if time stamps occur close in time to read operations. In general
      it is really not acceptable to allow the rate of clock readings to
      influence the clock accuracy.
      ====================
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      5115ec96
    • R
      timecounter: keep track of accumulated fractional nanoseconds · 2eebdde6
      Richard Cochran 提交于
      The current timecounter implementation will drop a variable amount
      of resolution, depending on the magnitude of the time delta. In
      other words, reading the clock too often or too close to a time
      stamp conversion will introduce errors into the time values. This
      patch fixes the issue by introducing a fractional nanosecond field
      that accumulates the low order bits.
      Reported-by: NJanusz Użycki <j.uzycki@elproma.com.pl>
      Signed-off-by: NRichard Cochran <richardcochran@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      2eebdde6