This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/gerrit-log@lists.osmocom.org/.
pespin gerrit-no-reply at lists.osmocom.orgpespin has uploaded this change for review. ( https://gerrit.osmocom.org/c/osmo-pcu/+/18350 )
Change subject: rlc: Move prepare() function out of gprs_rlc_data struct
......................................................................
rlc: Move prepare() function out of gprs_rlc_data struct
Newer gcc 10.1.0 is erroring due to memset being applied on a complex
type, so let's start by removing this only function outside of the
struct.
Change-Id: I20426557d9b3049ab275fadb92e10ea8a860a119
---
M src/rlc.cpp
M src/rlc.h
M src/tbf_dl.cpp
M tests/types/TypesTest.cpp
4 files changed, 9 insertions(+), 9 deletions(-)
git pull ssh://gerrit.osmocom.org:29418/osmo-pcu refs/changes/50/18350/1
diff --git a/src/rlc.cpp b/src/rlc.cpp
index 6d084b1..5316136 100644
--- a/src/rlc.cpp
+++ b/src/rlc.cpp
@@ -32,16 +32,16 @@
}
-uint8_t *gprs_rlc_data::prepare(size_t block_data_len)
+uint8_t *prepare(struct gprs_rlc_data *rlc, size_t block_data_len)
{
/* todo.. only set it once if it turns out to be a bottleneck */
- memset(block, 0x0, sizeof(block));
- memset(block, 0x2b, block_data_len);
+ memset(rlc->block, 0x0, sizeof(rlc->block));
+ memset(rlc->block, 0x2b, block_data_len);
/* Initial value of puncturing scheme */
- next_ps = EGPRS_PS_1;
+ rlc->next_ps = EGPRS_PS_1;
- return block;
+ return rlc->block;
}
void gprs_rlc_v_b::reset()
diff --git a/src/rlc.h b/src/rlc.h
index 135060e..109c5b3 100644
--- a/src/rlc.h
+++ b/src/rlc.h
@@ -177,8 +177,6 @@
};
struct gprs_rlc_data {
- uint8_t *prepare(size_t block_data_length);
-
/* block data including LI headers */
uint8_t block[RLC_MAX_LEN];
/* block data len including LI headers*/
@@ -211,6 +209,8 @@
union split_block_status spb_status;
};
+uint8_t *prepare(struct gprs_rlc_data *rlc, size_t block_data_length);
+
void gprs_rlc_data_info_init_dl(struct gprs_rlc_data_info *rlc,
GprsCodingScheme cs, bool with_padding, const unsigned int spb);
void gprs_rlc_data_info_init_ul(struct gprs_rlc_data_info *rlc,
diff --git a/src/tbf_dl.cpp b/src/tbf_dl.cpp
index dab1e29..cd4ddb9 100644
--- a/src/tbf_dl.cpp
+++ b/src/tbf_dl.cpp
@@ -581,7 +581,7 @@
/* now we still have untransmitted LLC data, so we fill mac block */
rlc_data = m_rlc.block(bsn);
- data = rlc_data->prepare(block_data_len);
+ data = prepare(rlc_data, block_data_len);
rlc_data->cs_last = cs;
rlc_data->cs_current_trans = cs;
diff --git a/tests/types/TypesTest.cpp b/tests/types/TypesTest.cpp
index b46a82b..e1c894d 100644
--- a/tests/types/TypesTest.cpp
+++ b/tests/types/TypesTest.cpp
@@ -97,7 +97,7 @@
{
struct gprs_rlc_data rlc = { 0, };
memset(rlc.block, 0x23, RLC_MAX_LEN);
- uint8_t *p = rlc.prepare(20);
+ uint8_t *p = prepare(&rlc, 20);
OSMO_ASSERT(p == rlc.block);
for (int i = 0; i < 20; ++i)
OSMO_ASSERT(p[i] == 0x2B);
--
To view, visit https://gerrit.osmocom.org/c/osmo-pcu/+/18350
To unsubscribe, or for help writing mail filters, visit https://gerrit.osmocom.org/settings
Gerrit-Project: osmo-pcu
Gerrit-Branch: master
Gerrit-Change-Id: I20426557d9b3049ab275fadb92e10ea8a860a119
Gerrit-Change-Number: 18350
Gerrit-PatchSet: 1
Gerrit-Owner: pespin <pespin at sysmocom.de>
Gerrit-MessageType: newchange
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osmocom.org/pipermail/gerrit-log/attachments/20200518/0f8004f9/attachment.htm>