From ca278fbed25adcaf303b0e2d1136edef0f992565 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Tue, 17 Apr 2012 16:08:29 -0400 Subject: [PATCH] --- yaml --- r: 300794 b: refs/heads/master c: 7b56f76edf2da7ab3e356cc0db16f9af4c6a26e2 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/sparc/net/bpf_jit.h | 5 +++-- trunk/arch/sparc/net/bpf_jit_asm.S | 4 ++-- trunk/arch/sparc/net/bpf_jit_comp.c | 2 +- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/[refs] b/[refs] index 9caa17df4f33..216cf75ce9ee 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: b3d7b2f2f07ff0ab87442f2d499f2860ef59bfaa +refs/heads/master: 7b56f76edf2da7ab3e356cc0db16f9af4c6a26e2 diff --git a/trunk/arch/sparc/net/bpf_jit.h b/trunk/arch/sparc/net/bpf_jit.h index 74f048be739c..05175be442fb 100644 --- a/trunk/arch/sparc/net/bpf_jit.h +++ b/trunk/arch/sparc/net/bpf_jit.h @@ -4,13 +4,14 @@ /* Conventions: * %g1 : temporary * %g2 : Secondary temporary used by SKB data helper stubs. + * %g3 : packet offset passed into SKB data helper stubs. * %o0 : pointer to skb (first argument given to JIT function) * %o1 : BPF A accumulator * %o2 : BPF X accumulator * %o3 : Holds saved %o7 so we can call helper functions without needing * to allocate a register window. - * %o4 : skb->data - * %o5 : skb->len - skb->data_len + * %o4 : skb->len - skb->data_len + * %o5 : skb->data */ #ifndef __ASSEMBLER__ diff --git a/trunk/arch/sparc/net/bpf_jit_asm.S b/trunk/arch/sparc/net/bpf_jit_asm.S index fdc69324aabc..46d8f59f14c5 100644 --- a/trunk/arch/sparc/net/bpf_jit_asm.S +++ b/trunk/arch/sparc/net/bpf_jit_asm.S @@ -30,7 +30,7 @@ bpf_jit_load_word_positive_offset: bne load_word_unaligned nop retl - ld [r_SKB_DATA + r_OFF], r_A + ld [r_TMP], r_A load_word_unaligned: ldub [r_TMP + 0x0], r_OFF ldub [r_TMP + 0x1], r_TMP2 @@ -59,7 +59,7 @@ bpf_jit_load_half_positive_offset: bne load_half_unaligned nop retl - lduh [r_SKB_DATA + r_OFF], r_A + lduh [r_TMP], r_A load_half_unaligned: ldub [r_TMP + 0x0], r_OFF ldub [r_TMP + 0x1], r_TMP2 diff --git a/trunk/arch/sparc/net/bpf_jit_comp.c b/trunk/arch/sparc/net/bpf_jit_comp.c index 86349cab60c5..ebc89809f585 100644 --- a/trunk/arch/sparc/net/bpf_jit_comp.c +++ b/trunk/arch/sparc/net/bpf_jit_comp.c @@ -378,7 +378,7 @@ void bpf_jit_compile(struct sk_filter *fp) emit_clear(r_X); /* If this filter needs to access skb data, - * load %o4 and %o4 with: + * load %o4 and %o5 with: * %o4 = skb->len - skb->data_len * %o5 = skb->data * And also back up %o7 into r_saved_O7 so we can