On Wed, Jul 17, 2024 at 4:27 PM Jocelyn Falempe <jfale...@redhat.com> wrote: > > This patch adds a new panic screen, with a QR code and the kmsg data > embedded. > If DRM_PANIC_SCREEN_QR_CODE_URL is set, then the kmsg data will be > compressed with zlib and encoded as a numerical segment, and appended > to the URL as a URL parameter. This allows to save space, and put > about ~7500 bytes of kmsg data, in a V40 QR code. > Linux distributions can customize the URL, and put a web frontend to > directly open a bug report with the kmsg data. > > Otherwise the kmsg data will be encoded as a binary segment (ie raw > ascii) and only a maximum of 2953 bytes of kmsg data will be > available in the QR code. > > You can also limit the QR code size with DRM_PANIC_SCREEN_QR_VERSION. > > Signed-off-by: Jocelyn Falempe <jfale...@redhat.com>
Reviewed-by: Alice Ryhl <alicer...@google.com> Alice > v2: > * Rewrite the rust comments with Markdown (Alice Ryhl) > * Mark drm_panic_qr_generate() as unsafe (Alice Ryhl) > * Use CStr directly, and remove the call to as_str_unchecked() > (Alice Ryhl) > * Add a check for data_len <= data_size (Greg KH) > > v3: > * Fix all rust comments (typo, punctuation) (Miguel Ojeda) > * Change the wording of safety comments (Alice Ryhl) > * Add a link to the javascript decoder in the Kconfig (Greg KH) > * Fix data_size and tmp_size check in drm_panic_qr_generate() > > v4: > * Fix the logic to find next line and skip the '\n' (Alic Ryhl) > * Remove __LOG_PREFIX as it's not used (Alice Ryhl)