02 Jan, 2014

1 commit

  • Function llc_conn_ac_inc_vr_by_1() evaluates via macro
    PDU_GET_NEXT_Vr() into ...

    llc_sk(sk)->vR = ++llc_sk(sk)->vR & 0xffffffffffffff7f

    ... but the order in which the side effects take place is
    undefined because there is no intervening sequence point.

    As llc_sk(sk)->vR is written in llc_sk(sk)->vR (assignment
    left-hand side) and written in ++llc_sk(sk)->vR & 0xffffffffffffff7f
    this might possibly yield undefined behavior.

    The final value of llc_sk(sk)->vR is ambiguous, because,
    depending on the order of expression evaluation, the
    increment may occur before, after, or interleaved with
    the assignment. In C, evaluating such an expression yields
    undefined behavior.

    Since we're doing the increment via PDU_GET_NEXT_Vr() macro
    and the only place it is being used is from
    llc_conn_ac_inc_vr_by_1(), in order to increment vR by 1
    with a follow-up optimized modulo, rewrite the expression
    into ((vR + 1) & CONST) in order to fix this.

    Signed-off-by: Daniel Borkmann
    Cc: Arnaldo Carvalho de Melo
    Cc: Stephen Hemminger
    Signed-off-by: David S. Miller

    Daniel Borkmann
     

22 Sep, 2013

1 commit

  • There are a mix of function prototypes with and without extern
    in the kernel sources. Standardize on not using extern for
    function prototypes.

    Function prototypes don't need to be written with extern.
    extern is assumed by the compiler. Its use is as unnecessary as
    using auto to declare automatic/local variables in a block.

    Signed-off-by: Joe Perches
    Signed-off-by: David S. Miller

    Joe Perches
     

16 May, 2012

1 commit

  • We are going to delete the Token ring support. This removes any
    special processing in the core networking for token ring, (aside
    from net/tr.c itself), leaving the drivers and remaining tokenring
    support present but inert.

    The mass removal of the drivers and net/tr.c will be in a separate
    commit, so that the history of these files that we still care
    about won't have the giant deletion tied into their history.

    Signed-off-by: Paul Gortmaker

    Paul Gortmaker
     

14 May, 2011

1 commit

  • With some combinations of arch/compiler (e.g. arm-linux-gcc) the sizeof
    operator on structure returns value greater than expected. In cases when the
    structure is used for mapping PDU fields it may lead to unexpected results
    (such as holes and alignment problems in skb data). __packed prevents this
    undesired behavior.

    Signed-off-by: Vitalii Demianets
    Signed-off-by: David S. Miller

    Vitalii Demianets
     

01 Apr, 2008

1 commit

  • Allocate the skb for llc responses with the received packet size by
    using the size adjustable llc_frame_alloc.
    Don't allocate useless extra payload.
    Cleanup magic numbers.

    So, this fixes oops.
    Reported by Jim Westfall:
    kernel: skb_over_panic: text:c0541fc7 len:1000 put:997 head:c166ac00 data:c166ac2f tail:0xc166b017 end:0xc166ac80 dev:eth0
    kernel: ------------[ cut here ]------------
    kernel: kernel BUG at net/core/skbuff.c:95!

    Signed-off-by: Joonwoo Park
    Acked-by: Arnaldo Carvalho de Melo
    Signed-off-by: David S. Miller

    Joonwoo Park
     

26 Apr, 2007

3 commits


03 Dec, 2006

1 commit


15 Nov, 2005

1 commit


26 Oct, 2005

1 commit


17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds