]> FriiDump Source - friidump.git/blob - docs/reports/FRIIDUMP_LINUX_EXACT_RELEASE_HARDWARE_VALIDATION_0.5.3.16-pf1.md
Document exact-release Linux hardware validation
[friidump.git] / docs / reports / FRIIDUMP_LINUX_EXACT_RELEASE_HARDWARE_VALIDATION_0.5.3.16-pf1.md
1 # FriiDump 0.5.3.16-pf1 Linux Exact-Release Hardware Validation
2
3 ## Purpose
4
5 This report records the final Linux hardware validation of the exact published
6 FriiDump 0.5.3.16-pf1 executable. It covers the GCC-4244 B101 path and the
7 modified GDR-8050L `0xE7` path on cross-flashed GDR-8163B hardware.
8
9 The evidence archives remain outside Git. This report records their exact
10 filenames, SHA-256 values, accepted results, and validation limits.
11
12 ## Release authority
13
14 - Release: `0.5.3.16-pf1`
15 - Annotated tag: `v0.5.3.16-pf1`
16 - Tag object: `3faddd693c9198081778561c683f21c7904c7376`
17 - Release commit: `410adc894dbd68d10080151171b8c42a9197df46`
18 - Release tree: `2b7f19e733e742e6589d1afc40c63da7be4b99da`
19 - Linux executable SHA-256:
20   `ac58e427b59ba98018c8c1ed4f07fbf736cc887f3e74fefe0d04a43409d88561`
21 - Linux authorization: normal-user execution with `cap_sys_rawio=ep`
22
23 ## GCC-4244 B101 result
24
25 Evidence archive:
26
27 `friidump-v0.5.3.16-pf1-gcc4244-b101-linux-smoke-v4-20260803T223910Z.tar.gz`
28
29 SHA-256:
30
31 `7c9573d7dddf6381d8847626d0a45e96e57f2b64d79967a041d8acf4affebef5`
32
33 Accepted classification:
34
35 `ACCEPTED_PASS_WITH_WRAPPER_POSTPROCESSING_DEFECT`
36
37 Validated hardware and runtime identity:
38
39 - drive: `HL-DT-ST CDRW/DVD GCC4244 B101`;
40 - kernel block device during the run: `/dev/sr1`;
41 - SCSI-generic device during the run: `/dev/sg2`;
42 - USB bridge: JMicron `152d:2338`;
43 - serial: `4534CD5277D6`;
44 - command: `2`;
45 - method: `8`;
46 - profile: Type3, `legacy_detected`;
47 - cache base: `0x80000000`;
48 - memory windows: `5`.
49
50 Validated behavior:
51
52 - exact release identity and executable hash;
53 - effective `CAP_SYS_RAWIO`;
54 - all 20 seed blocks;
55 - Sonic Mega Collection (US) identification;
56 - controlled partial output;
57 - controlled cancellation;
58 - native JSON report;
59 - HLDS profile report;
60 - FriiDump STOP UNIT;
61 - clean kernel evidence for the accepted run.
62
63 The run completed 5,441 sectors and 11,143,168 bytes before cancellation. The
64 partial ISO SHA-256 was
65 `44ea2620898cc0ddbff643b6141b1830699e0b58f8ba51bdc2e4a9f2a2044ca8`.
66
67 The wrapper exited during post-processing because it used invalid shell
68 arithmetic for the cancellation duration. FriiDump had already completed the
69 validated hardware gates. The cleanup path also confirmed STOP. No additional
70 hardware run is required only to correct the wrapper.
71
72 The earlier Candidate11 full dump remains the full-image authority. It matched
73 the established Sonic Mega Collection (US) reference:
74
75 - sectors: `712880`;
76 - CRC32: `01b52739`;
77 - MD5: `85a525df1481d0ad67d8761f832dca12`;
78 - SHA-1: `06eb6d15b4d7f90ec0fed9ce9a77db41358d74ed`;
79 - SHA-256:
80   `30098da93f5de9ece8da44f8afdfb85cf9bcdc24d77131221e64e3038a529010`.
81
82 ## Cross-flashed GDR-8163B/GDR-8050L result
83
84 Evidence archive:
85
86 `friidump-v0.5.3.16-pf1-gdr8050l-0012-host-probe-quarantine-v2-20260804T031108Z.tar.gz`
87
88 SHA-256:
89
90 `872b8144b8cc55601b268867ad8cc74cc7266a514cf015e24cd2fe3a450ee602`
91
92 Accepted classification:
93
94 `ACCEPTED_PASS_WITH_OUTPUT_ASSERTION_DEFECT`
95
96 Validated hardware and runtime identity:
97
98 - physical hardware: GDR-8163B;
99 - operating identity: `HL-DT-ST DVD-ROM GDR8050L 0012`;
100 - modified firmware: GDR-8050L `0012` with `0xE7` memory-dump support;
101 - kernel block device during the run: `/dev/sr1`;
102 - SCSI-generic device during the run: `/dev/sg2`;
103 - USB bridge: JMicron `152d:2338`;
104 - serial: `4534D6D52972`;
105 - command: `2`;
106 - method: `8`;
107 - profile: `GDR-8050L modified 0xE7 speed-probe pending`;
108 - selected runtime profile: 3-window no-prefetch;
109 - cache base: `0x80000000`.
110
111 The validated unit did not identify as GDR-8050L when it started with Sonic
112 Mega Collection in the tray. It required this sequence:
113
114 1. Put a readable Video DVD in the tray.
115 2. Close the tray.
116 3. Power on and connect the external drive.
117 4. Wait for the `GDR8050L 0012` identity.
118 5. Keep drive power and USB connected.
119 6. Use the physical eject button.
120 7. Replace the Video DVD with Sonic Mega Collection (US).
121 8. Close the tray and wait for spin-up.
122 9. Start FriiDump.
123
124 This sequence is evidence for the validated cross-flashed unit. It is not a
125 general claim for every GDR-8050L.
126
127 Normal Linux media discovery caused background reads on this USB path. Earlier
128 reads blocked in kernel I/O and prevented FriiDump initialization. The accepted
129 run used a temporary, failure-safe quarantine:
130
131 - the target was absent before quarantine;
132 - the current UDisks state was recorded;
133 - UDisks optical-volume probing was stopped;
134 - udev rule execution was paused;
135 - the drive was connected with the Video DVD;
136 - exact sysfs identity was confirmed;
137 - private block and SCSI-generic nodes were created from sysfs;
138 - the disc was changed while power and USB remained connected;
139 - FriiDump ran through the private nodes;
140 - the external target was disconnected before queued udev work was released;
141 - udev and UDisks were restored to their original active state.
142
143 The accepted run sent no standalone SCSI readiness probe, no standalone STOP
144 command, and no PREVENT/ALLOW MEDIUM REMOVAL command. FriiDump completed its own
145 ready-media check and internal STOP UNIT.
146
147 Validated behavior:
148
149 - initialization in 1 second;
150 - all 20 seed blocks;
151 - seed elapsed time of 21.58 seconds;
152 - Sonic Mega Collection (US) identification;
153 - 2,161 sectors and 4,425,728 bytes of partial output;
154 - controlled cancellation in 1 second;
155 - native JSON report;
156 - HLDS profile report;
157 - primary log;
158 - FriiDump internal STOP UNIT;
159 - complete host-state restoration;
160 - no kernel I/O error during the accepted run.
161
162 The partial ISO SHA-256 was
163 `6a68279eccac41b63ec6cc0074e4ef43559808d51d201a6db7fab4c1a0313057`.
164
165 The wrapper's final assertion expected a colon in the successful ready-media
166 line. FriiDump printed:
167
168 `Checking for ready media before disc seed retrieval... OK`
169
170 The exact hardware evidence passed. No additional hardware run is required only
171 to correct the wrapper assertion.
172
173 ## Operational limits
174
175 - Identify optical devices dynamically. Do not assume `/dev/sr0`.
176 - Keep the internal optical drive installed when an external validation drive
177   is attached.
178 - Run FriiDump as the normal user.
179 - Apply `cap_sys_rawio=ep` only to the exact validated executable.
180 - Do not run FriiDump with `sudo`.
181 - Do not install FriiDump setuid-root.
182 - Do not use standalone `sg_turs`, `sg_prevent`, or STOP probes on the validated
183   GDR-8050L USB path.
184 - If a process is in state `D`, power-cycle only the external drive and USB
185   bridge. The blocked kernel request must return before a pending signal can
186   complete.
187 - Do not disable UDisks or udev permanently.
188 - Preserve hardware evidence outside Git by exact filename and SHA-256.
189
190 ## Final disposition
191
192 The GCC-4244 B101 and cross-flashed GDR-8163B/GDR-8050L `0012` Linux GameCube
193 hardware targets are complete for FriiDump 0.5.3.16-pf1.
194
195 The GCC-4244 B101 full-image authority remains the earlier exact full dump. The
196 exact-release GCC run and the exact-release GDR-8050L run validate release
197 identity, authorization, profile selection, seed retrieval, partial output,
198 cancellation, reporting, and STOP behavior.