summaryrefslogtreecommitdiffstats
path: root/results/classifier/deepseek-r1:14b/output/manual-review/1904331
diff options
context:
space:
mode:
Diffstat (limited to 'results/classifier/deepseek-r1:14b/output/manual-review/1904331')
-rw-r--r--results/classifier/deepseek-r1:14b/output/manual-review/190433127
1 files changed, 27 insertions, 0 deletions
diff --git a/results/classifier/deepseek-r1:14b/output/manual-review/1904331 b/results/classifier/deepseek-r1:14b/output/manual-review/1904331
new file mode 100644
index 00000000..e52ce50c
--- /dev/null
+++ b/results/classifier/deepseek-r1:14b/output/manual-review/1904331
@@ -0,0 +1,27 @@
+
+Coding bug in the function serial_ioport_write in serial.c
+
+Branch hash: b50ea0d (pulled from github).
+
+I was reviewing the code and noticed the following in the function serial_ioport_write:
+
+ assert(size == 1 && addr < 8);
+ .
+ .
+ .
+ switch(addr) {
+ default:
+ case 0:
+ if (s->lcf & UART_LCR_DLAB) {
+ if (size == 1) {
+ s->divider = (s->divider & 0xff00) | val;
+ } else {
+ s->divider = val;
+ }
+ }
+
+The assert will trigger if the size is > 1, so the else of the if (size == 1) will never be executed and an attempt to specify a size > 1 will trigger an assert.
+
+The documentation for the UART indicates that the 16-bit divisor is broken up amongst 2 8-bit registers (DLL and DLM). There already is code to handle the DLL and DLM portions of the divider register (as coded).
+
+This is not exactly going to cause a bug, as there is no code that calls this function with a value for size other than 1. It is just unnecessary code. \ No newline at end of file