diff options
author | akpm@linux-foundation.org <akpm@linux-foundation.org> | 2007-05-10 06:16:01 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-05-10 12:26:53 -0400 |
commit | e9910846fdb19f7c5810cbe4c95e4ca6dab6a00f (patch) | |
tree | dbfea7352c38b615d92c9c207980e9640a8a5e84 /kernel/timer.c | |
parent | c91e23c63f77a7643d857a082248cf2cdb71b67c (diff) |
timer: revert parenthesis fix in tbase_get_deferrable() etc
On 09-05-2007 21:10, Pallipadi, Venkatesh wrote:
...
> On a 64 bit system, converting pointer to int causes unnecessary
> compiler warning, and intermediate long conversion was to avoid that.
> I will have to rephrase my comment to remove 32 bit value and use int,
> as that is what the function returns.
So, this patch reverts all changes done by my previous patch.
I apologize for my wrong comment about "logical error" here.
Cc: "Pallipadi, Venkatesh" <venkatesh.pallipadi@intel.com>
Cc: Satyam Sharma <satyam.sharma@gmail.com>
Cc: Oleg Nesterov <oleg@tv-sign.ru>
Signed-off-by: Jarek Poplawski <jarkao2@o2.pl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/timer.c')
-rw-r--r-- | kernel/timer.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/kernel/timer.c b/kernel/timer.c index 59a28b1752f8..a6c580ac084b 100644 --- a/kernel/timer.c +++ b/kernel/timer.c | |||
@@ -92,24 +92,24 @@ static DEFINE_PER_CPU(tvec_base_t *, tvec_bases) = &boot_tvec_bases; | |||
92 | /* Functions below help us manage 'deferrable' flag */ | 92 | /* Functions below help us manage 'deferrable' flag */ |
93 | static inline unsigned int tbase_get_deferrable(tvec_base_t *base) | 93 | static inline unsigned int tbase_get_deferrable(tvec_base_t *base) |
94 | { | 94 | { |
95 | return (unsigned int)((unsigned long)base & TBASE_DEFERRABLE_FLAG); | 95 | return ((unsigned int)(unsigned long)base & TBASE_DEFERRABLE_FLAG); |
96 | } | 96 | } |
97 | 97 | ||
98 | static inline tvec_base_t *tbase_get_base(tvec_base_t *base) | 98 | static inline tvec_base_t *tbase_get_base(tvec_base_t *base) |
99 | { | 99 | { |
100 | return (tvec_base_t *)((unsigned long)base & ~TBASE_DEFERRABLE_FLAG); | 100 | return ((tvec_base_t *)((unsigned long)base & ~TBASE_DEFERRABLE_FLAG)); |
101 | } | 101 | } |
102 | 102 | ||
103 | static inline void timer_set_deferrable(struct timer_list *timer) | 103 | static inline void timer_set_deferrable(struct timer_list *timer) |
104 | { | 104 | { |
105 | timer->base = (tvec_base_t *)((unsigned long)timer->base | | 105 | timer->base = ((tvec_base_t *)((unsigned long)(timer->base) | |
106 | TBASE_DEFERRABLE_FLAG); | 106 | TBASE_DEFERRABLE_FLAG)); |
107 | } | 107 | } |
108 | 108 | ||
109 | static inline void | 109 | static inline void |
110 | timer_set_base(struct timer_list *timer, tvec_base_t *new_base) | 110 | timer_set_base(struct timer_list *timer, tvec_base_t *new_base) |
111 | { | 111 | { |
112 | timer->base = (tvec_base_t *)((unsigned long)new_base | | 112 | timer->base = (tvec_base_t *)((unsigned long)(new_base) | |
113 | tbase_get_deferrable(timer->base)); | 113 | tbase_get_deferrable(timer->base)); |
114 | } | 114 | } |
115 | 115 | ||