diff for duplicates of <1320047596-20577-5-git-send-email-agraf@suse.de>
diff --git a/a/1.txt b/N1/1.txt
index 3618ad0..d47d400 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -404,7 +404,7 @@ index 59221bb..f19ae2f 100644
- int tlbsel, int esel, struct tlbe *stlbe)
+ int tlbsel, int esel, struct kvm_book3e_206_tlb_entry *stlbe)
{
- if (tlbsel == 0) {
+ if (tlbsel = 0) {
- __write_host_tlbe(stlbe, MAS0_TLBSEL(0) | MAS0_ESEL(esel));
+ int way = esel & (vcpu_e500->gtlb_params[0].ways - 1);
+ __write_host_tlbe(stlbe, MAS0_TLBSEL(0) | MAS0_ESEL(way));
@@ -443,8 +443,7 @@ index 59221bb..f19ae2f 100644
int tlbsel, int esel)
{
- struct tlbe *gtlbe = &vcpu_e500->gtlb_arch[tlbsel][esel];
-+ struct kvm_book3e_206_tlb_entry *gtlbe =
-+ get_entry(vcpu_e500, tlbsel, esel);
++ struct kvm_book3e_206_tlb_entry *gtlbe + get_entry(vcpu_e500, tlbsel, esel);
struct vcpu_id_table *idt = vcpu_e500->idt;
unsigned int pr, tid, ts, pid;
u32 val, eaddr;
@@ -463,7 +462,7 @@ index 59221bb..f19ae2f 100644
@@ -440,10 +432,10 @@ static unsigned int get_tlb_esel(struct kvmppc_vcpu_e500 *vcpu_e500, int tlbsel)
unsigned int esel = get_tlb_esel_bit(vcpu_e500);
- if (tlbsel == 0) {
+ if (tlbsel = 0) {
- esel &= KVM_E500_TLB0_WAY_NUM_MASK;
+ esel &= vcpu_e500->gtlb_params[0].ways - 1;
esel += gtlb0_set_base(vcpu_e500, vcpu_e500->mas2);
@@ -483,7 +482,7 @@ index 59221bb..f19ae2f 100644
+ unsigned int set_base, offset;
int i;
- if (tlbsel == 0) {
+ if (tlbsel = 0) {
set_base = gtlb0_set_base(vcpu_e500, eaddr);
- size = KVM_E500_TLB0_WAY_NUM;
+ size = vcpu_e500->gtlb_params[0].ways;
@@ -495,8 +494,7 @@ index 59221bb..f19ae2f 100644
+
for (i = 0; i < size; i++) {
- struct tlbe *tlbe = &vcpu_e500->gtlb_arch[tlbsel][set_base + i];
-+ struct kvm_book3e_206_tlb_entry *tlbe =
-+ &vcpu_e500->gtlb_arch[offset + set_base + i];
++ struct kvm_book3e_206_tlb_entry *tlbe + &vcpu_e500->gtlb_arch[offset + set_base + i];
unsigned int tid;
if (eaddr < get_tlb_eaddr(tlbe))
@@ -515,8 +513,7 @@ index 59221bb..f19ae2f 100644
- for (i = 0; i < vcpu_e500->gtlb_size[tlbsel]; i++) {
+ for (i = 0; i < vcpu_e500->gtlb_params[tlbsel].entries; i++) {
- struct tlbe_ref *ref =
- &vcpu_e500->gtlb_priv[tlbsel][i].ref;
+ struct tlbe_ref *ref &vcpu_e500->gtlb_priv[tlbsel][i].ref;
kvmppc_e500_ref_release(ref);
@@ -530,6 +525,8 @@ static void clear_tlb_refs(struct kvmppc_vcpu_e500 *vcpu_e500)
int stlbsel = 1;
@@ -525,8 +522,7 @@ index 59221bb..f19ae2f 100644
+ kvmppc_e500_id_table_reset_all(vcpu_e500);
+
for (i = 0; i < host_tlb_params[stlbsel].entries; i++) {
- struct tlbe_ref *ref =
- &vcpu_e500->tlb_refs[stlbsel][i];
+ struct tlbe_ref *ref &vcpu_e500->tlb_refs[stlbsel][i];
@@ -559,18 +556,18 @@ static inline void kvmppc_e500_deliver_tlb_miss(struct kvm_vcpu *vcpu,
| MAS1_TSIZE(tsized);
vcpu_e500->mas2 = (eaddr & MAS2_EPN)
@@ -609,8 +605,7 @@ index 59221bb..f19ae2f 100644
int tlbsel, int esel)
{
- struct tlbe *gtlbe = &vcpu_e500->gtlb_arch[tlbsel][esel];
-+ struct kvm_book3e_206_tlb_entry *gtlbe =
-+ get_entry(vcpu_e500, tlbsel, esel);
++ struct kvm_book3e_206_tlb_entry *gtlbe + get_entry(vcpu_e500, tlbsel, esel);
if (unlikely(get_tlb_iprot(gtlbe)))
return -1;
@@ -746,8 +741,7 @@ index 59221bb..f19ae2f 100644
gva_t eaddr)
{
struct kvmppc_vcpu_e500 *vcpu_e500 = to_e500(vcpu);
-- struct tlbe *gtlbe =
-- &vcpu_e500->gtlb_arch[tlbsel_of(index)][esel_of(index)];
+- struct tlbe *gtlbe - &vcpu_e500->gtlb_arch[tlbsel_of(index)][esel_of(index)];
- u64 pgmask = get_tlb_bytes(gtlbe) - 1;
+ struct kvm_book3e_206_tlb_entry *gtlbe;
+ u64 pgmask;
@@ -959,21 +953,18 @@ index 59221bb..f19ae2f 100644
host_tlb_params[1].sets = 1;
- vcpu_e500->gtlb_size[0] = KVM_E500_TLB0_SIZE;
-- vcpu_e500->gtlb_arch[0] =
-- kzalloc(sizeof(struct tlbe) * KVM_E500_TLB0_SIZE, GFP_KERNEL);
-- if (vcpu_e500->gtlb_arch[0] == NULL)
+- vcpu_e500->gtlb_arch[0] - kzalloc(sizeof(struct tlbe) * KVM_E500_TLB0_SIZE, GFP_KERNEL);
+- if (vcpu_e500->gtlb_arch[0] = NULL)
- goto err;
+ vcpu_e500->gtlb_params[0].entries = KVM_E500_TLB0_SIZE;
+ vcpu_e500->gtlb_params[1].entries = KVM_E500_TLB1_SIZE;
- vcpu_e500->gtlb_size[1] = KVM_E500_TLB1_SIZE;
-- vcpu_e500->gtlb_arch[1] =
-- kzalloc(sizeof(struct tlbe) * KVM_E500_TLB1_SIZE, GFP_KERNEL);
-- if (vcpu_e500->gtlb_arch[1] == NULL)
+- vcpu_e500->gtlb_arch[1] - kzalloc(sizeof(struct tlbe) * KVM_E500_TLB1_SIZE, GFP_KERNEL);
+- if (vcpu_e500->gtlb_arch[1] = NULL)
- goto err;
+ vcpu_e500->gtlb_params[0].ways = KVM_E500_TLB0_WAY_NUM;
-+ vcpu_e500->gtlb_params[0].sets =
-+ KVM_E500_TLB0_SIZE / KVM_E500_TLB0_WAY_NUM;
++ vcpu_e500->gtlb_params[0].sets + KVM_E500_TLB0_SIZE / KVM_E500_TLB0_WAY_NUM;
+
+ vcpu_e500->gtlb_params[1].ways = KVM_E500_TLB1_SIZE;
+ vcpu_e500->gtlb_params[1].sets = 1;
@@ -985,14 +976,12 @@ index 59221bb..f19ae2f 100644
+ vcpu_e500->gtlb_offset[0] = 0;
+ vcpu_e500->gtlb_offset[1] = KVM_E500_TLB0_SIZE;
- vcpu_e500->tlb_refs[0] =
- kzalloc(sizeof(struct tlbe_ref) * host_tlb_params[0].entries,
+ vcpu_e500->tlb_refs[0] kzalloc(sizeof(struct tlbe_ref) * host_tlb_params[0].entries,
@@ -1148,15 +1301,15 @@ int kvmppc_e500_tlb_init(struct kvmppc_vcpu_e500 *vcpu_e500)
if (!vcpu_e500->tlb_refs[1])
goto err;
-- vcpu_e500->gtlb_priv[0] =
-- kzalloc(sizeof(struct tlbe_ref) * vcpu_e500->gtlb_size[0],
+- vcpu_e500->gtlb_priv[0] - kzalloc(sizeof(struct tlbe_ref) * vcpu_e500->gtlb_size[0],
- GFP_KERNEL);
+ vcpu_e500->gtlb_priv[0] = kzalloc(sizeof(struct tlbe_ref) *
+ vcpu_e500->gtlb_params[0].entries,
@@ -1000,8 +989,7 @@ index 59221bb..f19ae2f 100644
if (!vcpu_e500->gtlb_priv[0])
goto err;
-- vcpu_e500->gtlb_priv[1] =
-- kzalloc(sizeof(struct tlbe_ref) * vcpu_e500->gtlb_size[1],
+- vcpu_e500->gtlb_priv[1] - kzalloc(sizeof(struct tlbe_ref) * vcpu_e500->gtlb_size[1],
- GFP_KERNEL);
+ vcpu_e500->gtlb_priv[1] = kzalloc(sizeof(struct tlbe_ref) *
+ vcpu_e500->gtlb_params[1].entries,
diff --git a/a/content_digest b/N1/content_digest
index eedf8d0..f8f7fea 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -8,7 +8,7 @@
"Subject\0[PATCH 04/14] KVM: PPC: e500: MMU API\0"
]
[
- "Date\0Mon, 31 Oct 2011 08:53:06 +0100\0"
+ "Date\0Mon, 31 Oct 2011 07:53:06 +0000\0"
]
[
"To\0kvm-ppc\@vger.kernel.org\0"
@@ -431,7 +431,7 @@
"-\t\tint tlbsel, int esel, struct tlbe *stlbe)\n",
"+\t\tint tlbsel, int esel, struct kvm_book3e_206_tlb_entry *stlbe)\n",
" {\n",
- " \tif (tlbsel == 0) {\n",
+ " \tif (tlbsel = 0) {\n",
"-\t\t__write_host_tlbe(stlbe, MAS0_TLBSEL(0) | MAS0_ESEL(esel));\n",
"+\t\tint way = esel & (vcpu_e500->gtlb_params[0].ways - 1);\n",
"+\t\t__write_host_tlbe(stlbe, MAS0_TLBSEL(0) | MAS0_ESEL(way));\n",
@@ -470,8 +470,7 @@
" \t\t\t\tint tlbsel, int esel)\n",
" {\n",
"-\tstruct tlbe *gtlbe = &vcpu_e500->gtlb_arch[tlbsel][esel];\n",
- "+\tstruct kvm_book3e_206_tlb_entry *gtlbe =\n",
- "+\t\tget_entry(vcpu_e500, tlbsel, esel);\n",
+ "+\tstruct kvm_book3e_206_tlb_entry *gtlbe +\t\tget_entry(vcpu_e500, tlbsel, esel);\n",
" \tstruct vcpu_id_table *idt = vcpu_e500->idt;\n",
" \tunsigned int pr, tid, ts, pid;\n",
" \tu32 val, eaddr;\n",
@@ -490,7 +489,7 @@
"\@\@ -440,10 +432,10 \@\@ static unsigned int get_tlb_esel(struct kvmppc_vcpu_e500 *vcpu_e500, int tlbsel)\n",
" \tunsigned int esel = get_tlb_esel_bit(vcpu_e500);\n",
" \n",
- " \tif (tlbsel == 0) {\n",
+ " \tif (tlbsel = 0) {\n",
"-\t\tesel &= KVM_E500_TLB0_WAY_NUM_MASK;\n",
"+\t\tesel &= vcpu_e500->gtlb_params[0].ways - 1;\n",
" \t\tesel += gtlb0_set_base(vcpu_e500, vcpu_e500->mas2);\n",
@@ -510,7 +509,7 @@
"+\tunsigned int set_base, offset;\n",
" \tint i;\n",
" \n",
- " \tif (tlbsel == 0) {\n",
+ " \tif (tlbsel = 0) {\n",
" \t\tset_base = gtlb0_set_base(vcpu_e500, eaddr);\n",
"-\t\tsize = KVM_E500_TLB0_WAY_NUM;\n",
"+\t\tsize = vcpu_e500->gtlb_params[0].ways;\n",
@@ -522,8 +521,7 @@
"+\n",
" \tfor (i = 0; i < size; i++) {\n",
"-\t\tstruct tlbe *tlbe = &vcpu_e500->gtlb_arch[tlbsel][set_base + i];\n",
- "+\t\tstruct kvm_book3e_206_tlb_entry *tlbe =\n",
- "+\t\t\t&vcpu_e500->gtlb_arch[offset + set_base + i];\n",
+ "+\t\tstruct kvm_book3e_206_tlb_entry *tlbe +\t\t\t&vcpu_e500->gtlb_arch[offset + set_base + i];\n",
" \t\tunsigned int tid;\n",
" \n",
" \t\tif (eaddr < get_tlb_eaddr(tlbe))\n",
@@ -542,8 +540,7 @@
" \n",
"-\tfor (i = 0; i < vcpu_e500->gtlb_size[tlbsel]; i++) {\n",
"+\tfor (i = 0; i < vcpu_e500->gtlb_params[tlbsel].entries; i++) {\n",
- " \t\tstruct tlbe_ref *ref =\n",
- " \t\t\t&vcpu_e500->gtlb_priv[tlbsel][i].ref;\n",
+ " \t\tstruct tlbe_ref *ref \t\t\t&vcpu_e500->gtlb_priv[tlbsel][i].ref;\n",
" \t\tkvmppc_e500_ref_release(ref);\n",
"\@\@ -530,6 +525,8 \@\@ static void clear_tlb_refs(struct kvmppc_vcpu_e500 *vcpu_e500)\n",
" \tint stlbsel = 1;\n",
@@ -552,8 +549,7 @@
"+\tkvmppc_e500_id_table_reset_all(vcpu_e500);\n",
"+\n",
" \tfor (i = 0; i < host_tlb_params[stlbsel].entries; i++) {\n",
- " \t\tstruct tlbe_ref *ref =\n",
- " \t\t\t&vcpu_e500->tlb_refs[stlbsel][i];\n",
+ " \t\tstruct tlbe_ref *ref \t\t\t&vcpu_e500->tlb_refs[stlbsel][i];\n",
"\@\@ -559,18 +556,18 \@\@ static inline void kvmppc_e500_deliver_tlb_miss(struct kvm_vcpu *vcpu,\n",
" \t\t| MAS1_TSIZE(tsized);\n",
" \tvcpu_e500->mas2 = (eaddr & MAS2_EPN)\n",
@@ -636,8 +632,7 @@
" \t\t\t\tint tlbsel, int esel)\n",
" {\n",
"-\tstruct tlbe *gtlbe = &vcpu_e500->gtlb_arch[tlbsel][esel];\n",
- "+\tstruct kvm_book3e_206_tlb_entry *gtlbe =\n",
- "+\t\tget_entry(vcpu_e500, tlbsel, esel);\n",
+ "+\tstruct kvm_book3e_206_tlb_entry *gtlbe +\t\tget_entry(vcpu_e500, tlbsel, esel);\n",
" \n",
" \tif (unlikely(get_tlb_iprot(gtlbe)))\n",
" \t\treturn -1;\n",
@@ -773,8 +768,7 @@
" \t\t\tgva_t eaddr)\n",
" {\n",
" \tstruct kvmppc_vcpu_e500 *vcpu_e500 = to_e500(vcpu);\n",
- "-\tstruct tlbe *gtlbe =\n",
- "-\t\t&vcpu_e500->gtlb_arch[tlbsel_of(index)][esel_of(index)];\n",
+ "-\tstruct tlbe *gtlbe -\t\t&vcpu_e500->gtlb_arch[tlbsel_of(index)][esel_of(index)];\n",
"-\tu64 pgmask = get_tlb_bytes(gtlbe) - 1;\n",
"+\tstruct kvm_book3e_206_tlb_entry *gtlbe;\n",
"+\tu64 pgmask;\n",
@@ -986,21 +980,18 @@
" \thost_tlb_params[1].sets = 1;\n",
" \n",
"-\tvcpu_e500->gtlb_size[0] = KVM_E500_TLB0_SIZE;\n",
- "-\tvcpu_e500->gtlb_arch[0] =\n",
- "-\t\tkzalloc(sizeof(struct tlbe) * KVM_E500_TLB0_SIZE, GFP_KERNEL);\n",
- "-\tif (vcpu_e500->gtlb_arch[0] == NULL)\n",
+ "-\tvcpu_e500->gtlb_arch[0] -\t\tkzalloc(sizeof(struct tlbe) * KVM_E500_TLB0_SIZE, GFP_KERNEL);\n",
+ "-\tif (vcpu_e500->gtlb_arch[0] = NULL)\n",
"-\t\tgoto err;\n",
"+\tvcpu_e500->gtlb_params[0].entries = KVM_E500_TLB0_SIZE;\n",
"+\tvcpu_e500->gtlb_params[1].entries = KVM_E500_TLB1_SIZE;\n",
" \n",
"-\tvcpu_e500->gtlb_size[1] = KVM_E500_TLB1_SIZE;\n",
- "-\tvcpu_e500->gtlb_arch[1] =\n",
- "-\t\tkzalloc(sizeof(struct tlbe) * KVM_E500_TLB1_SIZE, GFP_KERNEL);\n",
- "-\tif (vcpu_e500->gtlb_arch[1] == NULL)\n",
+ "-\tvcpu_e500->gtlb_arch[1] -\t\tkzalloc(sizeof(struct tlbe) * KVM_E500_TLB1_SIZE, GFP_KERNEL);\n",
+ "-\tif (vcpu_e500->gtlb_arch[1] = NULL)\n",
"-\t\tgoto err;\n",
"+\tvcpu_e500->gtlb_params[0].ways = KVM_E500_TLB0_WAY_NUM;\n",
- "+\tvcpu_e500->gtlb_params[0].sets =\n",
- "+\t\tKVM_E500_TLB0_SIZE / KVM_E500_TLB0_WAY_NUM;\n",
+ "+\tvcpu_e500->gtlb_params[0].sets +\t\tKVM_E500_TLB0_SIZE / KVM_E500_TLB0_WAY_NUM;\n",
"+\n",
"+\tvcpu_e500->gtlb_params[1].ways = KVM_E500_TLB1_SIZE;\n",
"+\tvcpu_e500->gtlb_params[1].sets = 1;\n",
@@ -1012,14 +1003,12 @@
"+\tvcpu_e500->gtlb_offset[0] = 0;\n",
"+\tvcpu_e500->gtlb_offset[1] = KVM_E500_TLB0_SIZE;\n",
" \n",
- " \tvcpu_e500->tlb_refs[0] =\n",
- " \t\tkzalloc(sizeof(struct tlbe_ref) * host_tlb_params[0].entries,\n",
+ " \tvcpu_e500->tlb_refs[0] \t\tkzalloc(sizeof(struct tlbe_ref) * host_tlb_params[0].entries,\n",
"\@\@ -1148,15 +1301,15 \@\@ int kvmppc_e500_tlb_init(struct kvmppc_vcpu_e500 *vcpu_e500)\n",
" \tif (!vcpu_e500->tlb_refs[1])\n",
" \t\tgoto err;\n",
" \n",
- "-\tvcpu_e500->gtlb_priv[0] =\n",
- "-\t\tkzalloc(sizeof(struct tlbe_ref) * vcpu_e500->gtlb_size[0],\n",
+ "-\tvcpu_e500->gtlb_priv[0] -\t\tkzalloc(sizeof(struct tlbe_ref) * vcpu_e500->gtlb_size[0],\n",
"-\t\t\tGFP_KERNEL);\n",
"+\tvcpu_e500->gtlb_priv[0] = kzalloc(sizeof(struct tlbe_ref) *\n",
"+\t\t\t\t\t vcpu_e500->gtlb_params[0].entries,\n",
@@ -1027,8 +1016,7 @@
" \tif (!vcpu_e500->gtlb_priv[0])\n",
" \t\tgoto err;\n",
" \n",
- "-\tvcpu_e500->gtlb_priv[1] =\n",
- "-\t\tkzalloc(sizeof(struct tlbe_ref) * vcpu_e500->gtlb_size[1],\n",
+ "-\tvcpu_e500->gtlb_priv[1] -\t\tkzalloc(sizeof(struct tlbe_ref) * vcpu_e500->gtlb_size[1],\n",
"-\t\t\tGFP_KERNEL);\n",
"+\tvcpu_e500->gtlb_priv[1] = kzalloc(sizeof(struct tlbe_ref) *\n",
"+\t\t\t\t\t vcpu_e500->gtlb_params[1].entries,\n",
@@ -1269,4 +1257,4 @@
"1.6.0.2"
]
-d614cfcdf3833825dcdd5b12f4481163626d016ac60a33174f299f44fc806399
+d86baa64efd5c837d78eeddb8ea0377e05ffbb898aac741e2221a5e4c19b2379
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.