summaryrefslogtreecommitdiffstats
path: root/runtime/print_new.c
diff options
context:
space:
mode:
authorDavid Smith <dsmith@redhat.com>2009-05-07 15:02:05 -0500
committerDavid Smith <dsmith@redhat.com>2009-05-07 15:02:05 -0500
commit6edf848ad0053423dd3b06851ab8d62a260a56e8 (patch)
tree3a12db19846e9284f9948993809dec031e3a08f4 /runtime/print_new.c
parent09334fd8db6c57743a7da34dd55be551fef6e39f (diff)
downloadsystemtap-steved-6edf848ad0053423dd3b06851ab8d62a260a56e8.tar.gz
systemtap-steved-6edf848ad0053423dd3b06851ab8d62a260a56e8.tar.xz
systemtap-steved-6edf848ad0053423dd3b06851ab8d62a260a56e8.zip
Hid details of internal ring_buffer.c structure.
* runtime/print_new.c (stp_print_flush): Calls _stp_data_entry_data() to get data pointer. * runtime/transport/transport.h: Removed _stp_entry definition. Added _stp_data_entry_data() declaration. * runtime/transport/ring_buffer.c: Uses new _stp_data_entry structure. (_stp_data_entry_data): Added.
Diffstat (limited to 'runtime/print_new.c')
-rw-r--r--runtime/print_new.c13
1 files changed, 8 insertions, 5 deletions
diff --git a/runtime/print_new.c b/runtime/print_new.c
index 86c44ea7..b6187978 100644
--- a/runtime/print_new.c
+++ b/runtime/print_new.c
@@ -21,7 +21,7 @@ static DEFINE_SPINLOCK(_stp_print_lock);
void EXPORT_FN(stp_print_flush)(_stp_pbuf *pb)
{
size_t len = pb->len;
- struct _stp_entry *entry = NULL;
+ void *entry = NULL;
/* check to see if there is anything in the buffer */
dbug_trans(1, "len = %zu\n", len);
@@ -44,7 +44,8 @@ void EXPORT_FN(stp_print_flush)(_stp_pbuf *pb)
bytes_reserved = _stp_data_write_reserve(len, &entry);
if (likely(entry && bytes_reserved > 0)) {
- memcpy(entry->buf, bufp, bytes_reserved);
+ memcpy(_stp_data_entry_data(entry), bufp,
+ bytes_reserved);
_stp_data_write_commit(entry);
bufp += bytes_reserved;
len -= bytes_reserved;
@@ -67,7 +68,7 @@ void EXPORT_FN(stp_print_flush)(_stp_pbuf *pb)
bytes_reserved = _stp_data_write_reserve(sizeof(struct _stp_trace), &entry);
if (likely(entry && bytes_reserved > 0)) {
/* prevent unaligned access by using memcpy() */
- memcpy(entry->buf, &t, sizeof(t));
+ memcpy(_stp_data_entry_data(entry), &t, sizeof(t));
_stp_data_write_commit(entry);
}
else {
@@ -78,7 +79,8 @@ void EXPORT_FN(stp_print_flush)(_stp_pbuf *pb)
while (len > 0) {
bytes_reserved = _stp_data_write_reserve(len, &entry);
if (likely(entry && bytes_reserved > 0)) {
- memcpy(entry->buf, bufp, bytes_reserved);
+ memcpy(_stp_data_entry_data(entry), bufp,
+ bytes_reserved);
_stp_data_write_commit(entry);
bufp += bytes_reserved;
len -= bytes_reserved;
@@ -102,7 +104,8 @@ void EXPORT_FN(stp_print_flush)(_stp_pbuf *pb)
bytes_reserved = _stp_data_write_reserve(len, &entry);
if (likely(entry && bytes_reserved > 0)) {
- memcpy(entry->buf, bufp, bytes_reserved);
+ memcpy(_stp_data_entry_data(entry), bufp,
+ bytes_reserved);
_stp_data_write_commit(entry);
bufp += bytes_reserved;
len -= bytes_reserved;