Thread (26 messages) 26 messages, 6 authors, 2007-08-08

Re: [PATCH -rt 9/9] seqlocks: use PICK_FUNCTION

From: Daniel Walker <hidden>
Date: 2007-08-08 19:46:16
Also in: lkml

On Mon, 2007-08-06 at 09:21 +0200, Ingo Molnar wrote:
* Daniel Walker [off-list ref] wrote:
quoted
Replace the old PICK_OP style macros with PICK_FUNCTION. Although, 
seqlocks has some alien code, which I also replaced as can be seen 
from the line count below.
ok, i very much like the cleanup effects here, could you resend your 
latest version of this (with Peter's suggested cleanup) against -rc2-rt2 
so that i can apply it?
Ok, sent them privately. Updated to 2.6.23-rc2-rt2 w/ Peter's
suggestion. You'll get two sets the first had some unrefreshed hunks in
the 3/3 patch .

There is one thing I was wondering about in seqlock.h . There was a
class of these macro's like below,

#define PICK_SEQOP_CONST_RET(op, lock)                          \
({                                                              \
        unsigned long __ret;                                    \
                                                                \
        if (TYPE_EQUAL((lock), raw_seqlock_t))                  \
                __ret = op##_raw((const raw_seqlock_t *)(lock));\
        else if (TYPE_EQUAL((lock), seqlock_t))                 \
                __ret = op((seqlock_t *)(lock));                \
        else __ret = __bad_seqlock_type();                      \
                                                                \
        __ret;                                                  \
})

Where the variable is specifically casted to "const raw_seqlock_t *".. I
ended up dropping these all together, and I'm wonder what the adverse
effects of that are .. The casting seems superfluous to me since you
know already that the type are compatible at that point. Any thoughts?

Daniel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help