Re: [Xen-devel] [PATCH 2 of 5] early PV on HVM

From: Jeremy Fitzhardinge
Date: Fri Mar 12 2010 - 15:22:22 EST


On 03/12/2010 11:09 AM, Stefano Stabellini wrote:
My version is not 64-bit specific, should I move it to a new file
anyway?

I was trying to keep the differences with Sheng's version low, but in
this case I am not quite sure how to manage it.
Suggestions are welcome.

My rough rules for code layout (in no particular order):

* keep similar functions together (even if they're not necessarily
sharing common code)
* dislike externs and cross-file references (ie, prefer static
functions/data) -> keep code sharing functions/data together
* dislike #ifdef CONFIG_x within files; prefer Makefile rules to
either completely compile or not compile files
* dislike dumping-ground files
* dislike too-small files
* dislike moving code between files, so its better to get it right
from the start (it makes merging harder)

So in this case, enlighten.c is the general setup/init/misc file in xen/. I've been trying to move things out of it to reduce its dumping ground-ness. In your case, the changes are clearly init, so they probably belong there. They're compiled unconditionally, so there's no #ifdef. They're fairly small so they would probably be too small in a separate file (unless its likely to get bigger?). So keep in enlighten.c.

(In Sheng's version of this patch, it has more code and is conditionally compiled, so I think the balance tips the other way.)

J

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/