Thread (36 messages) flat view 36 messages, 10 authors, 2007-07-25

Re: [patch 2/3] ps3: BD/DVD/CD-ROM Storage Driver

From: Andrew Morton <akpm@linux-foundation.org>
Date: 2007-07-19 09:48:30
Also in: linux-scsi, lkml

On Thu, 19 Jul 2007 11:39:32 +0200 (CEST) Geert Uytterhoeven [off-list ref] wrote:
quoted
Oh dear.

	ps3rom_priv(dev) = host;

that's 'orrid.  We have an identifier pretending to be a function, only we
go and treat it as an lvalue.

I mean, C code should look like C code, and the above just doesn't.

Sigh.
Do you prefer

static inline struct ps3rom_private *ps3rom_priv_get(struct ps3_storage_device
*dev)
{
	return dev->sbd.core.driver_data;
}

static inline void ps3rom_priv_set(struct ps3_storage_device *dev,
				   struct ps3rom_private *priv)
{
	dev->sbd.core.driver_data = priv;
}

instead?
Yes.  Not that it's a terribly important issue, particularly down in the
dark and dusty corners where this code lurks.  The "function" as an lvalue
thing would be more obnoxious in some top-level interface.  We probably
already have some :(

If it were mine I'd open-code the "set" and do the "get" as a static
inline.  Or you could leave it as-is and go off and do something more
important ;)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help