@samitouri / QOSamiQemu / commits / 6cbfd6008d

util/fifo8: Make all read-only methods const-correct

Allows these methods to be used in const contexts, i.e. where the parent of the fifo itself is const. This is in particular useful for Rust code. Signed-off-by: Bernhard Beschow <shentey@gmail.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Message-ID: <20260305220911.131508-5-shentey@gmail.com> Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>

Bernhard Beschow committed Mar 5, 2026 at 23:09 UTC 6cbfd6008da1bc6654ef8277590c3df2c763b1cb
2 files changed +10 -10
include/qemu/fifo8.h
+5 -5
@@ -71,7 +71,7 @@ uint8_t fifo8_pop(Fifo8 *fifo);
71 *
72 * Returns: The peeked data byte.
73 */
74 -uint8_t fifo8_peek(Fifo8 *fifo);
74 +uint8_t fifo8_peek(const Fifo8 *fifo);
75
76 /**
77 * fifo8_pop_buf:
@@ -181,7 +181,7 @@ void fifo8_reset(Fifo8 *fifo);
181 *
182 * Returns: True if the fifo is empty, false otherwise.
183 */
184 -bool fifo8_is_empty(Fifo8 *fifo);
184 +bool fifo8_is_empty(const Fifo8 *fifo);
185
186 /**
187 * fifo8_is_full:
@@ -191,7 +191,7 @@ bool fifo8_is_empty(Fifo8 *fifo);
191 *
192 * Returns: True if the fifo is full, false otherwise.
193 */
194 -bool fifo8_is_full(Fifo8 *fifo);
194 +bool fifo8_is_full(const Fifo8 *fifo);
195
196 /**
197 * fifo8_num_free:
@@ -201,7 +201,7 @@ bool fifo8_is_full(Fifo8 *fifo);
201 *
202 * Returns: Number of free bytes.
203 */
204 -uint32_t fifo8_num_free(Fifo8 *fifo);
204 +uint32_t fifo8_num_free(const Fifo8 *fifo);
205
206 /**
207 * fifo8_num_used:
@@ -211,7 +211,7 @@ uint32_t fifo8_num_free(Fifo8 *fifo);
211 *
212 * Returns: Number of used bytes.
213 */
214 -uint32_t fifo8_num_used(Fifo8 *fifo);
214 +uint32_t fifo8_num_used(const Fifo8 *fifo);
215
216 extern const VMStateDescription vmstate_fifo8;
217
util/fifo8.c
+5 -5
@@ -71,7 +71,7 @@ uint8_t fifo8_pop(Fifo8 *fifo)
71 return ret;
72 }
73
74 -uint8_t fifo8_peek(Fifo8 *fifo)
74 +uint8_t fifo8_peek(const Fifo8 *fifo)
75 {
76 assert(fifo->num > 0);
77 return fifo->data[fifo->head];
@@ -157,22 +157,22 @@ void fifo8_drop(Fifo8 *fifo, uint32_t len)
157 assert(len == 0);
158 }
159
160 -bool fifo8_is_empty(Fifo8 *fifo)
160 +bool fifo8_is_empty(const Fifo8 *fifo)
161 {
162 return (fifo->num == 0);
163 }
164
165 -bool fifo8_is_full(Fifo8 *fifo)
165 +bool fifo8_is_full(const Fifo8 *fifo)
166 {
167 return (fifo->num == fifo->capacity);
168 }
169
170 -uint32_t fifo8_num_free(Fifo8 *fifo)
170 +uint32_t fifo8_num_free(const Fifo8 *fifo)
171 {
172 return fifo->capacity - fifo->num;
173 }
174
175 -uint32_t fifo8_num_used(Fifo8 *fifo)
175 +uint32_t fifo8_num_used(const Fifo8 *fifo)
176 {
177 return fifo->num;
178 }