staging: android: logger: Change logger_offset() from macro to function
authorTim Bird <tim.bird@am.sony.com>
Wed, 8 Feb 2012 02:26:38 +0000 (18:26 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Feb 2012 00:51:45 +0000 (16:51 -0800)
Convert to function and add log as a parameter, rather than relying
on log in the context of the macro.

Signed-off-by: Tim Bird <tim.bird@am.sony.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/android/logger.c

index ffc2d043dd8e48634fa03a5f82848c3652662e1b..29ee13727220dbea173298ca2da3457534dbf569 100644 (file)
@@ -60,7 +60,11 @@ struct logger_reader {
 };
 
 /* logger_offset - returns index 'n' into the log via (optimized) modulus */
-#define logger_offset(n)       ((n) & (log->size - 1))
+size_t logger_offset(struct logger_log *log, size_t n)
+{
+       return n & (log->size-1);
+}
+
 
 /*
  * file_get_log - Given a file structure, return the associated log
@@ -137,7 +141,7 @@ static ssize_t do_read_log_to_user(struct logger_log *log,
                if (copy_to_user(buf + len, log->buffer, count - len))
                        return -EFAULT;
 
-       reader->r_off = logger_offset(reader->r_off + count);
+       reader->r_off = logger_offset(log, reader->r_off + count);
 
        return count;
 }
@@ -225,7 +229,7 @@ static size_t get_next_entry(struct logger_log *log, size_t off, size_t len)
 
        do {
                size_t nr = get_entry_len(log, off);
-               off = logger_offset(off + nr);
+               off = logger_offset(log, off + nr);
                count += nr;
        } while (count < len);
 
@@ -260,7 +264,7 @@ static inline int clock_interval(size_t a, size_t b, size_t c)
 static void fix_up_readers(struct logger_log *log, size_t len)
 {
        size_t old = log->w_off;
-       size_t new = logger_offset(old + len);
+       size_t new = logger_offset(log, old + len);
        struct logger_reader *reader;
 
        if (clock_interval(old, new, log->head))
@@ -286,7 +290,7 @@ static void do_write_log(struct logger_log *log, const void *buf, size_t count)
        if (count != len)
                memcpy(log->buffer, buf + len, count - len);
 
-       log->w_off = logger_offset(log->w_off + count);
+       log->w_off = logger_offset(log, log->w_off + count);
 
 }
 
@@ -311,7 +315,7 @@ static ssize_t do_write_log_from_user(struct logger_log *log,
                if (copy_from_user(log->buffer, buf + len, count - len))
                        return -EFAULT;
 
-       log->w_off = logger_offset(log->w_off + count);
+       log->w_off = logger_offset(log, log->w_off + count);
 
        return count;
 }