Re: [PATCH v2 02/17] powerpc/cell: Move data segment faulting code out of cell platform
From: Michael Neuling <hidden>
Date: 2014-10-02 00:42:55
Also in:
lkml
On Wed, 2014-10-01 at 16:47 +1000, Michael Ellerman wrote:
On Tue, 2014-30-09 at 10:34:51 UTC, Michael Neuling wrote:quoted
From: Ian Munsie <redacted> =20 __spu_trap_data_seg() currently contains code to determine the VSID and=
ESID
quoted
required for a particular EA and mm struct. =20 This code is generically useful for other co-processors. This moves th=
e code
quoted
of the cell platform so it can be used by other powerpc code. It also =
adds 1TB
quoted
segment handling which Cell didn't have.=20 I'm not loving this. =20 For starters the name "copro_data_segment()" doesn't contain any verbs, a=
nd it
doesn't tell me what it does.
Ok.
If we give it a name that says what it does, we get copro_get_ea_esid_and=
_vsid().
Or something equally ugly.
Ok
And then in patch 10 you move the bulk of the logic into calculate_vsid()=
. That was intentional on my part. I want this patch to be clear that we're moving this code out of cell. Then I wanted the optimisations to be in a separate patch. It does mean we touch the code twice in this series, but I was hoping it would make it easier to review. Alas. :-)
So instead can we: - add a small helper that does the esid calculation, eg. calculate_esid(=
) ?
- factor out the vsid logic into a helper, calculate_vsid() ? - rework the spu code to use those, dropping __spu_trap_data_seg() - use the helpers in the cxl code
OK, I think I can do that. I might change the name to something better in this patch, but I'll leave these cleanups to the later patch 10. Mikey